← Back to Skills Marketplace
vynbosserman65

From Video

by vynbosserman65 · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
51
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install from-video
Description
Skip the learning curve of professional editing software. Describe what you want — trim the silences, add subtitles, and export a clean version — and get edi...
README (SKILL.md)

Getting Started

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

Try saying:

  • "edit my existing video files"
  • "export 1080p MP4"
  • "trim the silences, add subtitles, and"

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.

From Video — Edit and Export Video Clips

Send me your existing video files and describe the result you want. The AI video editing runs on remote GPU nodes — nothing to install on your machine.

A quick example: upload a 3-minute interview recording, type "trim the silences, add subtitles, and export a clean version", and you'll get a 1080p MP4 back in roughly 1-2 minutes. All rendering happens server-side.

Worth noting: shorter clips process faster and use fewer credits.

Matching Input to Actions

User prompts referencing from 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.

All requests must include: Authorization: Bearer \x3CNEMO_TOKEN>, X-Skill-Source, X-Skill-Version, X-Skill-Platform. Missing attribution headers will cause export to fail with 402.

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

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

SSE Event Handling

Event Action
Text response Apply GUI translation (§4), present to user
Tool call/result Process internally, don't forward
heartbeat / empty data: Keep waiting. Every 2 min: "⏳ Still working..."
Stream closes Process final response

~30% of editing operations return no text in the SSE stream. When this happens: poll session state to verify the edit was applied, then summarize changes to the user.

Draft JSON uses short keys: t for tracks, tt for track type (0=video, 1=audio, 7=text), sg for segments, d for duration in ms, m for metadata.

Example timeline summary:

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 "trim the silences, add subtitles, and export a clean version" — 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.

Common Workflows

Quick edit: Upload → "trim the silences, add subtitles, and export a clean version" → 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 reasonably describes a remote AI video-editing integration and only requests one credential (NEMO_TOKEN), but take these precautions before using it: 1) Confirm the service domain and owner (no homepage provided) and read its privacy/retention policy — your uploaded videos are sent to mega-api-prod.nemovideo.ai. 2) Prefer using the anonymous short-lived token flow rather than supplying a long-lived personal token. 3) Be aware the instructions ask the agent to detect install paths and may access filesystem paths (e.g., to derive X-Skill-Platform); avoid granting broader filesystem access unless you trust the skill. 4) Ask the publisher for a homepage, documentation, and a published privacy/terms link; a maintained public repo or verified publisher reduces risk. If you cannot verify the service identity or data handling, treat the skill as untrusted and do not upload sensitive videos or provide a persistent NEMO_TOKEN.
Capability Analysis
Type: OpenClaw Skill Name: from-video Version: 1.0.0 The skill provides a functional interface for an AI-powered video editing service hosted at nemovideo.ai. It includes detailed instructions for the agent to manage authentication (NEMO_TOKEN), session state, and file uploads to a remote GPU rendering pipeline. While it performs basic environment fingerprinting by checking for the existence of specific installation paths (~/.clawhub/ or ~/.cursor/skills/) to set attribution headers, there is no evidence of data exfiltration, malicious execution, or harmful prompt injection.
Capability Assessment
Purpose & Capability
Name and description match the declared requirement for a single service credential (NEMO_TOKEN) and the instructions all target a remote video-processing API — asking for a service token is proportionate for this purpose.
Instruction Scope
SKILL.md instructs the agent to obtain/save session tokens, upload user video files, and to detect an install path to populate X-Skill-Platform (by checking ~/.clawhub, ~/.cursor/skills, etc.). That implies the agent may read filesystem paths and store session state; the registry metadata at the top of the report lists no required config paths, but the SKILL.md frontmatter includes ~/.config/nemovideo/ — this mismatch and the filesystem probing instruction increases scope beyond the simple API usage and should be noted.
Install Mechanism
This is instruction-only with no install spec or downloaded artifacts; nothing is written to disk by an installer step, which is the lowest-risk pattern for supply-chain installs.
Credentials
Only NEMO_TOKEN is required (primaryEnv). That is reasonable for a remote editing service, and the skill supports generating a short-lived anonymous token if none exists. However: the skill transmits user video files and session tokens to an external domain (mega-api-prod.nemovideo.ai). The package has no homepage or owner information in the manifest, so you should confirm the service's identity and privacy/retention policy before providing sensitive content or a long-lived token.
Persistence & Privilege
always:false and agent-invocable defaults are normal. The skill asks to save a session_id for job tracking — that's expected for remote jobs and does not request elevated agent-wide privileges or always-on presence.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install from-video
  3. After installation, invoke the skill by name or use /from-video
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release — AI-powered video editing and export made easy for creators. - Edit videos by describing desired changes (e.g., trim silences, add subtitles); no editing software required. - Upload MP4, MOV, AVI, or WebM files up to 500MB; all rendering happens remotely on cloud GPU nodes. - Automatic setup: free 7-day tokens generated on demand, with session management and clear status updates. - Simple chat commands are mapped to actions like upload, export, credits, and state checks. - Robust error handling and session recovery; guides users if issues like unsupported files or low credits occur. - Supports fast, credit-efficient workflows—including single edits or batch/iterative editing in one session.
Metadata
Slug from-video
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is From Video?

Skip the learning curve of professional editing software. Describe what you want — trim the silences, add subtitles, and export a clean version — and get edi... It is an AI Agent Skill for Claude Code / OpenClaw, with 51 downloads so far.

How do I install From Video?

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

Is From Video free?

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

Which platforms does From Video support?

From Video is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created From Video?

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

💬 Comments