Skip to content

Latest commit

 

History

History
693 lines (477 loc) · 13.2 KB

File metadata and controls

693 lines (477 loc) · 13.2 KB

Compound Engineering 新手入门教程

Every 公司的复利工程实践 - 让每一次工程工作都让下次更容易

目录


什么是 Compound Engineering?

Compound Engineering 是 Every 公司开发的 AI 技能和 Agent 集合。它的核心理念是:每次工程工作都应该让下次更容易,而不是更难。

传统开发 vs 复利工程

传统开发 复利工程
每加一个功能,代码更难维护 80% 在计划和审查,20% 在执行
技术债务累积 每次工作都要留下知识
知识随着人走 知识沉淀在文档中
代码会"腐烂" 代码越改越好

核心工作流

Brainstorm → Plan → Work → Review → Compound → Repeat
    ↑
  Ideate (可选)

安装 Compound Engineering

方式一:Claude Code(推荐)

/plugin marketplace add EveryInc/compound-engineering-plugin
/plugin install compound-engineering

方式二:Cursor

在 Cursor Agent chat 中输入:

/add-plugin compound-engineering

方式三:其他工具

# Codex
bunx @every-env/compound-plugin install compound-engineering --to codex

# OpenCode
bunx @every-env/compound-plugin install compound-engineering --to opencode

# Gemini CLI
gemini extensions install https://github.com/EveryInc/compound-engineering-plugin

验证安装

在 Claude Code 中输入:

/ce:brainstorm

如果看到提示让你开始构思,说明安装成功!


核心理念:复利工程

复利的力量

想象你有一个知识库,每次解决一个问题后,你都把解决方案记录下来。下次遇到类似问题,你可以直接查阅,不需要再重新研究。

这就是复利:每次工作都有"利息",积累成未来的生产力。

Compound 的四个阶段

  1. Brainstorm(构思)

    • 探索需求和替代方案
    • 通过问答细化想法
    • 生成需求文档
  2. Plan(计划)

    • 将需求转化为技术计划
    • 包含精确的文件路径和代码
    • 每个任务可独立验证
  3. Work(工作)

    • 使用 git worktree 隔离开发
    • 任务跟踪和进度报告
    • 子 Agent 执行和审查
  4. Review(审查)

    • 多 Agent 代码审查
    • 从不同角度审视代码
    • 发现问题和改进点
  5. Compound(复利)

    • 记录学到的东西
    • 更新文档和知识库
    • 让下次更容易

核心命令

1. /ce:brainstorm — 需求探索

功能:通过交互式问答细化需求,生成需求文档。

什么时候用:当你有新想法,但不确定具体要做什么时。

案例

/ce:brainstorm

Compound Engineering 会问你一系列问题:

你好!让我帮你细化想法。

1. 你想构建什么?给谁用?
  → 我想做一个 AI 写作助手,帮助营销人员写文案

2. 解决什么痛点?
  → 写文案太花时间,经常不知道从哪里开始

3. 现有方案有哪些?
  → Jasper AI, Copy.ai,但要付费

4. 你的方案有什么不同?
  → 免费、开源、专门针对中文营销文案

5. 如何判断成功?
  → 用户可以用它生成完整的营销文案

你回答完问题后,它会生成需求文档:

## 需求文档:AI 营销文案助手

### 核心功能
1. 主题生成:输入产品名,自动生成营销主题
2. 文案生成:根据主题生成完整文案
3. 改写优化:优化现有文案

### 目标用户
- 营销人员
- 小企业主
- 自由职业者

### 成功指标
- 80% 用户完成首次文案生成
- 平均生成时间 < 30 秒

2. /ce:plan — 技术计划

功能:将需求文档转化为详细的技术实现计划。

什么时候用:需求明确后,需要开始实现时。

案例

/ce:plan

它会读取你的需求文档,生成技术计划:

## 技术计划:AI 营销文案助手

### Phase 1: 基础架构 (30 分钟)

#### 任务 1.1: 项目初始化
- 文件: package.json, tsconfig.json
- 命令: `bun init`
- 验证: `bun run build`

#### 任务 1.2: 基础类型定义
- 文件: src/types/index.ts
- 代码: Topic, CopyRequest, CopyResponse
- 验证: `bun test types`

#### 任务 1.3: API 客户端封装
- 文件: src/api/client.ts
- 代码: OpenAI API 调用封装
- 验证: `bun test api`

### Phase 2: 核心功能 (1 小时)

#### 任务 2.1: 主题生成器
- 文件: src/generators/topic.ts
- 输入: 产品名
- 输出: 10 个营销主题
- 验证: `bun test generators/topic`

#### 任务 2.2: 文案生成器
- 文件: src/generators/copy.ts
- 输入: 主题 + 产品信息
- 输出: 营销文案
- 验证: `bun test generators/copy`

... (更多任务)

### 验收标准
- [ ] 主题生成功能可用
- [ ] 文案生成功能可用
- [ ] 单元测试覆盖率 > 80%

3. /ce:work — 执行计划

功能:使用 git worktree 隔离执行计划,任务跟踪。

什么时候用:有技术计划后,需要开始实现时。

案例

/ce:work

Phase 1: 创建工作环境

✓ Created worktree: /workspace/ai-copywriter
✓ Branch: feature/ai-copywriter
✓ 依赖已安装
✓ 测试基线: 12 passing

Phase 2: 执行任务

## 任务进度

### Phase 1: 基础架构
[██████] 1.1 项目初始化 ✓
[██████] 1.2 类型定义 ✓
[██████] 1.3 API 客户端 ✓

### Phase 2: 核心功能
[███   ] 2.1 主题生成器 (进行中)
[      ] 2.2 文案生成器
[      ] 2.3 改写优化

### Phase 3: 前端
[      ] 3.1 React 组件
[      ] 3.2 页面集成

Phase 3: 原子提交

✓ [task-1.1] Initialize project structure
✓ [task-1.2] Add TypeScript types
✓ [task-1.3] Implement API client wrapper
✓ [task-2.1] Implement topic generator

[原子提交列表]
- task-1.1: Initialize project structure
- task-1.2: Add TypeScript types
- task-1.3: Implement API client wrapper

4. /ce:review — 代码审查

功能:多 Agent 代码审查,从不同角度审视代码。

什么时候用:代码写完后,准备合并前。

案例

/ce:review

它会启动多个审查 Agent:

## 代码审查进行中

[1/4] 🔍 correctness-reviewer
  检查逻辑错误、边缘情况、状态管理
  → 2 issues found

[2/4] 🔍 security-reviewer
  检查安全漏洞、输入验证、权限
  → 0 issues found

[3/4] 🔍 performance-reviewer
  检查性能问题、数据库查询、缓存
  → 1 issue found

[4/4] 🔍 testing-reviewer
  检查测试覆盖、断言强度、边缘情况
  → 3 issues found

汇总报告

## 审查结果

### Critical (必须修复)
- ❌ 缺少 API 错误处理 (src/api/client.ts:45)
- ❌ 内存泄漏风险 (src/generators/topic.ts:78)

### High (建议修复)
- ⚠️ 测试覆盖率不足 (src/api/ -> 65%)

### Medium (可选优化)
- 💡 日志可以更详细
- 💡 考虑添加缓存

### 审查通过
✓ 安全审查通过
✓ 性能审查通过

5. /ce:compound — 知识复利

功能:记录本次工作中学到的东西,让下次更容易。

什么时候用:功能完成后,想要沉淀知识时。

案例

/ce:compound

Compound Engineering 会问你:

让我帮你记录这次学到的东西...

1. 这次实现中最重要的是什么?
  → 使用流式响应处理长文案

2. 什么情况下会出问题?
  → API 超时没有正确处理

3. 有什么建议给未来的自己?
  → 一定要添加超时和重试机制

4. 哪些文档需要更新?
  → README.md
  → API.md

生成复利文档

## 复利文档:AI 营销文案助手

### 本次学到的重要经验

1. **流式响应处理**
   - 使用 Server-Sent Events (SSE)
   - 前端需要正确处理流数据
   - 参考: src/utils/stream.ts

2. **超时和重试**
   - API 调用必须设置超时 (30s)
   - 失败后自动重试 3 次
   - 参考: src/api/retry.ts

### 更新的文档
- README.md: 添加使用示例
- API.md: 记录新的端点

### 下次开发的建议
- 先实现错误处理
- 添加监控和日志

6. /ce:ideate — 创意发现

功能:通过发散性思考和对抗性过滤,发现改进机会。

什么时候用:想要发现产品改进点,但没有具体想法时。

案例

/ce:ideate

Phase 1: 发散

发现 10 个潜在改进点:

1. 添加模板功能
2. 支持更多语言
3. 批量生成
4. SEO 优化建议
5. 社交媒体分发
6. A/B 测试
7. 团队协作
8. 历史记录
9. 导出功能
10. AI 配图

Phase 2: 评估

评估每个想法:

[高价值]
- 模板功能: 80% 用户需要
- 批量生成: 60% 用户需要

[中价值]
- 多语言支持: 40% 用户需要
- SEO 优化: 35% 用户需要

[低价值]
- AI 配图: 15% 用户需要

[建议]
- 首先实现模板功能
- 其次实现批量生成

用户案例

案例:构建一个天气应用

让我们看 Compound Engineering 如何帮助你完成这个项目。

第一步:告诉它你想做什么

你输入

/ce:brainstorm

你回答问题

1. 你想构建什么?给谁用?
  → 我想做一个天气应用,给日常用户查看天气

2. 解决什么痛点?
  → 现有天气应用广告太多,想做一个简洁的

3. 现有方案有哪些?
  → 天气通、墨迹天气,但都有广告

4. 你的方案有什么不同?
  → 无广告、简洁、支持小组件

生成需求文档

## 需求文档:简洁天气应用

### 核心功能
- 当前天气显示
- 7 天预报
- 小组件支持
- 无广告

### 技术方案
- API: OpenWeatherMap
- 前端: React Native
- 平台: iOS + Android

### 目标用户
- 日常查看天气的用户
- 痛点:广告太多

第二步:生成技术计划

你输入

/ce:plan

生成计划

## 技术计划:简洁天气应用

### Phase 1: 项目设置
1. 初始化 React Native 项目
2. 配置 TypeScript
3. 添加导航库

### Phase 2: 天气服务
4. 创建天气 API 客户端
5. 实现当前天气查询
6. 实现 7 天预报

### Phase 3: UI 组件
7. 当前天气卡片组件
8. 预报列表组件
9. 城市搜索组件

### Phase 4: 小组件
10. iOS 小组件
11. Android 小组件

### Phase 5: 测试
12. 单元测试
13. 集成测试

### 验收标准
- [ ] 可以查询任意城市天气
- [ ] 显示 7 天预报
- [ ] 支持 iOS 小组件
- [ ] 无广告

第三步:开始执行

你输入

/ce:work

执行过程

✓ Created worktree: /workspace/weather-app
✓ Branch: feature/weather-app

开始执行任务...

[Phase 1: 项目设置]
✓ 1.1 初始化 React Native 项目
✓ 1.2 配置 TypeScript
✓ 1.3 添加导航库

[Phase 2: 天气服务]
✓ 2.1 创建天气 API 客户端
✓ 2.2 实现当前天气查询
✓ 2.3 实现 7 天预报

[Phase 3: UI 组件]
✓ 3.1 当前天气卡片
✓ 3.2 预报列表
✓ 3.3 城市搜索

[Phase 4: 小组件]
✓ 4.1 iOS 小组件
✓ 4.2 Android 小组件

任务完成!所有提交已生成。

第四步:代码审查

你输入

/ce:review

审查结果

## 代码审查报告

[✓] correctness-reviewer
  - 无逻辑错误

[⚠] security-reviewer
  - 建议:API 密钥不应硬编码
  - 建议:添加速率限制

[✓] performance-reviewer
  - 性能良好

[⚠] testing-reviewer
  - 覆盖率 72%,建议 > 80%

修复建议问题后继续...

第五步:复利记录

你输入

/ce:compound

记录内容

## 复利文档:天气应用

### 学到的经验

1. **API 密钥管理**
   - 使用 react-native-config 管理环境变量
   - 不要硬编码任何密钥

2. **天气 API 缓存**
   - 缓存 30 分钟减少 API 调用
   - 减少用户等待时间

3. **小组件刷新**
   - iOS 小组件每小时刷新
   - 使用 Background Tasks 库

### 更新的文档
- README.md: 添加功能说明
- CONTRIBUTING.md: 添加开发指南
- ARCHITECTURE.md: 添加架构说明

### 给未来的建议
- 先处理 API 错误
- 添加更多城市支持前先优化性能

常见问题

Q: Compound Engineering 要钱吗?

A: 免费!MIT 许可证。

Q: 和 gstack、Superpowers 有什么不同?

A:

  • gstack: 15 个专业角色,最完整
  • Superpowers: 自动化工作流,TDD 强制
  • Compound Engineering: 强调"复利",知识沉淀

Q: 命令前缀 /ce: 是什么意思?

A: ce 是 Compound Engineering 的缩写。所有的命令都以 /ce: 开头。

Q: 如何更新到最新版本?

/plugin update compound-engineering

Q: 可以自定义命令吗?

A: 可以。Compound Engineering 使用技能系统,你可以添加自己的技能。


下一步

准备好了?开始你的第一个 /ce:brainstorm 吧! 🚀