关于 setup-rules
setup-rules 是用于配置 Agent 项目规则的技能,通过访谈收集选择,再按固定顺序组装约定文件并安装所选适配器、子 Agent 和敏感文件限制。它还提供仅更新现有安装内容的模式。
主要功能
- 01交互式收集规则与组件选择
- 02按固定顺序组装约定文件
- 03安装所选 Agent 与编辑器适配器
- 04合并敏感文件访问限制
- 05更新已安装内容并保留未匹配章节
适用场景
- 01为项目初始化 Agent 约定
- 02按需配置 Cursor 或 Antigravity 适配器
- 03限制 Agent 访问指定敏感文件
- 04从当前资源更新现有规则配置
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ jinsyin/ skills --skill setup-rules安装后在 Claude Code 中输入/setup-rules确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
assets/skillswassets/adapters/antigravity/gemini.mdassets/adapters/claude/agents/superpowers-final-reviewer.mdsuperpowers-fixer.mdsuperpowers-implementer.mdsuperpowers-re-reviewer.mdsuperpowers-task-reviewer.mdassets/adapters/codex/agents/superpowers-final-review.tomlsuperpowers-fixer.tomlsuperpowers-implementer.tomlsuperpowers-re-reviewer.tomlsuperpowers-task-reviewer.tomlassets/adapters/cursor/hooks.jsonassets/adapters/cursor/agents/general-purpose.mdsuperpowers-final-reviewer.mdsuperpowers-fixer.mdsuperpowers-implementer.mdsuperpowers-re-reviewer.mdsuperpowers-task-reviewer.mdassets/adapters/cursor/hooks/enforce-subagent-model.shassets/adapters/cursor/rules/subagent-model-policy.mdcassets/conventions/core.mddesign.mdgsd.mdkarpathy.mdmatt.mdponytail.mdsuperpowers.mdvibecoding.mdassets/templates/prototype/AGENTS.md详细介绍
setup-rules
组装,绝不编写。约定原样保存在 assets/conventions/ 中;按固定顺序逐字节拼接所选文件。将敏感文件限制合并到原生 Agent 配置中,不要替换无关设置。
模式:setup-rules → 工作流;setup-rules update → 更新。
工作流需要进行交互式访谈:提问、等待、澄清,并在写入前确认最终清单。绝不根据项目证据或默认值推断可选项。每轮最多提出 4 个重点问题;有歧义的项目保持待定。
| 类别 | 来源 | 目标 | 条件 |
|---|---|---|---|
| 约定 | assets/conventions/*.md | CLAUDE.local.md | core 必选;其他可分别选择 |
| 子 Agent | assets/adapters/<tool>/agents/ | .<tool>/agents/ | 按工具/工作流 |
| Cursor 适配器 | assets/adapters/cursor/rules/、assets/adapters/cursor/hooks/、assets/adapters/cursor/hooks.json | .cursor/rules/、.cursor/hooks/、.cursor/hooks.json | 可分别选择 |
| Antigravity 适配器 | assets/adapters/antigravity/gemini.md | GEMINI.md | 可单独选择 |
| skillsw | assets/skillsw | skillsw(项目根目录,可执行) | 可单独选择 |
| 敏感文件限制 | references/sensitive-file-access.md | 原生 Agent 配置 | 默认集合加可选额外项 |
约定顺序固定:core → design → vibecoding → ponytail → karpathy → gsd → matt → superpowers。跳过未选文件。
约定文件:
assets/conventions/core.mdassets/conventions/design.mdassets/conventions/vibecoding.mdassets/conventions/ponytail.mdassets/conventions/karpathy.mdassets/conventions/gsd.mdassets/conventions/matt.mdassets/conventions/superpowers.md
子 Agent 包:
| Agent 包 | 来源 | 项目目标路径 | 条件 |
|---|---|---|---|
| Cursor 通用型 | assets/adapters/cursor/agents/general-purpose.md | .cursor/agents/general-purpose.md | 可单独选择 |
| Superpowers Agent | assets/adapters/<tool>/agents/superpowers-* | .<tool>/agents/ | 仅在选择 Superpowers 时 |
Cursor 适配器映射:
| 适配器文件 | 项目目标路径 |
|---|---|
assets/adapters/cursor/rules/subagent-model-policy.mdc | .cursor/rules/subagent-model-policy.mdc |
assets/adapters/cursor/hooks/enforce-subagent-model.sh | .cursor/hooks/enforce-subagent-model.sh |
assets/adapters/cursor/hooks.json | 合并到 .cursor/hooks.json |
Cursor 适配器仅限制 Cursor 子 Agent 的 model 和 effort。它并非 Superpowers 专用;SDD 只是可能创建 Cursor 子 Agent 的一种工作流。是否选择此适配器,与是否选择 assets/adapters/cursor/agents/ 下的 Agent 定义互不相关。不要创建 Superpowers 专用的模型规则、命令、包装器或模型配置目录。
Antigravity 适配器会将 assets/adapters/antigravity/gemini.md 复制到项目根目录下的 GEMINI.md。该文件包含通用、可组合的规则。
skillsw 封装了 npx skills:./skillsw clean install 会清理过时的技能,然后从 skills-lock.json 恢复;clean/install 可分别运行任一部分;其他参数会原样传递。
工作流
1. 定位项目根目录。 Git 根目录,否则使用工作目录;用户指定的路径优先。
2. 从 Core 开始访谈。 完整打印 assets/conventions/core.md。询问是否要加入可选约定(Design、Vibecoding、Ponytail、Karpathy、GSD 和 Superpowers),简要概述每项;仅在用户会使用 GSD/Superpowers 时才提供这两项。等待回复。
3. 询问是否选择 Cursor 通用型。 单独询问是否要将 assets/adapters/cursor/agents/general-purpose.md 安装到 .cursor/agents/general-purpose.md。
4. 若选择了 Superpowers,询问是否选择其子 Agent。 仅提供 assets/adapters/<tool>/agents/ 下有文件的包;允许任意组合,并将每个匹配项复制到 .<tool>/agents/。
5. 如果访谈中涉及 Cursor 子 Agent,请询问是否需要 Cursor 适配器。 说明它会为每个 Cursor 子 Agent 安装模型/effort 规则和默认拒绝钩子。
6. 询问是否需要 Antigravity 适配器。 询问是否要将 assets/adapters/antigravity/gemini.md 安装为项目根目录下的 GEMINI.md。
7. 独立询问是否需要 skillsw。 询问是否要将 assets/skillsw 安装为项目根目录下的 skillsw。
8. 收集敏感文件。 预选每个名为 .env、.env.dev、.env.test 或 .env.prod 的项目文件。询问是否还需添加其他相对于项目目录的文件或目录。留空表示仅包含这一组文件;只有明确选择退出时才移除。切勿据此推断其他文件,也不要读取受保护内容。遵循敏感文件访问控制。
9. 询问 Git 跟踪设置。 对每个适用的 .<tool>/、.agent/(Antigravity)和 .agents/,默认跟踪除其 skills/ 子目录外的所有内容——将这些确切目录添加到 .gitignore,并取消跟踪其中已跟踪的文件。只询问:保留默认设置,还是按目录自定义;仅在用户提出要求时使用自定义设置。如果存在 skills-lock.json,且最终忽略了 skills,还要计划添加以下 skills-lock 条目:
-
保持
skills-lock.json为跟踪状态并对其运行git add;恢复时会根据它重新构建 skills。 -
将此区块添加到
.worktreeinclude,以便 Claude Code/Codex 将 skills 复制到新的工作树;如果也复制.claude/skills/,Claude Code 就会停止读取主检出目录中的内容。如果条目已存在且未注释,则添加注释:# 将已安装的 skills 复制到新的工作树;省略 .claude/skills/,以便 Claude Code 读取主检出目录中的内容 /.agents/skills/ -
如果
.cursor/适用,则将mkdir -p .agents && cp -R "$ROOT_WORKTREE_PATH/.agents/skills" .agents/添加到.cursor/worktrees.json的setup-worktree-unix中。
10. 确认清单。 列出输出内容、敏感目标、外部设置、每个目录的 Git 选择、确切的忽略条目、取消跟踪的文件,以及第 9 步的 skills-lock 条目。写入前先确认。
11. 组装并写入 CLAUDE.local.md。 始终按固定顺序用选定的文件替换该文件;不要读取或保留旧文件。添加末尾空行,并验证结果与所选内容的拼接一致。
12. 安装选定的子 Agent、适配器和规则。 仅复制选定的 Agent 文件和确切的适配器映射;切勿递归复制 assets/adapters/<tool>/ 目录。按需创建目标目录,并逐字节复制文件。对于 Antigravity 适配器,将 assets/adapters/antigravity/gemini.md 复制到项目根目录下的 GEMINI.md。对于 skillsw,将 assets/skillsw 复制到项目根目录下的 skillsw 并运行 chmod +x。将选定的 Cursor 钩子合并到现有 .cursor/hooks.json,不得删除无关钩子。替换不同的现有文件前,先展示冲突并征求确认;切勿静默覆盖正在编辑的内容或删除无关文件。
13. 应用 Git 决策。 添加已确认的忽略条目,并对拒绝跟踪的文件运行 git rm -r --cached,保留本地文件和无关规则。应用第 9 步的 skills-lock 条目,并合并到现有 .worktreeinclude/.cursor/worktrees.json,不得删除行或命令。遇到未管理的活动文件时停止;切勿重写历史、删除工作树文件,或在未获授权时提交/推送。
14. 安装敏感文件限制。 按照参考文档合并已确认的拒绝规则。保留无关或更严格的设置;遇到不兼容的策略时停止。报告无法强制执行的 Antigravity UI 和 Cursor 终端/MCP 路径。
15. 确保存在 CLAUDE.md 和 AGENTS.md。 保持现有文件不变。否则,创建 CLAUDE.md,内容仅为 # Project Conventions;创建 AGENTS.md,内容必须严格如下:
@CLAUDE.local.md
@CLAUDE.md
16. 验证并报告。 解析已更改的 JSON/TOML,运行可用的离线配置加载检查,并在不读取机密信息的前提下测试忽略匹配。报告选择项、变更、受保护路径、限制、Git 决策和冲突;如果技能被忽略,请指向 Core 的 ### Skills 还原命令,以供全新克隆使用。
更新
仅从当前资源刷新已安装的项目,无需询问:调用 update 即表示预先授权所有覆盖,优先于工作流和参考文档中的所有询问、确认或暂停并询问步骤。新选择的项目需要完整执行 setup-rules。跳过工作流步骤 2–10、13、15。
1. 根目录。 同工作流 1;如果缺少 CLAUDE.local.md,则停止。
2. 检测。 将 CLAUDE.local.md 的 H2 标题与规范的首个 H2 标题匹配;已有目标表示子 Agent、适配器/skillsw 已安装;已有 deny 项表示敏感目标。保留每个未匹配的 H2 章节,并按原有顺序追加到末尾,以免丢失用户内容。
3. 写入。 将目标与资源进行差异比较,并跳过相同项。按固定顺序重建 CLAUDE.local.md,并附加保留的章节;逐字节复制 agents、适配器/skillsw,并确保 skillsw 保持可执行;仅替换 .cursor/hooks.json 中属于此技能的钩子;重新合并现有敏感目标。如果配置无法解析或策略不兼容,则跳过该目标并报告。
4. 报告。 同工作流 16,另加已覆盖文件、保留的未匹配章节和已跳过目标。