Theme / v0.5.0

CatDesk

把 ChatGPT Web 變成本地 Coding Agent

實戰範例

看懂 token 用量估算

CatDesk 的 TUI 與 widget 會顯示 inputTokens、outputTokens、totalTokens 三個數字。這篇解釋它們怎麼算、哪些用量沒被計入,以及怎麼用數字決定何時該開新對話。

看懂 token 用量估算

每次 ChatGPT 呼叫 CatDesk 的工具,CatDesk 的 TUI 和 ChatGPT 裡的 widget 都會跳出三個數字:inputTokensoutputTokenstotalTokens。很多人第一眼看反了方向:怎麼「input」的單價反而比較貴?

這篇把三個數字的方向、計價依據、沒被算進去的部分一次講清楚,最後給你一個實用的判斷法:什麼時候該開新對話。


情境

你用 CatDesk 跑了一個下午的開發,widget 上的數字累積到 totalTokens 六位數。你想知道:這些數字是怎麼來的?準不準?有沒有超出什麼額度?

目標

讀懂 widget 與 TUI 上的 token 數字,理解它們的意義與極限,並建立「何時開新對話」的判斷準則。

數字怎麼來的

CatDesk 拿不到 ChatGPT Web 的官方 token 用量回報,所以它在本地用 o200k_base(與 GPT-5.5 系列同一家族的 tokenizer)自己估算。方向是反直覺的,對照表如下:

欄位 符號 實際意義 計價依據
inputTokens 工具的輸入參數,等於 LLM 的輸出 約 $30.00 / 1M 輸出 token
outputTokens 工具回傳的內容,等於 LLM 的輸入 約 $5.00 / 1M 輸入 token
totalTokens σ 兩者相加 兩種單價各自計入

簡單說:read 讀回一大份檔案,是 LLM 要「吃下去」的東西,走輸入單價、比較便宜;你請它改檔案時工具參數寫了一大段新程式碼,那是 LLM「吐出來」的東西,走輸出單價、貴六倍。

哪些用量沒有被算進去

這三個數字只涵蓋工具呼叫本身。以下完全不計:

  • 整個 ChatGPT 對話本文(包含你貼的每一段文字與歷史訊息)
  • 隱藏的系統提示(hidden prompts)與推理 token(reasoning tokens)
  • 其他 OpenAI 內部消耗的 token

所以 totalTokens 永遠小於這場對話的真實 token 消耗,它量的是「CatDesk 這條管道的流量」,不是整場對話的用量。

另外一個常見誤會:widget 載入時的跑跑動畫純屬視覺效果。ChatGPT Web 不會把工具輸入輸出串流給 CatDesk,widget 先本地動畫,等真正的工具結果回來才鎖定為估算值。

實戰:用數字決定何時開新對話

給 ChatGPT 的 prompt(在連續工作一段時間後):

Roughly how many tool calls have we made this session?
Give me a one-line summary of where we are and what remains,
formatted so I can paste it into a new session.

搭配 widget 數字的判斷準則:

  • 對話工具呼叫次數逼近 50 次上下,或明顯感覺回應變慢:這是官方觀察到的卡頓門檻,別硬撐。
  • totalTokens 持續累積、每輪新增的量越來越大:代表 ChatGPT 每輪要背的上下文在變重,該交棒了。
  • 開新任務就開新對話,這是習慣問題,不是數字問題。

結果與重點

ChatGPT 產出一行交接摘要,你貼進新對話(工作法詳見範例 003),回應速度立刻回到開場水準。

三個重點帶走:

  • inputTokens(↓)是工具輸入、走輸出單價約 $30/1M;outputTokens(↑)是工具輸出、走輸入單價約 $5/1M,方向別記反。
  • 數字是 o200k_base 本地估算,只計工具流量,不含對話本文與推理 token,看總量趨勢比看絕對值有用。
  • 數字變大加回應變慢,就是開新對話加交接筆記的訊號;Plus 方案的內容視窗是輸入加輸出合計 256K,Pro 是 400K,別把它當無限。