Skill flagged — suspicious patterns detected

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

Copywriter Video Online

v1.0.0

Turn a 150-word product description paragraph into 1080p script-based videos just by typing what you need. Whether it's converting written copy into promotio...

0· 77·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/copywriter-video-online.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Copywriter Video Online" (susan4731-wilfordf/copywriter-video-online) from ClawHub.
Skill page: https://clawhub.ai/susan4731-wilfordf/copywriter-video-online
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 copywriter-video-online

ClawHub CLI

Package manager switcher

npx clawhub@latest install copywriter-video-online
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
The skill is an instruction-only adapter for a remote video-rendering API and legitimately needs an API token (NEMO_TOKEN) and session management. However the SKILL.md's YAML metadata references a local config path (~/.config/nemovideo/) and automatic detection of the agent's install path for an attribution header; these items are not declared in the top-level Requirements section and are not strictly required to perform remote API calls, creating a small mismatch.
Instruction Scope
Runtime instructions are focused on API calls required to create sessions, upload media, and export rendered videos. They do not ask for arbitrary files or unrelated environment variables. Two scope caveats: (1) the skill tells the agent to detect its install path to set X-Skill-Platform (this implies reading local paths like ~/.clawhub/ or ~/.cursor/skills/), and (2) the metadata suggests a config path (~/.config/nemovideo/) which implies the skill might read or write files there. Both behaviors are outside strictly necessary API calls and should be made explicit before giving the skill disk or file-system access.
Install Mechanism
There is no install specification and no code files — this is instruction-only. That minimizes on-disk attack surface since nothing is downloaded or executed by the skill itself.
Credentials
Only one environment variable is required: NEMO_TOKEN (declared as primary). That is proportional to a service that authenticates API calls. However, the YAML also declares a configPaths entry (~/.config/nemovideo/) which the top-level manifest did not list; this suggests the skill may read or write local config files (session tokens, cached credentials). Confirm where session_id and tokens are stored before granting persistent credentials.
Persistence & Privilege
The skill does not request always:true and has no install steps, so it does not demand permanent platform-wide presence. The SKILL.md instructs to 'save session_id' and to reuse NEMO_TOKEN if present; the storage location is unspecified. This could lead to tokens or session IDs being cached on disk (e.g., under ~/.config/nemovideo/), which has implications for persistence and credential lifecycle.
What to consider before installing
This skill appears to do what it says (remote video rendering) and only needs a single service token, but exercise caution before installing or providing credentials: - Source provenance: The skill has no homepage or source repo listed. If you don't recognize the owner, treat the skill as untrusted until you can verify the API/domain (mega-api-prod.nemovideo.ai) is legitimate. - Token scope and storage: NEMO_TOKEN is the sole credential — it likely controls rendering, credits, and billing. Use a token dedicated to this service (don't reuse other sensitive credentials). Ask how and where the agent will store the token/session_id; the YAML mentions ~/.config/nemovideo/ which could persist tokens to disk. If you want ephemeral use, prefer the anonymous-token flow and avoid writing the token to disk. - Filesystem access: The skill implies detecting install paths (~/.clawhub/, ~/.cursor/skills/) and may read/write ~/.config/nemovideo/. Confirm whether the agent will actually read those paths and what it will store there. If you don't want disk access, restrict the agent's filesystem access or decline to set persistent tokens. - Privacy of uploads and outputs: Uploaded media and generated videos go to the remote API; check the service's privacy policy before sending sensitive content. Also verify whether generated download URLs are private or publicly accessible. If you cannot verify the domain or the maintainer, or you are uncomfortable with potential disk persistence of tokens/sessions, do not provide a persistent NEMO_TOKEN and prefer a short-lived anonymous token flow or avoid using the skill.

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

Runtime requirements

✍️ Clawdis
EnvNEMO_TOKEN
Primary envNEMO_TOKEN
latestvk97202tpz3a9hav6x5wdjagbks84q1gr
77downloads
0stars
1versions
Updated 2w ago
v1.0.0
MIT-0

Getting Started

Got script or brief to work with? Send it over and tell me what you need — I'll take care of the AI video generation.

Try saying:

  • "convert a 150-word product description paragraph into a 1080p MP4"
  • "turn this sales copy into a 60-second explainer video with voiceover and visuals"
  • "converting written copy into promotional or explainer videos for copywriters and marketers"

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: <uuid>. 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.

Copywriter Video Online — Convert Copy Into Videos

Send me your script or brief and describe the result you want. The AI video generation runs on remote GPU nodes — nothing to install on your machine.

A quick example: upload a 150-word product description paragraph, type "turn this sales copy into a 60-second explainer video with voiceover and visuals", and you'll get a 1080p MP4 back in roughly 1-2 minutes. All rendering happens server-side.

Worth noting: shorter scripts under 200 words produce faster and more focused videos.

Matching Input to Actions

User prompts referencing copywriter video online, 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.

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

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.

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 → "turn this sales copy into a 60-second explainer video with voiceover and visuals" → 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.

Tips and Tricks

The backend processes faster when you're specific. Instead of "make it look better", try "turn this sales copy into a 60-second explainer video with voiceover and visuals" — concrete instructions get better results.

Max file size is 200MB. Stick to TXT, DOCX, PDF, MP4 for the smoothest experience.

Export as MP4 for widest compatibility across social and web platforms.

Comments

Loading comments...