SpexCode¶
可计算的 spec 漂移。
SpexCode 是一个基于 git 的 spec 树和 coding agent 会话管理器。
天下苦「spec 漂移」久矣。spec 驱动开发(SDD)的思路是先写 spec,再让 agent 照着实现。难点不在写 spec,而在写完之后:代码一轮又一轮地改,spec 往往只在第一次被认真对待,很快就和代码对不上。过期的 spec 不再约束任何东西,只剩一份看上去可信的旧文档,而它什么时候开始不对的,没有任何东西会提醒你。
常见的对策是靠工作流:规定先改 spec 再改代码,每一步都走流程。SpexCode 不靠流程,而是把漂移变成 git 能算出来的事实。每个 spec 写明自己管辖哪个文件或函数。之后的 commit 改了这段代码却没动 spec,SpexCode 会指出是哪个 spec、哪个 commit。装了钩子以后,改到有锚点的函数的提交会被拦下,直到有人更新 spec,或写明它为什么仍然成立。
完整的规则见让 spec 与代码保持同步。
一个项目,三层¶
- spec 资产(L0)把意图和代码放在一起,是普通的、可以 review 的 git 文件,离线可用,不需要服务器或 dashboard。
- session 基座(L1)给每个 agent 一个自己的分支和 worktree,有明确的生命周期状态,合并提议由人来 review。
- dashboard(L2)读的是同一份数据:图谱、session、issue 和实时终端。它能做的事,CLI 都能做。
每一层单独拿出来都有用。可以先在一个仓库里只用 spec 树,等并行的工作多起来,再加上 session 或 dashboard。
从你正在用的 agent 开始¶
Claude Code 和 Codex 的 atlas 插件会读整个仓库,写出第一版 spec 树,为值得配图的节点画出架构图,最后交回一个可以直接浏览的页面。装好插件后,在任意仓库里运行 /atlas。PenguinHarness 可以导入同一个 skill。各种安装方式见快速上手,用这种方式画出来的开源仓库见 Flatcode。
延伸阅读¶
快速上手讲插件和 CLI 两条路。与 Agent 协作讲直接使用、托管 session 和 dashboard。提示词与指南合集收录了系统契约、CLI 帮助、hooks、skills 和 review 指导,Reference 则直接投影自 SpexCode 自己的 spec 树。