Claude 要对自动化运行 CLI 高额计费了,有绕过办法吗
上一篇说过 Anthropic 6 月 15 日的政策本质是涨价——Max 5x 订阅的 claude -p 和 Agent SDK 类调用从订阅倍数池切出来,走独立 $100 月度信用桶,按 API 真实价计费,超出自费。重度自动化用户(pipeline 里跑批量任务的那种)实际上要多付钱。
那技术上能绕吗?
答案是——结构上有套利通道,但能不能用得久,取决于 Anthropic 用什么判定面把「编程调用」和「交互调用」区分开。
判定面是 flag 还是行为指纹
如果按 CLI 进程启动时的 --print / -p flag 判定调用类型——那这是个进程层的、用户可控的信号,套利通道敞开。
如果按行为指纹判定——stdin 是不是 tty、有没有中途交互响应、prompt 是不是一次性灌入跑完即退——那 wrapper 路径走不通,因为真正的"自动化调用"和"伪装成交互的自动化调用"在行为层几乎一样。
当前信号偏向第一种。Claude Code 客户端对 --print 模式做单独的模型路由(社区里早就有讨论 -p 拿到的是次一档模型)。如果客户端层就按 flag 路由模型,后端按 flag 计费的概率不低。
怎么绕,机制不复杂
写一个 wrapper 脚本,bash 入口探到 -p / --print 转交 python,python 做四件事:
把 --print flag 从 argv 里剥掉。给底层 CLI 加 --output-format stream-json --verbose——这是 interactive 模式的输出格式。prompt 通过 stdin 管道喂给底层 CLI 而不是 tty。底层 CLI 一次性吃完输入吐 stream-json 退出,wrapper 把流式事件反向格式化成原本 --print 期望的 text 或 json 输出。
从用户视角调用方式没变,从 CLI 进程视角看到的是 interactive 模式 + 管道输入。如果后端按 flag 判定,这次调用就计在订阅倍数池而不是 $100 桶里。
--model 不能透传——上游 CLI 会 strip 这个 flag。要通过项目级配置文件(<cwd>/.claude/settings.local.json)注入。这一层在客户端启动时的优先级高于全局配置,且不会被内部的 settings 清扫流程擦掉——这是个白盒可观察的"配置缝隙"。
套利窗口能撑多久
老实讲:6/15 政策还没生效,没人能跑实测,这篇是基于客户端机制的结构推演,不是省钱报告。
接下来 2-4 周值得盯三个信号。
一是 Claude Code 客户端会不会推升级,把 print 模式判定从"flag 检测"改成"stdin tty 检测 + 调用上下文识别"。这是堵这个洞最直接的动作。
二是客户端会不会引入"调用模式签名"——把 mode 决策做成不可篡改的上报字段,而不是听客户端 flag 自报。
三是订阅条款里有没有显式禁止"通过技术手段把编程调用伪装成交互调用"。条款层面的约束比技术层强,违反条款的话即使技术能跑通也是封号风险。
短期实操不是赶紧上 wrapper,是先算账。
claude -p 月消耗 API 等价值 < $100,新政策对你不影响,别折腾。$100-300 之间,wrapper 能省的钱不值得封号风险,老实开 extra usage 或者把高频调用迁回直接 API + prompt cache。> $300,wrapper 的诱惑确实大,但应该先观察 Anthropic 客户端 6/15 后的反应再动手——盲做不如等两周。
判断厂商收紧定价时反规则通道能撑多久,看的不是漏洞本身,是厂商的判定面正在往进程层深还是往行为层走——前者用户能套利,后者套利窗口很快关闭。