forge sync 把这个源编译到每个工具的原生配置中。四层是_大脑的表达方式_;编译器是_大脑的交付方式_。
一个源,多个发射器
规则只写一次(source/rules.json);一个确定性编译器 (forge sync) 以每个工具的原生格式发射,附带内容哈希头,因此漂移可检测,重复运行是无操作的。没有任何规则被写两次。规范源由三个文件组成:
四层
每一层都有品牌名,并且跨工具发射。tools —— 模型可调用的能力
tools —— 模型可调用的能力
~/.forge/tools/ → ~/.claude/skills/。模型可调用的 skill,遵循 SKILL.md 标准(name + description 前置元数据)。crew —— 隔离的子代理
crew —— 隔离的子代理
~/.forge/crew/ → ~/.claude/agents/。上下文隔离的子代理,例如 scout、verifier 和 frontend-verifier。guards —— 确定性钩子(唯一具备强制力的层)
guards —— 确定性钩子(唯一具备强制力的层)
~/.forge/guards/ → settings.json 钩子。唯一_强制_而非建议的层。 一个 guard 是模型无法漂移的确定性钩子。CLAUDE.md 中的散文规则被承认后会在压缩之后被遗忘;guard 不会。任何可强制的不变量都属于这里。mcp —— 协议层
mcp —— 协议层
Forge 提供一个 stdio 服务器 (
src/cortex_mcp.js),暴露 19 个 MCP 工具:基座检查 (substrate_check / predict_impact / assumption_gate / …)、记忆的读_与_写 (forge_remember、ledger ratify/retract),以及运维/健康。用 guard 代替散文
模型可以漂移的规则活在散文里;它绝对不能违反的规则活在 guard(确定性 shell 钩子)里。guard 不会在上下文压缩后被遗忘。把每一条可强制的不变量从
CLAUDE.md 中挪到 guard 里,让散文保持精简。这是 Forge 设计中最重要的一条纪律。经过验证的跨工具发射矩阵
Forge 为九个工具发射配置,加上给 Roo Code 与 VS Code 的 MCP 服务器。每一行都对照过厂商文档。
Roo Code 和 VS Code 通过
forge init 拿到 Forge MCP 服务器(.roo/mcp.json、.vscode/mcp.json),而非规则文件。