命令字典
Slash 命令、CLI 子命令、Hook 事件、启动参数的字典与演进史。
Slash 命令、CLI 子命令、Hook 事件、启动参数的字典与演进史。
设置API调用的最大花费金额限制
--max-budget-usd <amount>claude -p --max-budget-usd 5.00 "query"--max-budget-usd <amount> 是 Claude Code 的启动 flag,用来给单次运行设置 API 调用花费的美元上限,达到上限后停止。官方 CLI reference 的原文描述是:"Maximum dollar amount to spend on API calls before stopping (print mode only)"。
5.00。-p)下有效。Budget limit reached。# 官方示例
claude -p --max-budget-usd 5.00 "query"
-p。官方文档标注为 print mode only,GitHub issue #95964 中也明确写到交互式会话目前没有对应的累计花费上限。--max-turns:两者限制的维度不同,前者限 agentic turn 数,后者限美元。该 issue 把 --max-budget-usd 与 --max-turns / CLAUDE_CODE_MAX_TURNS 并列为仅适用于非交互运行的上限手段。--continue / --resume:官方文档说明,恢复对话时,从更早运行中恢复的累计总额不计入本次上限。claude -p --max-turns 10 --max-budget-usd 1.0 "query"
| 约束 | 原因 |
|---|---|
仅 -p 模式有效 | 官方文档标注 "print mode only";交互式会话没有等价的花费上限 |
| subagent 花费计入 | 官方文档明确说明 |
| 上限触发后无法再拉起 subagent | 会以 Budget limit reached 失败 |
| 上限触发时会停止后台 subagent | 官方文档说明 |
| cap-enforcement 行为需 v2.1.217+ | 官方文档注明 |
--continue / --resume 恢复的历史总额不计入 | 官方文档说明,从更早运行中恢复的累计总额不计入本次上限 |
claude -p 调用上加一道美元封顶,与 --max-turns 搭配使用(见上方组合示例)。交互式会话不受它约束:在 TUI 里加这个 flag 得不到花费上限,这是官方文档标注的限制。
触发时的表现(第三方实测,官方文档未记录):linuxjedi 的文章用 $0.01 的上限测试,观察到:
"subtype": "error_max_budget_usd",消息为 "Reached maximum budget ($0.01)"。1。写脚本依赖这些字段前,请在你使用的版本上自行验证。
可能超出上限:同一篇文章的作者认为花费是在客户端累加后再与上限比较,因此上限被检测到之前可能已超出。这是作者的推断,不是官方说明。
官方文档没有给出的信息:CLI reference 中该 flag 的条目没有列出对应的 env var 或 settings.json 字段,也没有说明托管 settings 是否会覆盖该 flag,所以本文不列对照表。
docs.claude.com/en/docs/claude-code/cli-reference 已 301 重定向至此)修复 mod 在每轮结束时提交 prompt 导致 headless 运行超过该预算仍继续的问题。
按更新后的 Sonnet 5.5 缓存读取价格($0.10/百万 token)计算预算。
支持通过 --max-budget-usd 参数指定最大预算
修复不停止后台 subagent 的问题,达到上限时现在会拒绝新生成并停止运行中的后台 agent
新增用于指定 SDK 最大预算限额的启动参数