Skill flagged — suspicious patterns detected

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

Video Creator Online

v1.0.0

Turn five product photos and a logo file into 1080p finished MP4 videos just by typing what you need. Whether it's turning images and clips into shareable vi...

0· 37·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/video-creator-online.

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

ClawHub CLI

Package manager switcher

npx clawhub@latest install video-creator-online
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
Name/description (cloud video creation) align with the required NEMO_TOKEN credential and the API endpoints described. However the SKILL.md metadata declares a config path (~/.config/nemovideo/) while the registry metadata lists no required config paths — an inconsistency in declared resource access. Reading the agent install path to set X-Skill-Platform is plausible for attribution but reads local paths.
!
Instruction Scope
Instructions tell the agent to automatically request an anonymous token if NEMO_TOKEN is missing, create a session, store session_id, and connect to remote endpoints. They also instruct uploading files using local file paths (multipart -F "files=@/path"), and to detect install path for X-Skill-Platform. The guidance to 'Don't display raw API responses or token values to the user' is unusual and means token values will be hidden by design. These behaviors expand scope beyond simply translating user requests into API calls and could lead to silent network activity or uploading of local files if not tightly constrained to user-supplied attachments.
Install Mechanism
No install spec or code files are present (instruction-only skill). That minimizes disk-write risk; nothing is downloaded or executed by an installer.
Credentials
The single required env var (NEMO_TOKEN) is appropriate for a remote API-based video service. But the skill will auto-generate and store an anonymous token if one is not present, and the SKILL.md suggests a config path for storing state/credentials. That extra storage access and hidden-handling of tokens should be justified to the user.
Persistence & Privilege
always is false and the skill is user-invocable only. The skill intends to store tokens/session IDs (implied by the config path and 'store the returned session_id') which is a modest persistence request appropriate for a reusable cloud session — but storing credentials/session state without explicit user consent is a usability/privacy concern.
What to consider before installing
This skill appears to be a cloud video-renderer and mostly matches that purpose, but consider the following before installing: - Confirm where tokens and session data will be stored and for how long (SKILL.md references ~/.config/nemovideo/ but the registry metadata omitted config paths). - The skill will automatically request an anonymous NEMO_TOKEN if none is provided: ask whether you want the agent to create/store that token without explicit consent each time. - The instructions say to hide raw API responses and token values from the user — this prevents users from seeing or revoking the token easily. - Ensure file uploads are limited to files you explicitly provide via the UI/attachment mechanism; clarify whether the agent may be instructed (or may infer) arbitrary local file paths to upload. - Verify the backend domain (https://mega-api-prod.nemovideo.ai) and its privacy/terms; consider creating a throwaway or limited-scope API token rather than using high-privilege credentials. If the vendor/backend is trusted and you accept token storage, this skill's behavior is explainable. If not, ask the author to (1) declare config paths and storage behaviour in the registry metadata, (2) require explicit user consent before generating/storing tokens, and (3) restrict uploads to user-attached files only.

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

Runtime requirements

🎬 Clawdis
EnvNEMO_TOKEN
Primary envNEMO_TOKEN
latestvk9731z1tb5hyc7r4n9jbgq0j1585nypw
37downloads
0stars
1versions
Updated 16h ago
v1.0.0
MIT-0

Getting Started

Share your images or clips and I'll get started on AI video creation. Or just tell me what you're thinking.

Try saying:

  • "create my images or clips"
  • "export 1080p MP4"
  • "combine these images into a 30-second"

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.

Video Creator Online — Create and Export Videos Online

Drop your images or clips in the chat and tell me what you need. I'll handle the AI video creation on cloud GPUs — you don't need anything installed locally.

Here's a typical use: you send a five product photos and a logo file, ask for combine these images into a 30-second promo video with background music and text overlays, and about 1-2 minutes later you've got a MP4 file ready to download. The whole thing runs at 1080p by default.

One thing worth knowing — using fewer than ten assets per project speeds up render time noticeably.

Matching Input to Actions

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

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

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

  • X-Skill-Source: video-creator-online
  • X-Skill-Version: from frontmatter version
  • X-Skill-Platform: detect from install path (~/.clawhub/clawhub, ~/.cursor/skills/cursor, else unknown)

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.

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

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.

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 "combine these images into a 30-second promo video with background music and text overlays" — concrete instructions get better results.

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

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

Common Workflows

Quick edit: Upload → "combine these images into a 30-second promo video with background music and text overlays" → 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.

Comments

Loading comments...