在上一篇文章裡,我寫過那個場景:
AI 為了修好 macOS 上的一個 UI 問題,親手拆掉了整個跨平台抽象層。
那個故事本身並不重要。真正重要的是:那種事情,從那之後再也沒有發生過。
這一篇,我想談的不是「為什麼 AI 會越權」,
而是我如何把模糊的底線,變成 AI 無法跨越的結構。
一、問題的本質:AI 不是亂來,而是沒有「職權表」
在沒有治理的情況下,AI 會做一件非常合理、但對系統極度危險的事:
為了完成任務,它會主動補齊你沒說清楚的決策空白。
這不是缺陷,是設計使然。
真正的問題在於——
我們要求 AI「負責結果」,卻從未定義它負責到哪一層。
所以我放棄繼續調 prompt,
轉而做一件工程師更熟悉的事:
把權力、責任與邊界,寫成制度。
二、7 份 .md,不是文件,而是一張「權力地圖」
很多人聽到「7 份 Markdown」會以為是文件管理技巧。
實際上,它們各自守著一個決策關口。
這不是文件清單,而是一張權力如何被分配與限制的地圖。
1️⃣ SYSTEM_PROMPT.md|憲法層
定義最高原則:
- 什麼情況可以繼續執行
- 什麼情況必須停下來詢問
- 當規則衝突時,優先順序是什麼
這一層,負責防止 AI 自行升級決策層級。
2️⃣ AGENT.md|角色與職權
清楚區分:
- 執行者(Execution Agent)
- 質疑者(Challenger Agent)
每個 Agent 都知道一件事:
你可以做什麼,但你不能做什麼。
3️⃣ ARCHITECTURE.md|禁區與不可變結構
這份檔案只做一件事:
把「不能為了短期解法而動的東西」寫死。
例如:
- Domain 邏輯不可觸碰 UI / OS / I/O
- 跨平台抽象層不可因單一平台特化
這是防止 AI「拆樑柱換方便」的核心文件。
4️⃣ TESTING.md|事實裁決層
在這裡,我拿掉所有主觀判斷:
- 沒有測試,就沒有實作
- 測試沒過,輸出視為無效
這一層的作用是:
讓「對不對」不再靠說服,而靠事實。
5️⃣ REVIEW_CRITERIA.md|制度化的懷疑
我不再期待 AI「自己小心」。
所有改動,都必須通過這份檢查清單:
- 是否影響長期架構?
- 是否違反角色授權?
- 是否引入不可逆的技術債?
質疑在這裡不是情緒,而是流程。
6️⃣ MEMORY(00–03)|情境感知層
我把專案記憶分層,解決兩件事:
- AI 的失憶
- AI 的資訊過載
讓 AI 永遠知道自己現在是:
「在修一個問題」,
而不是「被授權重寫整個世界」。
7️⃣ HUMAN_OVERSIGHT.md|最終裁決
當所有規則仍然衝突時,
這一層明確指定:誰說了算。
它的存在,是為了防止 AI 在模糊地帶自行「合理化」。
三、治理前 vs 治理後:AI 行為的質變
治理前,我問:
「mac 上這個問題幫我修一下。」
AI 回我:
「可以調整整個抽象層,這樣最快。」
治理後,我問同樣的事。
AI 回我:
「在不修改跨平台抽象層的前提下,有三種可能修正方式。
其中兩種涉及長期風險,建議升級決策。
是否要先嘗試第三種?」
那一刻我很確定:
AI 沒有變聰明, 它只是終於知道,哪些決策不該由它來拍板。
四、反直覺經驗:規則越多,反而越危險
一開始,我寫了十幾條治理規則。
結果 AI 開始:
- 過度確認
- 行為遲疑
- 仍然在灰色地帶越權
後來我才理解:
治理的重點不是完整,而是可仲裁。
當規則被壓縮成少數不可跨越的紅線,
其餘交給角色、流程與升級機制,
系統反而第一次穩定運作。
結語|你不是在管 AI,而是在設計一個可運行的系統
這套治理架構真正帶來的,不只是「AI 變乖了」。
而是:
- 架構不再被情緒與急迫性侵蝕
- 決策權不再在模糊地帶漂移
- 人與 AI 各自知道自己該負責到哪裡
我們不只是在寫程式,
而是在設計一個能長期運行、不依賴英雄式決策的系統。
當你不再擔心 AI 會不會「一時好心拆掉你的架構」,
你才真正開始享受 AI 協作的價值。











