OAuth
OpenClaw mendukung “subscription auth” melalui OAuth untuk provider yang menawarkannya (khususnya OpenAI Codex (ChatGPT OAuth)). Untuk subscription Anthropic, penyiapan baru harus menggunakan jalur login Claude CLI lokal di host gateway, tetapi Anthropic membedakan antara penggunaan Claude Code langsung dan jalur penggunaan ulang oleh OpenClaw. Dokumentasi publik Claude Code dari Anthropic menyatakan bahwa penggunaan Claude Code secara langsung tetap berada dalam batas subscription Claude. Secara terpisah, Anthropic memberi tahu pengguna OpenClaw pada 4 April 2026 pukul 12:00 PM PT / 8:00 PM BST bahwa OpenClaw dihitung sebagai harness pihak ketiga dan kini memerlukan Extra Usage untuk trafik tersebut. OpenAI Codex OAuth secara eksplisit didukung untuk digunakan dalam alat eksternal seperti OpenClaw. Halaman ini menjelaskan: Untuk Anthropic di produksi, autentikasi API key adalah jalur yang lebih aman dan direkomendasikan.- bagaimana pertukaran token OAuth bekerja (PKCE)
- tempat token disimpan (dan alasannya)
- cara menangani beberapa akun (profil + override per sesi)
Token sink (mengapa ini ada)
Provider OAuth umumnya menerbitkan refresh token baru selama alur login/refresh. Beberapa provider (atau klien OAuth) dapat membatalkan refresh token yang lebih lama ketika token baru diterbitkan untuk pengguna/aplikasi yang sama. Gejala praktis:- Anda login melalui OpenClaw dan melalui Claude Code / Codex CLI → salah satunya nanti secara acak “logout”
auth-profiles.json sebagai token sink:
- runtime membaca kredensial dari satu tempat
- kita dapat menyimpan beberapa profil dan merutekannya secara deterministik
- ketika kredensial digunakan ulang dari CLI eksternal seperti Codex CLI, OpenClaw mencerminkannya dengan provenance dan membaca ulang sumber eksternal tersebut alih-alih memutar refresh tokennya sendiri
Penyimpanan (tempat token berada)
Secret disimpan per agen:- Profil auth (OAuth + API key + ref tingkat nilai opsional):
~/.openclaw/agents/<agentId>/agent/auth-profiles.json - File kompatibilitas lama:
~/.openclaw/agents/<agentId>/agent/auth.json(entriapi_keystatis dibersihkan saat ditemukan)
~/.openclaw/credentials/oauth.json(diimpor keauth-profiles.jsonsaat pertama kali digunakan)
$OPENCLAW_STATE_DIR (override state dir). Referensi lengkap: /gateway/configuration
Untuk ref secret statis dan perilaku aktivasi snapshot runtime, lihat Manajemen Secret.
Kompatibilitas token lama Anthropic
OpenClaw kini kembali mengekspos setup-token Anthropic sebagai jalur lama/manual. Pemberitahuan penagihan khusus OpenClaw dari Anthropic tetap berlaku untuk jalur itu, jadi gunakan dengan pemahaman bahwa Anthropic memerlukan Extra Usage untuk trafik login Claude yang digerakkan oleh OpenClaw.Migrasi Anthropic Claude CLI
Jika Claude CLI sudah terinstal dan sudah login di host gateway, Anda dapat mengalihkan pemilihan model Anthropic ke backend CLI lokal. Ini adalah jalur OpenClaw yang didukung saat Anda ingin menggunakan ulang login Claude CLI lokal di host yang sama. Prasyarat:- biner
claudeterinstal di host gateway - Claude CLI sudah diautentikasi di sana melalui
claude auth login
anthropic/... menjadi claude-cli/..., menulis ulang fallback Anthropic Claude yang cocok, dan menambahkan entri allowlist claude-cli/...
yang sesuai di bawah agents.defaults.models.
Verifikasi:
Pertukaran OAuth (cara login bekerja)
Alur login interaktif OpenClaw diimplementasikan dalam@mariozechner/pi-ai dan dihubungkan ke wizard/perintah.
Anthropic Claude CLI
Bentuk alur: Jalur Claude CLI:- login dengan
claude auth logindi host gateway - jalankan
openclaw models auth login --provider anthropic --method cli --set-default - jangan simpan profil auth baru; alihkan pemilihan model ke
claude-cli/... - pertahankan profil auth Anthropic yang ada untuk rollback
claude itu sendiri. OpenClaw dapat menggunakan ulang login lokal itu, tetapi
Anthropic secara terpisah mengklasifikasikan jalur yang dikendalikan OpenClaw sebagai penggunaan harness pihak ketiga untuk tujuan penagihan.
Jalur asisten interaktif:
openclaw onboard/openclaw configure→ pilihan authanthropic-cli
OpenAI Codex (ChatGPT OAuth)
OpenAI Codex OAuth secara eksplisit didukung untuk penggunaan di luar Codex CLI, termasuk alur kerja OpenClaw. Bentuk alur (PKCE):- hasilkan verifier/challenge PKCE +
stateacak - buka
https://auth.openai.com/oauth/authorize?... - coba tangkap callback di
http://127.0.0.1:1455/auth/callback - jika callback tidak bisa bind (atau Anda remote/headless), tempel URL/kode redirect
- tukarkan di
https://auth.openai.com/oauth/token - ekstrak
accountIddari access token dan simpan{ access, refresh, expires, accountId }
openclaw onboard → pilihan auth openai-codex.
Refresh + kedaluwarsa
Profil menyimpan stempel waktuexpires.
Pada runtime:
- jika
expiresada di masa depan → gunakan access token yang tersimpan - jika kedaluwarsa → refresh (di bawah file lock) dan timpa kredensial yang tersimpan
- pengecualian: kredensial CLI eksternal yang digunakan ulang tetap dikelola secara eksternal; OpenClaw membaca ulang penyimpanan auth CLI dan tidak pernah memakai refresh token hasil salinan itu sendiri
Beberapa akun (profil) + perutean
Dua pola:1) Disarankan: agen terpisah
Jika Anda ingin “pribadi” dan “kantor” tidak pernah berinteraksi, gunakan agen yang terisolasi (sesi + kredensial + workspace terpisah):2) Lanjutan: beberapa profil dalam satu agen
auth-profiles.json mendukung beberapa ID profil untuk provider yang sama.
Pilih profil yang digunakan:
- secara global melalui urutan konfigurasi (
auth.order) - per sesi melalui
/model ...@<profileId>
/model Opus@anthropic:work
openclaw channels list --json(menampilkanauth[])
- /concepts/model-failover (aturan rotasi + cooldown)
- /tools/slash-commands (permukaan perintah)
Terkait
- Autentikasi — ringkasan auth provider model
- Secrets — penyimpanan kredensial dan SecretRef
- Referensi Konfigurasi — kunci konfigurasi auth