WRAP 決策框架 Skill
框架結構:錨點確認 → Step 0(資料充足度閘門)→ W(擴增選項)→ R(現實檢驗)→ A(拉開距離)→ P(準備好犯錯)→ 絆腳索(持續監控)
核心理念:提醒決策者「你是有選擇的」,不替決策者做選擇。
本 SKILL 為通用 WRAP 規則,獨立於任何專案框架。專案若需要掛鉤(Hook)、CLI 或任務系統整合,請在該專案內另建落地層文件。
觸發條件
| 情境 | 識別特徵 | 模式 |
|---|---|---|
| 連續失敗 | 同一問題修改 2+ 次仍失敗 | 快速 |
| 被困住 | 表達「做不到」「沒辦法」「不支援」「禁止」「不可能」 | 快速 |
| 偏離核心 | 連續 2+ 個任務單位不在當前迭代目標 | 完整 |
| 重大決策 | 影響架構/流程/版本方向的非技術決策 | 完整 |
| 救火排擠 | 花 > 30 分鐘在非原定計畫的問題上 | 快速 |
| 分析任務 | 根因調查、代理人失敗歸因、測試失敗檢討 | 快速+(配合兩階段反思) |
| 根因深度反思 | 用戶質疑「分析太表層」「不夠深」、或需要把失敗歸因寫成可重用規則 | 完整強制(5+ 候選假設 + Reality Test + 2 層深因 + W/A/P 檢驗) |
| 反思深度質疑 | 用戶要求「太表層」「再想想」「更深一層」「還有其他可能」「反向驗證」 | 完整強制(擴增假設 → 反向驗證 → 可執行結論) |
| 提案評估 | 評估提案可行性 | 完整 |
| 不可逆 / 時間壓力 | 一旦執行難以回退,或須在很短時間內定案 | 完整(重 P 階段回退計畫) |
| 利害關係人衝突 | 多方目標不一致、需平衡不同立場 | 完整(重 W 假選項偵測) |
| 個人化建議 | 使用者用「我」「我該」「推薦給我」,或話題涉及健康/金錢/法律/醫療 | Step 0 強制 |
| CLI/規則自動駕駛(3.1) | CLI 撞錯後立即重試/猜變體(未查文件) | 快速(強制查文件後再試) |
| 既有結論錨定(3.2) | W 階段選項能一句話概括 / 全指向同一根因 | 完整(反向思考 + 重新定義問題) |
| 規則失敗草率改規則(3.3) | 失敗第一反應「改規則」,未先重試 2 次 | 快速(先挖根因再決定) |
| 多步驟成功率盲點(3.4) | 多步驟計畫中所有中間步驟都預測成功 | 快速(R 階段基本率 + 每步驗證) |
| 完整 premortem | 版本規劃/提案評估/發版前,需對「這計畫會怎麼死」做並行深挖 | 完整(P 階段展開版,見 references/premortem-workflow.md) |
| 二元處置取捨 | 準備呈現「保留/回退/停用/刪除」類選項,或代價方向相反的設計選型選項,且未經 W 階段產出 | W 階段起跳(反向框架 + 三類涵蓋跑完才列選項);涉及防護增減或不可逆變更則升為完整 |
上述 4 項決策路徑層因子可由各專案映射到自己的掛鉤(Hook)、CLI 或任務系統;本 skill 只保留通用判斷語意。
二元處置取捨:與既有結論錨定(3.2)的邊界
3.2 是 WRAP 內部自我檢查(W 已跑,選項可一句話概括);本項是 WRAP 之前的入場閘門(尚未進 WRAP,直覺已浮出對立選項)。也涵蓋代價方向相反的設計選型選項:選項由直覺產生、未經 W 擴增即封閉解空間,且對決策者不可見。
Action:識別到此類選項時停手,先跑 W 階段反向框架檢查 + 三類涵蓋(改造既有 / 零工具 / 新增工具),選項取自 W 產出。升級條件:涉及防護能力增減或不可逆變更時,須跑完整模式。
判斷標準 substance 權威來源;完整論證與兩則實證見
references/detailed-techniques.md「二元處置取捨:完整論證與實證」章節;落地版對應references/project-integration/pm-rules-map.md「選項空間檢查」節,修改以本節為準並同步。<!-- portability-allow: 分層目錄由各專案自備,不隨 sync 傳遞 -->
快速模式(5 分鐘):錨點 + Step 0 + W + 基本率(R 核心)+ 機會成本(A 核心)+ 決定 快速+模式:快速模式 + 強制 R 基本率 / 反向驗證兩階段反思(分析任務易跳過事證直接下結論) 完整模式(15-30 分鐘):全階段 Step 0 強制:個人化建議場景,不論何種模式,Step 0 皆為必經閘門
各專案可依自身工作流建立機器可讀觸發條件、自動觸發機制、關鍵字清單對應,以及任務啟動階段的簡化三問(W/A/P 1-2 分鐘版)。
0. 錨點確認(Anchor Check)
進入分析前先確立錨點。第一錨點(產品決策):「誰是我們的客戶?」建立決策錨點;「當前核心目標是什麼?」對齊迭代目標。第二錨點(流程決策):「這個流程改善影響決策品質或開發效率嗎?」區分改善工具 vs 低價值維護;「不做會重複付出什麼代價?」評估一次性投入 vs 持續回報。
閘門判斷:影響核心客戶/目標 → 進 Step 0;否則問流程改善是否影響效率——是且持續回報 > 一次性投入 → 進 Step 0;是但低回報 → 建提案回核心任務;否 → 記待辦回核心任務;純救火 → 建低優先級任務回核心任務。
引用:英特普拉思特「病人才是我們的客戶」— 確立後,所有困難的決定都有了錨點。
Step 0. 資料充足度閘門(Data Sufficiency Gate)
核心問句:「我手上的資訊夠做這個決策嗎?還是我正在用假設替代資料?」
模式辨識
| 模式 | 特徵 | 答案來源 | |---|---|---| | 資訊查詢 | 問的是客觀知識(「X 和 Y 差別」「怎麼運作」) | 公開資料即可 | | 決策諮詢 | 問的是「我該怎麼選/做/買」 | 必須基於當事人條件 |
使用者說「我是 X」、「推薦給我」、「我該買哪個」 → 決策諮詢。決策諮詢以個案資料為基準,群體平均值只作為背景參考。
判定流程
六項檢查:當事人是誰?目標?限制(預算/時間/禁忌)?環境?是否用平均值假設替代個人資料?假設錯誤後果嚴重嗎?判定:充足 → 進 W;不足+低風險 → 進 W 但標記假設;不足+中風險 → 漸進式問 2-3 個關鍵變數;不足+高風險 → 強制完整問卷 + 建議諮詢專業人士。
為什麼在 W 之前:選項意義取決於當事人條件,缺 Step 0 整個 WRAP 淪為「精美的錯誤分析」(反模式訊號:選項含「通常」「一般來說」;Reality Test 發現資料來源是群體統計)。完整因果表見 references/detailed-techniques.md「Step 0 — 資料充足度閘門詳細操作」。跳過的常見原因是反問當事人打斷流暢度,流暢度與準確度的取捨交由當事人決定。
各專案可建立個人化建議的三層機制(識別 / 分級 / 誠實)。
與 requirement-protocol 的分工邊界
Step 0、premortem context 閘門、requirement-protocol 都做「資訊不足先補齊」但問法不同:Step 0 問決策諮詢的當事人條件;premortem context 閘門問計畫輪廓(見 references/premortem-workflow.md 步驟 0);requirement-protocol 問使用者指令是否明確。三者皆「一次一問、問到門檻即停」,互為前置不重複問:卡在「要什麼」用 requirement-protocol,「當事人條件」用 Step 0,「計畫輪廓」用 premortem context 閘門。
W — 擴增選項(Widen Your Options)
核心問句:「還有什麼其他方式可以達成目標?」
爬梯子法(由近到遠)
| 層級 | 搜尋範圍 | 做法 | |---|---|---| | 0. 身邊 | 當前專案既有程式碼/模組 | 搜尋既有 API | | 1. 同層 | 當前專案其他模組的做法 | 檢查類似功能的實作 | | 2. 同領域 | 社群(GitHub Issues、文件) | 網路搜尋 | | 3. 跨領域 | 其他工具/框架的類比方案 | AI 內建知識調用 |
每層找到可行方案就停止,找不到才往上爬。範例與操作見 references/detailed-techniques.md。
品質檢查
| 檢查(核心問句) | 不通過的信號 | |---|---| | 選項消失測試——全部移除還能怎麼做? | 選項不足 → 框架太窄 | | 假選項偵測——選項間有實質差異嗎? | 全指向同一根因/途徑 → 季辛吉陷阱 | | 框架測試——能一句話概括所有選項? | 可以 → 多元性不足 | | 方案性質三類涵蓋——涵蓋新增工具/改造既有/零工具? | 全屬新增工具 → 工具化偏誤,強制補另兩類 | | 方案關聯性檢查——任兩方案可退化為同一方案? | 可退化 → 實質選項數要重算 | | 反向思考——若我相信的正好相反會怎樣? | 有力相反論述 → 重新定義問題從 W 重跑 |
反向思考最容易被跳過但最重要。三類涵蓋抵抗 LLM 工具化偏誤(訓練資料常把「新增工具」寫成答案)。詳細操作見
references/detailed-techniques.md。
假設層級多元性
選項必須在「假設根因」層級多元,不只是「實作手段」層級多元;全接受同一未驗證根因仍是偽擴增選項(pseudo-Widen),脫靶率會集中分佈。最低操作:列方案前先寫「我假設問題是 X 造成的」,再質疑 X 是否為真根因。
分析類任務建議完整三層質疑 + Reality Test 閘門 + 警告信號檢查,見
references/pseudo-widen-guard.md;ANA 類型 Ticket 強制執行該檔規格。
多輪迭代查詢(深度議題建議)
複雜議題(規則設計、提案評估)採四輪迭代:發散 → 具體化 → 精準化 → 反向驗證(對結論找反例)。進入下一輪訊號、邊界條件詳見 references/iterative-research.md。
R — 現實檢驗(Reality-Test Your Assumptions)
核心問句:「需要什麼事證才能證明這個方法可行?」
基本率 > 預測
問「這類問題的常見解法有哪些?成功率?」「常見根因分佈是什麼?」(基本率),不問「這樣改會成功嗎?」(預測)——後者無事證支撐。
大範圍觀照(Zoom Out)+ 近距離檢視(Zoom In)
大範圍觀照搜尋基本率,近距離檢視讀具體案例與實際變更;兩者缺一不可。搜尋前先問:搜尋的是問題本身的基本率,還是我預設解法的基本率?(後者狹窄,易誤選)
清單類答案的來源核對
LLM 列清單易產生幻覺(會「補齊」看起來合理的項目)。清單類答案須逐項對 source 核對,禁止整批信任:找權威 source(官方 docs、Context7),每項對照,找不到 → 標記候選幻覺;單項細節比整體清單可信。完整分類與流程見 references/source-verification.md。
R.2 事實宣稱驗證(ANA → IMP 派發前強化)
核心問句:「這個 ANA 結論的關鍵假設是什麼?我用什麼指令驗證過?」ANA 落地為 IMP 派發前的事實宣稱(如「Hook X 已強制 Y」)需主線程驗證——常被當前提,驗證成本低、漏驗代價高。何時必做:引用「已強制/已實作/已涵蓋」、動作不可逆、或含 dissenting view 時。驗證:grep/ls/wc/讀程式碼確認。失敗:IMP ticket 補範圍調整段,禁止照原結論派發。
試水溫(Ooch)+ 最強版本論證(Steelman)
對每個選項問:「能否用最小成本驗證?5 分鐘內能得到初步答案嗎?」能 → 先試水溫;成本高 → 完整分析。選定方案後、執行前:陳述被放棄選項的優點 + 列選定方案三個缺點,做得到 → 決策品質足夠,做不到 → 回 R 階段補充。
反向驗證範本(深度議題建議)
對結論反向搜尋避免確認偏誤,格式「結論 / 反向搜尋目標」,至少涵蓋 4-8 種方向(學術批評/反方論點/失效情境/統計限制/文化限制/家長主義警示/取捨揭露/自我參照悖論)。詳見 references/iterative-research.md。
A — 拉開距離(Attain Distance)
核心問句:「投入這個問題的時間,會擠壓哪個更重要的目標?」
前置強制檢查
進入 A 前必完成:框架概括測試(一句話概括所有方案?能 → 多元性不足)、反面框架識別(未列即進 A → 強制停下列出)、相反論述檢視(有力相反論述 → 從 W 重跑)、工具選擇檢查(物化/步驟數/目的地/白名單 4 問,觸發於選工具前+步驟數>2+涉及 Write/Bash 組合);任一觸發即回 W。違反代價:方案比較表面周詳實際同類解法,或單步最優化但總步驟盲。完整操作見 references/detailed-techniques.md「工具選擇檢查(Tool selection check)詳細技巧」。
機會成本顯性化
每個選項列出:做法 / 機會成本 / 風險 / 不選其他的代價。DVD 實驗:加「不買,留下 14.99 美元買別的」,不買率從 25% 升到 45%。
10/10/10 規則、核心優先事項對齊、提案系統對接
問決定在「10 分鐘後」的感受、「10 個月後」對使用者/專案的影響、「10 年後」對生態/信任度的影響;問「服務於哪個優先事項?衝突時哪個第一?」,排序確定後低優先事項自動有答案(記錄延後不投入時間);暫緩想法用「安全停放區」承接——提案暫存區(記錄不代表要做)、任務追蹤系統 pending(已決定要做)、迭代目標文件(當前優先事項)。
悖論識別檢查清單(規則 / Skill / 掛鉤設計時必檢)
設計規則/流程/系統時逐項自檢:是否違反它要保護的價值?是否通過善意家長主義 4 條件測試(實質傷害/介入有效/利益大於風險/最小限制)?「正確示範」是否違反它要禁止的模式?設計者立場是否透明化?是否預留「用戶可覆蓋」機制?詳見 references/anti-paternalism.md。
P — 準備好犯錯(Prepare to Be Wrong)
核心問句:「假設這個方案失敗了,最可能的原因是什麼?」
決策確定後、執行前,完成四項檢查:
| 檢查 | 判斷 | |---|---| | 行前預想:假設 12 小時後失敗,列 3 個最可能原因 | 任一 > 50% → 重新評估 | | 未來區間:最好/最壞的結果? | 兩端都能接受嗎? | | 安全係數:預估時間/資源 x 1.3-1.5 | 緩衝夠嗎? | | 回退計畫:失敗怎麼回退?成本? | 回退成本 > 收益 → 重新評估 |
Gary Klein 方法:先假設失敗了問「是什麼殺了它」,比問「可能會失敗嗎」多產出 25% 洞察。
每個原因配早期警訊:各補 1-2 個可觀測訊號(如「flaky 率 > 5%」),非模糊感覺——無訊號的預想只是焦慮。跨 session 監測需包裝為監測 ticket 綁 trigger,不可無 trigger 延後。高成本決策(版本規劃/提案評估/發版前)改用完整 premortem——原因不設上限、每個獨立派 subagent 深挖,見 references/premortem-workflow.md。
自我暴露偏好實踐(提供建議時必行)
必暴露偏好(「我傾向 X,理由 Y」,不假裝中立)、推理鏈(列步驟可追溯)、盲點(「我可能漏掉 Z」);標記偏誤時改「我目前的猜測」,不標「推薦」。
Voss:影響力是否為操縱,取決於是否透明化。推薦標記已被學術界(DarkBench)列為 LLM 暗黑模式,詳見
references/anti-paternalism.md。
5. 絆腳索(Tripwire)
核心理念:絆腳索不保證做出正確決定,但讓你意識到「是該做決定的時候了」。
絆腳索類型
| 類型 | 觸發條件 → 動作 | |---|---| | 期限型 | 非核心問題花 > 15 分鐘 → 建任務延後回核心 | | 失敗型 | 同修改連續 2 次失敗 → 搜尋社群或換方向 | | 偏離型 | 連續 2+ 任務偏離迭代目標 → 回核心任務 | | 回退型 | 已回退過一次 → 完全停止,換方向 | | 嘗試型 | 同問題嘗試 2 次 → 向外求解 | | 資料充足度 | 進決策諮詢前 → 強制 Step 0 閘門 | | 基礎設施累積型 | escalation 連續 2+ 次、每次加一層工具/檔案/流程、anchor 未明說 → 亮 anchor 一次,按它重定份量 |
完整類型(含正面絆腳索)、命名效應、切割機制見
references/tripwire-catalog.md。
階段間切割點
WRAP 每階段之間是切割點,強迫問「是否繼續」:Step 0 完成問「資料夠了嗎」;W 完成問「選項品質夠嗎」;R 完成問「證據支持哪個選項」;A 完成問「符合核心優先事項嗎」;P 完成問「風險可接受嗎」。
與其他決策類 Skill 的關係
| Skill 類型 | 分工 | |---|---| | 技術方案比較 | 比較用專用 skill;認知偏誤防護用 WRAP | | Bug 證據驅動修復 | 明確 bug 用證據驅動修復 skill;被困住用 WRAP | | 任務認知負擔評估 | 拆分用專用 skill;決策品質用 WRAP | | 決策格式模板(5W1H) | 格式負責「怎麼寫」;WRAP 負責「怎麼想」 | | 學習捕捉 | WRAP 正面絆腳索串接學習捕捉 skill |
參考文件
通用(可跨專案複用)
| 文件 | 內容 |
|---|---|
| references/detailed-techniques.md | 每階段詳細操作+範例+引用;含 Step 0 詳細操作、二元處置取捨論證與實證 |
| references/pm-checklist.md | 快速/完整模式檢查清單 + 決策品質自測 |
| references/tripwire-catalog.md | 絆腳索完整目錄、自動駕駛失敗模式、切割機制、命名效應 |
| references/iterative-research.md | 4 輪迭代查詢方法論 + 反向驗證 8 種類型範本 |
| references/anti-paternalism.md | 悖論識別檢查清單 + 自我暴露偏好實踐 |
| references/claim-quick-wrap.md | 任務啟動簡化三問、快速模式壓縮版 |
| references/premortem-workflow.md | 完整 premortem 五步流程,P 階段高成本決策展開版 |
| references/pseudo-widen-guard.md | 假設層級多元性規格:偽 Widen 判別、三層質疑、PC-063 案例 |
| references/source-verification.md | 清單答案來源核對規格:幻覺模式分類、逐項核對流程 |
版本紀錄在同目錄的 CHANGELOG.md。