# Agent as Code > 相关:[[Harness工程]]、[[AGENTS.md]]、[[上下文体系]]、[[Skills]] ## 定义 **Agent as Code**是将AI协作的所有文件以代码的方式管理的理念,实现可版本化、可复用、可共享。 **核心思想**:AI的行为由代码(配置文件)决定,而不是由人的临时提示决定。 ## 核心特征 ### 1. 可版本化 - 所有配置纳入Git管理 - 变更有历史记录 - 可回滚到历史版本 ### 2. 可复用 - 配置可在项目间复用 - Skills可在团队间共享 - 最佳实践可沉淀 ### 3. 可共享 - 团队成员共享AI配置 - 新成员快速上手 - 统一团队AI行为 ## 核心文件 ### AGENTS.md(宪法级) ```markdown # 项目信息 - 项目名称:XXX - 技术栈:Java 17, Spring Boot 3.x # AI行为规则 1. 代码必须符合规范 2. 数据库表必须包含时间戳字段 3. API必须使用RESTful风格 ``` ### Skills目录 ``` skills/ ├── commit-push/ │ ├── SKILL.md │ └── commit.sh ├── deploy/ │ ├── SKILL.md │ └── deploy.sh ``` ### MCP配置 ```json { "mcpServers": { "database": { "command": "node", "args": ["mcp-server-sqlite"] } } } ``` ## 实现方式 ### 软链接共享配置 ```bash # 让多个AI工具共享AGENTS.md ln -s ../AGENTS.md .claude/AGENTS.md ln -s ../AGENTS.md .opencode/AGENTS.md ln -s ../AGENTS.md .cursor/AGENTS.md ``` ### Git管理 ```bash git add AGENTS.md git add .claude/AGENTS.md git commit -m "feat: add AGENTS.md for AI collaboration" ``` ## 目录结构 ``` 项目根目录/ ├── AGENTS.md # 宪法级配置 ├── docs/ │ ├── standards/ # 标准规范 │ ├── features/ # 需求规格 │ ├── designs/ # 设计规格 │ └── plans/ # 计划规格 ├── skills/ # AI技能 ├── mcp/ # MCP配置 ├── .claude/ # Claude Code配置 ├── .opencode/ # OpenCode配置 └── .cursor/ # Cursor配置 ``` ## 适用场景 - **团队协作**:多个开发者共享AI配置 - **多项目**:在多个项目间复用配置 - **持续迭代**:配置需要持续演进 - **知识沉淀**:最佳实践需要沉淀 ## 优势 - **一致性**:所有AI工具行为一致 - **可追溯**:配置变更有历史记录 - **可复用**:Skills和配置可复用 - **易维护**:修改一处,多处生效 ## 挑战 - **初始成本**:需要建立完整的文档体系 - **维护成本**:需要持续维护配置 - **学习曲线**:团队需要理解Agent as Code理念 ## 最佳实践 1. **从AGENTS.md开始**:先定义最基本的规则 2. **逐步扩展**:根据实践逐步添加配置 3. **定期Review**:定期审查和优化配置 4. **团队共享**:将配置纳入团队知识管理 ## 相关概念 - [[Harness工程]]:Agent as Code是Harness的技术实现 - [[AGENTS.md]]:Agent as Code的核心文件 - [[上下文体系]]:Agent as Code的文档组织 - [[Skills]]:Agent as Code的能力单元