Community生產力與協作github.com

ellmos-ai/decision-path

為終端機輸出建構結構化的 ASCII 相依性圖表(最多 100 欄),用於一組待處理與已確定的決策。透過五個固定維度評估節點:合理、建議、使用者典型(方向和決策頭像信心度分別編碼)、連貫與矛盾;邊線則承載關係類型和驗證狀態。

decision-path 是什麼?

decision-path 是一款專家系統技能,旨在透過結構化的 ASCII 相依性圖表,釐清多項決策之間的因果關係、執行順序與矛盾。它適用於 Claude Code、Cursor 等以終端機為主的 AI 代理工作流程,從 decision-briefing 取得的原始庫存和粗略標記出發,驗證並視覺化節點間的連結。每個節點會依據五個維度進行評估:合理性、建議選項、使用者典型性(含方向與信心度)、連貫性與矛盾性。邊線則標記為解鎖、阻擋、需求或推測等類型,並區分已驗證與推定狀態。最關鍵的輸出是「矛盾」區段,會醒目提示違反政策或安全閘門的衝突。此技能不會發明決策或選項,也不會取代 decide 或 decision-draw 等技能,而是專注於提供結構透明度,讓使用者能據此採取行動。

相容平台✓Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/ellmos-ai/ellmos-plugins/tree/HEAD/plugins/ellmos-decision-kit/skills/decision-path

Installed? Explore more 生產力與協作 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

decision-path — 待處理決策的 ASCII 相依性圖表

決策並非發生在真空中。孤立看來合理的決策,經常會阻礙後續工作、預設了尚未建立的先決條件,或繞過已建立的安全閘門。decision-path 將因果關係、執行順序與矛盾透明地呈現於終端機中。


使用時機

  • 已有待處理決策的庫存(來自 decision-briefing 階段 1、工作階段上下文或票務決策簡報),需要進一步結構化。
  • 你必須識別哪些決策可以立即執行(根節點),以及哪些依賴於先決條件或外部阻礙。
  • 你需要一個概覽,了解哪些建議能融洽地組合在一起,以及哪些建議在邏輯上或操作上相互衝突。
  • 觸發詞:/decision-path、「哪些決策彼此相依」、「決策相依性圖表」、「視覺化決策路徑」、「ASCII 決策樹」、「決策間的矛盾」、「檢查因果相依性」。
  • 請勿使用:
    • 首次發現並庫存開放問題 — 這由 decision-briefing 階段 1 負責。
    • 將推薦選項整合成單一連貫概念以進行簽核 — 這由 decision-draw 負責。
    • 以緊湊的五部分區塊呈現選項及其優缺點 — 這由 decision-shot 負責。
    • 系統性地評估單一複雜決策(如加權評分、情境分析) — 這由 decide 負責。

決策家族中的邊界

技能角色輸入輸出
decide系統性地結構化單一決策標準、選項評分矩陣、單一決策
decision-briefing將多個待處理決策分解為個別問題與選項待處理項目清單編號的 A/B/C/D 簡報、粗略相依性標記、批次預約
decision-path驗證並視覺化跨多項決策的因果關係與矛盾來自簡報/註冊表的粗略標記ASCII 相依性圖表,包含 5 種節點評估與邊線狀態
decision-draw將建議整合為一個連貫整體以進行簽核來自 decision-path 的彙整概念、相互影響(僅建議變體)、反向傳遞
decision-shot將已完成的分析壓縮為主管摘要(1 個決策或緊湊組合)1 個已分析的問題或群組五部分簡表,包含選項、優缺點與完整分析連結
decision-avatar建模使用者偏好與行為歷史上下文、過去選擇信心評級 🟢 / 🟡 / 🔴

與 decision-briefing 的合約與責任

decision-briefing 階段 1 已在攝入期間推導出粗略的相依性與執行順序(例如來自「之後自動:」、阻礙者或票務引用等訊號)。decision-path 不會重複此推導,而是直接建立在這些粗略標記之上:

  1. decision-briefing 提供粗略標記: 它提供待處理項目的原始庫存與初始耦合提示。
  2. decision-path 驗證、評估並視覺化: 它根據記錄的事實驗證訊號,將已確認的邊線與推測的邊線分開,為每個節點分配五項評估,並揭露閘門衝突。
  3. 關於差異的回饋迴路: 如果 decision-path 發現簡報中缺少或錯誤表示的相依性,它絕不會默默吸收,而是明確地將其回報為修正註記給簡報。

每個節點的五項評級(以及邊線驗證狀態)

五個維度 [S E U Z W] 用於評估節點(在其系統脈絡中的待處理或已確定決策)。邊線則承載其語義關係類型(例如解鎖、阻擋、先決條件)與驗證狀態(已確認 vs. 推測)。

圖表中的每個節點都顯示一個緊湊的五元素評估字串:

[S+ E:<Option> U<Direction><Confidence> Z+ W-]
  1. 合理 (S) — 技術與架構穩健性:

    • S+:解決方案穩健,解決了實際問題,避免了人為複雜性。
    • S~:部分合理,但存在維護或營運開銷。
    • S-:錯誤的解決方案、表面文章或已被證實的死路(例如在錯誤的槓桿點進行過濾)。
  2. 建議 (E) — 具體、有證據支持的建議行動:

    • E:<Option>:明確的選擇(例如 E:A、E:B、E:resolve、E:Step1)。
    • E-:無法提出可行的建議(缺少事實或屬於高層級政策問題)。
  3. 使用者典型 (U) — 與使用者過去習慣和已編碼規則的一致性(透過 decision-avatar): 分別編碼方向(選項是否符合習慣?)和驗證信心度:

    • 方向(U 後第一個字元):
      • +:使用者典型 — 符合過往決策、政策(CLAUDE.md)或明確偏好。
      • ~:中立 / 開放 — 無記錄在案的顯著歷史偏好。
      • -:非典型 — 偏離慣常工作流程或既定習慣。
    • 驗證信心度(第二個字元):
      • 在 ASCII 圖表中使用純 ASCII:
        • !:高 / 有根據(在文字中為 🟢 已記錄)。
        • ~:中 / 合理(在文字中為 🟡 取捨本質上屬於使用者)。
        • ?:低 / 未驗證(在文字中為 🔴 政策問題,無先例)。寧可升級處理也不要猜測!
    • 範例: U+!(典型且已記錄)、U+~(典型,但需使用者判斷)、U-!(記錄在案的非典型)、U~?(開放,無先例 -> 升級)。
  4. 連貫 (Z) — 與相鄰節點的軟性架構與風格和諧:

    • Z+:與先決和後續決策無縫整合;形成一個無摩擦的 cohesive 整體。
    • Z~:輕微的風格摩擦或營運開銷,但功能上可行。
    • Z-:系統交互中明顯的摩擦(例如配置擴散、彆腳的耦合),但未違反硬性規則。
  5. 矛盾 (W) — 硬性矛盾與政策/閘門違反(最重要的輸出 — 警報!):

    • W-:與其他建議、政策和有效安全閘門無矛盾。
    • W+:硬性衝突 / 警報! 使另一個建議無效、違反既定政策(CLAUDE.md、P-00x),或繞過有效的安全閘門。衝突的節點始終在 矛盾 區段中明確標示,並附上根本原因與解決路徑。

邊線類型與推導規則

相依性嚴格從來源文字推導,絕不憑空發明。邊線承載其關係類型與驗證狀態:

來源中的訊號邊線類型表示法意義
「之後自動:...」、「解鎖」、「啟用」解鎖+-->僅在來源決策之後,目標決策才變得可行(已記錄)
「阻擋」、「防止」、「安全閘門觸發」阻擋=>在來源決策解決之前,目標決策被阻擋
「需要」、「事先需要」、「先決條件」需求-->目標決策在邏輯上和時間上都需要來源決策
「後續決策」、「之後第二步驟」序列-->執行之後的後續邏輯進展
「被測量結果反駁」、「過時」、「被取代」使無效--X-->來源見解使目標決策過時
共享的 D-ID、Ticket-ID 或相同子系統但無文字證據推測?-->合理的耦合但無記錄在案的因果證明(未驗證)

關於未驗證邊線的規則: 當文字中不存在明確的因果陳述時,邊線必須標記為推測 (?-->) — 絕不能視為已確認的事實。若未記錄任何關係,則節點保持並列且不相連。


ASCII 圖表的格式指南

  1. 等寬字型與終端機最佳化: 最大行寬 100 欄。無寬表格導致換行而破壞終端機佈局。
  2. 字元集與純淨性: 純 ASCII。在圖表程式碼區塊內,不得出現表情符號(🟢🟡🔴);信心度僅透過 ASCII 標記(!、~、?)表示。
  3. 節點 ID: 僅使用現有識別碼(PD-A、MD-A、BH-A、VM-A、QR-A、CL-A、MO-A、D-001、732597768)。絕不發明合成 ID!如果項目缺少縮寫,則使用其項目編號。後續內部步驟表示為未編號的邊線註解 (...)。
  4. 分層結構:
    • LEVEL 0 - 獨立: 根節點、未受阻項目、外部觸發器。
    • LEVEL 1 - 僅依賴一個: 直接後續項目。
    • LEVEL 2 - 依賴多個 / 深層鏈: 多重相依性或深層序列節點。
    • 矛盾: 硬性衝突、閘門違反和相互矛盾的建議 (W+)。
    • 圖例: 每個圖表輸出中的必要項目。圖表中使用的每個結構字元(|、=Option、(...)、邊線箭頭)都必須列出並在圖例中解釋。
  5. 可選的 Mermaid 程式碼區塊: 如有幫助,可以附加一個額外的 mermaid 程式碼區塊;但 ASCII 圖表仍是主要且權威的輸出。

範例(試點資料集:Ticket-Master 2026-09-13)

來自 Ticket-Master 決策簡報的真實摘錄(732597768、MO-A、CL-A、QR-A、387521104、CL-B):

====================================================================================================
DECISION-PATH: 相依性圖表 (試點 Ticket-Master 2026-09-13)
====================================================================================================

LEVEL 0 - 獨立 (根決策與外部阻礙)
  [732597768] 解決 GitHub 帳單問題                             [S+ E:resolve U+! Z+ W-]
      |  解鎖
      +--> [MO-A] 發布 Wave 2                                  [S+ E:A       U+~ Z+ W-]

  [CL-A] clutch admin 合併 PR #6 與 PR #8                       [S+ E:A       U+! Z+ W-]
      |  受阻於: [閘門「1 個審查核准」(無法自行核准)]
      --> (後續決策: 將分支保護設為 0 或機器人)

  [QR-A] 佇列重新命名 NTFS 接合點 (_TICKETS -> TICKETS)        [S+ E:B       U+! Z+ W-]
      +--> [387521104] 夜間時段執行                            (已記錄: 僅在 B 下)

  [CL-B] 審查閘門試點: Mac 簽署金鑰                            [S+ E:Step1   U+~ Z+ W-]
      --> (後續步驟 2-4: 在金鑰佈建後建立模型自動化)

LEVEL 1 - 僅依賴一個先決條件
  [MO-A] 發布 Wave 2                                           [S+ E:A       U+~ Z+ W-]
      |  需要: [732597768] (帳單已解決, 遠端 CI 閘門再次啟用)
      |  需要: [閘門 PRIVATE.txt "綠燈遠端 CI"]
      --> (後續步驟: 切換可見性仍僅限使用者操作)

LEVEL 2 - 依賴多個 / 深層鏈
  [387521104] 在夜間時段自動遷移執行                              [S+ E:B       U+! Z+ W-]
      |  需要: [QR-A]=B (NTFS 接合點已建立)
      |  需要: (透過轉移票證在第二台主機上設定接合點 -
      |         票證號碼未在簡報中說明)

----------------------------------------------------------------------------------------------------
矛盾與閘門衝突
----------------------------------------------------------------------------------------------------
  [MO-A]=B  X  [閘門 PRIVATE.txt "綠燈遠端 CI"]
               衝突: 選項 B 將僅基於本地測試就發布 Wave 2,
               儘管兩個模組合約明確要求綠燈遠端 CI。
               解決方案: 建議 A 強制先行處理 [732597768] (帳單),從而解決衝突。

  [CL-A]=StatusQuo  X  [閘門「1 個審查核准」(無法自行核准)]
               衝突: master 分支要求 1 個審查,但唯一的儲存庫帳戶是 lukisch。
               解決方案: 建議 A (管理員合併) 合法地打破了這個死胡同。

----------------------------------------------------------------------------------------------------
圖例與評級鍵
----------------------------------------------------------------------------------------------------
  邊線與結構:
    +-->   解鎖 / 啟用 (因果關係在來源中記錄)
    =>     阻擋 / 防止 (閘門或外部阻礙)
    -->    需要 / 序列 (先決條件或後續步驟)
    ?-->   推測相依性 (合理的耦合,但未記錄)
    --X--> 使無效 / 取代 (來源見解使目標過時)
    X      矛盾 / 衝突 (閘門或政策違反)
    |      垂直層級線 / 屬性對應
    [ID]   決策節點 (簡報中的項目縮寫或項目編號)
    [閘門]  外部閘門 / 規則 / 合約 - 非決策節點
    =Opt   節點的特定選項 (例如 [MO-A]=B)
    (...)  未編號的邊線註解 / 後續步驟 (無發明的合成 ID)

  節點評估 [S E U Z W]:
    S: 合理       (+ 穩健 / ~ 有條件 / - 不合理)
    E: 建議       (A, B, C, resolve, Step1, - 無)
    U: 使用者典型  (方向: + 典型 / ~ 中立 / - 非典型;
                    信心度: ! 有根據 / ~ 取捨 / ? 升級)
                    [! = 已記錄 (文字中綠色), ~ = 使用者取捨 (文字中黃色),
                     ? = 未驗證 / 升級 (文字中紅色)]
    Z: 連貫       (+ 協調 / ~ 輕微摩擦 / - 架構斷裂)
    W: 矛盾       (- 無衝突 / + 與閘門或政策的硬性衝突)
====================================================================================================

decision-path 不做什麼

  1. 不做決策: 此技能提供結構透明度。決策權屬於使用者。
  2. 不發明選項: 此技能不會腦力激盪新的替代方案或加權標準;這屬於 decide 或 decision-briefing 的範疇。
  3. 不執行緣由分析或框架評估: 系統性的權衡 (trade-off) 分析或加權評分矩陣,請參閱 decide。
  4. 不將多個決定合併為單一概念: 在圖表完成且矛盾解決後,將建議的整體概念整合起來,是 decision-draw 的工作。
  5. 不重複 decision-briefing 的攝取工作: 此技能期望一個現有的編號庫存,不會從頭開始編目待處理問題。

與決策生態系統的互動

  1. decision-briefing → 產生原始庫存、粗略標記與批次 ID。
  2. decision-path → 驗證標記、分析依賴關係、分配評級、繪製 ASCII 圖表、標記衝突。
  3. decision-avatar → 提供使用者典型性評級 (U) 及邊線信心度 (!/~/?) 的查詢。
  4. decision-draw → 接收已驗證的結構;將推薦選項整合為單一概念以進行簽核。
  5. decide → 當單一節點需要多標準評估時,可被 decision-path 或 decision-draw 調用。
  6. decision-shot → 將已完成的決定壓縮為供主管閱讀的摘要。

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

相關技能