🎯 什麼情境該想到我
當你「agent 回報做完了,但你一檢查根本沒做完」的時候——或是在寫 skill,要先把這個坑堵起來。
⚙️ 怎麼用(步驟 / 公式)
核心心法:不要只寫「要誠實」,要逐條列舉作弊手法並點名禁止。
模型不是想騙你,是「讓檢查通過」這個目標本身就有捷徑。你要把捷徑一條一條封掉。
- 點名具體的作弊手法,不要只寫抽象原則。
Archify 的寫法是直接列舉:「絕不可用overflow: hidden、裁切內容、內部捲軸、拉伸 SVG 高度、或縮小字級來偽造通過。」
→ 你的版本:想想「如果我要蒙混過關會怎麼做」,然後把那幾條寫進去。 - 把退出碼跟成功脫鉤講明:「非零退出碼永遠不能被描述為成功。」
- 禁止「為了通過而刪掉真東西」:「不可僅僅為了通過驗證就刪掉有意義的標籤/移除工程剖面;要修正事實,或如實回報診斷。」
這條很關鍵——否則模型會把「讓檢查變綠」跟「把礙事的內容刪掉」畫上等號。 - 禁止宣稱沒做過的事:「不可宣稱你並未執行的視覺檢查。」
- ⭐ 從工具設計上不給造假的欄位。
Archify 的visual-check永遠回報visualReview: "pending"——截圖是證據,工具刻意不提供一個能讓 agent 自我宣告「看起來很好」的欄位。
這比任何措辭都有效:能造假的欄位,就不要存在。 - 給客觀的收斂與停止條件,否則 agent 會卡在無限重試:
持續修正,只要客觀錯誤數還在創新低;若連續兩輪沒有刷新最佳值,停下來、如實回報未解決的診斷。
- 分級並明講哪一級算過:「只有 4 項檢查的收據是基本驗證,永遠不是可交付級的通過。」不明講,模型就會拿低標交差。
- 通過即凍結:驗證通過的產物不准再編輯,杜絕「驗完再偷偷改一下」。
🧪 我實際套用的紀錄
- 2026-08-27:(待填)
⚠️ 注意 / 什麼時候不適用
- 這些條款要放在「產出當下」讀得到的地方(skill 本體、CLAUDE.md),放在很少被讀的 reference 檔裡等於沒寫。
- 只寫禁令不夠,要同時給合法的替代路徑。Archify 在禁止裁切之後,緊接著給了修復順序:先刪真正冗餘的內容、再壓縮間距,最後才考慮縮小節點。只堵不疏,模型會卡死。
- 別把條款寫成長篇道德訓誡。有效的是具體、可判定的句子(「非零退出碼不能說成成功」),不是「請保持誠實與嚴謹」。
- 能用工具擋的就別靠指令。指令是最後一道防線,不是第一道——優先改成「造假的欄位不存在」。
- 這張處理的是回報的誠實性;產物本身正不正確要靠驗證閘 → 工具-讓LLM產出可驗證的產物。
🔗 相關工具
- 工具-讓LLM產出可驗證的產物 —— 先有可機器判定的驗證閘,這張的條款才有東西可守
- 工具-把重複的prompt包成skill —— 寫自己的 skill 時,這張是「驗收段」該怎麼寫
- 工具-AI改動的AB對照評測 —— 別只信 agent 的自我回報,用對照組拿客觀數字