所属阶段:第六阶段「综合与创造」(第 28-30 课) 前置条件:全部 29 课 本课收获:一个为真实项目设计的完整 ECC 配置方案
一、本课概述
这是整个课程的最后一课。没有新知识点 --- 本课的目标是把前 29 课学到的一切综合运用。
你将完成一个毕业项目:为一个真实项目设计和实施完整的 ECC 配置方案。这个项目分 8 个阶段,每个阶段对应之前课程的知识:
| 阶段 | 内容 | 对应课程 |
|---|---|---|
| A | 基础配置 | 第 1-5 课 |
| B | Agent/Skill 选型 | 第 6-9 课 |
| C | Hook 配置 | 第 10-11 课 |
| D | 全流程验证 | 第 12-14 课 |
| E | 上下文优化 | 第 15 课 |
| F | 多代理编排 | 第 16 课 |
| G | 安全加固 | 第 23-24 课 |
| H | 自定义组件 | 第 7/9/10 课 |
完成毕业项目后,你不仅拥有了一套可用的 ECC 配置,更重要的是验证了你对整个体系的理解。
二、阶段 A:基础配置(对应第 1-5 课)
2.1 选择安装 Profile
根据你的项目需求和机器配置,选择合适的 Profile:
sql
你的项目类型是什么?
├── 个人项目 / 学习 → developer
├── 团队项目 / 生产 → security
├── AI/Agent 开发 → research
└── 想体验全部功能 → full
2.2 编写 CLAUDE.md
为你的项目编写 CLAUDE.md。这是 ECC 最重要的配置文件之一 --- 它告诉 AI 助手关于你项目的一切。
必须包含的部分:
markdown
# CLAUDE.md
## Project Overview
[一句话描述项目]
## Running Tests
[测试命令]
## Architecture
[核心组件和目录结构]
## Key Commands
[常用的开发命令]
## Development Notes
[特殊约定、注意事项]
2.3 配置 Rules
选择并安装适合你项目语言的 Rules:
bash
# 安装通用规则(必须)
cp -r rules/common ~/.claude/rules/common
# 安装语言特定规则(根据你的项目)
cp -r rules/typescript ~/.claude/rules/typescript
# 或
cp -r rules/python ~/.claude/rules/python
# 或
cp -r rules/golang ~/.claude/rules/golang
2.4 完成清单
- 选择了安装 Profile
- 编写了
CLAUDE.md - 安装了通用 Rules
- 安装了语言特定 Rules
三、阶段 B:Agent/Skill 选型(对应第 6-9 课)
3.1 选择核心 Agent
根据你的开发工作流,选择需要的 Agent:
| 工作流 | 必要 Agent | 可选 Agent |
|---|---|---|
| 日常开发 | planner, code-reviewer |
architect |
| TDD 开发 | tdd-guide, code-reviewer |
e2e-runner |
| 安全敏感 | security-reviewer, code-reviewer |
--- |
| 构建调试 | build-error-resolver |
语言特定 resolver |
| 文档更新 | doc-updater |
--- |
3.2 选择核心 Skill
| 领域 | 推荐 Skill | 用途 |
|---|---|---|
| 开发流程 | tdd-workflow, verification-loop |
TDD 和验证 |
| 代码标准 | coding-standards |
编码规范 |
| API 设计 | api-design, backend-patterns |
API 和后端模式 |
| 语言专用 | python-patterns / golang-patterns 等 |
语言最佳实践 |
| 框架专用 | django-patterns / nestjs-patterns 等 |
框架最佳实践 |
3.3 完成清单
- 确定了需要的 Agent 列表
- 确定了需要的 Skill 列表
- 验证 Agent 和 Skill 已可用
四、阶段 C:Hook 配置(对应第 10-11 课)
4.1 配置推荐的 Hook
json
{
"hooks": {
"PreToolUse": [
{
"matcher": "Bash",
"hooks": [
{
"type": "command",
"command": "node scripts/hooks/security-guard.js"
}
]
}
],
"PostToolUse": [
{
"matcher": "Write|Edit",
"hooks": [
{
"type": "command",
"command": "node scripts/hooks/post-edit-format.js",
"async": true,
"timeout": 10000
}
]
}
],
"Stop": [
{
"matcher": "",
"hooks": [
{
"type": "command",
"command": "node scripts/hooks/session-end.js",
"async": true,
"timeout": 30000
}
]
}
]
}
}
4.2 Hook 选择指南
| Hook 类型 | 推荐配置 | 注意事项 |
|---|---|---|
| PreToolUse (Bash) | 安全检查,拦截危险命令 | 保持 <200ms |
| PostToolUse (Write/Edit) | 自动格式化 | 用 async,设 timeout |
| Stop | 会话总结/学习提取 | 用 async,timeout ≤30s |
4.3 完成清单
- 配置了 PreToolUse 安全 Hook
- 配置了 PostToolUse 格式化 Hook(可选)
- 配置了 Stop 会话总结 Hook(可选)
- 使用
run-with-flags.jswrapper(如果使用 ECC Hook)
五、阶段 D:全流程验证(对应第 12-14 课)
5.1 运行完整的命令链
按顺序执行以下命令,验证配置是否正确:
markdown
步骤 1:规划
/plan --- 让 planner Agent 分析一个小任务
步骤 2:TDD
/tdd --- 用 TDD 流程实现该任务
- RED:写测试(应该失败)
- GREEN:写最小实现(应该通过)
- IMPROVE:重构
步骤 3:代码审查
/code-review --- 让 code-reviewer 审查代码
步骤 4:验证
/verify --- 运行验证循环
- 测试通过?
- Lint 通过?
- 类型检查通过?
- 安全检查通过?
5.2 问题排查
| 问题 | 可能原因 | 解决方案 |
|---|---|---|
| Agent 不响应 | Agent 文件未安装 | 检查 ~/.claude/agents/ |
| Skill 不加载 | Skill 路径错误 | 检查 ~/.claude/skills/ |
| Hook 不触发 | settings.json 配置错误 | 检查 matcher 和路径 |
| 命令不存在 | Command 未安装 | 检查 ~/.claude/commands/ |
5.3 完成清单
-
/plan正常工作 -
/tdd流程可以完成 RED-GREEN-IMPROVE -
/code-review能产出审查报告 -
/verify验证循环可以通过
六、阶段 E:上下文优化(对应第 15 课)
6.1 检查上下文使用
评估你的配置是否会过度占用上下文窗口:
| 检查项 | 指标 | 优化方法 |
|---|---|---|
| CLAUDE.md 长度 | <200 行 | 精简,移除冗余 |
| 加载的 Skill 数量 | <20 个 | 减少不必要的 Skill |
| Rule 文件数量 | <15 个 | 只安装需要的语言 |
| System Prompt 总量 | 检查 Token 使用 | 按需加载 |
6.2 完成清单
- CLAUDE.md 精简到 200 行以内
- 只安装了实际需要的 Skill
- 只安装了项目语言的 Rules
七、阶段 F:多代理编排(对应第 16 课)
7.1 设计并行工作流
为你的项目设计一个多代理并行工作流:
css
任务到达
↓
planner Agent(规划拆分)
↓
├── Agent 1:核心功能开发(Sonnet)
├── Agent 2:单元测试编写(Haiku)
└── Agent 3:文档更新(Haiku)
↓
汇合:code-reviewer Agent(审查所有变更)
↓
security-reviewer Agent(安全审查)
↓
完成
7.2 完成清单
- 设计了并行工作流方案
- 为每个 Agent 选择了合适的模型
- 定义了汇合点和审查流程
八、阶段 G:安全加固(对应第 23-24 课)
8.1 安全检查
bash
# 扫描硬编码密钥
rg -n 'sk-|AKIA|password\s*=\s*["\x27][^"\x27]+["\x27]' --type-not binary .
# 扫描隐藏 Unicode
rg -nP '[\x{200B}\x{200C}\x{200D}\x{2060}\x{FEFF}\x{202A}-\x{202E}]' .
# 检查 .claude/ 配置安全
rg -n 'curl|wget|nc|scp|ssh|ANTHROPIC_BASE_URL' .claude/ 2>/dev/null
8.2 配置安全 Hook
确保 PreToolUse Hook 拦截了危险命令(参考第 24 课)。
8.3 完成清单
- 运行了密钥扫描,无硬编码密钥
- 运行了 Unicode 扫描,无隐藏字符
- 配置了安全 Hook
- 检查了 .claude/ 配置安全
九、阶段 H:自定义组件(对应第 7/9/10 课)
9.1 创建一个自定义 Agent
为你的项目创建一个专用 Agent。格式:
markdown
---
name: my-project-reviewer
description: Review code changes specific to [your project] conventions
tools:
- Read
- Grep
- Glob
model: sonnet
---
# [Your Project] Reviewer
Review code changes against project-specific conventions:
1. Check naming conventions match project style
2. Verify error handling follows project patterns
3. Ensure new code has appropriate test coverage
4. Check for project-specific anti-patterns
## Project Conventions
[列出你项目的具体约定]
9.2 创建一个自定义 Skill
为你项目的某个常见工作流创建 Skill:
markdown
---
name: my-project-deployment
description: Deployment workflow for [your project]
---
# [Your Project] Deployment
## When to Activate
- Deploying to staging or production
- Preparing a release
## How It Works
1. [部署步骤 1]
2. [部署步骤 2]
3. [部署步骤 3]
## Checklist
- [ ] All tests pass
- [ ] Security scan clean
- [ ] CHANGELOG updated
- [ ] Version bumped
9.3 创建一个自定义 Hook
为你的项目创建一个 PostToolUse Hook(如自动格式化、自动 lint)。
9.4 完成清单
- 创建了 1 个自定义 Agent
- 创建了 1 个自定义 Skill
- 创建了 1 个自定义 Hook
十、参考模板
ECC 在 examples/ 目录中提供了多种项目模板,你可以参考:
| 模板文件 | 技术栈 | 适用场景 |
|---|---|---|
saas-nextjs-CLAUDE.md |
Next.js + TypeScript | SaaS 全栈应用 |
django-api-CLAUDE.md |
Django + Python | RESTful API 后端 |
go-microservice-CLAUDE.md |
Go | 微服务 |
laravel-api-CLAUDE.md |
Laravel + PHP | PHP API 后端 |
rust-api-CLAUDE.md |
Rust + Actix/Axum | Rust API 后端 |
10.1 使用方式
bash
# 查看与你项目最接近的模板
cat examples/saas-nextjs-CLAUDE.md
# 作为起点,复制并修改
cp examples/saas-nextjs-CLAUDE.md ./CLAUDE.md
# 然后根据你的项目实际情况修改
十一、交付物清单
毕业项目的完整交付物:
| # | 交付物 | 来源阶段 | 必须/可选 |
|---|---|---|---|
| 1 | CLAUDE.md |
A | 必须 |
| 2 | hooks.json 或 .claude/settings.json |
C | 必须 |
| 3 | 1 个自定义 Agent | H | 必须 |
| 4 | 1 个自定义 Skill | H | 必须 |
| 5 | 1 个自定义 Hook 脚本 | H | 必须 |
| 6 | 配置说明文档(简要) | 全部 | 必须 |
| 7 | 多代理编排方案 | F | 可选 |
| 8 | 安全扫描报告 | G | 可选 |
11.1 可选加分项
| 加分项 | 说明 |
|---|---|
| 提交 PR | 将你的自定义组件提交到 ECC 仓库 |
| 运行 /harness-audit | 对完整配置进行审计并修复问题 |
| 运行 Eval | 为你的自定义 Agent 设计并运行一次 Eval |
| 团队分享 | 将 Instinct 导出并分享给团队成员 |
十二、课程总结 --- 30 课的完整学习路径
回顾整个课程的六个阶段:
第一阶段:认知建立(第 1-3 课)
第 1 课:设计哲学 --- 理解了 ECC 的五大原则和存在意义
第 2 课:架构全景 --- 掌握了六大组件的职责和协作关系
第 3 课:目录结构 --- 完成了仓库浏览和首次安装
阶段成果:你知道 ECC 是什么、为什么存在、怎么组织的。
第二阶段:组件精讲(第 4-11 课)
第 4-5 课:Rules --- 理解了规则分层和语言特定覆写
第 6-7 课:Agents --- 掌握了 Agent 格式和设计原则
第 8-9 课:Skills --- 理解了 Skill 结构和编写方法
第 10-11 课:Hooks & Scripts --- 掌握了事件驱动自动化
阶段成果:你能读懂并创建每种核心组件。
第三阶段:工作流实战(第 12-16 课)
第 12 课:调用链 --- 追踪了完整的命令执行链路
第 13 课:TDD 流程 --- 完成了 RED-GREEN-IMPROVE 循环
第 14 课:验证循环 --- 掌握了提交前的完整验证流程
第 15 课:上下文管理 --- 学会了 Token 优化和动态上下文
第 16 课:多代理编排 --- 设计了并行 Agent 工作流
阶段成果:你能在真实项目中跑通完整开发流程。
第四阶段:语言与框架(第 17-22 课)
第 17 课:后端语言 --- 配置了主力后端语言的 ECC
第 18 课:前端框架 --- 配置了前端框架的 ECC
第 19 课:移动开发 --- 了解了 Swift/Dart 的 ECC 模式
第 20 课:数据库 --- 完成了 Migration 的 ECC 辅助
第 21 课:API 设计 --- 掌握了符合 ECC 规范的 API 设计
第 22 课:微服务 --- 理解了微服务架构的 ECC 支持
阶段成果:你能针对具体技术栈深度使用 ECC。
第五阶段:进阶能力(第 23-27 课)
第 23 课:安全威胁 --- 列出了 AI 代理特有的攻击向量
第 24 课:安全防御 --- 完成了 AgentShield 扫描和安全 Hook
第 25 课:持续学习 --- 从会话中提取了 Instinct
第 26 课:Eval 驱动 --- 设计并运行了 Eval
第 27 课:Agent 工程 --- 理解了 Harness 构建和成本优化
阶段成果:你能处理安全、性能、学习、评估等高级主题。
第六阶段:综合与创造(第 28-30 课)
第 28 课:跨平台 --- 理解了 Plugin Manifest 和安装 Profile
第 29 课:ECC 2.0 --- 体验了 Rust 控制面板
第 30 课:毕业项目 --- 为真实项目设计了完整 ECC 方案 ← 你在这里
阶段成果:你能独立设计和贡献 ECC 配置方案。
十三、写在最后
13.1 你现在拥有的能力
完成 30 课后,你具备了以下能力:
| 能力 | 说明 |
|---|---|
| 理解 AI Harness | 知道如何增强 AI 编程助手的能力 |
| 设计配置方案 | 能为任何项目设计 ECC 配置 |
| 创建自定义组件 | 能编写 Agent、Skill、Hook |
| 安全意识 | 能识别和防御 AI 代理特有的安全威胁 |
| 评估 Agent | 能设计 Eval 并用 pass@k 衡量 Agent 质量 |
| 成本控制 | 能设计成本感知的多 Agent 工作流 |
| 跨平台迁移 | 能将知识应用到不同的 AI 编程助手 |
13.2 继续学习的方向
| 方向 | 资源 |
|---|---|
| 深入安全 | the-security-guide.md 完整阅读 |
| 深入 Agent 开发 | agent-harness-construction + autonomous-agent-harness Skill |
| 深入持续学习 | 持续使用 /learn 和 /evolve,积累 Instinct |
| 贡献 ECC | 阅读 CONTRIBUTING.md,提交你的自定义组件 |
| 关注 ECC 2.0 | 构建并试用 ecc2/,关注后续更新 |
13.3 最后的提醒
ECC 的五大原则不仅适用于 AI 编程,也适用于所有软件工程:
先规划再执行,让专家做专家的事,用测试验证结果,把安全放在首位,保持状态可控。
这是你在本课程中学到的最重要的一句话。
十四、本课小结
| 你应该记住的 | 内容 |
|---|---|
| 毕业项目 8 阶段 | A 基础 → B 选型 → C Hook → D 验证 → E 上下文 → F 编排 → G 安全 → H 自定义 |
| 交付物 | CLAUDE.md + hooks 配置 + 1 Agent + 1 Skill + 1 Hook + 说明文档 |
| 参考模板 | examples/ 目录下 5 种技术栈模板 |
| 课程回顾 | 6 个阶段、30 课、从认知到创造的完整路径 |
| 核心原则 | Plan → Agent-First → Test-Driven → Security-First → Immutability |