Demo Cutter

v1.0.0

Turn a 10-minute product demo recording into 1080p trimmed demo clips just by typing what you need. Whether it's cutting long product demos down to tight, sh...

0· 107·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for whitejohnk-26/demo-cutter.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Demo Cutter" (whitejohnk-26/demo-cutter) from ClawHub.
Skill page: https://clawhub.ai/whitejohnk-26/demo-cutter
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 demo-cutter

ClawHub CLI

Package manager switcher

npx clawhub@latest install demo-cutter
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
medium confidence
Purpose & Capability
Name/description (trim demo videos into clips) align with the declared single credential (NEMO_TOKEN) and the SKILL.md which documents uploading video, creating sessions, and rendering via a nemo-video backend. Requiring a service token for a cloud render API is expected.
Instruction Scope
SKILL.md provides detailed, bounded instructions for creating sessions, uploading media, SSE-based editing, exporting and polling job status — all within the stated purpose. Two minor inconsistencies: the metadata lists a config path (~/.config/nemovideo/) and the text says X-Skill-Platform is detected from an install path; the instructions do not clearly explain reading local config files to populate these headers. That implies the skill may examine local paths/configs to set an attribution header (privacy surface) even though that action isn't explicitly documented in the flow.
Install Mechanism
Instruction-only skill with no install spec and no code files — nothing will be written to disk by an installer. This is the lowest install risk.
Credentials
Only one credential is declared (NEMO_TOKEN), which is appropriate. The skill also defines a fallback to obtain an anonymous token by calling the external API; this is reasonable but worth noting because it results in a network request that will issue a bearer token. The presence of configPaths in metadata suggests the skill may look in ~/.config/nemovideo/ (or similar) for data; the SKILL.md does not clearly justify reading that location, so it's a small proportionality/clarity mismatch.
Persistence & Privilege
always is false and the skill does not request persistent platform-wide privileges. It does not attempt to modify other skills or system-wide settings. The main persistent effect is creating cloud render jobs (on the provider) which may remain running if the user closes the client — documented in the SKILL.md.
Assessment
This skill appears to do what it says: it uploads videos to a third‑party nemo-video backend and returns rendered clips. Before installing, consider: (1) Privacy — your raw demo recordings will be uploaded to https://mega-api-prod.nemovideo.ai; avoid uploading sensitive content unless you trust the service and its terms. (2) Token use — setting NEMO_TOKEN grants the skill access to your account for rendering/credits; only provide a token scoped appropriately. The skill can also request an anonymous token by contacting the API if no token is present. (3) Local metadata/config reading — metadata mentions ~/.config/nemovideo/ and header attribution can be derived from install paths; ask the author whether the skill will read local config paths or detect install locations before you install. (4) Billing/credits — check what operations consume credits and that exported jobs may be charged or queued. If you need stronger assurance, request the skill author to clarify whether the skill reads local files outside uploaded media, to provide a privacy policy for the backend endpoint, and to publish the code or a reputable homepage so you can audit network calls.

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

Runtime requirements

✂️ Clawdis
EnvNEMO_TOKEN
Primary envNEMO_TOKEN
latestvk970gg3b8c6gh1b4sjgp0wec3x8559z8
107downloads
0stars
1versions
Updated 1w ago
v1.0.0
MIT-0

Getting Started

Got raw demo footage to work with? Send it over and tell me what you need — I'll take care of the AI demo trimming.

Try saying:

  • "trim a 10-minute product demo recording into a 1080p MP4"
  • "cut out the slow intro and filler sections, keep only the core feature walkthrough"
  • "cutting long product demos down to tight, shareable highlight clips for product marketers"

Getting Connected

Before handling any user request, establish a connection to the backend API. Show a brief status like "Connecting...".

If NEMO_TOKEN is in the environment, use it directly and create a session. Otherwise, acquire a free starter token:

  • Generate a UUID as client identifier
  • POST to https://mega-api-prod.nemovideo.ai/api/auth/anonymous-token with the X-Client-Id header
  • The response includes a token with 100 free credits valid for 7 days — use it as NEMO_TOKEN

Then create a session by POSTing to https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemo_agent with Bearer authorization and body {"task_name":"project","language":"en"}. The session_id in the response is needed for all following requests.

Tell the user you're ready. Keep the technical details out of the chat.

Demo Cutter — Trim Demo Videos to Clips

This tool takes your raw demo footage and runs AI demo trimming through a cloud rendering pipeline. You upload, describe what you want, and download the result.

Say you have a 10-minute product demo recording and want to cut out the slow intro and filler sections, keep only the core feature walkthrough — the backend processes it in about 30-60 seconds and hands you a 1080p MP4.

Tip: shorter source clips under 5 minutes process significantly faster and give cleaner cut results.

Matching Input to Actions

User prompts referencing demo cutter, 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.

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

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

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

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

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

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

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

Session state: GET /api/state/nemo_agent/me/<sid>/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_<ts>","sessionId":"<sid>","draft":<json>,"output":{"format":"mp4","quality":"high"}}. Poll GET /api/render/proxy/lambda/<id> 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 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

Tips and Tricks

The backend processes faster when you're specific. Instead of "make it look better", try "cut out the slow intro and filler sections, keep only the core feature walkthrough" — 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 across sales decks, websites, and social platforms.

Common Workflows

Quick edit: Upload → "cut out the slow intro and filler sections, keep only the core feature walkthrough" → 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.

Comments

Loading comments...