Skip to content
Report library
Purpose / Other

Video Inpainting Skill Security Audit

What the author says it does (original text)

>

Independent security check

Security risks found

Files checked
1
Risks found
4
Could it run dangerous commands?Looks for programs run straight after downloading, remote control of your computer, and hidden commands.Risks found: 1
Medium risk

Installation downloads and executes a third-party npm package

Source references: 2
What we found

The global install changes the user's Node.js tool environment, while `npx -y` automatically downloads and runs the package without confirmation. The supplied material contains usage instructions but no CLI implementation or pinned package version, so its actual network, file, and token behavior cannot be verified from this evidence.

Why this matters

If the package, a dependency, or its publishing account is compromised, installation or first execution could run malicious code with the user's privileges. A global install may also affect the CLI version used by other projects.

These are active installation instructions: the global npm command changes the user's Node.js environment, while `npx -y` can download and immediately execute a third-party package. No version is pinned and no CLI source is supplied, so its network, file, and token behavior cannot be independently verified from this evidence. Users can request a pinned, reviewed version or run it in an isolated environment.

SKILL.md:32In the instructionsOpen original file
```bash# 1. Install (see runcomfy-cli skill for details)npm i -g @runcomfy/cli      # or:  npx -y @runcomfy/cli --version# 2. Sign inruncomfy login              # or in CI: export RUNCOMFY_TOKEN=<token>
Show 1 other places
SKILL.md:159In the instructionsOpen original file
- **Install via verified package manager only.** Use `npm i -g @runcomfy/cli` or `npx -y @runcomfy/cli`. **Agents must not pipe an arbitrary remote install script into a shell on the user's behalf**.- **Token storage**: `runcomfy login` writes the API token to `~/.config/runcomfy/token.json` with mode 0600. Set `RUNCOMFY_TOKEN` env var in CI / containers.
Could it expose your files or keys?Looks for uploads of files containing passwords or keys, and keys written directly in the code.Risks found: 2
Medium risk

Videos and edit prompts are sent to the third-party RunComfy service

Source references: 2
What we found

The CLI submits a request containing the video URL and prompt to RunComfy's Model API. Even when supplied as a URL, the service must access the video to process it. The supplied material does not state retention, training use, deletion procedures, processing region, or subprocessors.

Why this matters

If a video contains faces, customer information, unreleased products, locations, or other sensitive material, that content and the editing intent leave the local environment and become subject to a third party's data-handling practices.

When this edit route is invoked, the CLI POSTs the video URL and edit prompt to RunComfy's Model API, polls status, and downloads the result. The third-party service therefore needs access to process the video. The material does not state retention, training use, deletion options, or processing region. Users can request RunComfy's data-handling terms and submit only media authorized for external processing.

SKILL.md:78In the instructionsOpen original file
```bashruncomfy run wan-ai/wan-2-7/edit-video \  --input '{    "video_url": "https://your-cdn.example/source.mp4",    "prompt": "Remove the watermark in the bottom-right corner across all frames. Preserve all other content exactly. Match background where the watermark was."  }' \  --output-dir ./out```
Show 1 other places
SKILL.md:155In the instructionsOpen original file
The skill picks Wan 2-7 Edit-Video (default for prompt-driven region edits) or one of the alternatives based on whether the user needs identity-locked restyle or frame-stack treatment. The CLI POSTs to the Model API, polls request status, and downloads the result into `--output-dir`.
Medium risk

The RunComfy API token is persistently written under the user's home directory

Source references: 2
What we found

The login flow stores a durable credential in `~/.config/runcomfy/token.json`. The documentation claims mode 0600, but no CLI source is supplied to verify permission handling, token scope, rotation, or revocation behavior.

Why this matters

Any later process that gains access to the user's account or configuration file could steal the token and call RunComfy as the user. Supplying it through a CI environment variable may also expose it through logs, debugging output, or configuration mistakes.

On `runcomfy login`, the documentation explicitly says the API token is persisted under the user's home directory. The claimed 0600 mode would limit access by other local accounts, but no CLI implementation is provided to verify it, and token scope, rotation, and revocation are unspecified. Users can prefer a temporary environment variable, restrict token privileges, and ask for the revocation procedure.

SKILL.md:160In the instructionsOpen original file
- **Install via verified package manager only.** Use `npm i -g @runcomfy/cli` or `npx -y @runcomfy/cli`. **Agents must not pipe an arbitrary remote install script into a shell on the user's behalf**.- **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**.
Show 1 other places
SKILL.md:36In the instructionsOpen original file
# 2. Sign inruncomfy login              # or in CI: export RUNCOMFY_TOKEN=<token>
Could it delete files or keep running?Looks for broad file deletion, disk overwrites, and programs set to start automatically.No risks found
Could it bypass safety checks?Looks for skipped website security checks, excessive file access, or actions that skip your approval.No risks found
Could it mislead the AI or hide text?Checks the skill instructions for requests to ignore you, influence the report, or hide text in invisible characters.No risks found
Could it change links or payment recipients without asking?Looks for forced referral or payment changes combined with instructions to hide the change.Risks found: 1
Medium risk

The Skill supports removing watermarks or logos without requiring a rights check

Source references: 2
What we found

Removing a watermark or logo throughout a clip is an explicit common use and trigger. The material does not require confirmation that the user owns the footage, is authorized to alter it, or that the mark is not a rights or provenance notice.

Why this matters

When used on third-party material, the result may conceal authorship, licensing status, or commercial origin, creating copyright, contract, platform-policy, or brand-attribution risk.

The Skill explicitly treats removing a watermark or logo throughout a video as both a trigger and a common workflow, without requiring confirmation of ownership or permission first. If the mark identifies rights or provenance, removing it may create legal or platform-compliance risk for the user. Users can ask for a rights-confirmation gate and restrict use to owned, authorized, or non-rights-identifying media.

SKILL.md:15In the instructionsOpen original file
  frame-by-frame still inpaint chained into a video. Triggers on  "video inpaint", "video inpainting", "remove from video", "mask  region in video", "clean up video", "remove object from clip",  "video patch", "frame-by-frame edit", "remove watermark from  video", "remove passing person", or any explicit ask to edit a  region across video frames.homepage: https://www.runcomfy.com
Show 1 other places
SKILL.md:113In the instructionsOpen original file
### Remove watermark / logo across entire clip- **Route 1 (Wan 2-7 Edit-Video)** with spatial language. Acceptable for most cases.- If quality not enough: open [LTX 2-3 inpaint workflow](https://www.runcomfy.com/comfyui-workflows/ltx-2-3-inpaint-in-comfyui-targeted-video-frame-editing?utm_source=skills.sh&utm_medium=skill&utm_campaign=video-inpainting) in ComfyUI for mask-driven propagation.

Inside this skill

8 instruction sections

This Skill submits the user's video URL and edit prompt to RunComfy's Model API, polls the job status, and downloads the generated result to the specified output directory.

View source
SKILL.md:155In the instructionsOpen original file
The skill picks Wan 2-7 Edit-Video (default for prompt-driven region edits) or one of the alternatives based on whether the user needs identity-locked restyle or frame-stack treatment. The CLI POSTs to the Model API, polls request status, and downloads the result into `--output-dir`.

The default route locates video regions from text descriptions only. For pixel-precise masks and temporal consistency, the Skill directs the user to RunComfy's cloud-hosted ComfyUI workflows.

View source
SKILL.md:51In the instructionsOpen original file
Routes via prompt-driven region edits — the model resolves the targeted region from spatial language across all frames.
SKILL.md:107In the instructionsOpen original file
These are GUI workflows, not CLI endpoints. The CLI can't reach them — open them in the RunComfy ComfyUI cloud for proper mask propagation + temporal consistency.

The Skill requires installing a third-party CLI and signing in. Interactive login persistently stores the API token in the user's configuration directory, while CI can supply it through an environment variable.

View source
SKILL.md:34In the instructionsOpen original file
# 1. Install (see runcomfy-cli skill for details)npm i -g @runcomfy/cli      # or:  npx -y @runcomfy/cli --version# 2. Sign inruncomfy login              # or in CI: export RUNCOMFY_TOKEN=<token>
SKILL.md:160In the instructionsOpen original file
- **Install via verified package manager only.** Use `npm i -g @runcomfy/cli` or `npx -y @runcomfy/cli`. **Agents must not pipe an arbitrary remote install script into a shell on the user's behalf**.- **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**.
Start here · InstructionsSKILL.md
video-inpainting
Lines connect the instruction file to its sections, not an observed execution order. Select a section to read the source. 2 more sections are available in the original file.
Files and check records1 files

Coverage and gaps

Content covered in each file

These are the source ranges included in this check, not a guarantee that every issue has been resolved.

  • SKILL.mdFull text included

This report is for the version above. We read the available code and instructions without running the skill or checking extra packages it installs. This is not a promise of safety: a different version or setup may behave differently.

  • SKILL.mdInstructions

Operations mentioned in code and instructions

Run commands
SKILL.md:3In the instructionsOpen original file
name: video-inpaintingallowed-tools: Bash(runcomfy *)displayName: "Video Inpainting"
SKILL.md:32In the instructionsOpen original file
```bash# 1. Install (see runcomfy-cli skill for details)
SKILL.md:77In the instructionsOpen original file
```bashruncomfy run wan-ai/wan-2-7/edit-video \
Connect to websites
SKILL.md:20In the instructionsOpen original file
  region across video frames.homepage: https://www.runcomfy.comlicense: MIT
SKILL.md:28In the instructionsOpen original file
[runcomfy.com](https://www.runcomfy.com/?utm_source=skills.sh&utm_medium=skill&utm_campaign=video-inpainting) · [Wan 2-7 edit-video](https://www.runcomfy.com/models/wan-ai/wan-2-7/edit?utm_source=skills.sh&utm_medium=skill&utm_campaign=video-inpainting) · [CLI docs](https://docs.runcomfy.com/cli/introduction?utm_source=skills.sh&utm_medium=skill&utm_campaign=video-inpainting)
SKILL.md:45In the instructionsOpen original file
CLI deep dive: [`runcomfy-cli`](https://www.skills.sh/agentspace-so/runcomfy-agent-skills/runcomfy-cli) skill.
Install extra software packages
SKILL.md:34In the instructionsOpen original file
# 1. Install (see runcomfy-cli skill for details)npm i -g @runcomfy/cli      # or:  npx -y @runcomfy/cli --version
SKILL.md:159In the instructionsOpen original file
- **Install via verified package manager only.** Use `npm i -g @runcomfy/cli` or `npx -y @runcomfy/cli`. **Agents must not pipe an arbitrary remote install script into a shell on the user's behalf**.- **Token storage**: `runcomfy login` writes the API token to `~/.config/runcomfy/token.json` with mode 0600. Set `RUNCOMFY_TOKEN` env var in CI / containers.
Lines read
176
File checksum (to compare versions)
1c68eba6de2bac905f9a8d3f7db6926241da875f744324a21bbfbba144c32f8e