什麼是鵝?
goose 是一個開源、可擴展的本機 AI 代理,具有桌面和 CLI 提供者配置。
本 goose 指南將其自訂提供者流程用於與 OpenAI 相容的端點。 goose custom-provider JSON 記錄完整的聊天完成 URL,而憑證保留在環境或其安全金鑰儲存中。 goose 支持多种提供程序格式,其与 OpenAI 兼容的自定义提供程序架构需要完整的聊天完成端点,而不仅仅是 API 根。將憑證保留在共用 JSON 之外,選擇具有本機工具呼叫的模型,並在新會話中開始只讀開發任務。
goose 記錄了創建自訂提供者的三種方法:桌面、CLI 和提供者檔案。 TokenHub 使用 OpenAI Compatible。在 goose 的自訂提供者架構中,輸入完整的聊天完成 URL:https://us-api.tokenhub.com/v1/chat/completions。
使用官方goose桌面路径
- 點選左上角的側邊欄按鈕。
- 轉到 Settings → Models。
- 按一下“Configure providers”。
- 捲動到底部並點擊 Add Custom Provider。
- 選擇 Provider Type 為
OpenAI Compatible。 - 輸入
TokenHub作為 Display Name。 - 輸入
https://us-api.tokenhub.com/v1/chat/completions作為 API URL。 - 保持 This provider requires an API key 启用并输入您的 TokenHub API 密钥。 Desktop 將其儲存在系統鑰匙圈中,或當金鑰環不可用時儲存在
secrets.yaml中。 - 在 Available Models 下,输入准确的 TokenHub 型号 ID,并用英文逗号分隔。
- 啟用Streaming Support並點選Create Provider。
桌面版目前無法新增自訂標頭。如果部署需要,請建立提供者並隨後編輯其 JSON。
使用官方goose CLI路径
運行:
goose configure然後完全按照選單操作:
- 選擇Custom Providers (Add custom provider with compatible API)。
- 選擇Add A Custom Provider。
- API 類型選擇
OpenAI Compatible。 - 將其命名為
TokenHub並輸入完整的聊天完成 URL。 - 對 Authentication Required 回答“是”,選擇 Static API key,然後貼上 TokenHub 金鑰。
- 在 Available Models 下以逗號分隔的清單形式輸入準確的型號 ID。
- 啟用串流媒體支援。僅當端點實際需要時才添加自訂標頭。
CLI 也支援 Command (refreshable) 的短期憑證。普通的 TokenHub API 金鑰不需要該路徑。
檢查產生的提供者檔案 goose
在 macOS 和 Linux 上,檔案位於 ~/.config/goose/custom_providers/ 下。在 Windows 上,使用 %APPDATA%\Block\goose\config\custom_providers\。重要字段應匹配:
{
"name": "tokenhub",
"engine": "openai",
"display_name": "TokenHub",
"api_key_env": "TOKENHUB_API_KEY",
"base_url": "__API_BASE_URL__/v1/chat/completions",
"models": [
{
"name": "YOUR_TOKENHUB_MODEL_ID",
"context_limit": 128000
}
],
"supports_streaming": true,
"requires_auth": true
}手寫JSON時需要api_key_env。透過 Desktop 或 CLI 輸入的靜態金鑰由 goose 安全儲存。將 context_limit 替換為模型的真實極限。
切換模型並套用更改
在桌面中,前往 Settings → Models → Switch models,選擇 TokenHub 提供者和型號,然後按一下 Select model。 goose 文件表示自訂提供者變更在 next goose session 中生效,因此請勿在舊會話中測試它。
使用唯讀編碼任務開始新會話,並確認 TokenHub 日誌中的完整 /v1/chat/completions 路徑。對於 404,檢查 API URL。如果模型不可見,請檢查逗號分隔清單或 models[].name。如果聊天有效但代理無法採取行動,請使用返回結構化工具呼叫的模型。
官方參考
如何選擇推薦模型?
鵝定制供應商常見問題解答
為什麼 goose 使用完整的聊天完成 URL?
官方 goose 自訂提供者 JSON 格式將 base_url 定義為其 OpenAI 相容引擎的完整端點。
我應該在哪裡保存 TokenHub API 金鑰?
使用自訂提供者憑證流或 TOKENHUB_API_KEY 環境變數。將值保留在共用提供者文件之外。
任何聊天模型都可以嗎?
不會。 goose 代理任務需要可靠的本機工具調用,因此在使用不熟悉的模型之前,請在安全任務上驗證該行為。
如何驗證 goose 客製化提供者?
在新會話中選擇已宣告的模型,執行唯讀任務,並確認 TokenHub 日誌中的聊天完成路徑、模型 ID 和狀態。
為什麼即使聊天正常,goose 工具呼叫也會失敗?
該模型可能只產生文字。 goose 代理工作需要本機結構化工具調用,因此請切換到經過驗證的支援工具的模型。
參考資料
本頁設定依據 TokenHub 教學與官方資料,最後驗證日期為 2026-09-08。