To Voice Generator
Analysis
The skill’s video-generation purpose is clear, but it lets an external backend steer some actions and sends user content to a third-party cloud service.
Findings (8)
Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.
Checks for instructions or behavior that redirect the agent, misuse tools, execute unexpected code, cascade across systems, exploit user trust, or continue outside the intended task.
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 ... - "Export" or "导出" → run the export workflow
This makes backend text capable of directing the agent to perform actions, rather than limiting backend responses to informational output.
Upload: POST `/api/upload-video/nemo_agent/me/<sid>` — file: multipart `-F "files=@/path"`, or URL: `{"urls":["<url>"],"source_type":"url"}`The skill exposes file and URL upload operations to a remote service. This is expected for cloud video generation, but it is a sensitive action users should notice.
Source: unknown; Homepage: none
The skill has no local code or install script, but its provenance is limited and it depends on a remote backend.
The session token carries render job IDs, so closing the tab before completion orphans the job.
A render job can continue or become untracked after the visible session is closed, which may make recovery or cancellation harder.
closing the tab before completion orphans the job
The skill discloses that cloud work can continue outside the visible tab/session. This is tied to the render purpose, but it is persistent background activity users should notice.
Checks whether tool use, credentials, dependencies, identity, account access, or inter-agent boundaries are broader than the stated purpose.
metadata: {"openclaw": {"requires": {"env": ["NEMO_TOKEN"], "configPaths": ["~/.config/nemovideo/"]}, "primaryEnv": "NEMO_TOKEN"The skill declares a bearer token used to authorize requests to the video backend. This is proportionate to the purpose, but it is still a credential boundary.
Checks for exposed credentials, poisoned memory or context, unclear communication boundaries, or sensitive data that could leave the user's control.
Store the returned `session_id` for all subsequent requests.
The skill reuses a remote session identifier across later requests, so session state can affect subsequent operations.
Send message (SSE): POST `/run_sse` — body `{"app_name":"nemo_agent","user_id":"me","session_id":"<sid>","new_message":{"parts":[{"text":"<msg>"}]}}`The skill sends user messages to an external agent-like backend over SSE. The endpoint and authorization are specified, but the data leaves the local chat context.
