← Back to Skills Marketplace
francemichaell-15

Mediakit Voiceover

by francemichaell-15 · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ Security Clean
43
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install mediakit-voiceover
Description
add media kit assets into narrated media kit with this skill. Works with MP4, MOV, PDF, PNG files up to 500MB. marketers use it for adding AI voiceover to me...
README (SKILL.md)

Getting Started

Share your media kit assets and I'll get started on AI voiceover generation. Or just tell me what you're thinking.

Try saying:

  • "add my media kit assets"
  • "export 1080p MP4"
  • "add a professional voiceover narrating my"

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.

Media Kit Voiceover — Add Voiceover to Media Kits

This tool takes your media kit assets and runs AI voiceover generation through a cloud rendering pipeline. You upload, describe what you want, and download the result.

Say you have a 60-second media kit slide deck video and want to add a professional voiceover narrating my media kit stats and brand overview — the backend processes it in about 30-60 seconds and hands you a 1080p MP4.

Tip: keep slides under 30 seconds each for cleaner voiceover pacing.

Matching Input to Actions

User prompts referencing mediakit voiceover, 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.

Headers are derived from this file's YAML frontmatter. X-Skill-Source is mediakit-voiceover, 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).

Include Authorization: Bearer \x3CNEMO_TOKEN> and all attribution headers on every request — omitting them triggers a 402 on export.

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.

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.

Translating GUI Instructions

The backend responds as if there's a visual interface. Map its instructions to API calls:

  • "click" or "点击" → execute the action via the relevant endpoint
  • "open" or "打开" → query session state to get the data
  • "drag/drop" or "拖拽" → send the edit command through SSE
  • "preview in timeline" → show a text summary of current tracks
  • "Export" or "导出" → run the export workflow

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)

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

Common Workflows

Quick edit: Upload → "add a professional voiceover narrating my media kit stats and brand overview" → Download MP4. Takes 30-60 seconds 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.

Tips and Tricks

The backend processes faster when you're specific. Instead of "make it look better", try "add a professional voiceover narrating my media kit stats and brand overview" — concrete instructions get better results.

Max file size is 500MB. Stick to MP4, MOV, PDF, PNG for the smoothest experience.

Export as MP4 for widest compatibility when sharing with brand partners.

Usage Guidance
Before installing, make sure you are comfortable with selected media-kit files, prompts, and session data being sent to mega-api-prod.nemovideo.ai, and use a limited NemoVideo token if possible. The supplied SKILL.md content was truncated in the review artifact, so this assessment is based on the visible instructions.
Capability Analysis
Type: OpenClaw Skill Name: mediakit-voiceover Version: 1.0.0 The skill is a functional integration for a third-party AI video service (nemovideo.ai) designed to add voiceovers to media assets. It includes standard API interaction logic, such as anonymous token acquisition, session management, and file uploads to 'https://mega-api-prod.nemovideo.ai'. While it handles user media and requires network access, its behavior is transparently documented and strictly aligned with its stated purpose, with no evidence of data exfiltration, malicious execution, or harmful prompt injection.
Capability Assessment
Purpose & Capability
The cloud upload, voiceover generation, session state, and MP4 export workflow match the stated media-kit voiceover purpose, but they involve external processing of user media.
Instruction Scope
The skill directs the agent to connect on first use and translate backend/SSE responses into API actions. This is scoped to the NemoVideo rendering workflow, but users should expect automated API steps once the skill is invoked.
Install Mechanism
No install spec, binaries, helper scripts, or code files are present; the regex static scanner had nothing executable to analyze.
Credentials
Requiring NEMO_TOKEN or obtaining an anonymous token is proportionate for a cloud rendering API, and the skill says not to print tokens or raw JSON.
Persistence & Privilege
The skill uses provider-side session IDs and render jobs; no local persistence code is shown, but token/session state exists on the external service.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install mediakit-voiceover
  3. After installation, invoke the skill by name or use /mediakit-voiceover
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Media Kit Voiceover — Add Voiceover to Media Kits skill, initial release: - Lets users add AI voiceover narration to media kit assets (MP4, MOV, PDF, PNG up to 500MB) for brand pitches. - Handles uploads, credits checking, session management, file export, and state/status tracking with cloud GPU processing. - 1080p MP4 export in 30–60 seconds; supports multiple formats for input and output. - Automates session and token setup, including free credit acquisition with anonymous tokens. - Features robust error handling and clear user guidance for workflows like upload, edit, preview, and export.
Metadata
Slug mediakit-voiceover
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Mediakit Voiceover?

add media kit assets into narrated media kit with this skill. Works with MP4, MOV, PDF, PNG files up to 500MB. marketers use it for adding AI voiceover to me... It is an AI Agent Skill for Claude Code / OpenClaw, with 43 downloads so far.

How do I install Mediakit Voiceover?

Run "/install mediakit-voiceover" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Mediakit Voiceover free?

Yes, Mediakit Voiceover is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Mediakit Voiceover support?

Mediakit Voiceover is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Mediakit Voiceover?

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

💬 Comments