Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

Caption Generator Jobs

v1.0.0

Skip the learning curve of professional editing software. Describe what you want — generate accurate captions in English and Spanish for this video — and get...

0· 69·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 susan4731-wilfordf/caption-generator-jobs.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Caption Generator Jobs" (susan4731-wilfordf/caption-generator-jobs) from ClawHub.
Skill page: https://clawhub.ai/susan4731-wilfordf/caption-generator-jobs
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 caption-generator-jobs

ClawHub CLI

Package manager switcher

npx clawhub@latest install caption-generator-jobs
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
Name/description describe automated captioning and the SKILL.md instructs calls to a nemo video backend and use of NEMO_TOKEN — this is coherent. However, the SKILL.md frontmatter lists a config path (~/.config/nemovideo/) while the registry metadata says no required config paths, which is an internal inconsistency worth asking the author to clarify.
!
Instruction Scope
The runtime instructions explicitly upload user video files and related assets to https://mega-api-prod.nemovideo.ai and require Authorization headers. Uploading user-provided media to an external cloud service is expected for this skill but is a sensitive action: the instructions will transmit possibly private media off-device. The skill also instructs generating an anonymous token (via POST) when no NEMO_TOKEN is present, which is reasonable, but you should be aware it performs network authentication and stores/uses tokens. The YAML also describes deriving X-Skill-Platform from an install path (e.g., ~/.clawhub/), implying the runtime may inspect install paths; the registry showed no config paths required — another inconsistency.
Install Mechanism
No install spec and no code files — the skill is instruction-only, which minimizes on-disk installation risk (nothing is downloaded or executed by an installer).
Credentials
Only a single credential (NEMO_TOKEN) is declared as required; that is proportionate for a cloud captioning service. The instructions also create an anonymous token if NEMO_TOKEN is missing, which is consistent. Still, the frontmatter references a config path (~/.config/nemovideo/) that the registry didn't list; if the runtime actually reads that path it could access local files unexpectedly.
Persistence & Privilege
The skill is not marked 'always' and does not request special persistent privileges. It does not claim to modify other skills or system configuration.
What to consider before installing
This skill appears to do what it says — it will upload videos to mega-api-prod.nemovideo.ai and use a NEMO_TOKEN (or obtain a short-lived anonymous token) to run captioning. Before installing or using it: - Be aware that any videos you upload will be transmitted to and processed by an external service (possible privacy/legal implications). Avoid uploading sensitive or private footage unless you trust the service and reviewed its privacy policy. - Confirm the domain (nemovideo.ai) is the official provider you expect. If you have an enterprise or paid account, prefer supplying your own NEMO_TOKEN rather than relying on anonymous tokens. - Ask the skill author to clarify the metadata mismatch: the SKILL.md frontmatter references ~/.config/nemovideo/ while registry metadata lists no required config paths. Confirm whether the skill will read local config files or paths. - If you want to limit exposure, do a small test with non-sensitive media first and monitor outgoing network requests. Revoke or rotate any tokens you supply if you stop using the skill. Given the metadata inconsistencies and the fact it will transmit files externally, treat this as a reviewed but potentially privacy-sensitive skill; proceed only after confirming the points above.

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

Runtime requirements

💬 Clawdis
EnvNEMO_TOKEN
Primary envNEMO_TOKEN
latestvk97dph6sc7m75221eqk79k0e7984srtg
69downloads
0stars
1versions
Updated 2w ago
v1.0.0
MIT-0

Getting Started

Share your video files and I'll get started on automatic caption generation. Or just tell me what you're thinking.

Try saying:

  • "add my video files"
  • "export 1080p MP4"
  • "generate accurate captions in English and"

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.

Caption Generator — Auto-Generate Captions for Videos

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

Say you have a 3-minute interview recorded on a smartphone and want to generate accurate captions in English and Spanish for this video — the backend processes it in about 30-60 seconds and hands you a 1080p MP4.

Tip: shorter clips under 2 minutes process significantly faster and with higher caption accuracy.

Matching Input to Actions

User prompts referencing caption generator jobs, 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.

Base URL: https://mega-api-prod.nemovideo.ai

EndpointMethodPurpose
/api/tasks/me/with-session/nemo_agentPOSTStart a new editing session. Body: {"task_name":"project","language":"<lang>"}. Returns session_id.
/run_ssePOSTSend a user message. Body includes app_name, session_id, new_message. Stream response with Accept: text/event-stream. Timeout: 15 min.
/api/upload-video/nemo_agent/me/<sid>POSTUpload a file (multipart) or URL.
/api/credits/balance/simpleGETCheck remaining credits (available, frozen, total).
/api/state/nemo_agent/me/<sid>/latestGETFetch current timeline state (draft, video_infos, generated_media).
/api/render/proxy/lambdaPOSTStart export. Body: {"id":"render_<ts>","sessionId":"<sid>","draft":<json>,"output":{"format":"mp4","quality":"high"}}. Poll status every 30s.

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

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

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

Error Handling

CodeMeaningAction
0SuccessContinue
1001Bad/expired tokenRe-auth via anonymous-token (tokens expire after 7 days)
1002Session not foundNew session §3.0
2001No creditsAnonymous: show registration URL with ?bind=<id> (get <id> from create-session or state response when needed). Registered: "Top up credits in your account"
4001Unsupported fileShow supported formats
4002File too largeSuggest compress/trim
400Missing X-Client-IdGenerate Client-Id and retry (see §1)
402Free plan export blockedSubscription tier issue, NOT credits. "Register or upgrade your plan to unlock export."
429Rate limit (1 token/client/7 days)Retry in 30s once

SSE Event Handling

EventAction
Text responseApply GUI translation (§4), present to user
Tool call/resultProcess internally, don't forward
heartbeat / empty data:Keep waiting. Every 2 min: "⏳ Still working..."
Stream closesProcess 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.

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

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 "generate accurate captions in English and Spanish for this video" — 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 platforms and devices.

Common Workflows

Quick edit: Upload → "generate accurate captions in English and Spanish for this video" → 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...