Skip to content

CLI 命令参考

Claude Code 命令行界面的完整参考。

基本命令

命令说明示例
claude启动交互式会话claude
claude "提示词"带初始提示启动claude "解释这个项目"
claude -p "提示词"非交互模式:输出后退出claude -p "解释这个函数"
cat 文件 | claude -p "提示词"处理管道输入cat logs.txt | claude -p "解释"
claude -c继续最近的对话claude -c
claude -c -p "提示词"继续对话(非交互)claude -c -p "检查类型错误"
claude -r "<会话>" "提示词"通过 ID 或名称恢复会话claude -r "auth-refactor" "完成这个 PR"
claude update更新到最新版本claude update
claude doctor全面诊断(配置、MCP、插件等)claude doctor

认证命令

命令说明
claude auth login登录账号。--email 预填邮箱,--sso 强制 SSO,--console 使用 API 计费
claude auth logout退出登录
claude auth status以 JSON 显示认证状态(--text 可读文本)。已登录退出码 0,未登录退出码 1

MCP 命令

bash
claude mcp add --transport http <> <URL>    # 添加 HTTP MCP 服务器
claude mcp add --transport stdio <> -- <>  # 添加本地 stdio 服务器
claude mcp list                                  # 列出所有服务器
claude mcp get <>                            # 查看特定服务器详情
claude mcp remove <>                         # 删除服务器
claude mcp serve                                 # 将 Claude Code 作为 MCP 服务器运行
claude mcp add-from-claude-desktop               # 从 Claude Desktop 导入服务器

详见 MCP 文档

子代理命令

bash
claude agents    # 列出所有已配置的子代理(按来源分组)

远程控制

bash
claude remote-control --name "我的项目"    # 启动远程控制服务器

常用启动标志

会话管理

标志说明
--continue, -c加载当前目录最近的对话
--resume, -r通过 ID 或名称恢复特定会话(或显示选择器)
--name, -n设置会话显示名称(显示在 /resume 和终端标题中)
--from-pr恢复与指定 GitHub PR 关联的会话(接受 PR 编号或 URL)
--fork-session恢复时创建新会话 ID(与 --resume--continue 配合)
--session-id使用指定的 UUID 作为会话 ID
--no-session-persistence禁用会话持久化(仅 print 模式)

输出控制

标志说明示例
--print, -p非交互模式,打印后退出claude -p "提示词"
--output-format输出格式:textjsonstream-json--output-format json
--input-format输入格式:textstream-json--input-format stream-json
--include-partial-messages包含部分流式事件(需 -p--output-format=stream-json
--verbose启用详细日志
--json-schema获取符合 JSON Schema 的输出(仅 print 模式)

输出格式说明:

bash
# 纯文本(默认)
claude -p "总结这段代码" --output-format text

# JSON 格式(含元数据和费用信息)
claude -p "分析代码 bug" --output-format json

# 流式 JSON(实时处理,每条消息一行)
claude -p "解析日志错误" --output-format stream-json

权限控制

标志说明
--permission-mode以指定权限模式启动:default/acceptEdits/plan/bypassPermissions
--dangerously-skip-permissions跳过所有权限提示(高危)
--allow-dangerously-skip-permissions允许使用权限绕过选项但不立即激活
--allowedTools无需确认直接使用的工具(支持模式匹配)
--disallowedTools从上下文中移除、禁止使用的工具
bash
# 计划模式(只读)
claude --permission-mode plan

# 预设允许的工具
claude --allowedTools "Bash(git log *)" "Bash(git diff *)" "Read"

# 禁止特定工具
claude --disallowedTools "WebFetch" "Bash(rm *)"

系统提示

四个标志在交互式和非交互模式下均有效:

标志行为
--system-prompt替换整个默认系统提示
--system-prompt-file用文件内容替换默认系统提示
--append-system-prompt追加到默认提示末尾
--append-system-prompt-file将文件内容追加到默认提示末尾

--system-prompt--system-prompt-file 不能同时使用。大多数场景建议用追加标志,保留 Claude Code 内置能力。

bash
# 追加规则(推荐)
claude --append-system-prompt "始终使用 TypeScript"

# 从文件追加
claude --append-system-prompt-file ./extra-rules.txt

# 完全替换(谨慎)
claude --system-prompt "你是一个 Python 专家"

模型和代理

标志说明示例
--model使用别名或完整模型名--model claude-sonnet-4-6
--effort思考深度:low/medium/high/max(仅 Opus 4.6)--effort high
--agent以指定子代理运行当前会话--agent code-reviewer
--agents通过 JSON 动态定义自定义子代理见下方示例
--fallback-model主模型过载时自动回退(仅 print 模式)--fallback-model sonnet
bash
# 动态定义子代理
claude --agents '{
  "reviewer": {
    "description": "代码审查专家",
    "prompt": "你是一个专注代码质量和安全的代码审查员",
    "tools": ["Read", "Grep", "Glob"],
    "model": "sonnet"
  }
}'

目录和工作区

标志说明
--add-dir添加额外的工作目录(验证路径存在)
--worktree, -w在隔离的 git worktree 中启动
bash
# 添加额外目录
claude --add-dir ../apps ../lib

# 在 worktree 中工作
claude -w feature-auth

MCP 配置

标志说明
--mcp-config从 JSON 文件或字符串加载 MCP 服务器
--strict-mcp-config只使用 --mcp-config 指定的服务器,忽略其他所有配置

其他标志

标志说明
--max-turns限制代理回合数(仅 print 模式),超出时报错退出
--max-budget-usdAPI 调用最大消费(仅 print 模式)
--bare最小模式:跳过 hooks、skills、plugins、MCP、CLAUDE.md(加速脚本调用)
--debug调试模式,可过滤类别(如 "api,hooks""!statsig")
--init运行初始化 hooks 并启动交互模式
--init-only只运行初始化 hooks 后退出
--disable-slash-commands本次会话禁用所有 skills 和命令
--ide启动时自动连接 IDE(仅有一个可用 IDE 时)
--chrome启用 Chrome 浏览器集成
--no-chrome禁用 Chrome 浏览器集成
--betas包含 Beta API 头(仅 API key 用户)
--settings加载额外设置的 JSON 文件路径或字符串
--setting-sources逗号分隔的设置来源列表
--tools限制可用内置工具("" 禁用全部,"default" 启用全部)
--remote在 claude.ai 创建新 Web 会话
--remote-control, --rc启动并启用远程控制
--teleport在本地终端恢复 Web 会话
--teammate-mode队友显示方式:auto/in-process/tmux
--version, -v输出版本号

实用技巧

非交互式脚本用法

bash
# 管道输入
cat build-error.txt | claude -p "简要解释这个构建错误的根本原因"

# 作为 lint 工具
claude -p '你是代码检查器。检查 main 的改动,报告拼写错误。格式:第一行文件名和行号,第二行问题。'

# JSON 输出供脚本解析
claude -p "列出所有 API 端点" --output-format json > endpoints.json

# 流式 JSON 实时处理
claude -p "分析日志文件" --output-format stream-json | jq '.content'

最大化安全的脚本用法

bash
# 限制工具 + 计划模式 + 最大回合数
claude -p "分析认证系统" \
  --permission-mode plan \
  --max-turns 5 \
  --tools "Read,Glob,Grep"

CI/CD 集成

bash
# package.json 中的脚本
{
  "scripts": {
    "lint:claude": "claude -p '检查 main 的改动,报告问题' --output-format text"
  }
}

斜杠命令(交互式)

在 Claude Code 交互界面中可用的命令:

命令说明
/help显示帮助信息
/clear清除对话历史,重置上下文
/compact [重点]压缩对话历史(可指定保留重点)
/permissions查看和管理工具权限
/config打开设置界面
/model切换模型
/effort调整思考深度
/hooks查看已注册的 Hooks
/mcp管理 MCP 服务器
/agents管理子代理
/plugin管理插件
/resume选择并恢复历史会话
/rename重命名当前会话
/rewind打开回退菜单(回到历史状态)
/add-dir添加额外工作目录
/init生成 CLAUDE.md 初始文件
/status显示当前设置来源和状态
/vim切换 Vim 键绑定模式
/voice切换语音输入
/loop在会话中设置周期性任务
/fast切换 Fast 模式
/btw快速提问(答案不记入对话历史)
/feedback提交反馈

相关资源

  • 设置:配置文件和所有设置项
  • 权限:工具权限规则语法
  • MCP:MCP 服务器管理
  • 子代理:自定义子代理配置