OpenClaw 支援透過 OAuth 進行「訂閱驗證」,適用於提供此功能的供應商 (特別是 OpenAI Codex (ChatGPT OAuth))。對 Anthropic 而言,實務上的區分 現在是:Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
- Anthropic API 金鑰:一般 Anthropic API 計費
- OpenClaw 內的 Anthropic Claude CLI/訂閱驗證:Anthropic 員工 告訴我們,這種用法已再次允許
- OAuth 權杖交換 如何運作(PKCE)
- 權杖儲存在哪裡(以及原因)
- 如何處理多個帳戶(設定檔 + 各工作階段覆寫)
權杖匯集處(它存在的原因)
OAuth 供應商通常會在登入/重新整理流程期間簽發新的重新整理權杖。某些供應商(或 OAuth 用戶端)可能會在同一使用者/應用程式簽發新權杖時,讓較舊的重新整理權杖失效。 實務症狀:- 你透過 OpenClaw 以及 Claude Code / Codex CLI 登入 → 其中一個稍後會隨機「被登出」
auth-profiles.json 視為權杖匯集處:
- 執行階段從單一位置讀取憑證
- 我們可以保留多個設定檔,並以確定性方式路由它們
- 外部 CLI 重用是供應商特定的:Codex CLI 可以啟動空的
openai-codex:default設定檔,但一旦 OpenClaw 擁有本機 OAuth 設定檔, 本機重新整理權杖就是標準來源;其他整合仍可維持 外部管理,並重新讀取其 CLI 驗證存放區 - 已知已設定供應商集合範圍的狀態與啟動路徑,會將 外部 CLI 探索限制在該集合內,因此單一供應商設定不會 探測不相關的 CLI 登入存放區
儲存(權杖存放位置)
機密會儲存在代理程式驗證存放區中:- 驗證設定檔(OAuth + API 金鑰 + 選用的值層級參照):
~/.openclaw/agents/<agentId>/agent/auth-profiles.json - 舊版相容性檔案:
~/.openclaw/agents/<agentId>/agent/auth.json(探索到靜態api_key項目時會將其清除)
~/.openclaw/credentials/oauth.json(首次使用時匯入auth-profiles.json)
$OPENCLAW_STATE_DIR(狀態目錄覆寫)。完整參考:/gateway/configuration
關於靜態機密參照與執行階段快照啟用行為,請參閱機密管理。
當次要代理程式沒有本機驗證設定檔時,OpenClaw 會使用從預設/主要代理程式存放區的讀取穿透繼承。它不會在讀取時複製主要
代理程式的 auth-profiles.json。OAuth 重新整理權杖特別
敏感:一般複製流程預設會略過它們,因為某些供應商會在使用後輪替
或讓重新整理權杖失效。當代理程式需要獨立帳戶時,請為該
代理程式設定個別 OAuth 登入。
Anthropic 舊版權杖相容性
OpenClaw 也將 Anthropic setup-token 暴露為受支援的權杖驗證路徑,但現在會在可用時優先使用 Claude CLI 重用與claude -p。
Anthropic Claude CLI 遷移
OpenClaw 再次支援 Anthropic Claude CLI 重用。如果你已在主機上有本機 Claude 登入,onboarding/configure 可以直接重用它。OAuth 交換(登入如何運作)
OpenClaw 的互動式登入流程實作於@mariozechner/pi-ai,並接入精靈/命令。
Anthropic setup-token
流程形態:- 從 OpenClaw 啟動 Anthropic setup-token 或 paste-token
- OpenClaw 將產生的 Anthropic 憑證儲存在驗證設定檔中
- 模型選取維持在
anthropic/... - 現有 Anthropic 驗證設定檔仍可用於復原/排序控制
OpenAI Codex (ChatGPT OAuth)
OpenAI Codex OAuth 明確支援在 Codex CLI 外部使用,包括 OpenClaw 工作流程。 流程形態(PKCE):- 產生 PKCE 驗證器/挑戰 + 隨機
state - 開啟
https://auth.openai.com/oauth/authorize?... - 嘗試在
http://127.0.0.1:1455/auth/callback擷取回呼 - 如果回呼無法綁定(或你在遠端/無頭環境),貼上重新導向 URL/代碼
- 在
https://auth.openai.com/oauth/token交換 - 從存取權杖擷取
accountId,並儲存{ access, refresh, expires, accountId }
openclaw onboard → 驗證選項 openai-codex。
重新整理 + 到期
設定檔會儲存expires 時間戳記。
在執行階段:
- 如果
expires是未來時間 → 使用儲存的存取權杖 - 如果已到期 → 重新整理(在檔案鎖下)並覆寫儲存的憑證
- 如果次要代理程式讀取繼承自主要代理程式的 OAuth 設定檔,重新整理 會寫回主要代理程式存放區,而不是將重新整理權杖複製到 次要代理程式存放區
- 例外:某些外部 CLI 憑證仍維持外部管理;OpenClaw
會重新讀取那些 CLI 驗證存放區,而不是耗用複製的重新整理權杖。
Codex CLI 啟動刻意較窄:它會播種空的
openai-codex:default設定檔,接著由 OpenClaw 擁有的重新整理會讓本機 設定檔保持為標準來源。
多個帳戶(設定檔)+ 路由
兩種模式:1) 偏好方式:分開的代理程式
如果你希望「個人」和「工作」永遠不要互相影響,請使用隔離的代理程式(分開的工作階段 + 憑證 + 工作區):2) 進階:一個代理程式中的多個設定檔
auth-profiles.json 支援同一供應商的多個設定檔 ID。
選擇要使用的設定檔:
- 透過設定排序全域指定(
auth.order) - 透過
/model ...@<profileId>針對每個工作階段指定
/model Opus@anthropic:work
openclaw channels list --json(顯示auth[])