# OpenCode Agents 配置 本目录包含为 [OpenCode](https://opencode.ai) 配置的专业 AI 代理。 ## 📁 目录结构 ``` .opencode/ └── agents/ ├── team.md # 项目经理与团队协调者(主 Agent) ├── planning.md # 技术架构与规划专家 ├── frontend.md # 前端架构与 UI/UX 专家 ├── umi-pro.md # UmiJS + ProComponents 专家 ├── code-spec.md # 代码规范与质量专家 └── qa-tester.md # 质量保证测试专家 ``` ## 🎯 主 Agent(Primary) ### Team Coordinator (`team`) **角色**: 项目经理和团队协调者 **模式**: Primary(主代理) **权限**: 完全访问 **职责**: - 理解和 clarify 用户需求 - 拆分任务为合理的子任务 - 协调所有子 Agent 按正确顺序工作 - 管理开发流程和进度 - 在关键检查点停止并征求用户意见 - **唯一有权开始和结束会话的 Agent** **使用方式**: 这是默认的主 Agent,直接与用户对话,无需特殊调用。 --- ## 🤖 子 Agent(Subagents) 所有子 Agent 只能被主 Agent (`team`) 调用,通过 `@agent-name` 方式。子 Agent 完成任务后必须将结果交回主 Agent,不能自行结束会话或调用其他 Agent。 ### 1. Planning Agent (`@planning`) **角色**: 技术架构师和规划专家 **模式**: Subagent(子代理) **权限**: 只读(不可编辑代码) **用途**: - 深度分析用户需求和代码库 - 生成详细的实施计划和技术方案 - API 契约驱动开发规划 - 技术选型建议 **调用方式**: ``` @planning 分析这个需求并给出详细的实施计划 ``` --- ### 2. Frontend Expert (`@frontend`) **角色**: 前端架构师和 UI/UX 专家 **模式**: Subagent(子代理) **权限**: 完全访问(可编辑代码) **用途**: - 高端 UI/UX 实现 - Ant Design & ProComponents 开发 - Design Tokens 样式化 - 前端性能优化 **调用方式**: ``` @frontend 实现一个符合 Ant Design 规范的产品列表页面 ``` --- ### 3. Umi Pro Agent (`@umi-pro`) **角色**: UmiJS 和 ProComponents 专家 **模式**: Subagent(子代理) **权限**: 完全访问(可编辑代码) **用途**: - 快速 ProComponents 实施 - UmiJS 框架约定和最佳实践 - Mock 数据和服务层开发 - 国际化实现 **调用方式**: ``` @umi-pro 创建一个包含搜索功能的商品管理表格 ``` --- ### 4. Code Spec Expert (`@code-spec`) **角色**: 代码规范和质量专家 **模式**: Subagent(子代理) **权限**: 完全访问(可编辑代码) **用途**: - 执行 Ant Design 和 ProComponents 最佳实践 - 代码审查和重构 - 安全审计(XSS、认证、财务计算) - 类型安全检查 **调用方式**: ``` @code-spec 审查这个组件是否符合 Ant Design 规范 ``` --- ### 5. QA Tester (`@qa-tester`) **角色**: 质量保证和测试专家 **模式**: Subagent(子代理) **权限**: 有限(仅 bash,不可编辑代码) **用途**: - 功能测试和验证 - i18n 国际化检查 - UI/UX 质量审计 - 运行时错误检测 **调用方式**: ``` @qa-tester 测试产品列表页面的所有功能 ``` --- ## 🎯 核心设计理念 所有代理都遵循以下核心原则: ### 1. "Separated Card" 设计模式 - **< 4 个搜索字段**: 使用 `ProTable` 内置 `search` - **>= 4 个搜索字段**: 使用独立 `QueryFilter` 组件 ### 2. 强制样式 Tokens ```typescript { background: token.colorBgContainer, // 白色背景 padding: token.paddingLG, // 24px borderRadius: token.borderRadius, // 6px marginBottom: token.marginLG, // 24px // 无 boxShadow - 扁平化设计 } ``` ### 3. 零 CSS 文件政策 所有样式必须通过 Ant Design Design Tokens 内联实现。 ### 4. ProComponents 优先 - 列表 → `ProTable` - 表单 → `ProForm` / `QueryFilter` / `ModalForm` - 布局 → `ProLayout` / `PageContainer` ### 5. 严格 TypeScript 无 `any` 类型,所有接口定义在 `data.d.ts`。 ### 6. 强制国际化 所有用户可见字符串必须使用 `intl.formatMessage` 并包含 `defaultMessage`。 --- ## 📋 使用示例 ### 典型开发流程 1. **规划阶段**: ``` @planning 我需要创建一个文章管理系统,包含列表、编辑和删除功能 ``` 2. **实施阶段**: ``` @umi-pro 根据计划实现服务层和 Mock 数据 @frontend 实现文章列表页面的 UI ``` 3. **审查阶段**: ``` @code-spec 审查新创建的文章管理代码 ``` 4. **测试阶段**: ``` @qa-tester 测试文章管理的所有功能并验证 i18n ``` --- ## 🔧 配置说明 ### Markdown 格式 每个代理使用 Markdown 文件定义,包含 YAML frontmatter: ```markdown --- description: 代理描述 mode: subagent model: anthropic/claude-sonnet-4-20250514 temperature: 0.2 tools: write: true edit: true bash: true --- # 代理提示内容 ... ``` ### JSON 格式 同时提供了 `opencode.json` 配置文件,可以在项目根目录使用。 --- ## 📚 相关文档 - [OpenCode 官方文档](https://opencode.ai/docs/zh-cn/agents/) - [Ant Design 官方文档](https://ant.design/) - [ProComponents 官方文档](https://procomponents.ant.design/) - [UmiJS 官方文档](https://umijs.org/) --- ## 🚀 版本信息 - **创建时间**: 2026-02-14 - **OpenCode 版本**: 最新 - **模型**: Claude Sonnet 4 (anthropic/claude-sonnet-4-20250514) --- **维护者**: Antigravity Team