Appearance
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 | 输出格式:text、json、stream-json | --output-format json |
--input-format | 输入格式:text、stream-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-authMCP 配置
| 标志 | 说明 |
|---|---|
--mcp-config | 从 JSON 文件或字符串加载 MCP 服务器 |
--strict-mcp-config | 只使用 --mcp-config 指定的服务器,忽略其他所有配置 |
其他标志
| 标志 | 说明 |
|---|---|
--max-turns | 限制代理回合数(仅 print 模式),超出时报错退出 |
--max-budget-usd | API 调用最大消费(仅 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 | 提交反馈 |