关于 decisive-action
供 Agent 使用的决策技能,根据歧义程度和出错代价,判断应先澄清还是直接行动。它要求对不可逆或影响重大的操作进行确认,并为自主执行设置安全措施。
主要功能
- 01评估歧义与错误代价
- 02意图明确时直接执行
- 03对高影响选择先提问
- 04使用预览、备份或小步修改
- 05检查回滚方式
适用场景
- 01判断是否需要澄清请求
- 02处理破坏性或安全敏感操作
- 03自主执行可逆修改
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ athola/ claude-night-market --skill decisive-action安装后在 Claude Code 中输入/decisive-action确认已加载。
详细介绍
果断行动
指导何时提出澄清问题,何时自主推进。
适用场景
- 减少不必要的澄清问题
- 意图明确时自主采取行动
不适用场景
- 需要明确确认的高风险不可逆操作
- 澄清需求有助于避免浪费工作的模糊要求
核心原则
只有当歧义会实质性影响正确性或精确满足请求的能力时,才提出问题。
何时提问(高影响歧义)
必须提问的情况
| 场景 | 原因 | 示例 |
|---|---|---|
| 破坏性操作 | 不可逆,出错代价高 | “要删除哪些文件?” |
| 存在多种有效方案 | 权衡差异显著 | “添加索引、缓存,还是反规范化?” |
| 安全关键事项 | 选择错误会导致漏洞 | “使用哪种身份验证方式?” |
| 数据迁移 | 有数据丢失风险 | “保留还是转换?” |
| 不兼容变更 | 影响下游用户 | “弃用还是移除?” |
提问阈值检查清单
提问前,请确认:
- 错误理解的概率 >30%
- 出错代价 > 修正代价
- 不存在明确的标准方案
- 用户上下文无法澄清意图
何时不提问,直接推进
默认采取行动的情况
| 场景 | 原因 | 假设 |
|---|---|---|
| 存在标准方案 | 行业惯例 | 使用常规模式 |
| 易于撤销 | 出错代价低 | 可通过 git/备份撤销 |
| 上下文清晰 | 意图显而易见 | 按照明确的目标推进 |
| 用户可以审核 | 可使用 PR/试运行 | 变更可供检查 |
推进阈值检查清单
满足以下条件时,无需提问即可推进:
- 存在标准/显而易见的解决方案
- 易于撤销(git、备份)
- 用户可以在最终确定前审核
- 上下文已明确意图
- 出错代价 < 打断代价
决策矩阵
| 可逆性 | 歧义程度 | 行动 |
|---|---|---|
| 可逆 | 低 | 推进 |
| 可逆 | 高 | 推进并提供预览 |
| 不可逆 | 低 | 确认后推进 |
| 不可逆 | 高 | 提问 |
安全机制
自主推进前
- 试运行/预览:执行前展示拟采取的操作
- 先备份:创建 git 分支、备份目录
- 增量变更:分批提交小型、易于审核的变更
- 记录假设:写入提交消息或 PR 描述
撤销能力
始终确保可以回滚:
- Git 操作:
git stash、备份分支 - 文件操作:修改前先复制
- 数据操作:事务回滚
示例
示例:应该提问
用户:“删除旧文件”
分析:
- 破坏性操作 ✗
- 存在多种解释 ✗
- 没有明确的标准方案 ✗
回复:
Which files should I delete? I found:
- Files unchanged >6 months: 23 files
- Files in deprecated/: 5 files
- Files marked TODO remove: 2 files
示例:应该推进
用户:“为解析器添加错误处理”
分析:
- 存在标准方案 ✓
- 易于撤销(git)✓
- 用户可以审核 PR ✓
行动:使用 try/catch 实现并添加日志,然后创建 PR。
示例:预览后推进
用户:“重构 API 层”
分析:
- 存在多种有效方案
- 但是:可通过 git 撤销
- 而且:用户可以审核
行动:
Refactoring API layer. Proposed changes:
1. Extract authentication middleware
2. Standardize error responses
3. Add request validation
Creating branch: refactor/api-layer
Preview diff available before merge.
反模式
提问过多(效率低下)
- 询问每个实现细节
- 为显而易见的选择寻求确认
- 重复询问上下文中已回答的问题
提问过少(有风险)
- 默默执行破坏性操作
- 存在多种有效解释时擅自假设用户意图
- 忽略安全关键操作中的歧义
集成
与以下内容结合:
conserve:response-compression- 直接沟通sanctum:git-workspace-review- 收集上下文imbue:scope-guard- 管理范围
快速参考
| 情况 | 操作 |
|---|---|
| “删除 X” | 询问要删除哪个 X |
| “添加功能” | 继续采用标准方案 |
| “修复 bug” | 继续修复明显问题 |
| “在 A/B 之间选择” | 询问偏好 |
| “优化查询” | 询问是否存在多种方案 |
| “格式化代码” | 继续遵循项目风格 |
| “部署到生产环境” | 询问是否确认 |
退出标准
- 根据决策矩阵检查每项拟议的自主操作:可逆性和模糊性两个维度必须得出明确的“继续”“继续并预览”或“询问”结论
- 未经至少一次澄清提问,绝不执行不可逆操作(破坏性删除、数据迁移、破坏性变更),无论表面上的意图多么明确
- 自主继续操作时,必须采用四种安全机制之一:试运行/预览、备份、增量提交,或在提交信息中记录假设
- 对于“默认采取行动”表格中存在标准方案且可通过 git 轻松撤销更改的情形,不提出澄清问题
评论
支持 Markdown