← Back to Skills Marketplace
linmillsd7

Joyfun Ai Text To Video

by linmillsd7 · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
103
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install joyfun-ai-text-to-video
Description
Skip the learning curve of professional editing software. Describe what you want — turn this text into a 30-second promotional video with visuals and music —...
README (SKILL.md)

Getting Started

Got text prompts to work with? Send it over and tell me what you need — I'll take care of the AI video creation.

Try saying:

  • "convert a two-sentence product description into a 1080p MP4"
  • "turn this text into a 30-second promotional video with visuals and music"
  • "generating videos from written text or scripts for marketers, content creators, social media managers"

Automatic Setup

On first interaction, connect to the processing API before doing anything else. Show a brief status like "Setting things up...".

Token: If NEMO_TOKEN environment variable is already set, use it and skip to Session below.

Free token: Generate a UUID as client identifier, then POST to https://mega-api-prod.nemovideo.ai/api/auth/anonymous-token with header X-Client-Id: \x3Cuuid>. The response field data.token becomes your NEMO_TOKEN (100 credits, 7-day expiry).

Session: POST to https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemo_agent with Bearer auth and body {"task_name":"project"}. Save session_id from the response.

Confirm to the user you're connected and ready. Don't print tokens or raw JSON.

Joyfun AI Text to Video — Convert Text into AI Videos

Drop your text prompts in the chat and tell me what you need. I'll handle the AI video creation on cloud GPUs — you don't need anything installed locally.

Here's a typical use: you send a a two-sentence product description, ask for turn this text into a 30-second promotional video with visuals and music, and about 1-2 minutes later you've got a MP4 file ready to download. The whole thing runs at 1080p by default.

One thing worth knowing — shorter, clearer text prompts produce more accurate and focused video results.

Matching Input to Actions

User prompts referencing joyfun ai text to video, aspect ratio, text overlays, or audio tracks get routed to the corresponding action via keyword and intent classification.

User says... Action Skip SSE?
"export" / "导出" / "download" / "send me the video" → §3.5 Export
"credits" / "积分" / "balance" / "余额" → §3.3 Credits
"status" / "状态" / "show tracks" → §3.4 State
"upload" / "上传" / user sends file → §3.2 Upload
Everything else (generate, edit, add BGM…) → §3.1 SSE

Cloud Render Pipeline Details

Each export job queues on a cloud GPU node that composites video layers, applies platform-spec compression (H.264, up to 1080x1920), and returns a download URL within 30-90 seconds. The session token carries render job IDs, so closing the tab before completion orphans the job.

Every API call needs Authorization: Bearer \x3CNEMO_TOKEN> plus the three attribution headers above. If any header is missing, exports return 402.

Headers are derived from this file's YAML frontmatter. X-Skill-Source is joyfun-ai-text-to-video, X-Skill-Version comes from the version field, and X-Skill-Platform is detected from the install path (~/.clawhub/ = clawhub, ~/.cursor/skills/ = cursor, otherwise unknown).

API base: https://mega-api-prod.nemovideo.ai

Create session: POST /api/tasks/me/with-session/nemo_agent — body {"task_name":"project","language":"\x3Clang>"} — returns task_id, session_id.

Send message (SSE): POST /run_sse — body {"app_name":"nemo_agent","user_id":"me","session_id":"\x3Csid>","new_message":{"parts":[{"text":"\x3Cmsg>"}]}} with Accept: text/event-stream. Max timeout: 15 minutes.

Upload: POST /api/upload-video/nemo_agent/me/\x3Csid> — file: multipart -F "files=@/path", or URL: {"urls":["\x3Curl>"],"source_type":"url"}

Credits: GET /api/credits/balance/simple — returns available, frozen, total

Session state: GET /api/state/nemo_agent/me/\x3Csid>/latest — key fields: data.state.draft, data.state.video_infos, data.state.generated_media

Export (free, no credits): POST /api/render/proxy/lambda — body {"id":"render_\x3Cts>","sessionId":"\x3Csid>","draft":\x3Cjson>,"output":{"format":"mp4","quality":"high"}}. Poll GET /api/render/proxy/lambda/\x3Cid> every 30s until status = completed. Download URL at output.url.

Supported formats: mp4, mov, avi, webm, mkv, jpg, png, gif, webp, mp3, wav, m4a, aac.

Error Handling

Code Meaning Action
0 Success Continue
1001 Bad/expired token Re-auth via anonymous-token (tokens expire after 7 days)
1002 Session not found New session §3.0
2001 No credits Anonymous: show registration URL with ?bind=\x3Cid> (get \x3Cid> from create-session or state response when needed). Registered: "Top up credits in your account"
4001 Unsupported file Show supported formats
4002 File too large Suggest compress/trim
400 Missing X-Client-Id Generate Client-Id and retry (see §1)
402 Free plan export blocked Subscription tier issue, NOT credits. "Register or upgrade your plan to unlock export."
429 Rate limit (1 token/client/7 days) Retry in 30s once

Backend Response Translation

The backend assumes a GUI exists. Translate these into API actions:

Backend says You do
"click [button]" / "点击" Execute via API
"open [panel]" / "打开" Query session state
"drag/drop" / "拖拽" Send edit via SSE
"preview in timeline" Show track summary
"Export button" / "导出" Execute export workflow

Reading the SSE Stream

Text events go straight to the user (after GUI translation). Tool calls stay internal. Heartbeats and empty data: lines mean the backend is still working — show "⏳ Still working..." every 2 minutes.

About 30% of edit operations close the stream without any text. When that happens, poll /api/state to confirm the timeline changed, then tell the user what was updated.

Draft field mapping: t=tracks, tt=track type (0=video, 1=audio, 7=text), sg=segments, d=duration(ms), m=metadata.

Timeline (3 tracks): 1. Video: city timelapse (0-10s) 2. BGM: Lo-fi (0-10s, 35%) 3. Title: "Urban Dreams" (0-3s)

Tips and Tricks

The backend processes faster when you're specific. Instead of "make it look better", try "turn this text into a 30-second promotional video with visuals and music" — concrete instructions get better results.

Max file size is 500MB. Stick to TXT, DOCX, PDF, plain text for the smoothest experience.

Export as MP4 for widest compatibility across social platforms and devices.

Common Workflows

Quick edit: Upload → "turn this text into a 30-second promotional video with visuals and music" → Download MP4. Takes 1-2 minutes for a 30-second clip.

Batch style: Upload multiple files in one session. Process them one by one with different instructions. Each gets its own render.

Iterative: Start with a rough cut, preview the result, then refine. The session keeps your timeline state so you can keep tweaking.

Usage Guidance
This skill behaves like a normal cloud text→video integration, but before installing you should: (1) confirm the API domain and owner (no homepage/source is provided); (2) avoid sending sensitive content — the skill uploads your text/files to mega-api-prod.nemovideo.ai; (3) verify how and where session_id or tokens are persisted (memory vs disk); (4) confirm whether the skill will read/write ~/.config/nemovideo/ since SKILL.md frontmatter mentions it but registry metadata does not; (5) provide a dedicated, limited-scope NEMO_TOKEN (or use anonymous token flow) rather than reusing high-privilege credentials; and (6) ask the publisher for source code or documentation and a privacy policy before trusting production data.
Capability Analysis
Type: OpenClaw Skill Name: joyfun-ai-text-to-video Version: 1.0.0 The skill is a standard integration for a text-to-video AI service (Joyfun AI). It instructs the agent to interact with the 'nemovideo.ai' API to manage sessions, upload text/files, and poll for video rendering status. While it involves network requests and the use of an API token (NEMO_TOKEN), these actions are directly aligned with the stated purpose of cloud-based video generation and do not exhibit signs of malicious intent, data exfiltration, or unauthorized system access.
Capability Assessment
Purpose & Capability
The name/description match the runtime instructions: the SKILL.md describes a text-to-video cloud API and the skill requires a single NEMO_TOKEN credential, which is proportionate. However, the package has no homepage or source URL and the SKILL.md frontmatter lists a configPath (~/.config/nemovideo/) that is not reflected in the registry metadata — an inconsistency worth clarifying.
Instruction Scope
Runtime instructions direct the agent to perform many network actions (anonymous-token creation, session creation, SSE streaming, file upload, exporting, polling) to https://mega-api-prod.nemovideo.ai and to save session_id. The skill does not request unrelated files or extra environment variables, but it will transmit user-provided text/files to a third-party API (no homepage or privacy info included). It also instructs deriving attribution headers from the YAML frontmatter and detecting an install path to set X-Skill-Platform — this platform-detection step is odd for an instruction-only skill and may be brittle or leak environment details.
Install Mechanism
No install spec and no code files — lowest-risk installation surface. Nothing is written to disk by an installer. The primary runtime behavior is network I/O as described in SKILL.md.
Credentials
Only one credential is declared (NEMO_TOKEN) which is appropriate for an API-backed video service. The instructions also allow creation of an anonymous token via the API (UUID client id → data.token). No other unrelated secrets or config paths are explicitly required, but the SKILL.md frontmatter suggests a config path (~/.config/nemovideo/) which contradicts the registry metadata — clarify whether local config will be read/written.
Persistence & Privilege
always:false (normal). The skill asks to 'Save session_id' but does not specify where — this likely means in the agent/session memory but could imply writing to disk or persistent config; clarify how session tokens are stored and for how long. There is no request to modify other skills or system-wide settings.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install joyfun-ai-text-to-video
  3. After installation, invoke the skill by name or use /joyfun-ai-text-to-video
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of Joyfun AI Text to Video. - Instantly converts text prompts or uploaded files (TXT, DOCX, PDF, up to 500MB) into 30-second AI-generated videos with visuals and music. - No editing or filming experience required—ideal for marketers, creators, and social managers. - Automated cloud rendering delivers downloadable MP4s and other formats in 1–2 minutes. - Session management, credits system, and exporting workflows are integrated for a seamless experience. - Provides clear status updates and robust error handling during the creation and export process.
Metadata
Slug joyfun-ai-text-to-video
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Joyfun Ai Text To Video?

Skip the learning curve of professional editing software. Describe what you want — turn this text into a 30-second promotional video with visuals and music —... It is an AI Agent Skill for Claude Code / OpenClaw, with 103 downloads so far.

How do I install Joyfun Ai Text To Video?

Run "/install joyfun-ai-text-to-video" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Joyfun Ai Text To Video free?

Yes, Joyfun Ai Text To Video is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Joyfun Ai Text To Video support?

Joyfun Ai Text To Video is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Joyfun Ai Text To Video?

It is built and maintained by linmillsd7 (@linmillsd7); the current version is v1.0.0.

💬 Comments