Skip to main content
ClaudeWave
Slash Command47 repo starsupdated 1mo ago

self-check

自我检查,验证输出质量

Install in Claude Code
Copy
mkdir -p ~/.claude/commands && curl -fsSL https://raw.githubusercontent.com/xiaobei930/cc-best/HEAD/commands/self-check.md -o ~/.claude/commands/self-check.md
Then start a new Claude Code session; the slash command loads automatically.

self-check.md

# /self-check - 自我检查

定期进行自我检查,确保工作质量和方向正确。

## 检查时机

### 定时检查

| 频率              | 检查内容 |
| ----------------- | -------- |
| 每个任务完成后    | 任务验证 |
| 每 5 个任务后     | 方向检查 |
| 每个 Phase 完成后 | 阶段审查 |
| 每天结束前        | 日总结   |

### 触发检查

| 触发条件   | 检查内容 |
| ---------- | -------- |
| 遇到阻塞   | 问题分析 |
| 不确定时   | 方向确认 |
| 用户反馈后 | 调整确认 |

## 检查清单

### 任务级检查

```
[ ] 任务目标是否达成?
[ ] 代码是否可运行?
[ ] 是否有未处理的错误?
[ ] 是否需要更新文档?
[ ] 是否需要提交 Git?
```

### 阶段级检查

```
[ ] Phase 目标是否达成?
[ ] 所有验收标准是否满足?
[ ] 文档是否同步更新?
[ ] 是否有遗留问题?
[ ] 下一阶段依赖是否就绪?
```

### 方向检查

```
[ ] 是否偏离了项目目标?
[ ] 是否过度设计?
[ ] 是否遗漏了用户需求?
[ ] 是否有更简单的方案?
[ ] 当前优先级是否正确?
```

## 问题发现后的处理

### 小问题(可立即修复)

1. 记录问题
2. 立即修复
3. 验证修复
4. 继续原任务

### 中等问题(需要规划)

1. 记录问题到 progress.md
2. 评估影响范围
3. 创建修复任务
4. 安排到合适时机

### 大问题(需要决策)

1. 停止当前工作
2. 详细记录问题
3. 分析可选方案
4. 请求用户决策

## 自检报告格式

```markdown
## Self-Check Report [时间戳]

### 当前状态

- Phase: X / Step: Y
- 进度: XX%
- 状态: 正常/需关注/阻塞

### 完成检查

- [x/] 任务验证
- [x/] 代码质量
- [x/] 文档同步
- [x/] Git 状态

### 发现问题

1. [问题描述] - [严重程度] - [处理方式]

### 下一步

- [下一个任务]
- [预期产出]
```

## 红旗检测 | Red Flag Detection

以下信号表明可能存在问题,需要立即关注:

### 7 个红旗信号

| #   | 红旗                                | 检测方式         | 行动         |
| --- | ----------------------------------- | ---------------- | ------------ |
| 1   | 引用不存在的 API/函数               | Grep 搜索确认    | 停止,查文档 |
| 2   | 假设未验证的业务规则                | 检查需求文档     | 标记 TBD     |
| 3   | 引用的版本号/语法可能过时           | WebSearch 验证   | 更新引用     |
| 4   | 多次失败后仍用相同方法              | 检查会话历史     | 换方案       |
| 5   | 修改了不理解的代码                  | 检查是否先 Read  | 先阅读再修改 |
| 6   | 跳过了测试直接提交                  | 检查 verify 记录 | 补测试       |
| 7   | 长时间无进展(>10次工具调用无产出) | 计数器检测       | 暂停反思     |

### 检测集成

红旗检测自动集成到现有检查流程中:

- **任务级检查**:检查红旗 #1, #5, #6(API 存在性、代码理解、测试覆盖)
- **阶段级检查**:检查红旗 #2, #3(业务假设、技术时效)
- **方向检查**:检查红旗 #4, #7(方法有效性、进展停滞)

### 自动化检测 (v0.8.2+)

红旗 #4(多次失败后仍用相同方法)已通过 `observe-patterns.js` PostToolUse hook 自动检测:

- 同文件 Edit 3+ 次 + 最近 5 步内 Bash 错误 2+ 次 → 自动输出 `[RedFlag]` 警告
- 其他红旗仍需手动检查

**iterate 管线推荐频率**: 每 5 个任务手动执行一次 `/cc-best:self-check`

### 红旗响应协议

```
发现红旗 → 记录到自检报告 → 评估严重度 → 执行对应行动
                                  │
                    ┌──────────────┼──────────────┐
                    ▼              ▼              ▼
                 低风险         中风险         高风险
              (标记继续)     (暂停评估)     (停止请示)
```

## 最大化能力的检查项

### 我是否充分利用了:

- [ ] 并行执行多个独立任务
- [ ] 后台 Agent 处理耗时操作
- [ ] 复用现有代码
- [ ] 遵循方法论(最小单元、先规划后实现)
- [ ] 及时更新项目记忆

### 我是否避免了:

- [ ] 过度设计
- [ ] 重复造轮子
- [ ] 忽略检查点
- [ ] 累积未提交的代码
- [ ] 跳过验证步骤

> **记住**: 自检是持续改进的第一步——发现问题不可怕,可怕的是不知道有问题。