Claude Code CLI 实用参数详解
概述
Claude Code 提供了丰富的 CLI 参数,覆盖权限控制、模型选择、会话管理、工作隔离、浏览器集成等场景。本文聚焦最实用的 9 个参数,附带组合用法和注意事项。
会话管理
-c, --continue
恢复当前目录下最近一次对话,保留完整上下文。
claude -c # 交互式继续
claude -c "上次提到的问题修好了吗" # 带 prompt 继续
claude -c --fork-session # 继续但创建新会话(不覆盖原会话)
claude -c --model opus # 继续时切换模型注意事项:
- 按目录匹配会话,
cd到不同 repo 会找到那个 repo 的会话 - 不像
-r/--resume有交互式选择器,-c直接选最近的 - 如果没有历史会话,静默启动新会话(无警告)
- 长对话恢复会消耗大量 context,考虑
--fork-session分叉
模型与推理
--model
指定当前会话的模型,接受别名或完整模型名。
| 别名 | 含义 |
|---|---|
sonnet / opus / haiku | 最新版(自动跟踪) |
sonnet[1m] / opus[1m] | 1M context 版本 |
opusplan | Opus 做规划 + Sonnet 做执行 |
claude --model opus # 最强推理
claude --model haiku # 快速便宜
claude --model claude-sonnet-4-6 # 固定版本(CI/CD 推荐)CI/CD 中建议用完整模型名锁定版本,别名会随新版本自动更新。环境变量
ANTHROPIC_MODEL优先级高于 CLI flag。
--effort
控制推理深度,影响思考 token 消耗和响应质量/速度。仅对 Opus 4.6 和 Sonnet 4.6 生效。
| 级别 | 特点 | 适用场景 |
|---|---|---|
low | 快速、省钱 | 简单查询、格式转换、信息提取 |
medium | 默认平衡 | 日常开发 |
high | 深度推理 | 复杂 bug、架构决策 |
max | 最大深度(仅 Opus) | 关键一次性分析 |
claude --effort low -p "列出所有导出的函数名"
claude --model opus --effort max -p "审计 JWT 实现的安全性"
max仅当前会话有效,不跨会话持久化。优先级:环境变量CLAUDE_CODE_EFFORT_LEVEL> CLI flag > settings.json。
权限控制
--permission-mode
控制工具权限策略,6 种模式:
| 模式 | 行为 | 风险 | 适用场景 |
|---|---|---|---|
default | 首次使用时询问,批准后记住 | 低 | 日常交互开发 |
acceptEdits | 自动批准文件编辑,Bash 仍需确认 | 低-中 | 大规模重构 |
plan | 只读,不能编辑或执行命令 | 极低 | 安全探索、架构评审 |
auto | 自动批准所有操作 | 高 | 信任环境中快速迭代 |
dontAsk | 白名单模式,未预批准的直接拒绝 | 低 | 严格受限 CI/CD |
bypassPermissions | 跳过所有权限 | 高 | 容器化 CI/CD |
claude --permission-mode plan # 安全探索
claude --permission-mode acceptEdits # 重构场景
claude --permission-mode dontAsk --allowedTools "Bash(npm run *),Read,Edit"交互模式中 Shift+Tab 可循环切换权限模式。
--dangerously-skip-permissions
跳过所有权限确认,优先级高于 --permission-mode。
# CI/CD 管道中
claude -p --dangerously-skip-permissions "Fix all lint errors"
# 限制工具范围降低风险
claude --dangerously-skip-permissions --tools "Bash,Read,Edit"仅限隔离的沙箱/容器环境使用。管理员可通过
disableBypassPermissionsMode: "disable"全局禁用。
工作隔离
-w, --worktree
在隔离的 git worktree 中工作,独立的工作目录和分支,不影响主分支。
claude -w feature-auth # 创建 .claude/worktrees/feature-auth/
claude -w # 自动生成名称(如 bright-running-fox)典型工作流:
# 终端 1:开发功能 A
claude -w feature-auth -n "auth refactor"
# 终端 2:修复 bug B(完全隔离)
claude -w bugfix-payment -n "payment fix"
# 随时恢复
claude -r "auth refactor"注意事项:
- 退出时无改动会自动清理,有改动会提示保留或删除
- 新 worktree 需要重新安装依赖(
npm install等) .claude/worktrees/应加入.gitignore- 手动清理:
git worktree list→git worktree remove <path>
--tmux
让 subagent 团队在独立的 tmux 窗口中运行,每个 agent 一个 pane。必须配合 --worktree 使用。
claude --worktree feature-auth --tmux # 文件系统隔离 + 显示隔离
claude --worktree feature-auth --tmux=classic # 强制传统 tmux(而非 iTerm2 原生 pane)仅在有多个 subagent(agent team)时才有意义,单 agent 会话无效果。
浏览器集成
--chrome
启用浏览器自动化,Claude 可操作 Chrome 页面(导航、点击、表单、控制台等)。
前置条件:
- Chrome 或 Edge + Claude in Chrome 扩展(v1.0.36+)
- Claude Code v2.0.73+
claude --chrome # 启用
claude --chrome -p "打开 localhost:3000 测试表单"
claude --no-chrome # 显式禁用注意事项:
- 继承浏览器已登录的 session,可测试需要认证的流程
- 遇到登录/CAPTCHA 页面会暂停让用户手动处理
- 连接断开时用
/chrome重连 - 启用后增加 context 消耗(加载浏览器工具)
- 不支持 Brave、Arc;WSL 下不支持
Agent 通信
--brief
启用 SendUserMessage 工具,让 agent 可以在长时间运行中主动向用户发送状态消息。
claude --brief -p "重构整个 auth 模块,每完成一个文件告诉我进度"适合长时间运行的自动化任务,需要中间进度汇报的场景。
常用组合速查
# 日常开发
claude -c --model opus
# 安全探索 + 深度分析
claude --permission-mode plan --model opus --effort high
# 快速脚本任务
claude -p --effort low --model haiku "提取所有 TODO 注释"
# 隔离特性开发 + 团队 agent
claude -w feature-x --tmux
# CI/CD 全自动
claude -p --dangerously-skip-permissions --max-turns 10 --max-budget-usd 5
# 恢复上次工作 + 提升模型
claude -c --model opus --effort high
# 浏览器测试本地应用
claude --chrome --permission-mode acceptEdits完整参数列表
完整参数可通过 claude --help 查看,其他值得了解的参数:
| 参数 | 用途 |
|---|---|
-p, --print | 非交互模式,适合脚本/管道 |
-r, --resume | 按 ID 或名称恢复会话(有交互选择器) |
-n, --name | 给会话命名,方便后续 resume |
--max-turns | 限制 agent 轮数(配合 -p) |
--max-budget-usd | 费用上限(配合 -p) |
--add-dir | 添加额外工作目录 |
--append-system-prompt | 追加系统提示(保留默认能力) |
--allowedTools | 细粒度工具权限白名单 |
--fallback-model | 主模型过载时自动降级 |
--output-format | 结构化输出(json / stream-json) |