<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>AI編程 on KnightLi的博客</title>
        <link>https://www.knightli.com/zh-tw/tags/ai%E7%B7%A8%E7%A8%8B/</link>
        <description>Recent content in AI編程 on KnightLi的博客</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-tw</language>
        <lastBuildDate>Sun, 19 Apr 2026 18:27:23 +0800</lastBuildDate><atom:link href="https://www.knightli.com/zh-tw/tags/ai%E7%B7%A8%E7%A8%8B/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>Karpathy 的 65 行 CLAUDE.md：讓 AI 編程少犯三類錯誤</title>
        <link>https://www.knightli.com/zh-tw/2026/04/19/karpathy-claude-md-ai-coding-rules/</link>
        <pubDate>Sun, 19 Apr 2026 18:27:23 +0800</pubDate>
        
        <guid>https://www.knightli.com/zh-tw/2026/04/19/karpathy-claude-md-ai-coding-rules/</guid>
        <description>&lt;p&gt;最近 GitHub 上有一個圍繞 AI 編程的專案很火，核心其實只是一個大約 65 行的 &lt;code&gt;CLAUDE.md&lt;/code&gt; 文件。它之所以能拿到大量 star，不是因為技術實作複雜，而是因為它抓住了很多人使用 AI 寫程式時反覆遇到的問題。&lt;/p&gt;
&lt;p&gt;這個專案的背景，要從 Andrej Karpathy 對 AI 編程的觀察說起。Karpathy 是 AI 領域很有影響力的教育者和工程師：史丹佛博士，參與過 OpenAI 早期工作，也曾在 Tesla 負責 Autopilot 視覺系統。後來他持續分享對大模型、教育和 AI 工具的理解，所以他對編程方式變化的判斷，總會引起很多開發者關注。&lt;/p&gt;
&lt;p&gt;他在一次分享中提到，自己使用 Claude Code 幾週後，編程方式發生了明顯變化：過去大概是 80% 手寫程式、20% AI 輔助，現在更接近 80% 讓 AI 寫程式，自己做 20% 修改。他形容這像是「用英語編程」，透過自然語言告訴 LLM 要寫什麼。&lt;/p&gt;
&lt;p&gt;但他也指出了 AI 編程的幾個典型問題。&lt;/p&gt;
&lt;h2 id=&#34;01-錯誤假設&#34;&gt;01 錯誤假設
&lt;/h2&gt;&lt;p&gt;第一個問題是模型很容易替使用者做假設，然後沿著這個假設一路寫下去。它不一定會主動管理自己的困惑，也不一定會在需求含糊時停下來追問。&lt;/p&gt;
&lt;p&gt;比如使用者只說「新增使用者匯出功能」，模型可能會預設匯出全部使用者，預設輸出 JSON，預設寫成本地文件，預設權限和欄位都不需要再確認。等程式寫完，使用者才發現它理解的需求和真實場景並不一致。&lt;/p&gt;
&lt;p&gt;更好的做法應該是先把不確定點列出來：匯出全部使用者還是篩選結果？是瀏覽器下載還是後台任務？需要哪些欄位？資料量大不大？是否有權限限制？這些問題不問清楚，後面寫得越快，偏得也越遠。&lt;/p&gt;
&lt;h2 id=&#34;02-過度複雜化&#34;&gt;02 過度複雜化
&lt;/h2&gt;&lt;p&gt;第二個問題是模型很容易把簡單問題寫複雜。一個函式能解決的問題，它可能加上抽象類、策略模式、工廠模式、配置層和一堆「未來可能有用」的擴充點。&lt;/p&gt;
&lt;p&gt;這類程式看起來很工程化，實際卻增加了維護負擔。AI 尤其擅長快速生成大量結構，但並不總能判斷這些結構是否真的必要。結果就是一百行能解決的任務，被膨脹成一千行。&lt;/p&gt;
&lt;p&gt;判斷標準其實很直接：一個資深工程師看到這段改動，會不會覺得它過度設計？如果答案是會，就應該刪掉多餘層次，用最少的程式碼解決當前問題。&lt;/p&gt;
&lt;h2 id=&#34;03-附帶傷害&#34;&gt;03 附帶傷害
&lt;/h2&gt;&lt;p&gt;第三個問題是模型有時會修改或刪除自己沒有充分理解的程式碼。它可能在修一個小 bug 的時候順手改註釋、重排格式、清理看似無用的 import，甚至動到和當前任務無關的邏輯。&lt;/p&gt;
&lt;p&gt;這類「順手優化」很危險，因為它擴大了變更範圍，也讓 review 變得更困難。使用者本來只想修復一個空 email 導致驗證器崩潰的問題，結果模型順便增強了 email 驗證、加了使用者名稱校驗、改了文件字串，最後很難判斷到底哪一行影響了行為。&lt;/p&gt;
&lt;p&gt;更穩妥的原則是：只動必須動的程式碼，只清理自己造成的問題。原本就存在的死程式碼、格式問題或歷史包袱，除非任務明確要求處理，否則最多提醒一句，不要直接改。&lt;/p&gt;
&lt;h2 id=&#34;04-把吐槽變成-claudemd&#34;&gt;04 把吐槽變成 CLAUDE.md
&lt;/h2&gt;&lt;p&gt;在 Karpathy 的觀點被大量傳播後，開發者 Forrest Cheung 做了一件很聰明的事：他把這些吐槽整理成可以執行的行為準則，寫進一個 &lt;code&gt;CLAUDE.md&lt;/code&gt; 文件。&lt;/p&gt;
&lt;p&gt;這個專案沒有複雜程式碼，關鍵就是把 AI 編程中最容易出問題的地方，轉成明確的工作規則。大致可以概括為四條。&lt;/p&gt;
&lt;p&gt;第一條是先想再寫。不要默默假設，不要隱藏困惑；如果需求有多種理解，就把它們列出來；如果存在更簡單的方案，也要說出來；該追問時追問，該反駁時反駁。&lt;/p&gt;
&lt;p&gt;第二條是簡單優先。不新增沒被要求的功能，不為一次性程式碼做抽象，不加入多餘配置，也不為極小機率場景寫大量防禦程式碼。如果 50 行能解決，就不要寫成 200 行。&lt;/p&gt;
&lt;p&gt;第三條是精準修改。每一行改動都應該能直接追溯到使用者請求。不要順手改善鄰近程式碼，不要重構沒壞的東西，盡量匹配專案既有風格。&lt;/p&gt;
&lt;p&gt;第四條是目標驅動。不要只給模型一個模糊指令，而是給它可驗證的成功標準。比如「修復 bug」可以變成「先寫一個能復現 bug 的測試，再讓測試通過」；「新增校驗」可以變成「寫無效輸入測試並通過」。成功標準越清楚，模型越容易自己循環到完成。&lt;/p&gt;
&lt;h2 id=&#34;05-為什麼它會火&#34;&gt;05 為什麼它會火
&lt;/h2&gt;&lt;p&gt;這個專案能火，不是因為內容很玄，而是因為它足夠貼近真實開發。&lt;/p&gt;
&lt;p&gt;很多人用 AI 編程時都經歷過類似場景：模型自信地誤解需求，程式越寫越複雜，或者在不該動的地方動手。&lt;code&gt;CLAUDE.md&lt;/code&gt; 的價值，是把這些經驗變成可以放進專案裡的協作規則。&lt;/p&gt;
&lt;p&gt;它的門檻也很低：一個文件就能開始生效，不需要複雜接入。再加上 Karpathy 本人的影響力，以及專案裡有實戰對比案例，它很自然會在 Claude Code 使用者和 AI 編程社群裡傳播開來。&lt;/p&gt;
&lt;p&gt;更重要的是，這類規則不是只適用於 Claude Code。無論使用哪種 AI 編程工具，本質問題都很相似：模型需要知道什麼時候該問、什麼時候該簡化、什麼時候該停手、怎樣判斷任務已經完成。&lt;/p&gt;
&lt;h2 id=&#34;06-對普通開發者的啟發&#34;&gt;06 對普通開發者的啟發
&lt;/h2&gt;&lt;p&gt;這件事給普通開發者的啟發很簡單：AI 編程不是把一句需求丟給模型，然後等待奇蹟發生。真正有效的方式，是給模型建立邊界。&lt;/p&gt;
&lt;p&gt;需求不清楚時，讓它先暴露假設。實作方案變複雜時，讓它主動回到最小可行解。修改程式碼時，讓它只圍繞任務目標行動。完成任務時，用測試、命令或明確檢查點來驗證結果。&lt;/p&gt;
&lt;p&gt;AI 寫程式的能力已經很強，但它仍然需要好的協作約束。一個短小的 &lt;code&gt;CLAUDE.md&lt;/code&gt; 能獲得大量關注，說明開發者真正需要的並不只是更聰明的模型，也包括更可靠的工作方式。&lt;/p&gt;
&lt;p&gt;簡單總結：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;先想再寫，減少錯誤假設。&lt;/li&gt;
&lt;li&gt;簡單優先，避免過度設計。&lt;/li&gt;
&lt;li&gt;精準修改，控制變更範圍。&lt;/li&gt;
&lt;li&gt;目標驅動，用可驗證標準推動完成。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;這四條並不複雜，卻很實用。AI 編程真正提升效率的前提，不是讓模型寫得更多，而是讓它寫得更準、更少、更可控。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>Claude Code 額度省著用：模型選擇、上下文、快取與 /compact</title>
        <link>https://www.knightli.com/zh-tw/2026/04/19/claude-code-usage-context-compact-notes/</link>
        <pubDate>Sun, 19 Apr 2026 15:29:06 +0800</pubDate>
        
        <guid>https://www.knightli.com/zh-tw/2026/04/19/claude-code-usage-context-compact-notes/</guid>
        <description>&lt;p&gt;最近很多人在用 Claude Code 或 Claude Max 時會遇到一個問題：明明買了 Pro、Max 5x，甚至 Max 20x，結果沒跑多久就提示額度快滿，或者直接需要等重置。尤其是在大專案裡讓 Claude Code 讀很多檔案、修複雜 bug、跑長任務時，這種感覺會更明顯。&lt;/p&gt;
&lt;p&gt;這裡先說結論：額度不是按「時間」線性扣的，而是和模型、上下文長度、附件、程式碼庫規模、對話歷史、工具呼叫和目前容量都有關係。同樣 5 小時視窗，有的人能用很久，有的人十幾分鐘就耗盡，通常不是帳號壞了，而是每次請求都太重。&lt;/p&gt;
&lt;p&gt;這篇整理一套比較實用的省額度習慣。&lt;/p&gt;
&lt;h2 id=&#34;01-先理解-claude-的用量視窗&#34;&gt;01 先理解 Claude 的用量視窗
&lt;/h2&gt;&lt;p&gt;Claude Pro 和 Max 都有使用限制，Claude Code 的使用量會和 Claude 網頁、桌面、行動端共享同一套訂閱額度。官方說明裡提到，訊息數量會受到訊息長度、附件大小、目前對話長度、所用模型或功能影響；Claude Code 還會受到專案複雜度、程式碼庫大小、自動接受設定等影響。&lt;/p&gt;
&lt;p&gt;大致可以這樣理解：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Pro：適合輕量使用和小專案。&lt;/li&gt;
&lt;li&gt;Max 5x：適合更頻繁使用和較大的程式碼庫。&lt;/li&gt;
&lt;li&gt;Max 20x：適合更重度、日常高頻協作。&lt;/li&gt;
&lt;li&gt;用量視窗按 5 小時會話重置。&lt;/li&gt;
&lt;li&gt;長訊息、長對話、大檔案、複雜任務會更快消耗額度。&lt;/li&gt;
&lt;li&gt;Opus 這類更強模型會比 Sonnet 更快觸發限制。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;所以「我只用了 20 分鐘」這個說法不一定能說明問題。真正重要的是這 20 分鐘裡 Claude 讀了多少上下文、用了什麼模型、是否反覆處理大檔案、是否在同一個長對話裡繼續加任務。&lt;/p&gt;
&lt;h2 id=&#34;02-第一件事不要預設一直用最貴模型&#34;&gt;02 第一件事：不要預設一直用最貴模型
&lt;/h2&gt;&lt;p&gt;Claude 系列裡常見的定位是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Opus&lt;/code&gt;：能力最強，適合複雜推理、架構決策、疑難 bug。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Sonnet&lt;/code&gt;：能力和成本比較均衡，適合大部分日常編碼任務。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Haiku&lt;/code&gt;：更輕量，適合簡單分類、摘要、格式轉換等任務。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;日常寫腳本、改小 bug、整理文件、解釋程式碼，大多數時候 Sonnet 已經夠用。Opus 更適合留給這些場景：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;複雜架構設計。&lt;/li&gt;
&lt;li&gt;多檔案深度重構。&lt;/li&gt;
&lt;li&gt;難復現的 bug。&lt;/li&gt;
&lt;li&gt;需要長鏈路推理的排障。&lt;/li&gt;
&lt;li&gt;普通模型明顯卡住的任務。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Claude Code 裡可以用 &lt;code&gt;/model&lt;/code&gt; 切換模型，也可以在 &lt;code&gt;/config&lt;/code&gt; 裡設定預設模型。比較穩的習慣是：預設 Sonnet，關鍵節點再切 Opus，而不是整場任務都用 Opus 扛。&lt;/p&gt;
&lt;h2 id=&#34;03-第二件事控制上下文不要讓舊任務拖著走&#34;&gt;03 第二件事：控制上下文，不要讓舊任務拖著走
&lt;/h2&gt;&lt;p&gt;上下文越長，Claude 每次處理要看的內容越多，額度消耗也越高。Claude Code 官方文件明確建議主動管理上下文：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;換到不相關任務時，用 &lt;code&gt;/clear&lt;/code&gt; 清空歷史。&lt;/li&gt;
&lt;li&gt;目前任務做完一個階段但還要保留重點時，用 &lt;code&gt;/compact&lt;/code&gt; 壓縮。&lt;/li&gt;
&lt;li&gt;想知道上下文裡什麼佔空間，用 &lt;code&gt;/context&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;想持續看到狀態，可以設定 status line。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;一個好用的節奏是：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;小階段完成：/compact
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;大任務結束：/clear
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;切換無關專案：/clear
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;上下文接近很高佔用：提前 /compact
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;code&gt;/compact&lt;/code&gt; 會把前面的對話壓成摘要，保留關鍵任務狀態、結論、檔案路徑、待辦事項，但減少後續每次請求要攜帶的歷史。你也可以給它補一句重點：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/compact 保留已修改檔案、測試結果、剩餘待辦和關鍵設計決策
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;不要等自動壓縮才處理。官方文件提到，Claude Code 會在上下文接近容量上限時自動壓縮，但手動在階段邊界壓縮，通常更可控。&lt;/p&gt;
&lt;h2 id=&#34;04-第三件事長對話和大檔案會讓每次請求變貴&#34;&gt;04 第三件事：長對話和大檔案會讓每次請求變貴
&lt;/h2&gt;&lt;p&gt;很多人以為「我只是繼續問一句」，應該很便宜。但在長對話裡，這一句背後可能帶著大量歷史、檔案摘要、工具定義和系統規則。&lt;/p&gt;
&lt;p&gt;特別容易漲上下文的東西包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;一直不清理的長對話。&lt;/li&gt;
&lt;li&gt;讓 Claude 讀完整大檔案。&lt;/li&gt;
&lt;li&gt;貼很長日誌、建置輸出、測試輸出。&lt;/li&gt;
&lt;li&gt;一次性塞很多截圖或圖片。&lt;/li&gt;
&lt;li&gt;讓它反覆掃描整個倉庫。&lt;/li&gt;
&lt;li&gt;過長的 &lt;code&gt;CLAUDE.md&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;開了很多 MCP server。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;比較省的做法是：日誌只貼關鍵報錯，測試輸出只給失敗部分，大檔案讓它先用 &lt;code&gt;rg&lt;/code&gt;、&lt;code&gt;head&lt;/code&gt;、&lt;code&gt;tail&lt;/code&gt;、符號搜尋定位，再讀必要片段。能用命令列過濾的內容，不要整包塞進上下文。&lt;/p&gt;
&lt;h2 id=&#34;05-第四件事理解快取但不要迷信快取&#34;&gt;05 第四件事：理解快取，但不要迷信快取
&lt;/h2&gt;&lt;p&gt;Anthropic 的 Prompt Caching 會快取重複的 prompt 前綴。預設快取生命週期是 5 分鐘，也支援 1 小時快取。快取命中時，重複的大段上下文不需要完整重新處理，有助於降低成本和改善額度利用。&lt;/p&gt;
&lt;p&gt;但快取有幾個限制：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;需要內容完全匹配，文字和圖片都要一致。&lt;/li&gt;
&lt;li&gt;預設快取是短生命週期。&lt;/li&gt;
&lt;li&gt;改模型、改工具、改系統提示、改上下文結構，都可能降低命中。&lt;/li&gt;
&lt;li&gt;輸出 token 不會因為快取而消失，該生成的回答仍然要生成。&lt;/li&gt;
&lt;li&gt;Claude Code 具體如何利用快取，是產品層實作細節，不要把它當成永遠穩定的「免費記憶」。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;實際使用裡，最重要的不是研究快取細節，而是保持會話穩定：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;同一階段盡量別頻繁切模型。&lt;/li&gt;
&lt;li&gt;不要中途反覆改大量規則。&lt;/li&gt;
&lt;li&gt;不要在同一任務裡不停貼新圖片。&lt;/li&gt;
&lt;li&gt;長任務中間不要閒置太久後又繼續塞大請求。&lt;/li&gt;
&lt;li&gt;階段結束主動 &lt;code&gt;/compact&lt;/code&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;這樣更容易讓重複上下文保持可複用，也能降低後續請求負擔。&lt;/p&gt;
&lt;h2 id=&#34;06-關於尖峰時段能避開就避開但不要當固定公式&#34;&gt;06 關於尖峰時段：能避開就避開，但不要當固定公式
&lt;/h2&gt;&lt;p&gt;網路上常有人說某些時段額度會更緊。官方幫助中心的表述更謹慎：可發送數量會受到 Claude 目前容量、對話長度、附件、模型和功能影響。也就是說，尖峰容量確實可能影響體驗，但不要把某個地區的某個時間段當成永久固定規則。&lt;/p&gt;
&lt;p&gt;實用建議是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;大重構、大批次分析盡量放到自己網路和服務都穩定的時段。&lt;/li&gt;
&lt;li&gt;不要在快到休息時開啟一個超長任務。&lt;/li&gt;
&lt;li&gt;預計會離開很久時，先 &lt;code&gt;/compact&lt;/code&gt; 或 &lt;code&gt;/clear&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;如果只是小改動，不要開 Opus 加長上下文硬跑。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;這比記一個固定「幾點到幾點不能用」的規則更可靠。&lt;/p&gt;
&lt;h2 id=&#34;07-精簡-claudemdrulesmcp-和-skills&#34;&gt;07 精簡 CLAUDE.md、rules、MCP 和 skills
&lt;/h2&gt;&lt;p&gt;Claude Code 會在會話中載入專案規則、工具資訊和一部分環境上下文。官方文件也建議把通用規則和專用規則分開，避免每次啟動都帶著一大包不相關內容。&lt;/p&gt;
&lt;p&gt;比較推薦的拆法：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CLAUDE.md&lt;/code&gt;：只放全域都適用的核心規則。&lt;/li&gt;
&lt;li&gt;rules：放特定路徑、特定檔案類型才需要的規則。&lt;/li&gt;
&lt;li&gt;skills：放特定工作流，例如發文章、部署、生成圖片、提交程式碼。&lt;/li&gt;
&lt;li&gt;MCP：只啟用目前任務真的會用到的 server。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果 &lt;code&gt;CLAUDE.md&lt;/code&gt; 寫了幾百上千行，每次會話都要帶進去。更好的方式是把「偶爾才用」的流程移到 skill 裡，需要時再呼叫。&lt;/p&gt;
&lt;p&gt;MCP 也是一樣。工具多不等於效率高。Claude Code 文件提到可以用 &lt;code&gt;/mcp&lt;/code&gt; 查看並停用不需要的 server，也可以用 &lt;code&gt;/context&lt;/code&gt; 看是什麼佔用了上下文空間。&lt;/p&gt;
&lt;h2 id=&#34;08-實用指令清單&#34;&gt;08 實用指令清單
&lt;/h2&gt;&lt;p&gt;日常最常用的是這幾個：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/model
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;切換模型。預設建議用 Sonnet，複雜推理再用 Opus。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/clear
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;清空目前上下文。換無關任務時用，最省。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/compact
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;壓縮歷史上下文。一個階段完成但還要繼續同一任務時用。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/context
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;查看上下文佔用，排查是什麼吃掉空間。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/status
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;查看目前訂閱或額度相關狀態。官方幫助中心也建議用它監控剩餘額度。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/mcp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;查看和管理 MCP server，關閉目前不用的工具。&lt;/p&gt;
&lt;p&gt;如果你用 API 計費模式，還可以關注 &lt;code&gt;/cost&lt;/code&gt;；但如果是 Pro/Max 訂閱，官方文件說明 &lt;code&gt;/cost&lt;/code&gt; 的美元估算不適合作為訂閱帳單依據，訂閱使用者更應該看 &lt;code&gt;/stats&lt;/code&gt; 和 &lt;code&gt;/status&lt;/code&gt; 這類使用資訊。&lt;/p&gt;
&lt;h2 id=&#34;09-一套省額度工作流&#34;&gt;09 一套省額度工作流
&lt;/h2&gt;&lt;p&gt;比較順手的流程可以是這樣：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;新任務開始前先 &lt;code&gt;/clear&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;預設用 Sonnet。&lt;/li&gt;
&lt;li&gt;先讓 Claude 讀專案結構和關鍵檔案，不要一口氣讀全倉庫。&lt;/li&gt;
&lt;li&gt;每做完一個小階段就 &lt;code&gt;/compact&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;複雜卡點再切 Opus。&lt;/li&gt;
&lt;li&gt;日誌、報錯、測試輸出先過濾再給。&lt;/li&gt;
&lt;li&gt;任務完成後 &lt;code&gt;/clear&lt;/code&gt;，不要拖著舊上下文開新活。&lt;/li&gt;
&lt;li&gt;定期檢查 &lt;code&gt;CLAUDE.md&lt;/code&gt;、MCP 和 skills，把常駐上下文壓小。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;這個流程的核心是：讓 Claude 每次只看目前真正需要看的東西。&lt;/p&gt;
&lt;h2 id=&#34;10-小結&#34;&gt;10 小結
&lt;/h2&gt;&lt;p&gt;Claude Code 額度快速耗盡，通常不是單一原因，而是幾個因素疊加：用了高成本模型、長對話一直不清、檔案和日誌塞太多、MCP 和規則常駐過重、快取命中變差，再加上尖峰容量波動。&lt;/p&gt;
&lt;p&gt;省額度的核心也很簡單：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;日常任務優先 Sonnet。&lt;/li&gt;
&lt;li&gt;Opus 留給真正複雜的問題。&lt;/li&gt;
&lt;li&gt;階段完成用 &lt;code&gt;/compact&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;換任務用 &lt;code&gt;/clear&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;用 &lt;code&gt;/context&lt;/code&gt; 找上下文佔用來源。&lt;/li&gt;
&lt;li&gt;精簡 &lt;code&gt;CLAUDE.md&lt;/code&gt;、rules、MCP 和 skills。&lt;/li&gt;
&lt;li&gt;不要把整倉庫、整日誌、整圖片包都丟進去。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;同樣的 Pro 或 Max 方案，能做多少事，很大程度取決於你怎麼管理上下文。把上下文變小、任務邊界變清楚，Claude Code 的可用時間和穩定性都會明顯好很多。&lt;/p&gt;
&lt;h2 id=&#34;參考連結&#34;&gt;參考連結
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Claude Help Center：Using Claude Code with your Pro or Max plan：&lt;a class=&#34;link&#34; href=&#34;https://support.claude.com/en/articles/11145838-using-claude-code-with-your-pro-or-max-plan&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://support.claude.com/en/articles/11145838-using-claude-code-with-your-pro-or-max-plan&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Claude Help Center：About Claude&amp;rsquo;s Max Plan Usage：&lt;a class=&#34;link&#34; href=&#34;https://support.anthropic.com/en/articles/11014257-about-claude-s-max-plan-usage/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://support.anthropic.com/en/articles/11014257-about-claude-s-max-plan-usage/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Claude Code Docs：Manage costs effectively：&lt;a class=&#34;link&#34; href=&#34;https://code.claude.com/docs/en/costs&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://code.claude.com/docs/en/costs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Anthropic Docs：Prompt caching：&lt;a class=&#34;link&#34; href=&#34;https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        
    </channel>
</rss>
