工具約束原則
Vercel 的反直覺實戰發現:移除 80% 工具並約束 Agent 的解決空間,反而帶來更快的響應、更低的消耗、更高的成功率。給 Agent 越多工具選項,效果越差。
反直覺的發現
直覺上,Agent 擁有的工具越多越好——工具越全面,解決問題的能力越強。
然而 Vercel 發現,過於全面的工具庫會讓 Agent 困惑:
- Agent 在選擇工具時產生歧義和冗餘調用
- 工具越多,Agent 越容易「迷路」——試遍所有工具而非直奔目標
- 大量工具定義本身佔用 context 空間
Vercel 發現:移除 80% 工具 + 約束解決空間 → 響應更快、消耗更低、成功率更高。
為什麼少即是多
Agent 的決策品質取決於解決空間的清晰度,不是工具數量:
| 情況 | 結果 |
|---|---|
| 工具多 → 選項多 | Agent 困惑,冗餘調用,耗 token |
| 工具少但精準 → 選項清晰 | Agent 高效,直達目標 |
類比:給初學者一本 1000 頁工具書,不如給他 10 條精選原則。
約束解決空間的方法
- 只保留任務真正需要的工具——按任務類型動態載入,不全量提供
- Progressive Disclosure(漸進式揭露)——先只給基本工具,任務深入後再開放進階工具(見 Harness Engineering §漸進式揭露)
- Deterministic Constraints(確定性約束)——用 Linter / 測試取代讓 Agent 自行判斷的工具,減少 Agent 的選擇負擔
在 vault 的對應
vault 的 CLAUDE.md(CLAUDE.md(專案手冊))只列出8 種 type 詞彙、6 個 domain——正是工具約束原則的知識管理版本。限制 type / domain 數量,讓 LLM 在有界的詞彙空間內做決策,而不是在無限的選項中迷路。
相關概念
強連結(原文明確提及)
- Harness Engineering — 工具約束是 Harness 設計的核心原則之一
- 3A 架構 — Evaluator 也是一種約束——限制 Generator 只做生成不做評估
推斷連結(LLM 認為相關,待確認)
- Agent Loop ?? — 工具約束直接影響 Agent Loop 的工具調用行為
- SKILL.md 規範 ?? — Skill 的設計本身就是對 Agent 能力的約束和封裝
深入閱讀
- Harness Engineering 深度學習指南 §第一部分 Q6
← 回到 wiki