Claude Code 命令速查表 - Anthropic AI 编码代理 CLI 全参数
Claude Code 面向需要在终端里让 AI 直接读代码、改文件并执行命令的开发者,以及希望把编码代理接入 CI 的自动化工程师,它的定位是官方原生的 Agent 型编码工具,与 ChatGPT 式纯问答不同。它能以 -p 打印模式 + --output-format json 无头驱动流水线,也能在交互式 REPL 里多轮迭代;本表帮你快速定位安装认证、会话续接、权限模式与 MCP 扩展的关键命令,读完即可上手实际项目。
典型使用场景
面向在终端里做结对编程、以及要把 Claude 接入流水线的开发者。核心是分清交互 REPL 与 -p 打印模式:前者是人机对话,后者是脚本/CI 的一等公民,务必搭配 --output-format json 才能被程序解析。本表覆盖的几类高频问题——怎么控制失控(--max-turns 与 --max-budget-usd 双保险)、怎么控制权限(--permission-mode plan 先规划后执行、--add-dir 授权额外目录)、怎么给足上下文(@file / @dir 引用而非粘贴内容)、以及 MCP 服务器的四种添加方式。会话级斜杠命令(/compact、/context、/rewind)和项目级命令(/init、/plan、/code-review --fix)也在内。
安装与认证 7
npm install -g @anthropic-ai/claude-codeclaude --versionnpm update -g @anthropic-ai/claude-codeclaude updateclaude auth loginclaude auth statusclaude auth logout启动与运行 6
claudeclaude "重构 user-auth 模块使用新的 session API"cat error.log | claude -p "解释这个错误并给出修复"claude -cclaude -r "abc123" "继续完成 PR"claude -c -p "检查类型错误"CLI 标志位 13
claude -p -m claude-sonnet-4 "写一个解析 CSV 的 Python 函数"claude -p --output-format json "列出本项目所有 TODO 注释"claude -p --max-turns 5 "重构 auth 模块"claude --max-budget-usd 2 "实现登录页"claude --add-dir ../frontend ../backendclaude --system-prompt "你是一名安全审计员"claude --append-system-prompt "使用 TypeScript 严格模式"claude --permission-mode planclaude --dangerously-skip-permissionsclaude -w feat/loginclaude --effort high "设计缓存层架构"claude --bg "跑测试套件"claude --verbose会话管理斜杠命令 7
/clear/compact/context/resume/branch/rewind/exit项目与开发斜杠命令 10
/init/memory/mcp/agents/permissions/hooks/plan/model/diff/code-review --fixMCP 服务器管理 7
claude mcp add --transport http <name> <url>claude mcp add <name> -- <args...>claude mcp add-json '<json>'claude mcp listclaude mcp get <name>claude mcp remove <name>claude mcp add-from-claude-desktop提示词内文件引用 3
Review @./src/components/Button.tsxCompare @src/old.js with @src/new.jsExplain the structure of @./src参数矩阵
| 参数 | 作用 | 示例 |
|---|---|---|
-p | 打印模式,不进交互,供脚本与 CI 使用 | claude -p "列出本项目所有 TODO 注释" |
--output-format json | 以 JSON 输出,便于程序解析 | claude -p --output-format json "列出 TODO" |
-m <model> | 指定模型 | claude -p -m claude-sonnet-4 "写一个解析 CSV 的函数" |
--max-turns <n> | 限制 Agent 轮次上限,防止失控操作 | claude -p --max-turns 5 "重构 auth 模块" |
--max-budget-usd <n> | 限制打印模式下的 API 花费上限 | claude --max-budget-usd 2 "实现登录页" |
--add-dir <dir> | 授权额外工作目录供访问 | claude --add-dir ../frontend ../backend |
--permission-mode plan | 只读规划模式,不改动文件 | claude --permission-mode plan |
--dangerously-skip-permissions | 跳过所有权限确认,仅限可信环境 | claude --dangerously-skip-permissions |
-c / -r <id> | 继续最近一次会话 / 恢复指定会话 | claude -r "abc123" "继续完成 PR" |
-w <branch> | 在独立 git worktree 中启动 | claude -w feat/login |
--system-prompt <s> | 替换整个系统提示词 | claude --system-prompt "你是一名安全审计员" |
--append-system-prompt <s> | 在默认系统提示词后追加指令 | claude --append-system-prompt "使用 TypeScript 严格模式" |
--effort <lvl> | 设置推理强度 low/medium/high/xhigh/max | claude --effort high "设计缓存层架构" |
--bg | 作为后台 Agent 启动并立即返回 | claude --bg "跑测试套件" |
--verbose | 显示逐轮工具执行详情 | claude --verbose |
mcp add --transport http | 添加 HTTP 传输的 MCP 服务器(推荐) | claude mcp add --transport http docs https://example.com/mcp |
mcp add <name> -- <args...> | 添加 stdio 类型 MCP 服务器 | claude mcp add fs -- npx -y @modelcontextprotocol/server-filesystem . |
mcp add-json <json> | 从 JSON 配置添加复杂 MCP 服务器 | claude mcp add-json '{"name":"x"}' |
@./path | 在提示词里引用文件或目录作为上下文 | Review @./src/components/Button.tsx |
易错点与避坑指南
现象CI 脚本里读不到结果,进程像是只打印了内容就退出
原因没有加 -p,命令进了交互式 REPL,在非 TTY 环境里拿不到稳定的输出通道。
处置一律用 claude -p,需要结构化结果时再加 --output-format json。
现象自动化任务把仓库改得面目全非,或者无限循环地改同一个文件
原因Agent 轮次与花费都没有上限,遇到难点时会持续尝试。
处置用 --max-turns 5 和 --max-budget-usd 2 双保险;大改动前先用 --permission-mode plan 只出方案。
现象模型说看不到相邻目录或上层目录里的文件
原因默认只在当前工作目录内授权,跨目录访问被拦下。
处置用 --add-dir ../frontend ../backend 显式授权需要访问的目录。
现象长会话后半程开始忽略早期约束,响应变慢
原因上下文窗口被历史对话占满,工具输出又特别占额度。
处置用 /context 查看占用情况,/compact 总结压缩;任务真正换了主题就直接 /clear。
现象提示词越写越长、文件内容粘贴进去后模型仍然答错
原因手抄的内容丢失了上下文,也难以维护;大段粘贴反而稀释了指令权重。
处置改用 @./src 这类文件引用让工具按需读取,既准确又便于在仓库里版本化。
现象命令改了文件但没有回到可回退的状态,改坏了难以撤销
原因没有检查点,缺少版本控制兜底。
处置用 /rewind 回滚到检查点,或在独立 worktree 中启动(-w feat/login),保证主分支干净。
现象MCP 服务器配了但工具不生效
原因stdio 类型把命令写在了 -- 之前,或 HTTP 类型缺少 --transport http 导致配置类型不匹配。
处置用 claude mcp list 与 claude mcp get <name> 核对,必要时用 claude mcp add-json 直接贴完整 JSON 配置。
排障路径
1确认安装与认证状态
claude --version && claude auth status版本和登录两项都正常才可能进入会话;未登录用 claude auth login 补上。
2用 JSON 输出验证非交互调用链路
claude -p --output-format json "列出本项目所有 TODO 注释"能拿到可解析的 JSON 说明 -p 模式与模型调用均正常,便于后续接脚本。
3管道喂入上下文并只取打印结果
cat error.log | claude -p "解释这个错误并给出修复"同时验证管道输入与打印模式,错误日志会作为上下文进入会话。
4用有限预算的低成本调用试探改动规模
claude --max-budget-usd 2 "实现登录页"超预算会自动中止并已花费的金额可查,适合在本地先做成本预估。
5检查 MCP 服务器注册情况
claude mcp list列出已配置服务器,某个名字缺失就说明添加命令没生效。
6在独立 worktree 里试运行改动
claude -w feat/login "实现登录页"改动隔离在单独工作树里,主分支不受影响,验证通过再合并。
命令示例
打印模式修复失败的测试
claude -p --output-format json "运行测试,根据失败信息定位根因并给出修复方案"
cat log.txt | claude -p "分析这个错误的根因并给出修复步骤"-p 只输出结果后退出,加 --output-format json 便于脚本直接解析,是自动化调用的事实标准。
输出
{"status":"root cause identified","cause":"user-auth 模块未处理空 token","fix":"在 session 校验前补充 null 检查"}恢复上次会话继续重构
claude -c
echo "错误日志" | claude -c -p "检查类型错误"用 -c(最近会话)或 -r <session-id>(指定会话)在终端重启后即可无痛续接。
输出
(进入 REPL,恢复上文中的上下文与已做改动,可继续对话或改文件)
大改动前用只读模式规划
claude --permission-mode plan "重构支付模块,先给出改动清单和风险点"plan 模式下模型只做读与分析,确认方案后再按默认权限执行,能显著降低返工。
输出
(仅输出规划报告,不修改任何文件)
接入 Postgres MCP 服务器
claude mcp add --transport http my-pg http://localhost:8080/mcp
claude mcp list接入后可在会话里让 Claude 直接查询数据库并基于结果写代码,省去手动复制查询结果。
输出
✔ Added MCP server "my-pg" (HTTP)
常见坑与注意事项
- --dangerously-skip-permissions 会跳过所有权限确认,模型可直接改文件与执行命令,务必仅在可信容器或一次性环境使用。
- --max-budget-usd 只对 -p 打印模式生效;交互式 REPL 的扣费上限需要另用预算机制控制,别指望它拦住长会话。
- 改动前后会展示 diff,但若你修改了 CLAUDE.md/AGENTS.md 或项目依赖,会改变模型后续行为,改动前先确认这些记忆文件。
- MCP stdio 服务器由 claude 子进程拉起,若其异常退出可能拖累 Agent,卡顿时用 /mcp 检查连接状态。
提示
- 脚本与 CI 中首选
claude -p --output-format json组合:打印模式 + JSON 输出是自动化调用的事实标准。 - 长任务或受限预算用
--max-turns和--max-budget-usd双保险,避免 Agent 失控刷爆 API 额度。 - 给 Claude 更多上下文用
@file/@dir直接引用,比把文件内容粘进提示词更准、更易维护。 - 大改动前先
/plan进入只读规划模式确认方案,再放权限执行,能显著降低返工率。
常见问题
Claude Code 的 -p(打印模式)和交互式 REPL 有什么区别?
交互式 REPL 适合探索性开发,可多轮对话并修改文件;-p 打印模式适合脚本和流水线,命令一次性执行后直接输出结果并退出,可配合 --output-format json 便于程序解析。
如何让 Claude Code 自动批准所有操作而不弹确认?
可使用 --dangerously-skip-permissions 跳过所有权限确认,或用 --permission-mode 设为 acceptEdits / bypassPermissions。仅限可信环境使用,因为跳过后 Agent 可直接改动文件与执行命令。
Claude Code 如何接入 MCP 服务器扩展能力?
通过 /mcp 斜杠命令交互式管理连接,或用 claude mcp add <name> <command> 添加外部 MCP 服务器(如数据库、文件系统、API)。接入后 Agent 可在会话中调用这些工具。
由 巧匠 维护
公开更新于 2026年8月5日,内容持续校对官方文档。