avatar
蕭富云行動應用開發者 · Android & Flutter

Frame0 對上 ASCII 線框圖:同一張畫面的成本實測

2026-05-22 · 6 min read

最近開始把 Frame0 接到 Claude Code 的 MCP 工具集裡,想法很簡單:讓 AI 在對話裡順手畫個線框圖,溝通起來會比文字描述快。

但這也帶出一個問題 —— 畫一張線框圖到底會花多少 token?

我拿自己的 side project Heimdall(一個 Jira 桌面客戶端)當白老鼠,把它的主畫面同時用兩種方式畫了一次:純文字 ASCII,以及 Frame0 MCP 真實向量。同一份結構、同一份 mock data、同一輪會話內完成。

兩張圖擺一起

ASCII 版,在訊息裡直接渲染、零 MCP 呼叫:

ASCII fallback wireframe of the Heimdall tickets page

Frame0 版,93 個圖形,匯出 PNG:

Frame0 wireframe of the Heimdall tickets page

同一個畫面 —— AppBar、分頁列、搜尋框、指派人下拉、表格(含子任務縮排、隱藏子任務指示器、優先序圖示、狀態 pill)—— 兩種媒介各畫一次。

數字

面向ASCIIFrame0
Token 成本近乎零(訊息字元)50k–70k(MCP 來回)
牆面時間秒級數分鐘(LLM 生成 ≫ MCP 處理)
視覺品質等寬錯位、emoji 替代 icon真實向量、可匯出 PNG
對外溝通不適合適合
修改成本改字串重畫或逐個 update

Frame0 那 50k–70k 不是均勻分布的。拆開來看:

一個可以省 ~25k 的小撥動

跑完一輪後,所有用到的 icon 名稱我都記下來了:

用途Frame0 icon 名
Storybookmark
Task / Sub-tasksquare-check
Bugbug
Epiczap
設定settings
搜尋search
使用者user
下拉箭頭chevron-down
優先序 升 / 降arrow-up / arrow-down
優先序 最高 / 最低chevrons-up / chevrons-down

下一次同一類畫面,不必再呼叫 search_icons —— 直接用對應名字。光這一步就能把總用量從 50k–70k 壓到 ~30k

另一個小坑是 create_iconname 參數 —— 那是 icon 庫的名稱,不是你自己取的標籤。我第一輪用「我看得懂的名字」(像 action-hash)填,五個 icon 全部 500。改成 hashrefresh-cw 這些真實 icon 名就過了。一次浪費 ~1.5k tokens。

最後得到的工作流

對齊結構先用 ASCII,確定形狀對了再用 Frame0 出最終稿。

ASCII 版的價值不在好看 —— 在於改錯成本接近零。把欄位順序、分組邏輯、空狀態都在文字版定下來,Frame0 那一輪就只是把已經對齊的結構轉成可審視的視覺稿。

如果一上來就在 Frame0 裡反覆移座標、改 icon、調 pill 寬度,token 成本不會是 50k–70k,而是 50k–70k 的兩三倍 —— 每改一個圖形都要 update,而 update 跟 create 同樣貴。

給也在試 MCP 工具的人


這篇 benchmark 是 2026-05-22 在 Claude Opus 4.7 上跑出來的,Frame0 MCP 客戶端,Heimdall 主畫面(800×632 桌面框)作為樣本。數字是估計值 —— 我無法從會話內讀到 harness 的精確 token 計數,實際數字以 session usage 面板為準。