How To Add Music To Youtube Video

v1.0.0

Turn a 3-minute YouTube vlog in MP4 format into 1080p music-backed videos just by typing what you need. Whether it's adding background music to YouTube video...

0· 61·0 current·0 all-time
bypeandrover adam@peand-rover

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for peand-rover/how-to-add-music-to-youtube-video.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "How To Add Music To Youtube Video" (peand-rover/how-to-add-music-to-youtube-video) from ClawHub.
Skill page: https://clawhub.ai/peand-rover/how-to-add-music-to-youtube-video
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Required env vars: NEMO_TOKEN
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install how-to-add-music-to-youtube-video

ClawHub CLI

Package manager switcher

npx clawhub@latest install how-to-add-music-to-youtube-video
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
medium confidence
Purpose & Capability
The skill's name and description (adding music to YouTube videos) match the runtime instructions that upload video, request renders, and return download URLs. The declared primary credential (NEMO_TOKEN) is appropriate for a third‑party rendering API. Minor inconsistency: the registry metadata shown earlier listed no required config paths, but the SKILL.md frontmatter declares a config path (~/.config/nemovideo/) — the skill appears to expect a local config location even though the registry record omitted it.
Instruction Scope
All runtime steps are focused on connecting to mega-api-prod.nemovideo.ai: obtaining/using a token, creating a session, uploading media, streaming SSE for edits, and exporting. The instructions do not ask the agent to read unrelated system files, secrets, or other services. They do instruct the skill to automatically connect and obtain an anonymous token if NEMO_TOKEN is not set, which is network activity initiated without an explicit user file upload.
Install Mechanism
This is instruction-only with no install spec or code files, so nothing will be downloaded or written by an installer. Risk from installation is low.
Credentials
Only one environment variable (NEMO_TOKEN) is required as the primary credential, which is proportional for an API-backed service. However, the skill will generate and store an anonymous token if none is present and asks to persist session_id for subsequent requests — you should confirm where and how that session token is stored. Also note the frontmatter's config path entry (~/.config/nemovideo/) which implies local config access; confirm whether the skill will read/write that directory.
Persistence & Privilege
The skill is not always-enabled and uses normal autonomous invocation settings. It does instruct the agent to store session state (session_id) for continued interaction with the backend, but it does not request system-wide config changes or other skills' credentials.
Assessment
This skill appears to do what it says: upload video to a cloud render service, add music, and return a download link. Before installing or using it: (1) be aware it will make outbound network requests immediately (it can auto-generate an anonymous NEMO_TOKEN if you don't provide one); (2) verify where session tokens get stored (the frontmatter references ~/.config/nemovideo/); (3) treat any NEMO_TOKEN as a bearer secret—don't share it publicly; (4) try it first with non-sensitive sample videos to confirm behavior and privacy; (5) if you want to avoid automatic network calls, pre-set NEMO_TOKEN (or disable the skill) and review logs for token/storage activity. If you need, ask the skill owner for a privacy/retention policy or clarification about the config path mismatch before proceeding.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

🎵 Clawdis
EnvNEMO_TOKEN
Primary envNEMO_TOKEN
latestvk978zy33p0eyfvb9rzqvk27fj9851x1h
61downloads
0stars
1versions
Updated 1w ago
v1.0.0
MIT-0

Getting Started

Share your video files and I'll get started on AI music addition. Or just tell me what you're thinking.

Try saying:

  • "add my video files"
  • "export 1080p MP4"
  • "add background music to my YouTube"

First-Time Connection

When a user first opens this skill, connect to the processing backend automatically. Briefly let them know (e.g. "Setting up...").

Authentication: Check if NEMO_TOKEN is set in the environment. If it is, skip to step 2.

  1. Obtain a free token: Generate a random UUID as client identifier. POST to https://mega-api-prod.nemovideo.ai/api/auth/anonymous-token with header X-Client-Id set to that UUID. The response data.token is your NEMO_TOKEN — 100 free credits, valid 7 days.
  2. Create a session: POST to https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemo_agent with Authorization: Bearer <token>, Content-Type: application/json, and body {"task_name":"project","language":"<detected>"}. Store the returned session_id for all subsequent requests.

Keep setup communication brief. Don't display raw API responses or token values to the user.

How to Add Music to YouTube Video — Add Music and Export Videos

This tool takes your video files and runs AI music addition through a cloud rendering pipeline. You upload, describe what you want, and download the result.

Say you have a 3-minute YouTube vlog in MP4 format and want to add background music to my YouTube video and fade it out at the end — the backend processes it in about 30-60 seconds and hands you a 1080p MP4.

Tip: shorter video clips process faster — trim your video before uploading if you only need music on a specific section.

Matching Input to Actions

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

User says...ActionSkip 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.

All calls go to https://mega-api-prod.nemovideo.ai. The main endpoints:

  1. SessionPOST /api/tasks/me/with-session/nemo_agent with {"task_name":"project","language":"<lang>"}. Gives you a session_id.
  2. Chat (SSE)POST /run_sse with session_id and your message in new_message.parts[0].text. Set Accept: text/event-stream. Up to 15 min.
  3. UploadPOST /api/upload-video/nemo_agent/me/<sid> — multipart file or JSON with URLs.
  4. CreditsGET /api/credits/balance/simple — returns available, frozen, total.
  5. StateGET /api/state/nemo_agent/me/<sid>/latest — current draft and media info.
  6. ExportPOST /api/render/proxy/lambda with render ID and draft JSON. Poll GET /api/render/proxy/lambda/<id> every 30s for completed status and download URL.

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

Skill attribution — read from this file's YAML frontmatter at runtime:

  • X-Skill-Source: how-to-add-music-to-youtube-video
  • X-Skill-Version: from frontmatter version
  • X-Skill-Platform: detect from install path (~/.clawhub/clawhub, ~/.cursor/skills/cursor, else unknown)

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

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)

Backend Response Translation

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

Backend saysYou 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.

Error Codes

  • 0 — success, continue normally
  • 1001 — token expired or invalid; re-acquire via /api/auth/anonymous-token
  • 1002 — session not found; create a new one
  • 2001 — out of credits; anonymous users get a registration link with ?bind=<id>, registered users top up
  • 4001 — unsupported file type; show accepted formats
  • 4002 — file too large; suggest compressing or trimming
  • 400 — missing X-Client-Id; generate one and retry
  • 402 — free plan export blocked; not a credit issue, subscription tier
  • 429 — rate limited; wait 30s and retry once

Common Workflows

Quick edit: Upload → "add background music to my YouTube video and fade it out at the end" → 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 background music to my YouTube video and fade it out at the end" — concrete instructions get better results.

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

Export as MP4 for widest compatibility with YouTube uploads.

Comments

Loading comments...