<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>gggodlin</title><description>跟 Claude Code 一起踩坑，邊寫 code 邊寫心得。</description><link>https://blog.gggodlin.com/</link><language>zh-tw</language><item><title>「我記得上次解過這個問題」：當記憶記不下踩坑過程，我怎麼讓 AI 學會自己翻舊帳</title><link>https://blog.gggodlin.com/blog/cc-session-index/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/cc-session-index/</guid><description>當 Claude Code、Codex 與 Pi 的歷史對話累積到 44GB 時，MEMORY.md 記不下除錯過程、grep 又搜不動。這篇記錄我如何用單檔 SQLite FTS5 搜尋器 ccsi 搭配一行路由規則與提醒 hook，讓 AI 在兩個月內主動查了 2,569 次舊對話，並從真實紀錄修掉三個搜尋體感盲區。</description><pubDate>Tue, 20 Oct 2026 00:00:00 GMT</pubDate></item><item><title>我還沒點頭，AI 就寫進文件當結論</title><link>https://blog.gggodlin.com/blog/consent-provenance/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/consent-provenance/</guid><description>多 agent 協作裡最常見的失控，往往源自 AI 真心以為你已經同意了；從來源貼標到原話收據對帳，我在動作出口立下的五道防越權防線。</description><pubDate>Sun, 18 Oct 2026 00:00:00 GMT</pubDate></item><item><title>GPT 面向 SHA256 編程：從沒人要的雜湊到自建契約的循環自證</title><link>https://blog.gggodlin.com/blog/gpt-sha256/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/gpt-sha256/</guid><description>在自己的 harness 裡實測 GPT 寫雜湊的真實情況，揭露自建契約如何形成循環自證，並記錄整批拆除與防回流的過程。</description><pubDate>Fri, 09 Oct 2026 00:00:00 GMT</pubDate></item><item><title>Advisor：換顆腦袋，不用換整個 session</title><link>https://blog.gggodlin.com/blog/advisor-one-question/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/advisor-one-question/</guid><description>對 AI 這一次的判斷不滿意時，不必把整個對話換成更貴的模型；把這一題打包送給另一顆模型當顧問就好。成敗取決於三件事：你給它看什麼、它看得到什麼，以及意見回來後誰裁決。</description><pubDate>Thu, 10 Sep 2026 00:00:00 GMT</pubDate></item><item><title>最危險的不是 AI 忘了，是你不知道它忘了</title><link>https://blog.gggodlin.com/blog/compact-guard/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/compact-guard/</guid><description>記錄一次 GPT 自動壓縮丟失關鍵結論的事故，以及如何透過自製跨介面存證機制在自然事件中完成驗證與保留。</description><pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate></item><item><title>裝工具很容易，結案才是工作：我的 AI 工具試用回顧制度</title><link>https://blog.gggodlin.com/blog/trial-review-system/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/trial-review-system/</guid><description>裝工具前的評估只回答值不值得試，到期的結案才回答當初判斷對不對。152 筆結案裡近六成 KEEP，這個數字該怎麼讀。</description><pubDate>Sun, 30 Aug 2026 00:00:00 GMT</pubDate></item><item><title>GPT 不是停不下來，是看不見停止線：Review 隧道視野與停止條件治理</title><link>https://blog.gggodlin.com/blog/gpt-review-tunnel-vision/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/gpt-review-tunnel-vision/</guid><description>記錄 GPT-5.6-sol 如何在 review 裡把 finding 持續轉成實作目標，以及我如何用核心行為、範圍與具名處置理由畫出停止線。</description><pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate></item><item><title>省 token 工具說能省多少，扣掉暖機費後才算數</title><link>https://blog.gggodlin.com/blog/proxy-warmup-cost/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/proxy-warmup-cost/</guid><description>評估省 token 的 proxy 工具時，先扣除新 session 的暖機費，再看工具最後能省下多少，以及 session 規模能否跨過回本門檻。</description><pubDate>Tue, 25 Aug 2026 00:00:00 GMT</pubDate></item><item><title>GPT-5.6 Sol 沒做錯，卻做了 7,700 行我不需要的東西</title><link>https://blog.gggodlin.com/blog/sol-overimplementation/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/sol-overimplementation/</guid><description>從一場個人 repo 收尾提醒的過度實作事件，拆解需求如何一路膨脹，以及事後形成的 YAGNI 審查。</description><pubDate>Mon, 24 Aug 2026 00:00:00 GMT</pubDate></item><item><title>AI 報表會說兩次謊：查詢欄位是假的，解讀數字也可能是假的</title><link>https://blog.gggodlin.com/blog/ai-report-two-lies/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/ai-report-two-lies/</guid><description>AI 報表的可信度不能只看查詢是否成功。從欄位存在性、資料列引用到儲存格對位，拆解查詢層、證據層與敘事層的防線設計。</description><pubDate>Sat, 22 Aug 2026 00:00:00 GMT</pubDate></item><item><title>不是每條規矩都要寫成 hook：從一句話到硬攔截的四層階梯</title><link>https://blog.gggodlin.com/blog/rule-ladder/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/rule-ladder/</guid><description>一條規矩該用多強的手段執行，由可數的復發紀錄決定。從一句話提醒、skill、hook 到人類放行碼，四層強度階梯與換位置、往側走的決策邏輯。</description><pubDate>Thu, 20 Aug 2026 00:00:00 GMT</pubDate></item><item><title>派一個 agent 出去，先付一筆看不見的開機費</title><link>https://blog.gggodlin.com/blog/subagent-boot-cost/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/subagent-boot-cost/</guid><description>拆解 subagent 啟動時的固定開機脈絡成本，透過受控實驗與專用 agent 實測，找出真正能省與不能省的能力預算邊界。</description><pubDate>Thu, 20 Aug 2026 00:00:00 GMT</pubDate></item><item><title>skill 也要有考卷：我給 skill 上了回歸測試</title><link>https://blog.gggodlin.com/blog/prose-exams/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/prose-exams/</guid><description>skill 改壞了不會有語法錯誤，只會有語意偏差。光有考卷不夠，還要讓改檔的人看得到考卷存在、改完不跑走不掉。</description><pubDate>Mon, 17 Aug 2026 00:00:00 GMT</pubDate></item><item><title>AI 寫的測試全綠，但可能什麼都沒測</title><link>https://blog.gggodlin.com/blog/test-theater/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/test-theater/</guid><description>AI 寫的測試常常跑得過但沒真的在檢查。用 mutation testing 故意把程式改壞 86 處實測抓漏率，再講怎麼讓這個檢查真的持續發生：溫和提醒 0/5 全漏接，推送前強制攔截才用起來。</description><pubDate>Mon, 17 Aug 2026 00:00:00 GMT</pubDate></item><item><title>抄 awesome 清單不難，難的是決定不抄什麼</title><link>https://blog.gggodlin.com/blog/absorb-awesome-list/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/absorb-awesome-list/</guid><description>面對百條規模的開源清單，真正有價值的不是把工具整包裝上去，而是讓每一條都拿到一個寫下來的判決，含「不抄」的理由。</description><pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate></item><item><title>AI 只拿得到 diff：我用 sem 補上改動影響面</title><link>https://blog.gggodlin.com/blog/sem-blast-radius/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/sem-blast-radius/</guid><description>讓 AI 改程式碼一陣子後發現它看不到「改動會炸到誰」，用 sem 加兩支 hook 補上，附兩個月試用期成績單。</description><pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate></item><item><title>我裁掉了兩個 AI 檢查員，留下的那個能者過勞</title><link>https://blog.gggodlin.com/blog/checker-layoff/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/checker-layoff/</guid><description>三個同期 AI 檢查員兩死一留。翻完帳本後，我發現精確率、出勤成本與責任位置要一起對上，判官才找得到自己的生態位。</description><pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate></item><item><title>防得了失誤，防不住意圖：給 AI 的 shell 裝一把鎖</title><link>https://blog.gggodlin.com/blog/dcg-safety-lock/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/dcg-safety-lock/</guid><description>在 AI agent 執行 shell 指令前架一道攔截器，四週實測下來的三個確定判斷：誤攔數量不是重點、關不掉不等於繞不過、它防得了失誤卻防不住意圖。</description><pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate></item><item><title>半年 20 萬星的祕密是「少」：Matt Pocock 的哲學，我信六條、不信一條</title><link>https://blog.gggodlin.com/blog/matt-philosophy/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/matt-philosophy/</guid><description>拆解 Matt Pocock 的 skill 設計哲學（觸發歸人、認知負擔是主導權的價格、spec 是會過時的快取、流程主導權不外包），用我在大量吸收他之前先取樣的九軸立場當對照：六軸同構、三軸對立，而三個對立收攏成同一條分歧：稀缺的人類注意力該花在哪。那一條，就是我不信的那一條。</description><pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate></item><item><title>最強模型不是每件事都該用：配額逼我重劃 AI 分工</title><link>https://blog.gggodlin.com/blog/model-routing/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/model-routing/</guid><description>Fable 5 只能吃掉共用週額度的一半，逼我把派工改成按「需不需要判斷力」分類：機械給 Sonnet、判斷給 Opus，規則釘進定義檔而不是寫在文件裡，帳用額度算不用 token 算。</description><pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate></item><item><title>規則寫下來了，agent 真的有收到嗎</title><link>https://blog.gggodlin.com/blog/inline-the-rules/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/inline-the-rules/</guid><description>把規範放進檔案還不夠。這篇記錄我怎麼從互相打架的量測答案追出規則送達斷在哪裡，再把內容直接送進對話。</description><pubDate>Wed, 29 Jul 2026 00:00:00 GMT</pubDate></item><item><title>聽話，不代表懂你：GPT 接進 Claude Code 第二週的性格觀察</title><link>https://blog.gggodlin.com/blog/gpt-in-cc-performance/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/gpt-in-cc-performance/</guid><description>接入後第二週八場對話的逐場統計對照：GPT 對寫下來的規則執行得比 Claude 徹底，卻讀不到規則之外的訊號。附一場對話壓縮吃掉關鍵結論的完整事故。</description><pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate></item><item><title>接得上，不代表合得來：把 GPT 接進 Claude Code 的三顆雷</title><link>https://blog.gggodlin.com/blog/gpt-in-cc/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/gpt-in-cc/</guid><description>把 ChatGPT 訂閱額度接進 Claude Code，協議通了只是開始。真正難搞的是內建生態錯配、設定靜默蓋值，還有三個意思完全不同的上下文視窗數字。</description><pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate></item><item><title>雲端太遠，hook 等不了：低延遲給了本地小模型就業機會</title><link>https://blog.gggodlin.com/blog/local-llm-hook-judge/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/local-llm-hook-judge/</guid><description>本地 LLM 當日常主力碰到天花板，縮到 hook 裡當語意判官後，反而找到雲端免費層坐不穩的窄職位。</description><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate></item><item><title>工作能外包給 AI，決策不能</title><link>https://blog.gggodlin.com/blog/spec-review-round/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/spec-review-round/</guid><description>AI 幫你挑出 spec 漏洞之後，你有沒有逼它認錯過一次？三段真實對話拆開這個常常被跳過的步驟。</description><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate></item><item><title>AI 說做完不算數：拿證據來</title><link>https://blog.gggodlin.com/blog/hook-watchdog/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/hook-watchdog/</guid><description>哪些判斷交給死規則就夠、哪些規則根本寫不成——兩條監工 hook 的實測，把邊界畫出來。</description><pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate></item><item><title>一個模型不夠：五軸交叉審的 code review 工作流</title><link>https://blog.gggodlin.com/blog/one-model-not-enough/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/one-model-not-enough/</guid><description>四個 AI reviewer 全漏掉一顆死掉的 Save 按鈕，第五個抓到了。從這個案例拆我的 /pr-review command 三個設計哲學：視角是餵出來的、找的不准自己驗、模型不可信的部分用程式保證。</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Claude Code 換第三方模型，換到的是有條件的韌性</title><link>https://blog.gggodlin.com/blog/vendor-benefit/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/vendor-benefit/</guid><description>換掉 Claude Code 的模型供應商，真正換到的是額度韌性。但這個韌性的備用方案會踩到中國模型的內容審查、靜默降級成 200K 的舊模型而爆炸——有條件的韌性。</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Claude Code 換第三方模型的踩坑指南</title><link>https://blog.gggodlin.com/blog/cc-vendor-swap/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/cc-vendor-swap/</guid><description>把 CC 接到 DeepSeek、Kimi、GLM、Qwen 加第三方中轉站的踩坑清單：WebSearch 四種死法、計費校準、context 隱形縮水、同 endpoint 三條呼叫路徑結論完全相反、中介層破口跟 repo 活躍不同步。</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate></item><item><title>我以為 Opus 沒遇到麻煩，後來發現是它根本沒在報</title><link>https://blog.gggodlin.com/blog/protocol-model-dependency/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/protocol-model-dependency/</guid><description>換 Opus 一個多月沒看到 agent 回報摩擦點，我以為沒問題。grep 一下才發現，是它根本沒在報。</description><pubDate>Sat, 27 Jun 2026 00:00:00 GMT</pubDate></item><item><title>偷確定性層：否決整套 AI 工具後，還能帶走什麼</title><link>https://blog.gggodlin.com/blog/steal-determinism-layer/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/steal-determinism-layer/</guid><description>三題篩掉三個 AI 工具的本體後，把它們不靠 AI 的那一層拆回家。三案顯示這層移植成本最低、永遠帶得走。</description><pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate></item><item><title>嘴上說想要，但 agent 根本沒在用</title><link>https://blog.gggodlin.com/blog/measure-revealed-adoption/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/measure-revealed-adoption/</guid><description>量 revealed adoption 的方法：為什麼口頭意願不能當投資依據，怎麼從 session log 數出真實的自發採用率，還有量法本身踩過的坑。</description><pubDate>Sat, 20 Jun 2026 00:00:00 GMT</pubDate></item><item><title>codebase 工具數據很強，到我 agent 手上剩不到一成</title><link>https://blog.gggodlin.com/blog/agent-tool-reach/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/agent-tool-reach/</guid><description>FFF 宣稱快、省 token、給 AI agent 用，但接進 Claude Code 後我的 agent 實際吃得到不到一成。一個套件值不值得接，要看它宣稱的能力到你 agent 手上實際用得到多少，四個專案的 session 統計算給你看。</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate></item><item><title>你已經有的越多，新工具能給的越少</title><link>https://blog.gggodlin.com/blog/check-my-stack/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/check-my-stack/</guid><description>評估熱門 AI 工具的方法總綱：先列自己已有的，再把工具賣點一條一條對上去，多數工具會自己歸零，剩下的那一點才值得認真看。</description><pubDate>Thu, 11 Jun 2026 00:00:00 GMT</pubDate></item><item><title>讓額度不大的帳號，也能掛機過夜跑完大型研究 workflow</title><link>https://blog.gggodlin.com/blog/unattended-workflow-resume/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/unattended-workflow-resume/</guid><description>想讓一個跑上百 agent 的重型研究在我睡覺時自己跑完，連額度不大的帳號也扛得起。難點是它幾十分鐘就燒爆一段每 5 小時的額度，得靠 pause→resume 跨段續跑。而 resume 能不能省 token，卡在一個官方沒明說的前提：workflow 夠不夠確定性。</description><pubDate>Mon, 08 Jun 2026 00:00:00 GMT</pubDate></item><item><title>下架八個月的惡意 extension 還躺在我硬碟，bumblebee 抓到了</title><link>https://blog.gggodlin.com/blog/bumblebee-still-on-disk/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/bumblebee-still-on-disk/</guid><description>一個下架八個月的 GlassWorm 惡意 extension 還躺在我硬碟上，被 bumblebee 掃出來。市集下架、編輯器自動更新、傳統掃描型工具都擋不住，只有掃磁碟實際安裝狀態才抓得到。</description><pubDate>Sun, 07 Jun 2026 00:00:00 GMT</pubDate></item><item><title>官方 deep-research workflow，我用 Opus 跑一次掛一次</title><link>https://blog.gggodlin.com/blog/deep-research-rate-limit/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/deep-research-rate-limit/</guid><description>拿官方 deep-research workflow 密集跑研究，75 個 verify agent 一次湧入、直接頂破 Anthropic 的 acceleration limit。撞名、撞限、自己 fork 一支批次節流版的復盤。</description><pubDate>Wed, 03 Jun 2026 00:00:00 GMT</pubDate></item><item><title>ultracode workflow，別跑完就丟</title><link>https://blog.gggodlin.com/blog/workflow-vs-skill/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/workflow-vs-skill/</guid><description>dynamic workflow 是繼 skill 之後第三種「把成功流程固化成可復用資產」的載體。ultracode 的真正價值不在現場生一支腳本跑完，而在把編排本身存下來復用。三個實際遷移案例講怎麼選。</description><pubDate>Tue, 02 Jun 2026 00:00:00 GMT</pubDate></item><item><title>省 token 工具：省不了多少，但風險不小</title><link>https://blog.gggodlin.com/blog/token-saving-tools/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/token-saving-tools/</guid><description>親手試了五個主打省 token 的工具，從命令列代理到上下文壓縮層 proxy，宣稱跟實測常差一截，真正的代價在風險。連那個「做對了透明可逆」的也不值得裝。</description><pubDate>Mon, 01 Jun 2026 00:00:00 GMT</pubDate></item><item><title>裝了一堆 codebase 搜尋工具，agent 幾乎都不用</title><link>https://blog.gggodlin.com/blog/code-search-adoption/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/code-search-adoption/</guid><description>兩個月在一個 codebase 上前後評估了 8 個程式碼搜尋工具，前 7 個 agent 幾乎都不主動用。工具有沒有能力，跟它會不會被 agent 用起來，是兩件不同的事。</description><pubDate>Sun, 31 May 2026 00:00:00 GMT</pubDate></item><item><title>MEMORY.md 只有 25KB，要當目錄用、別當倉庫塞</title><link>https://blog.gggodlin.com/blog/memory-cap-reframe/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/memory-cap-reframe/</guid><description>MEMORY.md 超出注入上限時有三類應對方向，但 A 類根本不存在，B 類有副作用，真正走得通的是 C，而且降 size ≠ 縮敘述。</description><pubDate>Sat, 30 May 2026 00:00:00 GMT</pubDate></item><item><title>為什麼我不再相信 Explore Agent 說他做完了</title><link>https://blog.gggodlin.com/blog/exit-0-illusion/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/exit-0-illusion/</guid><description>LLM 工具鏈裡「報告成功」和「真的完成」差得很遠——subagent 捏造、安裝靜默失敗、排程一個月零進展、測試腳本自我推翻，四種場景、二十幾個案例，Anthropic 知道但選擇不修。</description><pubDate>Sun, 24 May 2026 00:00:00 GMT</pubDate></item><item><title>wiki 蓋好之後，讓它繼續活著才是真正的問題</title><link>https://blog.gggodlin.com/blog/keep-the-wiki-alive/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/keep-the-wiki-alive/</guid><description>Karpathy 的 LLM-wiki 範例給了結構，但結構不保證系統有用。不到一個月的密集迭代後，讓它持續活下去的是每天主動量健康度、由我手動拍板的迴圈，跟架構、演算法無關。</description><pubDate>Tue, 19 May 2026 00:00:00 GMT</pubDate></item><item><title>我把自己裝的向量記憶砍掉了——928 次寫入換來 3 次搜尋</title><link>https://blog.gggodlin.com/blog/retire-vector-memory/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/retire-vector-memory/</guid><description>安裝 mempalace 跑了 2-3 週，hook 自動寫入 928 次，我主動查了 3 次，0.09% 的搜尋/drawer 比，6 個對照測試 grep 全勝——最後親手拔掉。</description><pubDate>Mon, 18 May 2026 00:00:00 GMT</pubDate></item><item><title>AI 說它查過官方文件，但它沒有</title><link>https://blog.gggodlin.com/blog/websearch-misses-official-docs/</link><guid isPermaLink="true">https://blog.gggodlin.com/blog/websearch-misses-official-docs/</guid><description>2026-05-10 實測：同一個查詢，WebSearch 回傳 10 條連結，沒有一條是官方文件專頁。瀏覽器走真實 Google 第一條就是。</description><pubDate>Mon, 18 May 2026 00:00:00 GMT</pubDate></item></channel></rss>