复合工程
AI技巧和代理使每个单位的工程工作比上个单位容易.
哲学
每个工程单位应使后续单位更加容易,而不是更加困难.
传统发展积累了技术债务。 每个特征都增加了复杂性. 每只虫子修补后留下一点地方知识,以后必须重新发现. 代码库变大,上下文更难被持有,接下来的更改会变慢.
复合工程颠倒了这个。 80%在规划和审查中,20%在执行中:
- 在将代码写入前进行彻底规划
/ce-brainstorm财务报告和审定财务报表/ce-plan - 审查以抓住问题并调整判断
/ce-code-review财务报告和审定财务报表/ce-doc-review - 编纂知识,使其可以重新使用
/ce-compound - 保持高质量,使未来的变化变得容易
关键不是仪式。 关键在于杠杆作用。 一场很好的脑暴使得计划更加清晰. 一个好的计划会让处决变得更小. 一个很好的审查 抓住模式, 不只是虫子。 一个好的复合说明意味着下一个代理人不必从零中吸取同样的教训.
学多点
- 完整内容参考 - 所有代理人和技能
- 复合工程: 如何使用代理码
- 复合工程背后的故事
工作流程
/ce-strategy 循环的上游 -- -- 它将产品的目标问题、方法、人性、度量衡和轨迹作为短长锚锁定在 STRATEGY.md思想,头脑风暴, 和计划 读出来,当它存在, 战略选择流入 特征构思,优先排序,和光谱.
核心循环是: 集思广益要求,计划实施,通过计划工作,审查结果,使学习复杂化,再以更好的背景重复.
使用 /ce-ideate 在循环之前,当你想要代理生成和批评 更大的想法之前,选择一个 脑暴。 它生产出一个排名分明的创意文物,而不是要求,计划或代码.
| 技能 | 目的 |
|---|---|
/ce-strategy | 创建或维护 STRATEGY.md ——产品的目标问题,方法,人物,关键度量,和轨迹. 读取为地基 通过理想,头脑风暴,和计划 |
/ce-ideate | 可选的大画面想法:产生和批判性地评价有根据的想法,然后引导最强者集思广益 |
/ce-brainstorm | 交互 QQA 以思考一个特性或问题, 在规划前写一个合适的大小要求文件 |
/ce-plan | 将特色构想转化为详细的实施计划 |
/ce-work | 用工作树执行计划和任务跟踪 |
/ce-debug | 系统复制失败,追踪根源,并实施补救 |
/ce-code-review | 多代理代码合并前的审查 |
/ce-compound | 使未来工作更容易的文件学习 |
/ce-product-pulse | 生成关于用法,性能,出错和后续的单页,有时间窗口的脉冲报告. 保存到 docs/pulse-reports/ |
/ce-product-pulse 是读侧相伴 -- -- 关于用户实际体验到什么以及产品在特定窗口(24h,7d等)上的表现时间窗口报告,保存到 docs/pulse-reports/ 因此过去的脉冲构成了用户结果的可浏览时间表. 接下来的战略更新和接下来的脑暴 得到真正的信号 锁定到.
每个周期的复合物:脑暴强化计划,计划为未来的计划提供参考,审查抓住更多的问题,规律被记录下来.
快速示例
典型的循环开始于将粗略的想法变成一个要求的doc,然后在将执行交给 /ce-work数字 :
/ce-brainstorm "make background job retries safer"
/ce-plan docs/brainstorms/background-job-retry-safety-requirements.md
/ce-work
/ce-code-review
/ce-compound
对于焦点错误调查:
/ce-debug "the checkout webhook sometimes creates duplicate invoices"
/ce-code-review
/ce-compound
开始
安装后运行 /ce-setup 在任何项目。 它检查你的环境,安装缺失的工具, 和靴子陷阱项目配置.
这个 compound-engineering 插件目前载有37个技能和51个代理。 见 全部内容参考 完整清单.
安装
克劳德代码
/plugin marketplace add EveryInc/compound-engineering-plugin
/plugin install compound-engineering
光标
在光标代理聊天中, 从插件市场安装 :
/add-plugin compound-engineering
或在插件市场中搜索"复合工程".
代码
三步:注册市场,安装代理集,再通过Codex的TUI来安装插件.
-
用 Codex 注册市场 :
codex plugin marketplace add EveryInc/compound-engineering-plugin -
安装复合工程代理 (Codex的插件 spec尚未注册自定义代理) :
bunx @every-env/compound-plugin install compound-engineering --to codex -
通过 Codex 的 TUI 安装插件 : 发射
codex运行/plugins,寻找 复合工程 市场,选择 复合工程 插件,并选择 安装。安装完成后重新启动 Codex。 Codex的CLI可以注册市场,但是它目前没有从添加的市场中曝光插件的插件安装子命令 -- -- 即/pluginsTUI安装是CE技能所需的.
所有三个步骤都需要。 市场注册加TUI安装了处理技能;Bun步骤增加了诸如技能的检讨、研究和工作流程代理 $ce-code-review, (中文(简体) ), $ce-plan,以及 $ce-work 产卵在Codex。 没有代理步骤,授权技能将报告失踪代理.
对于非默认的 Codex 配置文件, 请将每个与 Codex 相關的相關相對相關的相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相關相相相相關相關相關相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相 CODEX_HOME。此示例将 CE 安装到 work 配置文件 :
CODEX_HOME="$HOME/.codex/profiles/work" codex plugin marketplace add EveryInc/compound-engineering-plugin
CODEX_HOME="$HOME/.codex/profiles/work" bunx @every-env/compound-plugin install compound-engineering --to codex
CODEX_HOME="$HOME/.codex/profiles/work" codex
代码内部,运行 /plugins选择 复合工程,然后安装 复合工程。市场步骤只能使插件可用;TUI安装是激活本地CE技能用于该配置的特性.
为本地开发, 请从此退出中注册当前工作树并使用本地 CLI :
CODEX_HOME="$HOME/.codex/profiles/work" codex plugin marketplace add "$PWD"
CODEX_HOME="$HOME/.codex/profiles/work" bun run src/index.ts install ./plugins/compound-engineering --to codex
CODEX_HOME="$HOME/.codex/profiles/work" codex
抬头: 一旦 Codex 的本地插件 spec 支持自定义代理, Bun 代理步骤就会消失. 单装TUI就够了.
如果您先前使用 Bun- only Codex 安装, 在切换前备份 stale CE 文物 :
bunx @every-env/compound-plugin cleanup --target codex
GitHub 副驾驶
对于 VS 代码副驾驶代理插件数字 :
- 运行
Chat: Install Plugin from Source从 VS 代码命令调色板 - 使用
EveryInc/compound-engineering-plugin用于还款 - 选择
compound-engineering当 VS 代码显示此寄存器中的插件时
对于 副驾驶CLI,使用:
副驾驶CLI:
/plugin marketplace add EveryInc/compound-engineering-plugin
/plugin install compound-engineering@compound-engineering-plugin
从壳与 copilot 二进制 :
copilot plugin marketplace add EveryInc/compound-engineering-plugin
copilot plugin install compound-engineering@compound-engineering-plugin
副驾驶 CLI 读取现有的 Claude 兼容插件列表,所以不需要单独的 Bun 安装步骤.
如果您以前使用过旧的 Bun Copilot 安装, 请在切换到本地插件前备份已过时的 CE 文物 :
bunx @every-env/compound-plugin cleanup --target copilot
工厂机器人
从壳与 droid 二进制 :
droid plugin marketplace add https://github.com/EveryInc/compound-engineering-plugin
droid plugin install compound-engineering@compound-engineering-plugin
机器人用途 plugin@marketplace 插件标识; 这里 compound-engineering 是插件,并且 compound-engineering-plugin 是市场名称。 Droid安装了现有的Claude Code兼容插件并自动翻译格式,因此不需要Bun安装步骤.
如果您先前使用过旧的 Bun Droid 安装, 请在切换到本地插件前备份已过时的 CE 文物 :
bunx @every-env/compound-plugin cleanup --target droid
Quen 代码
qwen extensions install EveryInc/compound-engineering-plugin:compound-engineering
Quen代码直接从 GitHub 安装 Claude 代码兼容插件,并在安装过程中转换插件格式,因此不需要 Bun 安装步骤.
如果您以前使用过旧的 Bun Quen 安装, 请在切换到本地扩展前备份已失效的 CE 文物 :
bunx @every-env/compound-plugin cleanup --target qwen
OpenCode、Pi、双子座和基罗
这种repo包括一个Bun/TypeScript安装器,将复合工程插件转换为OpenCode,Pi,双子座CLI和Kiro CLI.
bunx @every-env/compound-plugin install compound-engineering --to opencode
bunx @every-env/compound-plugin install compound-engineering --to pi
bunx @every-env/compound-plugin install compound-engineering --to gemini
bunx @every-env/compound-plugin install compound-engineering --to kiro
Pi 先决条件. Pi不运送原生子剂,所以Pi安装取决于 尼科拜龙/水手 (需要)和建议 edlsh/ pi 任务用户 用于更丰富的屏蔽用户问题:
pi install npm:pi-subagents # required — provides the `subagent` tool used by skills that dispatch parallel agents
pi install npm:pi-ask-user # recommended — provides the `ask_user` tool; skills fall back to numbered options in chat when it is missing
自动检测自定义安装目标并安装到所有目标:
bunx @every-env/compound-plugin install compound-engineering --to all
自定义安装目标在安装过程中运行 CE 遗留清除. 要对特定目标进行人工清理:
bunx @every-env/compound-plugin cleanup --target codex
bunx @every-env/compound-plugin cleanup --target opencode
bunx @every-env/compound-plugin cleanup --target pi
bunx @every-env/compound-plugin cleanup --target gemini
bunx @every-env/compound-plugin cleanup --target kiro
bunx @every-env/compound-plugin cleanup --target copilot # old Bun installs only
bunx @every-env/compound-plugin cleanup --target droid # old Bun installs only
bunx @every-env/compound-plugin cleanup --target qwen # old Bun installs only
bunx @every-env/compound-plugin cleanup --target windsurf # deprecated legacy installs only
清理将已知的 CE 文物移入 a compound-engineering/legacy-backup/ 目标根下的目录.
地方发展
bun install
bun test
bun run release:validate
从本地取出
对于活性开发 - 编辑到插件源被立即反映.
克劳德代码 -- 添加 shell 化名, 因此您的本地副本加载和普通插件 :
alias cce='claude --plugin-dir ~/Code/compound-engineering-plugin/plugins/compound-engineering'
运行 cce 改为 claude 测试您的变化。 您的制作安装没有受到影响.
编码和其他目标 - 运行本地 CLI 以对抗您的退出 :
# from the repo root
bun run src/index.ts install ./plugins/compound-engineering --to codex
# same pattern for other targets
bun run src/index.ts install ./plugins/compound-engineering --to opencode
从被推倒的树枝上
用来测试别人的分行或你自己的分行 从工作树上,不切换出票。 用途 --branch 以复制分支到决定性缓存目录.
地方分支机构未到位:如果树枝只存在于当地的一棵树上,而没有被推倒,则指
--plugin-dir直接在工作树路径取而代之(例如:.claude --plugin-dir /path/to/worktree/plugins/compound-engineering) (中文(简体) ).
克劳德代码 -- 使用 plugin-path 获取缓存的克隆路径 :
# from the repo root
bun run src/index.ts plugin-path compound-engineering --branch feat/new-agents
# Output:
# claude --plugin-dir ~/.cache/compound-engineering/branches/compound-engineering-feat~new-agents/plugins/compound-engineering
缓存路径是决定性的。 重新运行更新到该分支的最新承诺 .
代码、 OpenCode 和其他目标 - 通过 --branch 改为 install数字 :
# from the repo root
bun run src/index.ts install compound-engineering --to codex --branch feat/new-agents
# works with any target
bun run src/index.ts install compound-engineering --to opencode --branch feat/new-agents
# combine with --also for multiple targets
bun run src/index.ts install compound-engineering --to codex --also opencode --branch feat/new-agents
两个特性都使用 COMPOUND_PLUGIN_GITHUB_SOURCE env var 解决寄存器,默认为 https://github.com/EveryInc/compound-engineering-plugin。 。 。 .
贝壳别名
添加为 ~/.zshrc 或者说 ~/.bashrc。所有别名都使用本地的CLI,所以不依赖 npm 出版. plugin-path 印出只指向stdout的路径,所以它与 $()。 。 。 .
CE_REPO=~/Code/compound-engineering-plugin
ce-cli() { bun run "$CE_REPO/src/index.ts" "$@"; }
# --- Local checkout (active development) ---
alias cce='claude --plugin-dir $CE_REPO/plugins/compound-engineering'
codex-ce() {
ce-cli install "$CE_REPO/plugins/compound-engineering" --to codex "$@"
}
# --- Pushed branch (testing PRs, worktree workflows) ---
ccb() {
claude --plugin-dir "$(ce-cli plugin-path compound-engineering --branch "$1")" "${@:2}"
}
codex-ceb() {
ce-cli install compound-engineering --to codex --branch "$1" "${@:2}"
}
用法 :
cce # local checkout with Claude Code
codex-ce # install local checkout to Codex
ccb feat/new-agents # test a pushed branch with Claude Code
ccb feat/new-agents --verbose # extra flags forwarded to claude
codex-ceb feat/new-agents # install a pushed branch to Codex
代码安装将生成的插件技能隔离在 ~/.codex/skills/compound-engineering/ 不将新文件写入 ~/.agents。安装器删除旧的 CE 管理 .agents/skills 当它能证明它们指向CE的Codex管理商店时,symlinks会阻止被阴影的Copilot本地插件所安装的stale Codex.
解决问题
Codex 技能工作但审查或研究授权失败
运行代理安装步骤 :
bunx @every-env/compound-plugin install compound-engineering --to codex
本地 Codex 插件安装手柄技能 。 Bun台阶安装自定义代理 这些技能委托给.
Codex 显示陈旧或重复的 CE 技能
在切换到本地的 Codex 插件流前, 备份旧的 Bun- ins 安装的文物 :
bunx @every-env/compound-plugin cleanup --target codex
副驾驶、Droid 或 Quen 装入陈旧的 CE 技能
在使用本地插件路径前备份旧的 Bun-ins 已安装的文物 :
bunx @every-env/compound-plugin cleanup --target copilot
bunx @every-env/compound-plugin cleanup --target droid
bunx @every-env/compound-plugin cleanup --target qwen
限制
Codex本土插件目前安装处理技能,而不是自定义代理. 在 Codex 在其本地插件 spec中支持代理之前,需要文件 Bun 跟踪 .
OpenCode,Pi,双子座和Kiro的安装都是由转换器支撑的,随着这些目标格式的演化可能会发生变化.
发行版本由发行自动化拥有. 常规特性 PR 不应使用手推插件或市场显示版本.
财务问题
克劳德代码需要Bun吗?
没有。 Claude代码直接从插件市场安装. Bun只用于转换器支持的目标, Codex 当前代理跟踪,本地开发,以及旧转换安装的清理.
为什么Codex需要一个单独的Bun步骤?
Codex的本土插件流会从 Codex 插件显示中安装技能. 它目前没有安装调制工程技能的自定义审查员、研究员和工作流程代理。 邦克台阶填补了这个空白.
我在哪里看到所有可用的技能和特工?
读取 复合工程插件 REDME。它列出了目前的技能和代理人清单.
释放历史在哪里?
GitHub放出是犬科放出-注面. 词根 CHANGELOG.md 说明历史.
关于捐款
关于贡献: 请不要误会, 但我不接受任何外部捐款 我的项目。 我根本就没有精神带宽来检讨任何东西, 事情上是我的名, 所以我要为它造成的任何问题负责; 因此,从我的角度来看,风险回报是高度不对称的。 我还得担心其他的“利害相关者”, 这似乎不明智, 如果你想说明一个拟议解决的问题,你可以自由提交问题, 甚至公关, 但我不会直接把它们合并。 我会让克劳德或Codex通过 gh 并独立决定是否以及如何解决这些问题。 尤其欢迎虫子报告。 对不起,如果这冒犯, 但我想避免浪费时间和伤害感情。 我理解这与当时流行的 寻求社区贡献的开源特质不同步, 但这是我唯一能以这个速度前进,保持我理智的方法.