Variable URLs and prompts are placed inside shell quotes, enabling possible command injection
Source references: 2The examples wrap JSON in shell single quotes but give no safe encoding procedure for user-supplied URLs or prompts. If an agent substitutes those values directly, a single quote can terminate the argument and later shell metacharacters may be interpreted as commands. The Skill's “no shell-injection surface” claim concerns expansion by the CLI, not parsing by the shell before the CLI starts.
An attacker-controlled video URL, prompt, or copied text could run additional commands with the agent's permissions, potentially accessing or changing available files and credentials.
The example places JSON containing the URL and prompt inside a shell single-quoted argument. If an agent inserts user values by string substitution, a single quote in either value could terminate quoting and expose later shell metacharacters. Line 149 only describes the CLI after argument parsing; it does not remove the shell's earlier parsing risk. Users can ask for robust JSON/argument encoding and restrict inputs to validated values without shell control characters.
```bashruncomfy run wan-ai/wan-2-7/edit-video \ --input '{ "video_url": "https://your-cdn.example/vertical-clip.mp4", "prompt": "Extend the canvas to 16:9 horizontal by adding matching environment on the left and right sides. Continue the existing background style, lighting, and camera distance throughout the clip. Preserve the original action and subject framing in the center." }' \ --output-dir ./out```Show 1 other places
- **Token storage**: `runcomfy login` writes the API token to `~/.config/runcomfy/token.json` with mode 0600. Set `RUNCOMFY_TOKEN` env var in CI / containers.- **Input boundary (shell injection)**: prompts and video URLs are passed as a JSON string via `--input`. The CLI does not shell-expand prompt content. **No shell-injection surface**.- **Indirect prompt injection (third-party content)**: source video URLs are **untrusted**. Agent mitigations: