Claude Code 是 Anthropic 推出的命令列程式碼代理工具,能讀取你的程式碼庫、編輯檔案、執行命令,並在後端連接 LLM API。本指南涵蓋完整的 CLI 文件:如何設定、有哪些旗標與斜線指令可用、如何編寫自訂斜線指令,以及如何將其 API 呼叫導向 Novita AI 而非預設的 Anthropic 端點。
什麼是 Claude Code?
Claude Code 是一款代理式程式碼工具,可作為 CLI、VS Code 擴充功能、JetBrains 外掛、桌面應用程式及瀏覽器介面使用。所有介面共享相同的底層引擎:Claude Code 連接 LLM API 後端,讀取你的專案,並執行多步驟任務,例如撰寫測試、跨檔案重構、建立 pull request 以及管理 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 # 必須為 18 或更高
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 worktree 中啟動 |
--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> |
將大型變更分解並在平行 worktree 中執行 |
/background |
將工作階段分離以作為背景代理執行 |
工具
| 指令 | 用途 |
|---|---|
/help |
顯示可用指令 |
/doctor |
診斷安裝和設定問題 |
/usage |
顯示工作階段成本與方案使用量 |
/export |
將對話匯出為純文字 |
/config |
開啟設定或直接設定值:/config thinking=false |
/skills |
列出可用技能 |
自訂斜線指令
自訂斜線指令(現在稱為技能)讓你包裝團隊可以共享的可重複程序。
如何建立自訂指令
在 .claude/skills/(專案層級)或 ~/.claude/skills/(個人層級,可跨所有專案使用)下建立一個目錄:
mkdir -p .claude/skills/review-pr
在該目錄中建立一個 SKILL.md 檔案:
---
description: 審查 GitHub 上的開放 Pull Request,找出安全問題與測試覆蓋缺口。當使用者要求檢視 PR 或檢查 Pull Request 品質時使用。
---
## 指示
依以下優先順序審查 Pull Request:
1. 找出任何安全漏洞:注入風險、驗證缺口、資料暴露。
2. 檢查新程式碼路徑的測試覆蓋率。
3. 標記系統邊界上任何遺漏的錯誤處理。
將發現結果總結為三個部分:安全性、覆蓋率、其他。通過的檢查使用 ✓,問題使用 ⚠。
這會建立一個 /review-pr 指令,你可以直接呼叫:
/review-pr
當你提出與描述相符的要求時,Claude 也會自動載入該技能。
技能位置與優先順序
技能遵循優先順序:企業覆蓋個人,個人覆蓋專案。專案技能位於 .claude/skills/。個人技能(可在所有專案中使用)位於 ~/.claude/skills/。
~/.claude/skills/ → 個人,所有專案
.claude/skills/ → 僅此專案
.claude/commands/ 中的自訂指令仍可運作。 .claude/commands/deploy.md 檔案與 .claude/skills/deploy/SKILL.md 技能都會建立 /deploy,且行為相同。
動態上下文注入
技能可以在 Claude 看到提示之前注入即時資料。! 前綴會執行 shell 命令並將其輸出內嵌:
---
description: 總結未提交的變更並標記風險。
---
## 目前差異
!`git diff HEAD`
## 指示
以要點形式總結變更。標記任何風險:遺漏的錯誤處理、硬編碼值、未測試的路徑。
當你執行此技能時,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 是一種 IDE」的意思——它不是一個獨立的 IDE,而是一個嵌入到你現有環境中的程式碼代理。
VS Code 與 Cursor
從 VS Code Marketplace(搜尋「Claude Code」)或 Cursor marketplace 安裝 Claude Code 擴充功能。安裝後,開啟命令面板(Cmd+Shift+P / Ctrl+Shift+P),輸入「Claude Code」,然後選擇 在新標籤頁中開啟。
VS Code 整合提供了內嵌差異審查、@-檔案提及、編輯前的計劃審查以及直接在編輯器面板中的對話歷史記錄。你也可以在整合終端機中與擴充功能一起使用 Claude Code。
JetBrains
從 JetBrains Marketplace 安裝 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 會讓你使用 Anthropic 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 雲端,用於建置和擴展。
