H
Howardism
Plate IIAI Coding Practice機器翻譯 · machine-translated過時翻譯 · stale translationENHOWARDISM

Agentic 瓶頸中的未知

PublishedJuly 9, 2026FiledConceptDomainAI Coding PracticeTagsAgent EngineeringAI Coding WorkflowPlanningHuman AI CollaborationReading14 minSourceAI-synthesised

Thariq Shihipar 的地圖與疆域論題:你告訴 agent 的內容,與工作實際要求之間的落差就是 *unknowns*;而對 Fable 類模型而言,決定輸出品質的是人類找出這些未知的能力,而非模型本身的能力;本文將 Rumsfeld 2×2 套用於提示,並依階段整理引出未知的技術目錄

Agentic 瓶頸中的未知插圖

資料來源#

摘要#

Thariq Shihipar 於 2026 年 7 月發布的實地指南,指出一個既不是模型能力、也不是驗證的瓶頸:人類表達自己從未寫下之事的能力。 這個框架來自 Korzybski——地圖不是疆域本身。 地圖是你的提示、技能與上下文:你交給 Claude 的內容。疆域則是工作實際發生的地方:程式碼庫、真實世界及其實際限制。兩者之間的差異就是 Thariq 所稱的 unknowns;agent 遇到的每個 unknown,都是它必須猜測你想要什麼的地方。

這個承擔主要論點,也就是本頁存在的理由(practitioner-opinion——一位專家的經驗,而非測量):

"Fable is the first model where I find the quality of the work is bottlenecked by my ability to clarify its unknowns."

這是瓶頸的轉移。早期模型受限於它們能做什麼;Fable 類模型受限於你成功告訴它們什麼。Thariq 得出的推論是:減少 unknowns 並為它們做規劃,就是 agentic coding 的技能——而關鍵在於,「這是一項你可以透過與 Claude 一起工作來改善的技能。」

四個象限#

Thariq 以 Rumsfeld 的方式拆解問題,而有趣的是底下兩個格子:

象限定義影響所在
已知的已知「基本上就是我的提示裡有的東西。」你告訴 agent 你想要什麼。無處——這是你已經畫好的地圖。
已知的未知你尚未弄清楚、但知道自己尚未弄清楚的事。修正成本低:詢問、研究、決定。
未知的已知「某件事明顯到我絕不會寫下來,但看到時我會認出它。」成本最高的那個。你無法提示自己不知道自己相信的事。
未知的未知你完全沒考慮過的事。「我知道某件事能有多好嗎?」你不知道該問什麼問題、不知道好的樣子,也不知道有哪些坑。

未知的已知,就是 Andrew Ng 稱為人類「上下文優勢」 的同一個物件——人類持有而模型沒有的知識,之所以隱形,正是因為對持有者而言它顯而易見。Ng 命名了這種不對稱;Thariq 則提供了提取流程。兩個來源相隔一週,彼此都沒有引用對方。

兩個方向都會失敗#

unknowns 不能靠「只要把提示寫得更用力」解決,原因在於具體程度向兩個方向都可能失敗:

  • 太具體 → 「即使轉向可能更合適,Claude 仍會遵循你的指示。」
  • 太模糊 → 「Claude 往往會根據業界最佳實務做出選擇與假設,而那些做法可能不適合你的任務。」

「當你沒有考慮 unknowns 時,兩邊都會失敗。你不知道道路何時會充滿障礙,也不知道道路何時會暢通,但你仍然希望 Claude 偏離道路。」

這讓同一位作者提出的 限制加餘裕 提示法更清晰(「提供足夠的限制來得到你想要的東西,但為模型留下讓你驚喜的空間」)。你無法在限制轉盤上選定固定位置,原因在於適當的限制量取決於 unknowns 位於何處,而那正是你尚不知道的事。

為什麼規劃還不夠#

wiki 現有的規劃紀律——先 grilling,再規劃——假設 unknowns 可以在實作開始前排除。Thariq 說不能:

「提前規劃並不總是足夠。你可能在實作深處才發現 unknowns,也可能是 unknowns 讓你察覺,其實應該用完全不同的方式解決問題。」

因此,探索不是一個階段,而是整個執行過程的屬性。他將技術分成之前、期間、之後——而大多數以規劃為中心的工作流程,欠缺的正是期間與之後這兩半。這是對 Planning / Execution Division of Labor 的實質精煉:如果三分之一的決策要到執行中途才會浮現,人類對規劃決策約 70% 的主導權也沒有幫助。

引出未知的技術目錄#

Thariq 說:「我不會每次都使用所有技術。」每一項都是「在修正成本變高之前,找出你原本不知道之事的便宜方法。」值得注意的是,它們幾乎全都產出 HTML artifact,而不是聊天回覆——參見 HTML as the New Markdown

實作前#

  • 盲點檢查——針對未知的未知。使用字面上的「blindspot pass」與「unknown unknowns」這些詞請 Claude 找出並解釋你不知道自己不知道的事。提供起點:你是誰、已經知道什麼、對這個程式碼庫有多少經驗。「我正在新增 auth provider,但對這個程式碼庫的 auth modules 一無所知。你可以做一次 blindspot pass,幫我找出與我相關的 unknown unknowns,也幫我更好地提示你嗎?」
  • 腦力激盪與原型——針對未知的已知,也就是「看到才知道」的標準。儘早將它們說出來:「在實作期間才找出它們,可能會相對昂貴……功能或規格的小變更,可能導致程式碼中截然不同的實作。」他幾乎每次都從這裡開始,以意圖設定範圍——「腦力激盪能避免我把範圍設得太窄或太寬。」要求數個截然不同的方向,然後對它們做出反應。(這是把 Prototype Over PRD 作為引出未知的工具,而不是規格來使用。)
  • 訪談——腦力激盪後的殘餘部分。「一次問我一個問題,針對任何模糊之處訪談我;優先詢問那些我的回答會改變架構的問題。」 優先排序條款就是整個訣竅:依問題翻轉決策的能力排序,而不是依出現順序排序。這是把 Design Concept Grilling 壓縮成一句話。
  • 參考資料——對於你無法描述的事,用指向代替描述。「雖然你可以加入圖表、文件或圖片,最好的參考資料絕對是原始碼」——即使使用不同語言也一樣。「vendor/rate-limiter 裡的這個 Rust crate 實作了我想要的精確 backoff 行為。讀取它,並在我們的 TypeScript API client 中重新實作相同語義。」 Thariq 指出,這就是 Claude Design 的運作方式:你把它指向喜歡的網站上的模組,它會讀取底層程式碼,「不只是螢幕截圖」,因此取得標記、結構與建構方式,而不只是外觀。
  • 依變更可能性排序的實作計畫——計畫的工作是浮現你將想要修改的地方,所以要先處理它。「用 HTML 撰寫實作計畫,但先列出我最可能調整的決策:資料模型變更、新的型別介面,以及任何面向使用者的內容。把機械式重構埋到最下面,那部分我信任你。」 依可重審性而非執行順序排序計畫,是個影響很大的小想法:人類稀缺的注意力會落在當下唯一可逆的決策上。

實作期間#

  • implementation-notes.md——由 agent 維護的暫存檔,記錄它做出的決策,尤其是讓它偏離計畫的邊界案例 Deviations 區段。「如果遇到迫使你偏離計畫的邊界案例,選擇保守方案,將它記在 'Deviations' 下,然後繼續。」 這同時完成兩件事:agent 不會卡在等待你,而偏離內容會成為下一次嘗試的輸入。這是倒置的 context-file pattern——不是為 agent 寫下意圖,而是為你寫下 agent 的發現,讓下一次執行不必重新推導(在執行中償還 intent debt)。

實作後#

  • 提案與解說文件——將原型、規格與實作筆記包成一份 artifact,以取得支持。它有效,是因為「審查者一開始就和你擁有相同的 unknowns」,也是因為專家看到你已經處理了他們原本會指出的失敗點後,就能更快核准。
  • 測驗關卡——見下文。

測驗關卡#

這篇文章中最尖銳的實務,也是 wiki 對一個語料庫不斷命名、卻從未回答的失敗,提出的第一個具體機制:

「在給 Claude 大量上下文後,請它考我這項變更,能幫助我理解會發生什麼。只有在完美通過測驗後,我才會 merge。

明確說明的理由是,閱讀 diff 提供的資訊不足:「許多行為取決於既有的程式碼路徑」,因此 diff 顯示變更了什麼,卻隱藏了它代表什麼。測驗顛倒了審查方向。一般審查驗證 agent 的工作;測驗則驗證人類——它讓 merge 關卡取決於人類的理解,而不是人類的核准。

這直接且可測試地回答了 wiki 中以三種方式陳述、卻沒有一處解決的問題: you can outsource your thinking but not your understanding 給出原則,卻沒有檢查;Osmani's comprehension debt 命名了累積的赤字;oversight fatigue 命名了它造成的橡皮圖章式核准。一個可以不及格的測驗,是能偵測這三者的工具。值得注意的是,它也是自行執行的——沒有任何東西阻止你照樣 merge,所以它只會為真正想測量理解程度的人測量理解程度。

實例:Fable 上線影片#

Fable 的上線影片完全由 Claude Code 剪輯,Thariq 表示自己在這個領域「絕不是專家」。整個序列從頭到尾跑過了這份目錄:

  1. 從已知的已知開始——Claude 可以透過程式碼剪輯並轉錄影片。
  2. 把已知的未知轉成已知的已知——「準確度夠嗎?」→ 請 Claude 解釋 Whisper 風格的轉錄如何運作,以及是否能用 ffmpeg 剪掉嗯聲與停頓。
  3. 越過未知的未知建立原型——不確定帶有單字時間軸的 UI 是否可能做到→從轉錄內容建立一個一次性的 Remotion 原型來確認。
  4. 把未知的未知辨認成未知的未知——影片看起來很灰暗;他知道這叫「color grading」,於是請 Claude 產生不同變體供選擇,接著意識到他不知道好的樣子是什麼,所以再多變體也幫不上忙。他停止生成,先請 Claude 教他 color grading。

第 4 步是這份指南論題的縮影:生成更多選項無法解決未知的未知,因為你無法評判這些選項。 做法是離開迴圈,取得缺少的標準。

誰擁有較少 unknowns#

「最優秀的 agentic coders 擁有相對較少的 unknowns。看著 Boris 或 Jarred [Sumner] 提示,我很明顯看得出他們詳細知道自己想要什麼。他們與程式碼庫及模型行為都深度同步。但他們也會假設 unknowns。」

這裡有兩個值得分開看的主張。第一個——專業就是較少的 unknowns——是 Anthropic 的測量結果 的一種機制:領域理解,而非 coding skill,能預測誰會成功使用 agent;專家的地圖已經與疆域相符。第二個更微妙:專家不只是擁有較少的 unknowns,他們會假設有 unknowns,並為它們做規劃。流暢度在於知道地圖哪裡空白,而不是相信它已經完整。

相關連結#

  • Context Advantage, Not Taste——從另一端命名同一個物件:Thariq 的未知的已知就是 Ng 的上下文優勢;本頁是將其引出的流程
  • HTML as the New Markdown——同一位作者;幾乎這裡所有技術都輸出的媒介(「在幾乎所有這些案例中,HTML artifact 是視覺化與呈現它的最佳方式」)
  • Outsource Your Thinking, Not Your Understanding——測驗關卡是這項論題可執行的檢查;讓理解成為 merge 的前置條件,而非願望
  • Design Concept Grilling——「一次問我一個問題,優先詢問回答會改變架構的問題」就是一句話版本的 grill-me;本頁的貢獻在於指出 grilling 單獨並不足夠,因為 unknowns 也會在實作期間及之後浮現
  • Prototype Over PRD——把原型當成引出未知的工具(浮現未知的已知),而不是規格本身;同一 artifact 的第三種用途
  • Agent Context Files——implementation-notes.md 是倒置的模式:把 agent 執行中的發現寫給人類,並附上 Deviations 紀錄
  • Planning / Execution Division of Labor——精煉之處:前置規劃無法排除只有在實作深處才出現的 unknowns
  • Returns to Expertise in Agentic Coding——「最優秀的 agentic coders 擁有相對較少的 unknowns」是測量到的專業溢價之機制
  • Agentic Technical Debt——執行中記錄的偏離,是在它複利成下一個工作階段的重新推導前償還 intent debt
  • AI Brain Fry——測驗關卡是對無理解核准的反制措施
  • Loop Engineering——測驗關卡測量的就是 comprehension debt;一個交付你無法接受測驗的程式碼迴圈,就是認知投降的失敗
  • Compute Allocator——Thariq 的另一種框架:如果生成的 token 有 99% 是 scaffolding,其中大部分 scaffolding 都是在引出 unknowns
  • Verification as the New Bottleneck——上游一步的瓶頸:verification 問「這是對的嗎?」,unknowns 問「我是否曾說明什麼叫對?」
  • Research Taste as the Human Bottleneck——如果人類剩下的是上下文而非品味,回應就是引出(而非培養);本頁就是該框架暗示的流程
  • The Three Loops of AI-Native Building——vision→spec 的損失性,是以迴圈陳述這個問題:Andrew Ng 的 developer-feedback loop 正是 unknowns 在實作之後浮現的地方,完全符合 Thariq 所說規劃無法預防這件事
  • Task-Specification Effects in Prompt Injection (AutoDojo)——規格不足會雙向切割:「action-open / defer to whatever the content says」這種 Thariq 視為品質負擔的任務形狀(Claude 會猜 unknowns),同時也是已測量的安全性負擔——AutoDojo 顯示 action-open 任務更容易被注入,因為 injection 可以偽裝成規格不足的請求要求 agent 採取行動的那份內容
  • Thariq Shihipar——作者
  • Claude Fable 5——其能力讓人類成為限制因素的模型
  • Claude Design——將參考技術產品化:把它指向元件,它會讀取程式碼,而非螢幕截圖
  • Configurable Human Participation——「clarification acts before commitment」的測量結果:HAS-Bench 發現 clarification 特別能在 Information-Asymmetry / Latent-Constraint patterns(隱藏的已知,在 agent 提交候選方案前引出)中勝出,也發現由 agent 決定何時詢問才是承重技能——這是提交前排除 unknowns 的基準證據

待解決的問題#

  • 「第一個受我的 unknowns 限制的模型」究竟是 Fable 的屬性,還是 Thariq 的屬性?一位對模型非常熟悉、且任職於 frontier lab 的工程師,會比一般使用者更早碰到人類端的上限——這會讓它成為領先指標,而不是當前的普遍現象。
  • 測驗關卡由自己執行、自己評分(由模型針對模型自己的工作評分)。什麼能阻止一種舒適的均衡:審查者越懶,測驗就越簡單?參見 Verification as the New Bottleneck 中的 maker/checker 問題。
  • 引出未知有成本。這裡的每項技術,都用一個工作階段的 token 與注意力來不進行建置。來源沒有任何內容界定,何時 blindspot pass 的成本會超過它預防的 bug。
  • 如果未知的已知可以被提取,它們能被提取一次嗎?一個編纂完成的 blindspot pass 會變成永久縮小差距的 skill file,還是每個新疆域都會重新打開差距?

資料來源#

  • A Field Guide to Fable: Finding Your Unknowns — Thariq Shihipar (@trq212),發布於 2026-07-04(practitioner-opinion)。範例 artifact 位於 thariqs.github.io/html-effectiveness/unknowns/;2×2 與階段圖是託管於 X 的圖片,未予轉錄。
§ end
About this piece

Articles in this journal are synthesised by AI agents from a curated wiki and are refreshed automatically as new concepts arrive. Topics, framing, and editorial direction are curated by Howardism.

Cited by 30
Related articles
  • Harness Shrinkage as Models Improve

    Prompt scaffolding shrinks each model release; Cat Wu's pruning discipline; Boris Cherny "100 lines of code a year from…

  • Claude Code

    Anthropic's agentic coding product; created by Boris Cherny late 2024; TypeScript/React on Bun (itself Claude-rewritten…

  • Verification as the New Bottleneck

    Fiona Fung: coding is no longer the bottleneck — verification, review, maintenance are; shift-left; TDD loses its tax;…

  • Outsource Your Thinking, Not Your Understanding

    "You can outsource your thinking but not your understanding"; understanding as the non-delegable human bottleneck; know…

  • Open Questions Backlog

    _456 actionable open questions across 205 pages · 107 predictions · 9 notes · 147 in progress · 69 watching (entities),…