DeepSeek接入Claude Code:完整設定教學
還是那個終端機,還是那些快捷鍵、斜線指令、你已經習慣成自然的工作流。駕駛艙裡什麼都沒變——但掀開引擎蓋,底下的引擎換了。回答你的模型現在是 DeepSeek V4,跑在你自己的 API 餘額上。
這就是 DeepSeek接入Claude Code 的全部賣點,而且動靜比想像中小得多:不需要代理層,不需要改造用戶端,不需要包裝腳本。DeepSeek 官方開放了一個講 Claude 原生協定的端點,你只要用幾個環境變數把 Claude Code 的請求改道過去,所有使用習慣原樣保留。這篇教學走完整條路——安裝、設定、驗證、除錯——官方配方放前面,社群實測的真相放後面。這套搭配我自己從春天用到現在,下面的筆記就是我第一天時希望有人遞給我的東西。
DeepSeek Claude Code 連線是怎麼運作的
想像一個電源轉接頭:電器不用改,插座不用改,轉接頭負責在中間翻譯。DeepSeek 在 https://api.deepseek.com/anthropic 跑著一個 Anthropic 相容 API,專門為了讓 Claude 生態裡的工具即插即用。Claude Code 只認一個變數——ANTHROPIC_BASE_URL——一旦指向 DeepSeek,所有請求就此改道。
兩個細節讓這套接入比看上去更穩。
其一,Claude Code 在設定了自訂 base URL 時不校驗模型名。模型字串原樣透傳給供應商,所以你可以在官方預期填 Claude 名字的槽位裡寫 deepseek-v4-pro[1m]——用戶端不管,轉發就是。
其二,DeepSeek 服務端會兜底接住漏網之魚。claude-opus 開頭的名字映射到 deepseek-v4-pro,claude-sonnet、claude-haiku 開頭的映射到 deepseek-v4-flash;完全不認得的名字不報錯,直接落到 v4-flash。所以哪怕設定只做了一半,多半也能跑——只是悄悄地全線用了輕量模型。
同樣重要的是「什麼沒變」。你的 CLAUDE.md 專案指令、斜線指令、權限規則、MCP 伺服器、掛鉤、子代理定義——這些全在用戶端本地,換後端一根毫毛都動不了。服務端看到的只是模型請求、回傳的只是模型回應。有人反映某模型「不理 CLAUDE.md」,那是模型聽不聽話的問題,不是檔案沒載入——指令每次請求都隨行。
開始之前:API Key 與前置條件
備齊三樣東西:
- DeepSeek API Key。 在 DeepSeek 開放平台建立,
sk-開頭。計費按 token 用量走,先儲值幾美元額度再開第一次工作階段——餘額見底請求會直接失敗。 - Node.js 18 或更新(走 npm 安裝的話)。Windows 使用者還要裝 Git for Windows,它提供 Claude Code 依賴的 bash 環境。
- 想好 Key 放哪。 這個 Key 有帳戶級消費權限,別提交進 git 儲存庫——放進
.gitignore的 env 檔案或系統的金鑰管理工具才是正路。
第 1 步 — 安裝 Claude Code
兩條官方安裝路徑,任選其一:
# 原生安裝器(Anthropic 目前推薦,macOS/Linux/WSL)
curl -fsSL https://claude.ai/install.sh | bash
# npm 套件(DeepSeek 文件給出的路徑,需 Node.js 18+)
npm install -g @anthropic-ai/claude-code用 claude --version 驗證——能打出版本號,表示二進位檔已經在 PATH 上。
先埋一句忠告:只保留一種安裝。如果原生二進位檔和一個舊 npm 副本同時存在,shell 可能解析到過期的那個,之後你會追著幽靈 bug 打轉。npm 在你的網路太慢的話,裝的時候臨時切鏡像源、裝完切回來,是社群裡走熟了的路子。
第 2 步 — 把 Claude Code 指向 DeepSeek
DeepSeek接入Claude Code 的核心就在這一步,做法有三種。終點相同,差別在改動能活多久、誰能讀到它。
方法一:環境變數
官方接入文件給出九個變數的配方。Linux 和 macOS:
export ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic
export ANTHROPIC_AUTH_TOKEN=<你的 DeepSeek API Key>
export ANTHROPIC_MODEL=deepseek-v4-pro[1m]
export ANTHROPIC_DEFAULT_OPUS_MODEL=deepseek-v4-pro[1m]
export ANTHROPIC_DEFAULT_SONNET_MODEL=deepseek-v4-pro[1m]
export ANTHROPIC_DEFAULT_HAIKU_MODEL=deepseek-v4-flash
export CLAUDE_CODE_SUBAGENT_MODEL=deepseek-v4-flash
export CLAUDE_CODE_EFFORT_LEVEL=max
export CLAUDE_CODE_AUTO_COMPACT_WINDOW=786432Windows PowerShell 使用者用 $env: 賦值同一組變數——例如 $env:ANTHROPIC_BASE_URL="https://api.deepseek.com/anthropic"——在即將啟動工具的那個視窗裡執行。
每行到底在做什麼:
| 變數 | 作用 |
|---|---|
ANTHROPIC_BASE_URL | 改道開關。所有請求發往 DeepSeek 相容端點 |
ANTHROPIC_AUTH_TOKEN | 你的 sk- Key,作認證權杖 |
ANTHROPIC_MODEL | 主對話用的模型 |
ANTHROPIC_DEFAULT_OPUS_MODEL | 「opus」檔位解析到誰 |
ANTHROPIC_DEFAULT_SONNET_MODEL | 「sonnet」檔位解析到誰 |
ANTHROPIC_DEFAULT_HAIKU_MODEL | 輕量「haiku」檔位解析到誰 |
CLAUDE_CODE_SUBAGENT_MODEL | 背景子代理用的模型 |
CLAUDE_CODE_EFFORT_LEVEL | 思考強度,官方配方釘死 max |
CLAUDE_CODE_AUTO_COMPACT_WINDOW | 自動壓縮閾值(token 數,786432 ≈ 768K) |
export 只活一個終端機工作階段。日常使用就附加到 ~/.bashrc 或 ~/.zshrc(或 PowerShell profile)再 source 一次——經典的「怎麼設定又忘了」問題,本質就是工作階段作用域在正常運作——我第一週問了兩次,習慣才養成。
方法二:settings.json 設定檔
DeepSeek 自家的整合倉庫更推薦設定檔:Linux/macOS 放 ~/.claude/settings.json,Windows 放 C:\Users\<你>\.claude\settings.json。沒有就新建:
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic",
"ANTHROPIC_AUTH_TOKEN": "<你的 DeepSeek API Key>",
"ANTHROPIC_MODEL": "deepseek-v4-pro[1m]",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "deepseek-v4-pro[1m]",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "deepseek-v4-pro[1m]",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "deepseek-v4-flash[1m]",
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1",
"CLAUDE_CODE_EFFORT_LEVEL": "max"
}
}為什麼優先用檔案?Claude Code 的每個形態都讀它——CLI 和 VS Code 擴充功能通吃——設定跟著工具走,而不是跟著某一個 shell 走。你的 dotfiles 也能保持乾淨。
誠實腳註:兩個官方源發布的變數集不完全一樣。API 文件含子代理和自動壓縮兩個變數;倉庫版多了 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC,少了那兩個。都是官方,都沒錯——多數實際部署最後是合併著用(檔案為主,再補兩個環境變數)。
方法三:CC Switch
如果你要輪換後端——今天 DeepSeek、明天另一家——GUI 切換器比手改 JSON 舒服。CC Switch 是開源桌面工具(GitHub 5 萬多星),統一管理 Claude Code 和同類 CLI 的多家供應商:預設清單裡選 DeepSeek,貼上 Key,加上模型 ID deepseek-v4-pro[1m],點啟用,再點一下「測試」發個驗證請求。它底層寫的就是方法二那個 settings.json——本質是個友善的編輯器,不是另一套機制。
快速決策:臨時試水 → 方法一;日常主力 → 方法二;多後端切換 → 方法三。
第 3 步 — 驗證連線
三塊儀表,從便宜到權威。
油表: 在專案裡啟動工具,跑 /status。設定正確會顯示三行——Base URL: https://api.deepseek.com/anthropic、你釘的模型、以及 Small fast model: deepseek-v4-flash。
自檢燈: claude doctor 檢查安裝本身——PATH 問題、工具損壞、版本異常。指令能啟動但行為古怪時跑它。
三用電表: 繞開用戶端直接測端點:
curl -X POST https://api.deepseek.com/anthropic/v1/messages \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <你的 key>" \
-d '{"model":"deepseek-v4-flash","max_tokens":10,"messages":[{"role":"user","content":"test"}]}'回傳 JSON,表示 Key、端點、網路全通;報認證錯,問題在 Claude Code 上游。
一個預期要先立好:DeepSeek 控制台裡同時出現 v4-pro 和 v4-flash 用量是正確的,不是設錯了——背景子代理本來就跑 Flash。拿不準時,以供應商用量日誌裡的 model ID 為準,別信終端機顯示。
[1m] 後綴與上下文視窗
deepseek-v4-pro[1m] 裡那個方括號後綴不是裝飾。按 Claude Code 自家設定文件的命名規則,[1m] 表示選用百萬 token 上下文視窗——同一個模型的長工作階段檔。官方 DeepSeek 配方在所有主力槽位都釘了它,並配套把自動壓縮閾值設為 786432 token:約 768K,在 1M 視窗裡留出餘量,讓壓縮趕在你掉下懸崖之前發生。
不帶後綴的裸名呢?社群說法不一。一派報告裸 deepseek-v4-pro 預設給較小的視窗,加 [1m] 才解鎖百萬;另一派堅持官方 API 下兩個模型都給 1M。兩種說法都沒有官方文件背書,所以務實的選擇很無聊也很安全:逐字照抄官方配方,括號留著,模型字串別自由發揮。
長視窗的實況,來自真把它跑滿的人:400K token 的程式碼庫分析,延遲出乎意料地接近原生;但過了 ~500K 就陸續出現「走神」報告。百萬視窗是真的;指望它在整段視窗內同樣銳利,就樂觀了。
什麼時候這個後綴真正值回票價?恰恰是 Claude Code 天然製造的那些場景:全儲存庫級提問(「這個函式在哪被呼叫?」)、連續數小時滾雪球的超長重構、還有那種你一次次 resume 就是不肯重啟的長工作階段。如果只是停在十萬 token 以內的常規功能分支,標準視窗根本不會被發現——這也解釋了官方配方為什麼主力會話給大視窗、子代理給快模型:經濟帳算得通。
哪個模型接哪類請求
Claude Code 內部排著一張值班表:主對話一個模型,背景子代理(檔案搜尋、快速摘要、agent 團隊)另一個,而 opus/sonnet/haiku 這些別名只是「班次」,排到誰由你釘的變數決定。你的設定就是排班表:
| Claude Code 槽位 | 官方 DeepSeek 配方 |
|---|---|
| 主會話(opus/sonnet 檔) | deepseek-v4-pro[1m] |
| 輕量呼叫(haiku 檔) | deepseek-v4-flash |
| 子代理 | deepseek-v4-flash |
| 未映射名稱(服務端兜底) | deepseek-v4-flash |
為什麼拆開配?錢和速度。有開發者把這套組合連跑一週,發現 Flash 接住了約 80% 的日常活——重構、堆疊錯誤分析、寫新函式——延遲大多在個位數秒,真正難的規劃才留給 Pro。對真實工作階段的分析估計,省錢的大頭恰恰來自 haiku 檔的路由:每一次輕量內部呼叫都落在 Flash 的低價檔,而不是旗艦價。
還有兩個行為值得知道。思考強度 CLAUDE_CODE_EFFORT_LEVEL 控制模型每一步想多深,配方釘在 max(社群觀察稱 Agent 流量反正會自動拿到 max)。Web Search 原生可用:模型判斷問題需要新鮮資訊時,會透過 DeepSeek 的 API 呼叫搜尋工具,代價是總結檢索結果要多花一些 token。
用的是 Claude Desktop 桌面版而不是終端機?同一套服務端映射照常生效——它的開發者模式接受自訂 base URL 和 Key,名稱翻譯交給映射。(這些名字背後的完整模型陣容,見什麼是 DeepSeek。)
相容層到底支援什麼
轉接頭的比喻一直成立到請求欄位級。DeepSeek 的 Anthropic 格式端點公開了一份相容矩陣,知道它的形狀,大多數「為什麼 X 行為不一樣」的疑惑就有了答案:
| 請求欄位 | DeepSeek 端點狀態 |
|---|---|
temperature(0.0–2.0)、top_p、stop_sequences、stream、system、max_tokens | 完整支援 |
工具定義、tool_choice、工具結果 | 完整支援 |
thinking | 支援——budget_tokens 被忽略 |
| 影像輸入(base64、URL、檔案) | 支援 |
top_k | 忽略 |
cache_control(提示快取標記) | 忽略 |
| 文件區塊、程式碼執行結果、MCP 工具區塊 | 不支援 |
日常真正要留意的只有兩行。thinking 那行意味著推理深度走 effort 設定而非 token 預算——和配方裡的 effort 變數對得上。快取那行意味著 Anthropic 式快取標記是空操作;DeepSeek 在計費側自己做輸入快取命中折扣,不需要你標註快取斷點。Claude Code 預設發出的請求全部落在「支援」欄裡——這就是為什麼這套接入感覺是原生而非硬拼的。
疑難排解:一張表涵蓋常見故障
下面每個坑都有人公開踩過。對症狀,上解法:
| 症狀 | 可能原因 | 解法 |
|---|---|---|
claude: command not found | 二進位檔不在 PATH,或裝了多份 | 重開 shell;which -a claude 和 npm -g ls @anthropic-ai/claude-code 揪出多餘副本;只留一份 |
| 登入提示反覆出現 | 啟動的 shell 沒載入變數 | 在啟動它的那個 shell 裡確認 env;~/.claude.json 寫 hasCompletedOnboarding 是社群偏方 |
| WSL 裡提示 "Not logged in" | WSL 呼叫到了 Windows 側的二進位檔 | 檢查 PATH,確保跑的是 Linux 側安裝 |
| 首次請求 401 | Key 錯,或餘額為零 | 重貼 sk- Key;儲值 |
| 403 | base URL 沒指到 DeepSeek | 核對 ANTHROPIC_BASE_URL 拼寫 |
| 404 | 模型字串拼錯 | 逐字元照抄 deepseek-v4-pro[1m]——括號也在內 |
| 該出 Pro 的地方出了 Flash | 子代理本來就用 Flash | 先看供應商日誌裡的請求角色,再下結論 |
| vim 存檔報 E212 | ~/.claude 擁有者不對 | mkdir -p ~/.claude && chown -R $USER ~/.claude && chmod -R 755 ~/.claude |
| npm install 龜速或失敗 | 網路到 registry 不通 | 裝時切鏡像源,裝完切回 |
其中三個值得多說一句。PATH 衝突最陰險——兩份二進位檔、舊的贏了,症狀像什麼都像,就是不像安裝問題。curl 測試是最乾淨的二分法:一條指令把「Key 和端點」從「用戶端和設定」裡剝出來。而 404 幾乎全是模型名裡的隱形字元或丟了括號——所以配方值得貼上,不值得手打。
預期管理:誠實的利弊帳
換過去到底什麼體感?公開過的數字形狀很一致。
成本:一位知名開發者用 v4-pro 高強度跑 Agent,大約每小時燒 1 美元。一位安全研究員記下了一整個工作天——412 次工具呼叫、三道專家級 Web 挑戰加一個真實 Android 應用——6.84 美元。對照 Anthropic 旗艦上線時點的輸出價,v4-pro 每 token 大約便宜七倍,盲測榜單上兩者 SWE-bench Verified 相差 0.2 分。(這些是 2026 年 4–5 月視窗的數字,自己算帳前先看現價。)
能力:幾週社群用下來,公允的概括是「約十分之一的價格,換到 Claude 八成到八成五的體驗」。Flash 速度的活幾乎無感,Pro 上的硬規劃也扛得住。
糙邊也是真的。一位長跑使用者的清單:有時不理 CLAUDE.md 的指令、要反覆提醒才看記憶筆記和編碼規則、還做過無人監督的改動,最後靠 git 才撈回來。結論是「便宜,但得盯著」——這個結論我自己的 git reflog 可以作證。兩個習慣能拆掉大部分雷:一次只換一個模型槽位,出回歸時嫌犯明確;凡是讓它無人監督改檔案的,終端機放在眼皮底下。
一個被低估的好處:按 token 計費讓每輪成本可見。那條六千 token 的 CLAUDE.md、那三個你早忘了的 MCP 伺服器,都變成帳單行項——設定檔很快就被清理乾淨了。
誰該三思?工作階段真的超過五十萬 token、且要求全程高一致性的那類人——漂移報告正是聚在這個區間,旗艦 Claude 模型在這裡仍有真實優勢。其他人——功能開發、重構、程式碼審查、日常拉鋸——這筆交易怎麼算都是賺的。
常見問題
這套方案需要 Anthropic 帳號或 API Key 嗎?不需要。這條路只用 ANTHROPIC_BASE_URL 加 ANTHROPIC_AUTH_TOKEN 裡的 DeepSeek Key,沒有任何東西向 Anthropic 認證。如果彈出登入流程,表示啟動它的 shell 沒載入變數。
免費嗎?不免費——DeepSeek API 按量計費,按 token 結算,輸入有快取命中折扣。儲值一點就夠跑很久,但空帳戶會拒絕請求。有新帳號贈金的說法,別指望它。
Web Search 能用嗎?能,原生支援。模型判斷問題需要新鮮資料時,會經 DeepSeek 的 API 呼叫搜尋工具。總結檢索結果要花額外 token,重度搜尋會體現在帳單上。
怎麼切回官方 Claude 模型?清掉覆蓋項即可——刪掉環境變數(或 settings.json 裡的 env 區塊),正常登入。用 CC Switch 的話,供應商清單裡點一下。
日常寫程式用哪個模型?按官方拆法:主會話和難題用 v4-pro,輕量檔和子代理用 Flash。社群實測 Flash 一個就能接住約八成日常請求;要替兩個模型調提示詞的話,DeepSeek 提示詞技巧裡的方法直接通用。
VS Code 擴充功能裡能用嗎?能。擴充功能讀的就是同一個 ~/.claude/settings.json——Claude Code設定DeepSeek 的每一處入口都吃這份檔案,這正是長期設定優先用檔案而不是 shell 變數的原因。
整個遷移就三步:平台拿 Key,把官方九變數配方貼進 shell 或設定檔,/status 確認 base URL 生效。DeepSeek接入Claude Code 這件事,難的不是設定,是知道每個變數在幹什麼——現在你知道了。之後,駕駛艙還是你的:指令照舊、手感照舊,引擎蓋底下換了一台養得起的引擎,油表敢看了。