claude 命令行工具的完整参考,包括子命令和启动 flags。是 Claude Code 的入口点,支持交互模式、非交互(SDK)模式、后台 Agent 管理等。

核心机制

两种运行模式:

  • 交互模式(默认):持续对话,支持所有 slash commands
  • 非交互模式(-p/--print):执行单次查询后退出,用于 CI/脚本/管道

会话持久化:每个会话绑定工作目录,可通过 -c(继续最近会话)或 -r <name>(按名称恢复)跨次访问。

常用子命令

命令说明
claude启动交互会话
claude -p "query"非交互模式,执行后退出
claude -c继续当前目录最近的会话
claude -r "<session>"按 ID 或名称恢复会话
claude update更新到最新版本
claude install [version]安装指定版本(stable/latest/2.1.x)
claude auth login登录 Anthropic 账号
claude auth status查看认证状态(JSON 格式)
claude agents打开 Agent 视图,监控后台会话
claude attach <id>附加到后台会话
claude project purge [path]删除项目的所有本地状态
claude setup-token生成长期 OAuth token(CI 用)
claude ultrareview [target]非交互式运行 ultrareview

关键 CLI Flags

模式控制:

  • --print/-p:非交互模式
  • --permission-mode:指定权限模式(default/acceptEdits/plan/auto/bypassPermissions)
  • --bare:最小化模式,跳过 hooks/skills/plugins/MCP/CLAUDE.md 自动发现
  • --dangerously-skip-permissions:跳过所有权限提示

会话管理:

  • --continue/-c:继续最近会话
  • --resume/-r:按 ID 或名称恢复
  • --name/-n:设置会话显示名称
  • --bg:以后台 Agent 启动,立即返回
  • --worktree/-w:在隔离的 git worktree 中启动

模型与推理:

  • --model:指定模型(支持别名 sonnet/opus)
  • --effort:设置推理深度(low/medium/high/xhigh/max)

系统提示词:

  • --system-prompt:替换整个系统提示词
  • --append-system-prompt:追加到默认提示词
  • --system-prompt-file / --append-system-prompt-file:从文件加载

输出格式(非交互模式):

  • --output-format:text/json/stream-json
  • --max-turns:限制 agentic turns 数量
  • --max-budget-usd:限制 API 调用费用上限

系统提示词 flags 选择原则

  • 用 --append-*:Claude 仍是编码助手,只是追加额外规则(保留默认工具指导和安全指令)
  • 用 --system-prompt/--system-prompt-file:完全替换,适合非编码 Agent 或无人监督的管道

与其他概念的关联

  • commands — 会话内的 slash commands(与 CLI flags 不同)
  • env-vars — 环境变量配置,与 flags 互补
  • interactive-mode — 交互模式的快捷键和功能
  • tools-reference — --allowedTools/--disallowedTools 控制工具访问

实践要点

  • --bare 适合 CI 场景,确保跨机器行为一致,不受本地配置影响
  • --exclude-dynamic-system-prompt-sections 将机器相关内容移到首条用户消息,提升多用户场景的 prompt cache 命中率
  • claude project purge --dry-run 先预览再执行,避免误删
  • claude setup-token 生成的 token 打印到终端但不保存,适合 CI 环境