第 30 课:综合实战 — 毕业项目

21 阅读11分钟

所属阶段:第六阶段「综合与创造」(第 28-30 课) 前置条件:全部 29 课 本课收获:一个为真实项目设计的完整 ECC 配置方案


一、本课概述

这是整个课程的最后一课。没有新知识点 — 本课的目标是把前 29 课学到的一切综合运用。

你将完成一个毕业项目:为一个真实项目设计和实施完整的 ECC 配置方案。这个项目分 8 个阶段,每个阶段对应之前课程的知识:

阶段内容对应课程
A基础配置第 1-5 课
BAgent/Skill 选型第 6-9 课
CHook 配置第 10-11 课
D全流程验证第 12-14 课
E上下文优化第 15 课
F多代理编排第 16 课
G安全加固第 23-24 课
H自定义组件第 7/9/10 课

完成毕业项目后,你不仅拥有了一套可用的 ECC 配置,更重要的是验证了你对整个体系的理解。


二、阶段 A:基础配置(对应第 1-5 课)

2.1 选择安装 Profile

根据你的项目需求和机器配置,选择合适的 Profile:

你的项目类型是什么?
  ├── 个人项目 / 学习 → developer
  ├── 团队项目 / 生产 → security
  ├── AI/Agent 开发 → research
  └── 想体验全部功能 → full

2.2 编写 CLAUDE.md

为你的项目编写 CLAUDE.md。这是 ECC 最重要的配置文件之一 — 它告诉 AI 助手关于你项目的一切。

必须包含的部分

# CLAUDE.md

## Project Overview
[一句话描述项目]

## Running Tests
[测试命令]

## Architecture
[核心组件和目录结构]

## Key Commands
[常用的开发命令]

## Development Notes
[特殊约定、注意事项]

2.3 配置 Rules

选择并安装适合你项目语言的 Rules:

# 安装通用规则(必须)
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-reviewerarchitect
TDD 开发tdd-guide, code-reviewere2e-runner
安全敏感security-reviewer, code-reviewer
构建调试build-error-resolver语言特定 resolver
文档更新doc-updater

3.2 选择核心 Skill

领域推荐 Skill用途
开发流程tdd-workflow, verification-loopTDD 和验证
代码标准coding-standards编码规范
API 设计api-design, backend-patternsAPI 和后端模式
语言专用python-patterns / golang-patterns语言最佳实践
框架专用django-patterns / nestjs-patterns框架最佳实践

3.3 完成清单

  • 确定了需要的 Agent 列表
  • 确定了需要的 Skill 列表
  • 验证 Agent 和 Skill 已可用

四、阶段 C:Hook 配置(对应第 10-11 课)

4.1 配置推荐的 Hook

{
  "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.js wrapper(如果使用 ECC Hook)

五、阶段 D:全流程验证(对应第 12-14 课)

5.1 运行完整的命令链

按顺序执行以下命令,验证配置是否正确:

步骤 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 设计并行工作流

为你的项目设计一个多代理并行工作流:

任务到达
    ↓
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 安全检查

# 扫描硬编码密钥
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。格式:

---
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:

---
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.mdNext.js + TypeScriptSaaS 全栈应用
django-api-CLAUDE.mdDjango + PythonRESTful API 后端
go-microservice-CLAUDE.mdGo微服务
laravel-api-CLAUDE.mdLaravel + PHPPHP API 后端
rust-api-CLAUDE.mdRust + Actix/AxumRust API 后端

10.1 使用方式

# 查看与你项目最接近的模板
cat examples/saas-nextjs-CLAUDE.md

# 作为起点,复制并修改
cp examples/saas-nextjs-CLAUDE.md ./CLAUDE.md
# 然后根据你的项目实际情况修改

十一、交付物清单

毕业项目的完整交付物:

#交付物来源阶段必须/可选
1CLAUDE.mdA必须
2hooks.json.claude/settings.jsonC必须
31 个自定义 AgentH必须
41 个自定义 SkillH必须
51 个自定义 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