为什么你用AI越多,代码却越少?真相是:对话太长,账单在偷跑
你有没有发现——最近用 AI 越勤快,写的代码反而越少,月底账单却越来越吓人?
这不是你的错觉。
这是「上下文税」在悄悄扣钱:每次你没关掉聊天窗口,就等于把前面所有对话都打包塞进下一条提问里——AI 每次都要“重读”几千上万字,而你得为每一个字(token)买单。
💡 举个真实例子:
一个本该花 4 分钱的 Swift UI 调试小问题,因为拖着一整天的旧对话(含 8000+ tokens 历史),实际花了 40 分钱——贵了整整 10 倍。
更扎心的是:
– ✅ 写代码?便宜。问题明确、回复简短,token 少。
– ❌ “帮我想想这个功能怎么设计”?贵!来回讨论、反复修改、不断补充背景……上下文像雪球一样越滚越大。
你以为自己在“高效用 AI”,其实是在“高价养历史”。
真正管用的 3 个动作(不用学新工具,今天就能做):
- 分任务,不混聊:调试 Swift 用一个新对话,改文案用另一个,查报错再开一个。别让“UI 布局”和“用户提示语”挤在同一串上下文里。
- 设提醒,定时清:每小时看一眼——如果当前对话超过 5 条消息、或已聊超 15 分钟,果断新建窗口。
- 让花费“看得见”:就像盯着余额付款一样,你需要一个实时 token 计数器——它不会帮你省钱,但会让你立刻停下那句“再问一个问题”。
作者自己开发的 macOS 小工具 TokenBar,就干这一件事:
→ 它安静待在菜单栏右上角,
→ 每次你向 Claude / Cursor / o1 发送消息,它就实时显示本次请求用了多少 tokens,
→ 还能按会话累计、区分模型(Claude / GPT / Sonnet)、甚至导出日志复盘。
效果立竿见影:
– 账单降了(作者下月直降 40%+)
– 编码节奏反而更快了——因为不再被冗长对话带偏,每个 session 都目标清晰、干净利落。
🧩 小彩蛋:TokenBar 的核心逻辑极简,本质就是监听 LLM 工具的 API 请求头或响应体里的
usage字段。比如抓取 Claude 的响应 JSON:
{
"id": "msg_...",
"content": [...],
"usage": {
"input_tokens": 2847, // 中文注释:这次提问用了 2847 个输入 token(含全部历史)
"output_tokens": 156 // 中文注释:AI 回答用了 156 个输出 token
}
}
⚠️ 注意:不是所有客户端都开放 usage 数据。TokenBar 目前原生支持 Claude Desktop、Cursor、VS Code + Continue 插件等主流开发环境,原理是通过本地代理或插件钩子捕获流量——不上传你的代码,不联网分析,纯离线运行。
如果你也常被“莫名暴涨”的账单搞懵,别急着减少使用频率。先看看你正在为哪些“看不见的历史”付费。
真正的提效,从来不是“少用 AI”,而是——让每一次对话,都轻装上阵。
