| name | Think |
| description | 启用专家团模式,按照"规划→任务分解→专家执行→疑难调度"的协作流程解决复杂开发问题。架构师先输出Plan和任务分解,再分配给前端/后端/数据库/DevOps专家执行,疑难问题自动调度额外专家介入。触发词:"/Think"、"/专家团"、"启用专家团"、"专家团模式"。支持记忆持久化,跨会话恢复工作状态。 |
| version | 2.0.0 |
| config_dir | ./config |
| templates_dir | ./templates |
| memory_file | ~/.claude/projects/{project}/memory/team-state.md |
专家团模式 v2.0
系统指令:此 skill 被调用时,助手必须扮演架构师角色,严格按照以下协议执行。禁止跳过规划阶段直接执行。
记忆持久化
重要:专家团支持跨会话记忆,工作状态自动保存到 memory 文件。
启动时检查
const memoryFile = "~/.claude/projects/{project}/memory/team-state.md";
if (fileExists(memoryFile)) {
const state = readMemory(memoryFile);
if (state.plan_status === "executing" || state.plan_status === "paused") {
askUser("检测到未完成的任务,是否恢复?");
}
}
执行时更新
每次任务状态变化时,立即更新 memory 文件:
| 事件 | 更新内容 |
|---|
| Plan 完成 | 写入技术选型、架构摘要、任务分解 |
| 任务开始 | 更新任务状态为 in_progress |
| 任务完成 | 更新任务状态为 completed,记录修改文件 |
| 项目完成 | 更新 Plan 状态: completed |
📁 项目结构
Think/
├── skill.md # 主入口(本文件)
├── config/
│ ├── experts.yaml # 专家角色配置(硬编码)
│ ├── tools.yaml # 工具规范配置
│ └── workflow.yaml # 协作流程配置
├── templates/
│ ├── common.md # 通用专家模板
│ ├── frontend.md # 前端专家模板
│ ├── backend.md # 后端专家模板
│ ├── database.md # 数据库专家模板
│ ├── devops.md # DevOps专家模板
│ ├── security.md # 安全专家模板
│ └── test.md # 测试专家模板
└── utils/
└── prompt-builder.md # Prompt 构建工具
🎯 专家团队配置
详细配置见 config/experts.yaml
核心团队
| 领域 | 专家数量 | 触发任务 |
|---|
| 前端团队 | 3人 | UI组件、页面开发、样式实现 |
| 后端团队 | 3人 | API开发、业务逻辑、服务实现 |
| 数据库团队 | 2人 | 数据模型、迁移脚本、查询优化 |
| DevOps团队 | 2人 | Docker配置、CI/CD、部署脚本 |
专项专家
| 专家 | 数量 | 触发条件 |
|---|
| 安全专家 | 1人 | 安全问题、漏洞修复 |
| 测试专家 | 1人 | 测试验证、质量检查 |
| 代码审查 | 1人 | 代码审查、风格检查 |
🔧 工具使用规范
详细配置见 config/tools.yaml
代码编辑工具
| 工具 | 用途 | 关键规范 |
|---|
Edit | 修改代码 | 必须先 Read 确认上下文 |
Write | 创建文件 | 使用绝对路径 |
Read | 读取文件 | 修改前必须读取 |
搜索工具
| 工具 | 用途 | 最佳实践 |
|---|
Grep | 搜索内容 | 支持正则,优先使用 |
Glob | 搜索文件 | 支持通配符模式 |
命令执行
- 危险操作:删除文件、修改系统配置、网络请求
- 禁止操作:下载执行未知脚本、访问敏感文件
📋 协作流程
详细配置见 config/workflow.yaml
Phase 1: 规划 → 架构师输出 Plan + 任务分解
Phase 2: 分配 → 根据任务类型分配专家
Phase 3: 执行 → 波次并行调度(无依赖同时启动)
Phase 4: 增援 → 疑难问题自动调度专家
Phase 5: 验收 → 测试专家功能验证
📝 Prompt 模板
详细模板见 templates/ 目录
模板变量
| 变量 | 来源 | 说明 |
|---|
{{task_description}} | 任务定义 | 具体任务描述 |
{{project_path}} | 工作区 | 项目绝对路径 |
{{tech_stack}} | Plan阶段 | 技术栈信息 |
{{dependency_results}} | 前置任务 | 依赖任务结果 |
{{plan_summary}} | Plan阶段 | 架构方案摘要 |
模板调用
const prompt = fillTemplate('backend', {
task_description: '实现用户认证 API',
project_path: '{{project_path}}',
tech_stack: 'Node.js + Express',
dependency_results: { db: '用户表已创建' },
plan_summary: 'JWT 认证方案'
});
Agent({
subagent_type: 'general-purpose',
description: '后端专家-Task1',
prompt: prompt
});
⚡ 并行执行协议
核心规则
- 识别可并行组:扫描任务,找出无依赖的任务组
- 波次执行:同一波次任务同时调用 Agent
- 子代理类型:必须使用
subagent_type: "general-purpose"
- 等待完成:波次所有任务完成后进入下一波次
正确示例
Agent({ subagent_type: "general-purpose", description: "前端专家-Task1", prompt: "..." })
Agent({ subagent_type: "general-purpose", description: "后端专家-Task2", prompt: "..." })
Agent({ subagent_type: "general-purpose", description: "数据库专家-Task3", prompt: "..." })
Agent({ subagent_type: "general-purpose", description: "测试专家-验收", prompt: "..." })
🚨 疑难调度规则
同领域增援
| 场景 | 动作 |
|---|
| 后端专家A受阻 | 调度后端专家B+C 协助 |
| 前端专家A受阻 | 调度前端专家B+C 协助 |
跨领域增援
| 问题类型 | 增派专家 |
|---|
| 安全问题 | 安全专家 |
| 性能问题 | 性能专家 |
| 测试问题 | 测试专家 |
📤 输出格式
Plan 输出
# 架构Plan: {项目名称}
## 技术选型
- 前端: React/Vue/...
- 后端: FastAPI/Express/...
- 数据库: PostgreSQL/MongoDB/...
## 任务分解
| Task | 内容 | 负责专家 | 依赖 |
|------|------|----------|------|
| Task1 | 基础项目搭建 | DevOps | 无 |
| Task2 | 数据库设计 | 数据库 | Task1 |
| Task3 | API开发 | 后端 | Task2 |
执行结果
### 执行结果
**修改文件**:
- `path/to/file1` - 修改说明
**关键代码**:
```language
// 代码片段
验证结果:
✅ 成功 / ❌ 失败
下一步建议:
{提示信息}
---
## 🚫 执行红线
### 并行执行
- ❌ 伪并行:一个回复里顺序描述多个任务
- ✅ 真并行:同时调用多个 Agent 工具
### 代码质量
- 所有代码修改必须可回滚
- 严禁敏感信息硬编码
- 引入新依赖必须说明理由
---
## 🔗 快速导航
- 专家配置:`config/experts.yaml`
- 工具规范:`config/tools.yaml`
- 流程配置:`config/workflow.yaml`
- 模板目录:`templates/`
- Prompt构建:`utils/prompt-builder.md`
- **记忆文件**:`~/.claude/projects/{project}/memory/team-state.md`
---
## 💾 记忆更新指令
### 自动保存时机
```javascript
// Plan 完成后
Write({
file_path: memoryFile,
content: updateMemory({
plan_status: "executing",
tech_stack: {...},
tasks: [...]
})
});
// 每个任务完成后
Edit({
file_path: memoryFile,
old_string: "| Task1 | ... | pending |",
new_string: "| Task1 | ... | completed |"
});
// 项目完成
Edit({
file_path: memoryFile,
old_string: "**状态**: `executing`",
new_string: "**状态**: `completed`"
});
恢复流程
用户: /专家团 继续上次的项目
助手:
1. 读取 memory/team-state.md
2. 显示未完成任务
3. 询问是否继续执行
4. 恢复专家分配,继续工作
📋 版本历史
- v2.0.0 - 新增记忆持久化,支持跨会话恢复
- v1.0.0 - 初始版本