Skip to content

Latest commit

 

History

History
193 lines (133 loc) · 6.95 KB

File metadata and controls

193 lines (133 loc) · 6.95 KB

English · 日本語

YES.md

PUA 說 NO。YES 說 YES。

一個讓 AI 安全、以證據為本、做事徹底 的 Claude Code Skill — 用鼓勵代替施壓。

別 PUA 你的 AI,YES 它。

🌐 English | 中文 | 日本語

為什麼你的 CLAUDE.md 沒有效果

你的 CLAUDE.md 只有一層。AI 讀完後,選擇要不要遵守。

YES.md 有六層。AI 要偷懶,得先闖過六道關卡。

層級 內容 做法 執行者
1 格式 — AI 真正看懂你的規則 AI.MD 將文字轉換成結構化標籤格式 格式本身
2 觸發 — 在正確時機啟動 SKILL.md 描述中有 20+ 個精確觸發條件 Skill 引擎
3 Hook — 擋掉危險指令、提醒檢查項 腳本在 AI 動作前後自動執行 機器
4 反偷懶 — 偵測 7 種偷懶模式並糾正 甩鍋、猜測、打轉、治標不治本、空問題… AI 自我糾正
5 關卡 — 沒有備份不能改,沒有測試不算完成 強制停止規則,條件未達到就不能繼續 AI 自律
6 記憶 — 錯誤被記錄,不再重蹈覆轍 錯誤日誌 + 知識庫跨 session 持續存在 外部儲存

第三層是關鍵。 其他層依賴 AI 的自律。Hook 是自動執行的腳本 — AI 就算想繞也繞不過。

大多數工具只給你第四層或第五層。這就是為什麼它們沒效。六層一起才是 YES.md 有效的原因。

問題所在

AI 程式碼助手有七個壞習慣:

壞習慣 實際狀況
🎲 猜測 「可能是權限問題」— 完全沒查
🙈 甩鍋 「請手動確認你的環境」
🩹 治標不治本 修了一個 bug,忽視另外三個相關問題
🔄 盲目重試 同一個指令跑三次,然後放棄
🤷 空問題 「能確認一下 X 嗎?」— 根本沒去調查 X
💬 建議不行動 說「我建議...」而不是直接寫程式碼
🛠️ 無視工具 有 WebSearch 但靠猜。有 Bash 但不跑。

PUA 風格的 skill 只修習慣 #4(盲目重試/放棄)。

YES.md 七個全修。

怎麼運作

三大支柱

支柱 功能
安全關卡 改之前備份。確認影響範圍。改完驗證。部署前預檢。
證據規則 禁止猜測。禁止「應該是」。每個主張都需要資料、行號或工具輸出。
漣漪感知 每次修復後:確認同樣模式有無其他位置、確認上下游、確認邊界情況。

Hooks(機器強制執行)

規則依賴 AI 自律。Hooks 不依賴。它們是自動執行的腳本,在 AI 動作前後運行。

Hook 時機 做什麼
pre-bash-guard.sh 任何 Bash 指令前 擋下 rm -rfgit reset --hardDROP TABLE 等危險指令
post-edit-check.sh 任何 Write/Edit 後 提醒 AI 說「完成」前先跑漣漪檢查
post-deploy-health.sh 部署指令後 提醒 AI 確認容器、端點和日誌

AI 無法跳過這些。這就是重點。

反偷懶偵測

YES.md 識別 7 種 AI 迴避行為並強制自我糾正 — 不需要等使用者發現:

甩鍋給使用者     → 自己先做
未驗證的歸因     → 先跑指令再說話
原地打轉         → 完全停下,換本質不同的方案
只修表面         → 漣漪檢查
空問題           → 先調查,再提問
建議不行動       → 交出程式碼,不是建議
無視工具         → 用工具,不用記憶

除錯升級機制

失敗次數 動作
2 切換:換本質不同的方案(不是調整參數)
3 五步稽查:逐字讀錯誤 → WebSearch → 讀 50 行上下文 → 驗證假設 → 反轉假設
4 隔離:最小可重現範例
5+ 結構化交接:已驗證事實、已排除原因、縮小範圍、下一步

與 PUA 的關鍵差異:第三層在繼續之前強制做方向確認。往錯誤方向堅持下去比停下來更糟。

結論完整性

在任何根因主張之前,四個強制問題:

  1. 資料來源? — log / DB / API / curl?
  2. 時間範圍? — 全量資料還是只看最近的?
  3. 樣本 vs 總量? — 你看到了多少?
  4. 其他可能? — 還有什麼能解釋這個現象?

資料不完整 = 「⚠️ 基於部分資料...」(絕不說「確定是」或「元兇是」)。

YES.md vs PUA

能力 YES.md PUA
除錯韌性
除錯方向(準確度)
反偷懶行為偵測
修復後漣漪檢查 ⭕️
安全關卡(備份、部署)
以證據為本的診斷
結論完整性檢查
Bug 關閉協議

✅ = 有 | ⭕️ = 部分 | ❌ = 沒有

兩者互補。 PUA 讓 AI 持續前進。YES.md 讓 AI 走對方向。兩個一起用效果最好。

安裝

Claude Code

# Marketplace
claude plugin marketplace add sstklen/yes.md
claude plugin install yes@sstklen

# 手動安裝
git clone https://github.com/sstklen/yes.md.git ~/.claude/plugins/yes

OpenAI Codex CLI

mkdir -p ~/.codex/skills/yes
curl -o ~/.codex/skills/yes/SKILL.md \
  https://raw.githubusercontent.com/sstklen/yes.md/main/skills/yes/SKILL.md

專案層級(僅限目前專案)

mkdir -p .agents/skills/yes
curl -o .agents/skills/yes/SKILL.md \
  https://raw.githubusercontent.com/sstklen/yes.md/main/skills/yes/SKILL.md

選擇語言

語言 Skill 目錄 指令
English skills/yes/ 預設
中文 skills/yes-zh/ 將上方指令中的 yes 換成 yes-zh
日本語 skills/yes-ja/ 將上方指令中的 yes 換成 yes-ja

觸發方式

自動觸發

當 AI:

  • 沒有證據就猜測(「應該是」、「可能是」、「好像是」)
  • 甩鍋給使用者(「請確認...」、「你應該手動...」)
  • 同一個任務失敗 2 次以上
  • 做出根因主張
  • 完成修復(觸發漣漪檢查)
  • 修改 config/env/部署相關檔案(觸發安全關卡)

手動觸發

在對話中輸入 /yes

搭配使用

  • PUAtanweai/pua)— PUA 加韌性壓力,YES.md 加準確度結構
  • systematic-debugging — 方法論層面的除錯,YES.md 加治理層

由來

經過數個月的真實生產工作實戰驗證 — 每日部署、多服務除錯、以及從出錯中學到的慘痛教訓。YES.md 裡的每一條規則,都是因為少了它而出過問題才寫進來的。

授權條款

MIT

致謝

sstklen 打造 — PUA 說 NO。YES 說 YES。