Claude Code 是 Anthropic 推出的命令行编码代理,能够读取你的代码库、编辑文件、运行命令,并在后台连接 LLM API。本指南涵盖设置、标志、斜杠命令、自定义命令以及将 API 调用路由到 Novita AI。要连接数据库、浏览器或代码运行器,请使用单独的 Claude MCP 配置指南 进行 CLI 和 JSON 设置。
什么是 Claude Code?
Claude Code 是一个代理式编码工具,提供 CLI、VS Code 扩展、JetBrains 插件、桌面应用和浏览器界面等多种形式。所有产品形态都共享相同的底层引擎:Claude Code 连接 LLM API 后端,读取你的项目,并执行多步骤任务,例如编写测试、跨文件重构、创建拉取请求和管理 git。
CLI 是最灵活的形式。它遵循 Unix 约定——你可以将日志通过管道输入,使用 -p 标志在 CI 中运行,或与其他工具串联。配置保存在文件(CLAUDE.md、.claude/settings.json、环境变量)中,因此在自动化环境中行为可预测。
在底层,Claude Code 将每个请求发送到 Anthropic 兼容的 API 端点。默认端点是 api.anthropic.com,但你可以通过单个环境变量将其重定向到任何 Anthropic 兼容的提供商——包括 Novita AI。
Claude Code 设置
安装
macOS、Linux 和 WSL 上的推荐方法是使用原生安装器:
curl -fsSL https://claude.ai/install.sh | bash
在 Windows PowerShell 上:
irm https://claude.ai/install.ps1 | iex
原生安装会在后台自动更新。
如果你更喜欢 npm,需要 Node.js 18 或更高版本:
node --version # must be 18 or higher
npm install -g @anthropic-ai/claude-code
Homebrew(macOS)跟踪稳定发布通道:
brew install --cask claude-code
Homebrew 不会自动更新。当你想要最新版本时,运行 brew upgrade claude-code。
首次运行
导航到项目目录并启动交互式会话:
cd your-project
claude
首次使用时,Claude Code 会提示你登录。认证后,它会读取你的项目并等待指令。
项目设置
在任何新仓库中运行 /init 来生成一个初始的 CLAUDE.md 文件。Claude Code 会在每个会话开始时读取 CLAUDE.md,因此它是放置编码规范、首选库、架构说明和审查清单的合适位置。
/init
在 /init 之后,使用 /memory 编辑文件或启用自动记忆功能,该功能会保存 Claude 在不同会话中对你的项目所做的观察。
CLI 命令参考
Claude Code 的顶级 shell 命令用于启动会话、管理身份验证和处理后台工作。以下是最有用的部分命令:
| 命令 | 描述 |
|---|---|
claude |
在当前目录启动交互式会话 |
claude "query" |
使用初始提示启动会话 |
claude -p "query" |
运行查询并退出(非交互式/SDK 模式) |
cat file | claude -p "query" |
将内容通过管道输入到查询中 |
claude -c |
继续当前目录中的最近会话 |
claude -r "name" "query" |
按名称或 ID 恢复会话 |
claude update |
更新到最新版本 |
claude install stable |
安装或重新安装特定版本 |
claude auth login |
登录你的 Anthropic 账户 |
claude auth login --console |
使用 API 密钥计费登录,而非订阅 |
claude auth status |
显示身份验证状态 |
claude agents --json |
打开代理视图,以 JSON 格式打印活动会话 |
claude mcp |
配置 MCP 服务器 |
claude daemon status |
检查后台会话管理器的状态 |
如果你输错子命令,Claude Code 会建议最接近的匹配:claude udpate 会输出 Did you mean claude update?。
CLI 标志参考
标志用于修改 Claude Code 在会话中的行为。在任意调用中,将标志放在 claude 之后。以下是最常用的标志:
| 标志 | 作用 |
|---|---|
-p, --print |
非交互模式;打印响应并退出 |
-c, --continue |
加载最近的对话 |
-r, --resume |
按 ID 或名称恢复会话 |
--model |
设置本次会话的模型(sonnet、opus、haiku 或完整模型 ID) |
--permission-mode |
以权限模式启动:default、plan、auto、acceptEdits、bypassPermissions |
--add-dir |
授予对额外目录的文件访问权限 |
--system-prompt |
完全替换系统提示 |
--append-system-prompt |
追加到默认系统提示 |
--max-turns |
限制 -p 模式下的代理轮次 |
--max-budget-usd |
限制 -p 模式下的 API 花费 |
--output-format |
-p 模式的输出格式:text、json、stream-json |
--bg |
作为后台代理启动,立即返回 |
--worktree, -w |
在隔离的 git 工作树中启动 |
--bare |
跳过钩子、技能、插件、MCP 的自动发现,以加快脚本调用速度 |
--verbose |
显示完整的逐轮输出 |
--mcp-config |
从 JSON 文件加载 MCP 服务器 |
--effort |
设置推理努力等级:low、medium、high、xhigh、max |
--print 与 --output-format json 的组合是脚本化的标准模式。对于有预算限制的 CI 管道,可结合使用 --max-budget-usd 和 --max-turns。
斜杠命令文档
斜杠命令在活动会话内运行。输入 / 可查看所有可用命令,或输入 / 后跟字母进行筛选。命令仅在消息开头有效。
会话与上下文管理
| 命令 | 目的 |
|---|---|
/clear |
开始新对话;之前的会话保留在 /resume 中 |
/compact |
总结对话以释放上下文窗口空间 |
/context |
可视化上下文使用情况并查看优化建议 |
/resume |
按名称或从选择器重新打开之前的会话 |
/branch |
分叉对话以尝试不同方向 |
/rewind |
将代码和对话回滚到检查点 |
项目设置
| 命令 | 目的 |
|---|---|
/init |
为项目生成初始的 CLAUDE.md 文件 |
/memory |
编辑 CLAUDE.md 文件并管理自动记忆 |
/mcp |
交互式管理 MCP 服务器连接 |
/agents |
配置子代理设置 |
/permissions |
设置工具的允许、询问和拒绝规则 |
/hooks |
查看钩子配置 |
开发工作流
| 命令 | 目的 |
|---|---|
/plan |
在进行重大更改前进入计划模式 |
/model |
切换活动模型 |
/effort |
调整推理努力等级 |
/diff |
打开交互式差异查看器 |
/code-review [--fix] |
审查当前差异;--fix 应用发现项 |
/security-review |
对待定更改进行深度安全审查 |
/batch <instruction> |
分解大型更改并在并行工作树中运行 |
/background |
分离会话以作为后台代理运行 |
实用工具
| 命令 | 目的 |
|---|---|
/help |
显示可用命令 |
/doctor |
诊断安装和设置问题 |
/usage |
显示会话成本和计划使用情况 |
/export |
以纯文本格式导出对话 |
/config |
打开设置或直接设置值:/config thinking=false |
/skills |
列出可用技能 |
自定义斜杠命令
自定义斜杠命令——现在称为技能——让你能够打包团队可共享的可重复流程。
如何创建自定义命令
在 .claude/skills/(项目级别)或 ~/.claude/skills/(个人级别,所有项目可用)下创建一个目录:
mkdir -p .claude/skills/review-pr
在该目录中创建一个 SKILL.md 文件:
---
description: Review an open GitHub PR for security issues and test coverage gaps. Use when the user asks to review a PR or check pull request quality.
---
## Instructions
Review the pull request with these priorities:
1. Identify any security vulnerabilities: injection risks, auth gaps, data exposure.
2. Check test coverage for new code paths.
3. Flag any missing error handling at system boundaries.
Summarize findings in three sections: Security, Coverage, Other. Use ✓ for passing checks and ⚠ for issues.
这将创建一个你可直接调用的 /review-pr 命令:
/review-pr
当你提出与描述匹配的问题时,Claude 也会自动加载该技能。
技能位置与优先级
技能遵循优先级顺序:企业级覆盖个人级,个人级覆盖项目级。项目技能位于 .claude/skills/。个人技能(在你的所有项目中可用)位于 ~/.claude/skills/。
~/.claude/skills/ → personal, all projects
.claude/skills/ → this project only
.claude/commands/ 中的自定义命令仍然有效。.claude/commands/deploy.md 文件和 .claude/skills/deploy/SKILL.md 技能都会创建 /deploy 命令,并且行为相同。
动态上下文注入
技能可以在 Claude 看到提示之前注入实时数据。! 前缀会运行一个 shell 命令并内联其输出:
---
description: Summarize uncommitted changes and flag risks.
---
## Current diff
!`git diff HEAD`
## Instructions
Summarize the changes in bullet points. Flag any risks: missing error handling, hardcoded values, untested paths.
当你运行此技能时,Claude Code 会执行 git diff HEAD 并用实际的差异输出替换该行。Claude 看到的是真实的工作树状态,而不必通过工具调用来请求。
使用 Novita AI 作为 LLM 后端
Claude Code 通过 ANTHROPIC_BASE_URL 环境变量路由所有 API 流量。将其设置为 Novita AI 的 Anthropic 兼容端点,即可访问多种模型——包括 DeepSeek、Kimi、Qwen 和 GLM 变体——且每 token 成本远低于默认的 Anthropic 端点。
获取你的 Novita AI API 密钥
注册 Novita AI 账户 以获得免费试用积分。导航到 密钥管理页面,点击 创建新密钥,并立即复制密钥。
设置环境变量
在 Mac 和 Linux 上:
export ANTHROPIC_BASE_URL="https://api.novita.ai/anthropic"
export ANTHROPIC_AUTH_TOKEN="<Your Novita API Key>"
export ANTHROPIC_MODEL="deepseek/deepseek-v4-flash"
export ANTHROPIC_SMALL_FAST_MODEL="deepseek/deepseek-v4-flash"
在 Windows(命令提示符)上:
set ANTHROPIC_BASE_URL=https://api.novita.ai/anthropic
set ANTHROPIC_AUTH_TOKEN=<Your Novita API Key>
set ANTHROPIC_MODEL=deepseek/deepseek-v4-flash
set ANTHROPIC_SMALL_FAST_MODEL=deepseek/deepseek-v4-flash
要在 Mac/Linux 上持久化,请将 export 行添加到 ~/.bashrc 或 ~/.zshrc。
ANTHROPIC_SMALL_FAST_MODEL 控制 Claude Code 用于快速内部任务(如文件查找和快速摘要)的轻量级模型。将其设置为相同的模型 ID 可将所有流量保持在一个计费账户上。
启动 Claude Code
设置好环境变量后,正常启动 Claude Code:
cd your-project
claude
Claude Code 使用你指定的模型连接到 Novita AI 的端点。交互式会话的工作方式相同——无论使用哪个后端,所有 CLI 标志、斜杠命令和自定义技能的行为都相同。
对于脚本化和 CI,同样适用:
cat logs.txt | claude -p "find any error patterns" --output-format json
Novita AI 的 LLM API 支持完整的 Anthropic 消息格式,包括工具使用、结构化输出和流式传输,因此每个 Claude Code 功能无需修改即可工作。
用于隔离执行的代理沙箱
如果你正在 Claude Code 之上构建自动化管道,Novita AI 的 Agent Sandbox 提供了隔离的、基于 Firecracker 的执行环境,用于以编程方式运行代理。这对于 CI 工作流、后台代理以及任何需要执行隔离(而非直接在你的开发机器上运行)的多代理设置非常相关。
Claude Code 作为 IDE 工具
Claude Code 直接与编辑器集成,这就是人们说“claude code is an ide”时的意思——它不是一个独立的 IDE,而是一个嵌入到现有环境中的编码代理。
VS Code 和 Cursor
从 VS Code 扩展市场(搜索“Claude Code”)或 Cursor 市场 安装 Claude Code 扩展。安装后,打开命令面板(Cmd+Shift+P / Ctrl+Shift+P),输入“Claude Code”,然后选择 在新标签页中打开。
VS Code 集成新增了内联差异审查、@-文件提及、编辑前的计划审查以及对话历史,直接显示在编辑器面板中。你还可以在集成终端中与扩展一起使用 Claude Code。
JetBrains
从 JetBrains 市场安装 Claude Code 插件 并重启你的 IDE。该插件需要单独安装 CLI。它在 IntelliJ IDEA、PyCharm、WebStorm 及其他 JetBrains IDE 中提供交互式差异查看和选择上下文共享。
桌面应用和网页
Claude Code 桌面应用(macOS 和 Windows)让你可以直观地审查差异、并排运行多个会话以及安排定期任务。位于 claude.ai/code 的网页界面在浏览器中运行会话,无需本地设置,适用于你没有本地副本的仓库,或者启动可以远程监控的长时间运行任务。
常见问题
ANTHROPIC_BASE_URL 是什么,为什么它很重要?
ANTHROPIC_BASE_URL 告诉 Claude Code 将请求发送到哪个 API 端点。默认是 api.anthropic.com。将其设置为 https://api.novita.ai/anthropic 会将所有流量路由到 Novita AI 的 Anthropic 兼容端点,在那里你可以使用不同价格点的替代模型。无需更改代码或插件——只需环境变量。
CLI 标志和斜杠命令有什么区别?
CLI 标志(如 --model、--permission-mode、--max-turns)是在你从 shell 启动 claude 二进制程序时设置的。它们在会话开始前配置会话。斜杠命令(如 /model、/plan、/compact)在活动会话内运行,并在对话中间改变行为。
我可以在没有 Claude 订阅的情况下使用 Claude Code 吗?
可以。claude auth login --console 使用 Anthropoc Console API 密钥计费登录,采用按 token 付费的定价模式,而非订阅。如果你通过 ANTHROPIC_BASE_URL 路由到 Novita AI,则只需 Novita AI 账户——你的 Anthropic 账户不会被收费。
自定义斜杠命令与 CLAUDE.md 有何不同?
CLAUDE.md 内容在每个会话开始时加载,并始终保持在上下文中。技能(自定义命令)仅在调用时加载,因此长参考材料在你真正需要之前不会增加 token 成本。使用 CLAUDE.md 存放 Claude 应始终了解的项目事实——编码规范、构建命令、架构说明。使用技能存放你按需运行的程序——PR 审查清单、部署步骤、测试生成工作流。
Claude Code 可以在 CI 中工作吗?
可以。使用 claude -p "query" --output-format json 进入非交互式模式并获得结构化输出。添加 --max-budget-usd 限制花费,--max-turns 限制执行时间。--bare 标志跳过钩子、技能和插件的自动发现,以加快脚本化上下文中的启动速度。Claude Code 还通过官方工作流模板与 GitHub Actions 和 GitLab CI/CD 集成。
Novita AI 是一个 AI 云平台,为开发者提供使用简单 API 部署 AI 模型的便捷方式,同时提供经济实惠且可靠的 GPU 云,用于构建和扩展。
