项目简介
为 Claude Code、Cursor、Codex 等 AI 编码工具提供 37 种技能和 51 个代理。通过深入规划、审查和知识积累,使每次工程工作都比上一次更轻松,持续减少技术债务。
README 预览
# Compound Engineering\n\n[](https://github.com/EveryInc/compound-engineering-plugin/actions/workflows/ci.yml)\n[](https://www.npmjs.com/package/@every-env/compound-plugin)\n\nAI skills and agents that make each unit of engineering work easier than the last.\n\n## Philosophy\n\n**Each unit of engineering work should make subsequent units easier -- not harder.**\n\nTraditional development accumulates technical debt. Every feature adds complexity. Every bug fix leaves behind a little more local knowledge that someone has to rediscover later. The codebase gets larger, the context gets harder to hold, and the next change becomes slower.\n\nCompound engineering inverts this. 80% is in planning and review, 20% is in execution:\n\n- Plan thoroughly before writing code with `/ce-brainstorm` and `/ce-plan`\n- Review to catch issues and calibrate judgment with `/ce-code-review` and `/ce-doc-review`\n- Codify knowledge so it is reusable with `/ce-compound`\n- Keep quality high so future changes are easy\n\nThe point is not ceremony. The point is leverage. A good brainstorm makes the plan sharper. A good plan makes execution smaller. A good review catches the pattern, not just the bug. A good compound note means the next agent does not have to learn the same lesson from scratch.\n\n**Learn more**\n\n- [Full component reference](plugins/compound-engineering/README.md) - all agents and skills\n- [Compound engineering: how Every codes with agents](https://every.to/chain-of-thought/compound-engineering-how-every-codes-with-agents)\n- [The story behind compounding engineering](https://every.to/source-code/my-ai-had-already-fixed-the-code-before-i-saw-it)\n\n## Workflow\n\n`/ce-strategy` is upstream of the loop -- it captures the product's target problem, approach, persona, metrics, and tracks as a short durable anchor at `STRATEGY.md`. Ideate, brainstorm, and plan read it as grounding when present, so strategy choices flow into feature conception, prioritization, and spec.\n\nThe co
常见问题 (5)
故障排除在--to copilot选项被移除后,如何在VS Code Copilot中安装Compound Engineering插件?
使用内置VS Code命令:按下Cmd+Shift+P(Mac)或Ctrl+Shift+P(Windows/Linux),选择“Chat: 从源码安装插件”,输入“EveryInc/compound-engineering-plugin”作为仓库URL,然后从列表中选择“compound-engineering-plugin”。技能将出现在Copilot代理聊天中。这避免了使用旧的 --to copilot 转换器的需要。
故障排除为什么ce-code-review失败并显示'scripts/resolve-base.sh not found'错误?
传递显式基线引用以绕过缺失的辅助脚本。例如,使用:/ce-code-review base:origin/main。此错误存在于 compound-engineering v3.7.3 中,原因是 SKILL.md 使用了相对于项目根目录而不是技能目录解析的相对路径。请关注问题 #811 以获取永久修复。
故障排除为什么 ce-resolve-pr-feedback 技能显示“无新项目”,即使 PR 中有大量未回复的机器人审核线程?
这是在 compound-engineering 3.7.0 中的一个已知 bug,其中 scripts/get-pr-comments 中的 GraphQL 查询使用了固定的 'first: N' 页面大小(reviewThreads: 50, comments: 100, reviews: 50),而没有遵循 pageInfo.hasNextPage 游标。在拥有超过 50 个审查线程或 100 条评论的 PR 上,超出第一页的项目会被静默丢弃,导致技能错误地报告没有工作。作为一种变通方法,请手动检查未答复的发现结果:npx agent-reviews --bots-only --unanswered --expanded。正在跟踪修复,以在脚本中添加分页循环。
故障排除为什么 extract-skeleton.py 在处理 Claude 对话历史时会崩溃,报错 'TypeError: unhashable type: 'slice''?
summarize_claude_tool中对input.get('command')、input.get('query')或input.get('prompt')返回的字典形式值进行切片时发生崩溃,例如dict[:80]会引发TypeError: unhashable type: 'slice'。修复方法:在切片前增加类型检查。在extract-skeleton.py中,将链式调用的.get(...)[:N]替换为如下辅助函数:
def _safe_slice(value, n):
return value[:n] if isinstance(value, str) else ""然后使用
_safe_slice(inp.get("query"), 80)等。此方法可安全处理字符串和非字符串输入。若后续需要对file_path/path进行切片,也应应用相同的防护措施。修复该脚本或更新至包含类型防护修复的版本,以恢复完整的会话提取功能。故障排除如何在Claude Code中调用/ce-sessions时修复'Shell command permission check failed'错误?
错误的发生是因为 ce-sessions 的 SKILL.md 前导部分中的 'Repo name (pre-resolved)' 行包含了一个嵌套子shell,Claude Code 权限系统无法对其进行静态分析。临时解决方法:编辑 skills/ce-sessions/SKILL.md 的第23行,将有问题的命令替换为单个简单命令:Repo root (pre-resolved): !git rev-parse --show-toplevel 2>/dev/null || true。这会输出完整的仓库路径;使用者应自行提取基本名称。该修复计划在未来的版本中实施。