跳转到正文
报告库
用途分类 / 其他用途

Ace Step Skill 安全审计

作者说它能做什么(原文)

>

第三方安全检查结论

发现安全风险

已检查文件
1
发现的风险
4
会不会运行危险命令?检查是否下载程序后直接运行、让他人远程控制电脑,或藏起要运行的命令。发现 1 项风险
中风险

安装并认证第三方 npm CLI 会让其代码以用户权限运行并接触账户令牌

原文依据:4 处
发现了什么

说明要求通过全局 npm 安装或 `npx -y` 自动下载并执行 `@runcomfy/cli`,随后使用该程序登录。提供的材料不包含 CLI 实现,因此无法核验其安装脚本、文件访问范围或令牌处理是否符合这里的声明。

为什么需要注意

如果软件包、发布账户或依赖项被入侵,执行的代码可能读取当前用户可访问的文件或环境变量,并可能盗用 RunComfy 令牌和账户额度。

说明明确要求下载并执行第三方 npm CLI,然后用其登录或向其提供环境变量令牌。这是实现音乐服务所需且已披露的操作,但 CLI 源码未在材料中,无法独立核验其安装脚本、文件访问或令牌保护声明。用户可在隔离环境运行、固定版本,并限制令牌权限与余额。

SKILL.md:38来自说明文档打开原文件
**Step 1 — install** (one of, see the `runcomfy-cli` skill for details):```bashnpm i -g @runcomfy/cli         # global installnpx -y @runcomfy/cli --version # zero-install```**Step 2 — sign in** (or set `RUNCOMFY_TOKEN` env var in CI / containers):```bashruncomfy login```
查看另外 3 个位置
SKILL.md:322来自说明文档打开原文件
- **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** — if the operator wants the curl-pipe path documented at `docs.runcomfy.com/cli/install`, they should review the script first.- **Token storage**: `runcomfy login` writes the API token to `~/.config/runcomfy/token.json` with mode 0600. Set `RUNCOMFY_TOKEN` env var to bypass the file in CI / containers. Never echo the token into a prompt, log it, or check it in.- **Input boundary (shell injection)**: prompts and audio URLs are passed as a JSON string via `--input`. The CLI does not shell-expand prompt content; it transmits the JSON body directly to the Model API over HTTPS. **No shell-injection surface from prompt content**.
SKILL.md:41来自说明文档打开原文件
```bashnpm i -g @runcomfy/cli         # global installnpx -y @runcomfy/cli --version # zero-install```
SKILL.md:45来自说明文档打开原文件
**Step 2 — sign in** (or set `RUNCOMFY_TOKEN` env var in CI / containers):```bashruncomfy login```
会不会泄露文件和密钥?检查是否发送含密码或密钥的文件,以及代码里是否直接写了密钥。发现 1 项风险
中风险

音频 URL、创作提示和歌词会发送给远程 RunComfy 服务

原文依据:3 处
发现了什么

CLI 会把匹配的 JSON 请求体 POST 到 RunComfy Model API。编辑功能要求提供音频 HTTPS URL,因此远程服务会获知该 URL,并需要访问其指向的音频才能完成处理;标签和歌词也位于同一请求体中。材料没有说明服务端保留、再利用或删除政策。

为什么需要注意

未发布音乐、受保护歌词、创作方向或带访问凭证的签名 URL 可能向第三方披露。若 URL 权限过宽或有效期过长,还可能扩大源音频的访问窗口。

生成请求会把 JSON 内容发送到 RunComfy Model API;编辑请求的 JSON 包含音频 URL、标签及可选歌词。因此服务会获知这些内容,并可能需要获取 URL 指向的音频。材料只声明传输端点和 HTTPS,未提供服务端保留、训练再利用或删除政策;敏感或未授权素材不应在缺少相应政策确认时提交。

SKILL.md:151来自说明文档打开原文件
|---|---|---|---|---|| `audio` | string | yes | — | HTTPS URL to MP3 / WAV / FLAC. Up to 60 min || `tags` | string | yes | — | Comma-separated tags steering the regenerated segment || `start_time` | float | no | — | Start of editable segment, in seconds (0–240) || `start_time_relative_to` | enum | no | `start` | `start` or `end` — anchor for `start_time` || `end_time` | float | no | `30` | End of editable segment, in seconds (0–240) || `end_time_relative_to` | enum | no | `start` | `start` or `end` — anchor for `end_time` || `lyrics` | string | no | — | Lyrics for the regenerated segment. Blank = model writes; `[inst]` = no vocals || `seed` | int | no | `-1` | Reproducibility |
查看另外 2 个位置
SKILL.md:317来自说明文档打开原文件
The skill picks one of the four ACE Step endpoints based on the user's intent — generate from scratch (t2a base or 1.5), regenerate a time range (inpaint), or extend the canvas (outpaint) — and invokes `runcomfy run` with the matching JSON body. The CLI POSTs to the RunComfy Model API, polls request status, and downloads the generated audio file into `--output-dir`.
SKILL.md:328来自说明文档打开原文件
- **Lyrics provenance**: if the user supplies lyrics, confirm they have the rights. Generating music around copyrighted lyrics is the operator's responsibility.- **Outbound endpoints (allowlist)**: only `model-api.runcomfy.net` and `*.runcomfy.net` / `*.runcomfy.com`. No telemetry, no callbacks.- **Generated-file size cap**: the CLI aborts any single download > 2 GiB.
会不会删除文件或一直在后台运行?检查是否大范围删除文件、改写磁盘,或设置自动启动。未发现风险
会不会绕过安全保护?检查是否跳过网站安全验证、开放过多文件权限,或取消操作前的确认。发现 1 项风险
低风险

安装命令没有固定依赖版本

原文依据:2 处
发现了什么

安装命令没有指定依赖版本。同样的命令以后可能下载不同代码,你实际安装的内容可能与这次检查时不同。

为什么需要注意

即使命令和报告没变,以后安装时也可能下载到另一份代码。

安装 Skill 和底层 CLI 的命令都未固定版本,因此未来执行可能取得与本次材料不同的代码。这里是明确展示的一次性安装步骤,并非 Skill 运行时暗中安装;用户可要求作者提供锁定版本及校验值。

SKILL.md:33来自说明文档打开原文件
```bashnpx skills add agentspace-so/runcomfy-agent-skills --skill ace-step -g```
查看另外 1 个位置
SKILL.md:41来自说明文档打开原文件
```bashnpm i -g @runcomfy/cli         # global installnpx -y @runcomfy/cli --version # zero-install```
会不会误导 AI 或隐藏内容?检查工作说明是否要求 AI 忽略你的指令、干扰检查结果,或夹带看不见的文字。未发现风险
会不会偷偷改推广链接或收款方?检查是否强制替换推广链接或收款对象,同时要求隐瞒更改。发现 1 项风险
低风险

每次远程生成都会产生按时长计算的费用,批量或链式调用会累积

原文依据:5 处
发现了什么

该 Skill 使用付费端点,并会根据意图在每秒 0.0002 美元和 0.0003 美元的模型之间选择。文档还建议对超过单次限制的任务链式调用,因此实际总费用取决于版本、时长、重试次数和批量规模。

为什么需要注意

单次费用较低,但大量草稿、多语言版本、自动重试或链式扩展可持续消耗账户余额;选择 1.5 版本的费用高于基础版本。

文档明确给出按生成秒数计费,并建议批量生成以及在超过单次时长时链式调用,所以多首、长音频或多次尝试会累积费用。材料将 1.5 描述为特定需求的选择,而非无条件自动升级;也没有证据表明 CLI 会自动重试。用户可要求每次调用前显示模型、时长和预计总价,并设置账户消费上限。

SKILL.md:67来自说明文档打开原文件
**ACE Step 1.5 (text-to-audio)** — `acestep-ai/ace-step-1.5/text-to-audio`> Latest ACE Step generation. **50+ language vocal support**, refined structured-lyric handling, otherwise same shape as base. Slightly higher cost ($0.0003/s vs $0.0002/s).> Pick for: multilingual lyrics, hero-quality vocal tracks, vocal songs that need clean section structure.> Avoid for: cost-sensitive batches where the base model is good enough.
查看另外 4 个位置
SKILL.md:102来自说明文档打开原文件
**Pricing**: ACE Step $0.0002/s · ACE Step 1.5 $0.0003/s. 60 s ≈ $0.012 / $0.018; 240 s ≈ $0.048 / $0.072.
SKILL.md:82来自说明文档打开原文件
**ACE Step (audio-outpaint)** — `acestep-ai/ace-step/audio-outpaint`> Extend an existing track **bidirectionally** — add intro before, outro after, or both.> Pick for: lengthening a 30 s draft into a 2 min cut, adding a fade-in, building a longer arrangement around an existing hook.> Avoid for: extending a track past 4 min total — chain calls instead.
SKILL.md:85来自说明文档打开原文件
> Pick for: lengthening a 30 s draft into a 2 min cut, adding a fade-in, building a longer arrangement around an existing hook.> Avoid for: extending a track past 4 min total — chain calls instead.
SKILL.md:277来自说明文档打开原文件
### Cost-sensitive background music library- **Route 1 (ACE Step base)** with varied tag combos, 60–90 s each, `[inst]`

Skill 逻辑拆解

8 个说明模块

该 Skill 通过第三方 RunComfy CLI 登录账户,然后把生成参数发送到 RunComfy Model API,轮询任务并将生成的音频下载到指定目录。

查看原文
SKILL.md:45来自说明文档打开原文件
**Step 2 — sign in** (or set `RUNCOMFY_TOKEN` env var in CI / containers):```bashruncomfy login```
SKILL.md:317来自说明文档打开原文件
The skill picks one of the four ACE Step endpoints based on the user's intent — generate from scratch (t2a base or 1.5), regenerate a time range (inpaint), or extend the canvas (outpaint) — and invokes `runcomfy run` with the matching JSON body. The CLI POSTs to the RunComfy Model API, polls request status, and downloads the generated audio file into `--output-dir`.

它支持从文本生成音乐,以及使用由 HTTPS URL 指定的现有音频进行局部重生成或前后扩展;编辑输入可指向最长 60 分钟的音频。

查看原文
SKILL.md:77来自说明文档打开原文件
**ACE Step (audio-inpaint)** — `acestep-ai/ace-step/audio-inpaint`> Regenerate a **time range** inside an existing track (not mask-based; uses `start_time` / `end_time` in seconds, each anchored to track start or end).> Pick for: fix a bad chorus in the middle, swap the bridge, replace a 20 s section without re-rendering the whole song.> Avoid for: edits that aren't time-bounded — those don't fit the schema.**ACE Step (audio-outpaint)** — `acestep-ai/ace-step/audio-outpaint`> Extend an existing track **bidirectionally** — add intro before, outro after, or both.> Pick for: lengthening a 30 s draft into a 2 min cut, adding a fade-in, building a longer arrangement around an existing hook.
SKILL.md:151来自说明文档打开原文件
|---|---|---|---|---|| `audio` | string | yes | — | HTTPS URL to MP3 / WAV / FLAC. Up to 60 min || `tags` | string | yes | — | Comma-separated tags steering the regenerated segment |

认证令牌可由登录命令持久保存到用户配置目录,或通过 RUNCOMFY_TOKEN 环境变量提供;文档称保存文件权限为 0600。

查看原文
SKILL.md:322来自说明文档打开原文件
- **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** — if the operator wants the curl-pipe path documented at `docs.runcomfy.com/cli/install`, they should review the script first.- **Token storage**: `runcomfy login` writes the API token to `~/.config/runcomfy/token.json` with mode 0600. Set `RUNCOMFY_TOKEN` env var to bypass the file in CI / containers. Never echo the token into a prompt, log it, or check it in.- **Input boundary (shell injection)**: prompts and audio URLs are passed as a JSON string via `--input`. The CLI does not shell-expand prompt content; it transmits the JSON body directly to the Model API over HTTPS. **No shell-injection surface from prompt content**.

请求按生成或扩展的音频时长计费;基础模型标称每秒 0.0002 美元,1.5 版本每秒 0.0003 美元。

查看原文
SKILL.md:102来自说明文档打开原文件
**Pricing**: ACE Step $0.0002/s · ACE Step 1.5 $0.0003/s. 60 s ≈ $0.012 / $0.018; 240 s ≈ $0.048 / $0.072.
从这里开始 · 工作说明SKILL.md
ace-step
连线表示工作说明包含的模块,不是实际运行顺序。点击模块可查看原文。 另有 5 个章节,可在原文件中查看。
文件与检查记录1 个文件

检查范围与遗漏

逐文件查看涉及的内容

下方列出本次涉及的原文范围;纳入检查不代表已查清所有问题。

  • SKILL.md已纳入全文

这份报告只针对上方版本。我们看了拿到的代码和说明文件,没有实际运行 Skill,也没有检查它另外安装的软件包。因此,这不是“保证安全”的承诺;换了版本或使用环境,结果也可能不同。

  • SKILL.md工作说明

代码和说明中提到的操作

运行命令
SKILL.md:4来自说明文档打开原文件
displayName: "ACE Step — Pro Pack on RunComfy"allowed-tools: Bash(runcomfy *)description: >
SKILL.md:32来自说明文档打开原文件
```bashnpx skills add agentspace-so/runcomfy-agent-skills --skill ace-step -g
SKILL.md:40来自说明文档打开原文件
```bashnpm i -g @runcomfy/cli         # global install
连接外部网站
SKILL.md:20来自说明文档打开原文件
  music with ACE Step.homepage: https://www.runcomfy.comlicense: MIT
SKILL.md:28来自说明文档打开原文件
[runcomfy.com](https://www.runcomfy.com/?utm_source=skills.sh&utm_medium=skill&utm_campaign=ace-step) · [ACE Step base](https://www.runcomfy.com/models/acestep-ai/ace-step/text-to-audio?utm_source=skills.sh&utm_medium=skill&utm_campaign=ace-step) · [ACE Step 1.5](https://www.runcomfy.com/models/acestep-ai/ace-step-1.5/text-to-audio?utm_source=skills.sh&utm_medium=skill&utm_campaign=ace-step) · [CLI docs](https://docs.runcomfy.com/cli/introduction?utm_source=skills.sh&utm_medium=skill&utm_campaign=ace-step)
SKILL.md:59来自说明文档打开原文件
CLI deep dive: [`runcomfy-cli`](https://www.skills.sh/agentspace-so/runcomfy-agent-skills/runcomfy-cli) skill.
安装其他软件包
SKILL.md:33来自说明文档打开原文件
```bashnpx skills add agentspace-so/runcomfy-agent-skills --skill ace-step -g```
SKILL.md:42来自说明文档打开原文件
npm i -g @runcomfy/cli         # global installnpx -y @runcomfy/cli --version # zero-install```
SKILL.md:321来自说明文档打开原文件
- **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** — if the operator wants the curl-pipe path documented at `docs.runcomfy.com/cli/install`, they should review the script first.- **Token storage**: `runcomfy login` writes the API token to `~/.config/runcomfy/token.json` with mode 0600. Set `RUNCOMFY_TOKEN` env var to bypass the file in CI / containers. Never echo the token into a prompt, log it, or check it in.
读取了多少行
338
文件校验值(用于核对版本)
b81ea3a56969fd8a9702d8ab47282defefac08f3d173512525d3ebf8251b1926