ADR 0001 - 通过符号链接 rstsr-agents 实现全生态共享的 agent 配置
rstsr 生态中的所有仓库(rstsr、rstsr-book、rstsr-ffi 以及各 device crate)通过将 .agents/、.claude/ 与 AGENTS.md 符号链接到同一个 rstsr-agents 仓库,来共享同一份 agent 配置。任何仓库都不在本地保留 agent 配置、skills 或 rules。
选择此方案而非拷贝(会失同步)或 workspace-include(agent 运行时不解析 Cargo 风格的路径):相对的 ../ 符号链接是所有 agent 运行时都能识别的唯一机制,且 skills 通过 .claude/skills/ 自动发现。
1. 备选方案
- 启动时拷贝(copy-on-bootstrap)-- 否决(会产生漂移)。
- 各仓库独立配置 -- 否决(没有单一事实来源)。
2. 后果
上游 rstsr-agents 一旦损坏,所有仓库会同时受影响。为求简洁而接受这一权衡。
3. 修订 (2026-09-06)
- 链接直接指向同级仓库 (
.claude -> ../rstsr-agents、CLAUDE.md -> ../rstsr-agents/AGENTS.md等),不再经由 pack 根目录的中转链接;rstsr-agents 中的agent-setup技能 (skills/agent-setup/scripts/link.sh) 负责创建与修复。每个仓库及 pack 根目录统一使用同样的四个链接。 - 按仓库覆盖配置的机制层现已存在,依托被 gitignore 的
*.local*通配模式:AGENTS.local.md(开发者个人指引,在AGENTS.md/CLAUDE.md之外补充阅读) 与settings.local.json(放在 rstsr-agents 内的个人 Claude Code 设置)。 - 安装说明见 AI 智能体工作流 页面。