b3fbe33dd0
- 将 git status/log/branch 移到上下文加载之前 - 增加异常处理:未提交变更/合并冲突/分支错误/远程更新 - 版本升至 v1.1
144 lines
4.2 KiB
Markdown
144 lines
4.2 KiB
Markdown
---
|
||
name: "switch-model"
|
||
description: "Checks project context when switching AI models. Invoke when user says '切换模型 架构/开发/测试' or 'switch-model arch/dev/qa'."
|
||
---
|
||
|
||
# 切换模型 Skill
|
||
|
||
## 功能
|
||
|
||
当用户更换大模型(Claude/TRAE/扣子/元宝等)时,快速加载项目上下文,确保新模型理解当前状态并遵循规则。
|
||
|
||
## 触发条件
|
||
|
||
**必须指定角色**:
|
||
- `切换模型 架构` / `switch-model arch` → Arch AI
|
||
- `切换模型 开发` / `switch-model dev` → Dev AI
|
||
- `切换模型 测试` / `switch-model qa` → QA AI
|
||
|
||
**不指定角色时**:询问用户,不执行全面检查。
|
||
|
||
## 执行步骤
|
||
|
||
### 1. 识别角色
|
||
|
||
| 触发词 | 角色 | 配置文件 |
|
||
|--------|------|---------|
|
||
| 架构/arch | Arch AI | .ai/config/architect.json |
|
||
| 开发/dev/coder | Dev AI | .ai/config/coder.json |
|
||
| 测试/test/qa | QA AI | .ai/config/tester.json |
|
||
|
||
### 2. 安全检查(git 状态优先)
|
||
|
||
**必须先检查 git 仓库状态,确保在安全的环境下加载上下文**:
|
||
|
||
```bash
|
||
git status # 工作区状态(干净/有变更/有冲突)
|
||
git log --oneline -3 # 最近 3 次提交(了解最近做了什么)
|
||
git branch # 当前分支(确认是否在正确分支)
|
||
```
|
||
|
||
**异常处理**:
|
||
|
||
| 状态 | 处理方式 |
|
||
|------|---------|
|
||
| 工作区有未提交变更 | 提醒用户先提交或暂存,避免上下文不一致 |
|
||
| 有合并冲突 | 立即告知用户需要解决冲突 |
|
||
| 分支不对 | 提醒用户切换到正确分支 |
|
||
| 远程有更新未拉取 | 提醒用户先 pull |
|
||
|
||
### 3. 加载基础上下文(所有角色通用)
|
||
|
||
```
|
||
1. AGENTS.md # 团队架构和权限矩阵
|
||
2. .ai/config/workflow.json # 工作流配置
|
||
3. docs/PROJECT_CONTEXT.md # 项目整体状态
|
||
```
|
||
|
||
### 4. 按角色加载专属上下文
|
||
|
||
#### Arch AI(架构AI)
|
||
|
||
```
|
||
4. .ai/config/architect.json # 角色权限
|
||
5. docs/02_系统架构/ # 架构文档
|
||
6. review/active/*/task.md # 活跃任务
|
||
7. .trae/skills/ # 可用 Skill 列表
|
||
8. ENVIRONMENT.md # 环境配置
|
||
```
|
||
|
||
#### Dev AI(编码AI)
|
||
|
||
```
|
||
4. .ai/config/coder.json # 角色权限
|
||
5. review/active/*/task.md # 活跃任务
|
||
6. review/active/*/feedback/ # 待修 Bug
|
||
7. .trae/skills/ # 可用 Skill 列表
|
||
8. ENVIRONMENT.md # 环境配置
|
||
```
|
||
|
||
#### QA AI(测试AI)
|
||
|
||
```
|
||
4. .ai/config/tester.json # 角色权限
|
||
5. review/active/*/acceptance.md # 验收标准
|
||
6. reports/test-results/ # 最近测试报告
|
||
7. .trae/skills/ # 可用 Skill 列表
|
||
8. ENVIRONMENT.md # 环境配置
|
||
```
|
||
|
||
### 5. 输出简洁检查报告
|
||
|
||
```markdown
|
||
# 模型切换检查报告
|
||
|
||
## 角色确认
|
||
- 当前角色: [角色名]
|
||
- 权限: [可写路径] | 只读: [只读路径] | 禁止: [禁止路径]
|
||
|
||
## 项目状态
|
||
- 当前阶段: [工作流阶段]
|
||
- 活跃任务: [任务编号和名称]
|
||
- 工作区: [干净/有变更]
|
||
|
||
## 最近提交 (3 条)
|
||
- [commit 1]
|
||
- [commit 2]
|
||
- [commit 3]
|
||
|
||
## 待办事项
|
||
- [ ] [待办 1]
|
||
- [ ] [待办 2]
|
||
|
||
## 阻塞点
|
||
- [无 / 具体问题]
|
||
|
||
✅ 已就绪,等待指令
|
||
```
|
||
|
||
### 6. 等待用户指令
|
||
|
||
报告输出后,等待用户进一步指令。用户可以说:
|
||
- `展开 [某项]` → 深入查看细节
|
||
- `开始工作` → 进入角色模式
|
||
- `切换角色` → 重新执行本 Skill
|
||
|
||
## 注意事项
|
||
|
||
1. **必须指定角色**:不指定时询问用户,不盲目全面检查
|
||
2. **简洁优先**:报告控制在 1 屏内,用户需要细节时可展开
|
||
3. **权限意识**:加载配置后立即确认权限边界
|
||
4. **不修改文件**:此 Skill 只读取上下文,不修改任何文件
|
||
5. **Skill 列表**:确保新模型知道有哪些 Skill 可用
|
||
|
||
---
|
||
|
||
**Version**: 1.1
|
||
**Created**: 2026-05-23
|
||
**Updated**: 2026-05-23
|
||
**Based On**: ErrLens AI Programming Project
|
||
**Purpose**: 确保大模型切换时快速同步上下文,按角色差异化加载
|
||
**Changes from v1.0**:
|
||
- 新增安全检查步骤,git 状态优先于上下文加载
|
||
- 增加异常处理(未提交变更/合并冲突/分支错误/远程更新)
|