Crush
為終端程式設計 Agent Crush 設定 OpenAI 相容的 CoffeeRouter Provider。
接入前準備
- 準備 CoffeeRouter API Key 與正確的模型 ID。
- 選擇 npm、Homebrew、Winget、Scoop 或官方二進位檔等安裝方式。
- 確認目標模型適合代理式程式設計並支援所需工具能力。
設定步驟
1. 安裝 Crush
npm:
npm install -g @charmland/crush
macOS Homebrew:
brew install charmbracelet/tap/crush
Windows:
winget install charmbracelet.crush
安裝完成後執行 crush --version。
2. 設定 API Key
Linux / macOS:
export COFFEEROUTER_API_KEY="sk-your-api-key"
Windows PowerShell:
$env:COFFEEROUTER_API_KEY="sk-your-api-key"
3. 建立 Crush 設定
Crush 依照以下優先順序讀取設定:
- 專案目錄中的
.crush.json - 專案目錄中的
crush.json - 全域
$HOME/.config/crush/crush.json
建立設定並填入:
{
"$schema": "https://charm.land/crush.json",
"providers": {
"coffeerouter": {
"type": "openai-compat",
"base_url": "https://www.coffeerouter.ai/v1",
"api_key": "$COFFEEROUTER_API_KEY",
"models": [
{
"id": "your-model-id",
"name": "CoffeeRouter Model",
"context_window": 128000,
"default_max_tokens": 8192,
"can_reason": false
}
]
}
}
}
將模型 ID、上下文視窗、最大輸出與推理能力調整為實際模型值。
4. 啟動並選擇模型
cd /path/to/your-project
crush
按下 Ctrl+L 開啟模型選擇器,選擇 coffeerouter Provider 與目標模型。
驗證接入
傳送一個需要讀取檔案並提出修改建議的測試任務。模型能夠正常回應且工具呼叫沒有協定錯誤,即表示接入成功。
常見問題
看不到 coffeerouter Provider
檢查設定檔位置、JSON 格式,以及目前專案是否存在優先順序更高的 .crush.json 或 crush.json。
回傳 401 Unauthorized
確認 COFFEEROUTER_API_KEY 已匯出到啟動 Crush 的環境中,並檢查令牌狀態與存取限制。
模型不存在
models[].id 必須與 CoffeeRouter 中顯示的模型 ID 完全相同。儲存設定後結束並重新啟動 Crush。
是否可以自動取得模型
新版 Crush 支援部分 OpenAI Compatible Provider 的模型探索,但是否可用取決於服務的 /models 介面。手動列出模型最明確,也方便控制可用範圍。
安全提示
crush.json是受信任設定,Crush 會展開其中的環境變數,並可能執行$(...)運算式。請勿執行來源不明的設定檔。- 不要把真實 API Key 直接寫入或提交到專案設定。
- 建議為 Crush 建立獨立令牌並限制模型、額度與有效期限。
- Crush 會向 CoffeeRouter 傳送任務描述、程式碼上下文與工具呼叫資料。