> ## Content Index
> Fetch the complete content index at: https://www.denghao.info/llms.txt
> Use this file to discover other available public pages before exploring further.

# 我把 Claude Code 接上 250 多個免費 AI 服務商
- URL: https://www.denghao.info/0723r/
- Published: 2026-07-23T12:20:47.000Z
- Updated: 2026-07-23T12:21:53.000Z
- Author: denghao

最近 GitHub 上有個工具在圈子裡討論度不低，叫 **OmniRoute**。開源、MIT 授權，star 數已經衝到 2.6 萬多。它做的事情很單純：在你的電腦上開一個本地閘道（gateway），把 Claude Code、Codex 這類編碼工具的請求，統一轉送到 250 多個 AI 服務商——其中 90 多個是免費的，還有 11 個是「永久免費」等級。

我自己實測跑了幾天，這篇把它到底在做什麼、怎麼裝、怎麼接上 Claude Code，一次寫清楚。影片裡只講了「有這個東西、它很猛」，沒講怎麼動手——這篇補完。

## 它到底解決什麼問題

用 Claude Code 的人多半都遇過同一件事：額度用到一半，模型突然回你「額度已用盡」，工作到一半被迫中斷，還要手動換模型、把提示詞重新貼一次。

OmniRoute 的角色，你可以想成**接力賽的交棒手**。它不是另一個 AI 模型，而是一層中間閘道：Claude Code 發出的每一個請求，先經過 OmniRoute，再由它決定要交給誰處理。某個服務商額度見底，它會在毫秒等級的時間內自動切到下一個，整個過程你的對話不會斷、提示詞也不用重貼。

官方文件把這套機制稱為「四層自動容錯」（4-tier auto-fallback）：**訂閱制 → API 計費 → 便宜方案 → 免費方案**，依序往下嘗試，一路換到有額度為止。背後有 18 種路由策略可以選，例如按優先順序耗盡、或是依權重分散請求。

## 順便幫你把提示詞「瘦身」

除了自動換模型，OmniRoute 還有一個容易被忽略但很實用的功能：**送出提示詞之前，先幫你壓縮內容**。

它疊了 10 種可組合的壓縮引擎，官方文件給的數字是：一般情況可省下 15%～95% 的 token，工具密集型的對話平均可省到 89%。標準模式會同時做兩件事——過濾掉指令輸出裡的雜訊（RTK），以及精簡口語敘述（他們內部叫 Caveman 模式）。程式碼區塊、URL、JSON 這些格式敏感的內容會被保護起來，不會被誤壓縮。

官方給的實測例子：一段 69 個 token 的 React 說明文字，壓縮後剩 19 個 token，技術內容完全沒變，等於省了 72%。換算下來就是同樣的預算，你能多打好幾倍的字——這也是它另一個核心賣點。

## 開始動手：完整安裝教學

以下是實際安裝、串接 Claude Code 的完整步驟。

### 前置需求

Node.js 版本要求：`22.x` 或 `24.x` LTS（官方建議用 24 LTS）。先確認你的版本：

```
node -v
```

### 第一步：安裝並啟動

用 npm 全域安裝：

```
npm install -g omniroute
omniroute
```

啟動後會開出兩個服務：

- **儀表板（Dashboard）**：`http://localhost:20128`
- **API 端點**：`http://localhost:20128/v1`

如果安裝過程看到 `npm warn ERESOLVE` 的警告，官方說這是無害的，不用理它（背後跟原生 SQLite 模組 `better-sqlite3` 的選用性建置有關，裝不起來也會自動 fallback）。

不想用 npm 的話，也有 Docker 版本：

```
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \
  -p 20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest
```

### 第二步：拿一把 API Key

打開瀏覽器進 `http://localhost:20128`，在 Dashboard → Endpoints 裡建立、複製一把金鑰。這把金鑰是你之後所有工具跟 OmniRoute 溝通用的，不是連去 Anthropic 官方帳號的金鑰。

先驗證一下有沒有裝對：

```
curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY"
```

回傳一串可用模型清單，就代表閘道跑起來了。

### 第三步：一鍵串接 Claude Code

OmniRoute 內建了專門幫 Claude Code 產生設定檔的指令，不用自己手改設定：

```
omniroute setup-claude
```

這行指令會在 `~/.claude/profiles/<name>/settings.json` 底下自動生成一份設定檔案，長得像這樣：

```
{
  "$schema": "https://json.schemastore.org/claude-code-settings.json",
  "model": "glm/glm-5.2",
  "effortLevel": "xhigh",
  "env": {
    "ANTHROPIC_BASE_URL": "http://localhost:20128",
    "ANTHROPIC_MODEL": "glm/glm-5.2",
    "CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY": "1",
    "CLAUDE_CODE_AUTO_COMPACT_WINDOW": "190000"
  }
}
```

有幾個常用參數值得認識一下：

- **ANTHROPIC\_BASE\_URL**：填閘道的根網址，不要加 `/v1`，Claude Code 會自己補上 `/v1/messages`
- **ANTHROPIC\_MODEL**：強制指定用哪個模型，蓋掉 Claude Code 內建的 `/model` 選單預設值
- **CLAUDE\_CODE\_AUTO\_COMPACT\_WINDOW**：觸發自動壓縮對話記錄的 token 門檻

安全性補充：`setup-claude` 產生的設定檔**不會**把你的驗證金鑰寫進檔案裡（避免你不小心把金鑰 commit 進 git）。金鑰要在啟動時另外帶入。

只想串接部分模型，也可以指定：

```
omniroute setup-claude --only glm,kimi
```

想先看看會產生什麼、但不真的寫檔案，可以加 `--dry-run` 先預覽。

### 第四步：啟動並帶入金鑰

```
omniroute launch
```

或指定用哪一組設定檔啟動：

```
omniroute launch --profile glm52
```

如果 OmniRoute 是跑在遠端主機（例如你的 NAS 或另一台機器）而不是本機，指令長這樣：

```
omniroute launch --remote http://192.168.0.15:20128 --api-key oma_live_xxx
```

裝完這四步，回到 Claude Code 打開一個對話，模型清單裡就會看到 OmniRoute 接上的服務商（畫面上會顯示類似「Now using Gemini」的切換提示），額度見底時它會自己往下一個接棒，你完全不用手動介入。

## 目前串接的免費服務商，舉幾個例子

官方文件列出的「永久免費」清單裡，比較值得認識的幾個：

- **Kiro**：Claude Sonnet 4.5，每月約 50 點額度
- **Qoder**：Kimi-K2、DeepSeek-R1，無限量
- **Pollinations**：GPT-5、Claude、Gemini，不需要申請金鑰就能用
- **Cloudflare AI**：50 多種模型，每天 1 萬個 neurons 額度
- **NVIDIA NIM**：129 種模型，約每分鐘 40 次請求
- **Cerebras**：Qwen3 235B，每天 100 萬 token

完整清單跟即時額度狀態，開了 Dashboard 都看得到，不用背。

## 老實說幾句提醒

**先讀這段再動手**

免費不代表沒有限制。每個服務商背後的額度規則不是 OmniRoute 訂的，是那些服務商自己訂的——OmniRoute 只是幫你在額度見底時自動換下一家，本身不會生出更多免費額度。像 LongCat 這種一次性 1000 萬 token 的方案還要求做 KYC（身分驗證），不是每個人都想走這一步。

另外它畢竟是一個要在你電腦上常駐運行的本地服務，串接的是你原本用來寫程式、可能牽涉到公司程式碼的工具——裝之前自己評估一下資安考量，尤其是遠端模式（`--remote`）如果要對外開放，記得金鑰要保管好。