# Decision Approval

> 决策变更与路径切换必须先征询用户同意。需要选择时必须使用AskQuestion工具，严禁聊天中列选项。

- Skill: `azrael-hao/decision-approval` (Agent Skill)
- Install (CLI): `npx skillmds@latest add azrael-hao/decision-approval`
- Raw SKILL.md: https://api.skillmd.com/api/skills/azrael-hao/decision-approval/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: azrael-hao (https://skillmd.com/u/azrael-hao)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/azrael-hao/decision-approval

---


# 决策变更审批

## 核心原则

### 标准1：任务的自然延续（最高优先级）

**任务的自然延续 → 必须直接执行，禁止询问**

- 验证→修复、分析→实现、测试→修复→重测、发现问题→解决
- 关键特征：后续步骤是前一步的目的所在
- **例外（需询问）**：多种方案选择、高风险不可逆操作、涉及业务决策

### 标准2：确定性原则

**能确认无误的 → 直接执行 | 不确定的 → 必须使用AskQuestion工具询问**

🔴 **强制要求：需要用户选择时，必须调用AskQuestion工具，严禁在聊天中列出选项**

**确认无误的条件（需全部满足）**：
1. 任务明确（用户要求明确或是任务自然延续）
2. 技术确定（只有一种正确做法）
3. 影响可控（修改范围明确，无连锁影响）
4. 风险可接受（操作可逆或低风险）

## 判断流程

```
第1步：是任务的自然延续吗？
  ├─ 是 → 第2步：有例外情况吗（多方案/高风险/业务决策）？
  │         ├─ 有 → 使用AskQuestion工具
  │         └─ 无 → 直接执行
  └─ 否 → 第3步：满足全部4个确定性条件吗？
            ├─ 是 → 直接执行
            └─ 否 → 使用AskQuestion工具
```

## 必须使用AskQuestion工具的场景

1. **路径选择**：多种技术方案需权衡
2. **高风险操作**：删除数据、force push、DROP TABLE、批量修改
3. **业务决策**：优先级排序、成本权衡、功能取舍
4. **需求解释**：需求有多种理解、缺少关键信息

## 错误行为 vs 正确做法

### ❌ 错误：在聊天中列出文字选项
```
"您想要如何处理？
A. 方案1
B. 方案2
C. 方案3"

这是严重错误！禁止这样做！
```

### ✅ 正确：使用AskQuestion工具
```javascript
AskQuestion({
  title: "选择处理方案",
  questions: [{
    id: "approach",
    prompt: "请选择处理方式",
    options: [
      { id: "A", label: "方案1描述" },
      { id: "B", label: "方案2描述" }
    ],
    allow_multiple: false
  }]
})
```

## 强制要求

当需要用户选择时：
1. ✅ 必须调用AskQuestion工具
2. ❌ 禁止在聊天中列出"A、B、C、D"等选项
3. ❌ 禁止用"您想要如何处理？"后跟文字选项
4. ✅ 必须等待AskQuestion返回结果后再继续

**违反此规则属于严重错误**

**记住：需要用户选择时，必须使用AskQuestion工具，禁止聊天文字列选项。**

