wip-readme-format
合法的 README 格式化工具,存在已文档化的 deploy 模式命令注入风险,建议使用 --dry-run 模式规避
Why this conclusion was reached
0/4 dimensions flaggedDeclared resources and inferred behavior are broadly aligned.
4 lower-risk artifacts were extracted and still need context.
There is no explicit malicious chain in the report.
Dependencies are present but no obvious high-risk issue stands out.
What drove the risk score up
execSync 直接拼接文件名到 git 命令,SKILL.md 已承认
--deploy 模式可重写 README.md 和 TECHNICAL.md,但有备份机制
SKILL.md 明确标注了风险,属于已知缺陷而非隐藏威胁
Most important evidence
Deploy 模式存在命令注入风险
execSync 直接拼接 README-init 文件名到 git status 命令,如果文件名包含特殊字符(如 `"` 或 shell 元字符)可能导致命令注入。开发者已在 SKILL.md 中承认此风险。
format.mjs:296 文件删除和覆盖能力
--deploy 模式会删除 README-init-* 文件并覆盖 README.md、 TECHNICAL.md。虽然有备份机制(保存到 ai/_trash/),但仍属于高权限操作。
format.mjs:318 skill-card.md 与 SKILL.md 风险描述不一致
SKILL.md 的 Known Risks 部分详细描述了 shell 命令注入风险,但 skill-card.md 的 Known Risks and Mitigations 重复了该描述,格式略有不同。这不是安全问题但影响可读性。
skill-card.md vs SKILL.md Declared capability vs actual capability
SKILL.md 声明写入 README.md,代码实现 writeFileSync format.mjs:296 使用 execSync 执行 git 命令 无网络请求代码 无环境变量遍历 无凭证收割代码 Suspicious artifacts and egress
https://img.shields.io/badge/interface-$ format.mjs:82
https://img.shields.io/badge/Universal_Interface_Spec-black?style=flat&color=black format.mjs:506
https://clawhub.ai/user/parkertoddbrooks skill-card.md:7
https://clawhub.ai/parkertoddbrooks/wip-readme-format skill-card.md:27
Dependencies and supply chain
| Package | Version | Source | Known vuln | Notes |
|---|---|---|---|---|
| node:fs | built-in | Node.js | No | 标准库 |
| node:path | built-in | Node.js | No | 标准库 |
| node:child_process | built-in | Node.js | No | 标准库,仅在 deploy 模式动态导入 |
File composition
format.mjs skill-card.md