CLI commands
Secret
openclaw secrets
Gunakan openclaw secrets untuk mengelola SecretRef dan menjaga snapshot runtime aktif tetap sehat.
Peran perintah:
reload: RPC gateway (secrets.reload) yang me-resolve ulang ref dan menukar snapshot runtime hanya jika seluruh proses berhasil (tanpa penulisan config).audit: pemindaian read-only terhadap store config/auth/model yang dihasilkan dan residu lama untuk plaintext, ref yang tidak ter-resolve, dan drift prioritas (ref exec dilewati kecuali--allow-execdiatur).configure: planner interaktif untuk penyiapan provider, pemetaan target, dan preflight (memerlukan TTY).apply: jalankan rencana yang disimpan (--dry-runhanya untuk validasi; dry-run melewati pemeriksaan exec secara default, dan mode tulis menolak rencana yang berisi exec kecuali--allow-execdiatur), lalu scrub residu plaintext yang ditargetkan.
Loop operator yang direkomendasikan:
openclaw secrets audit --check
openclaw secrets configure
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json --dry-run
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json
openclaw secrets audit --check
openclaw secrets reload
Jika rencana Anda mencakup SecretRef/provider exec, berikan --allow-exec pada perintah apply dry-run maupun write.
Catatan exit code untuk CI/gate:
audit --checkmengembalikan1jika ada temuan.- ref yang tidak ter-resolve mengembalikan
2.
Terkait:
- Panduan secret: Manajemen Secret
- Surface kredensial: Surface Kredensial SecretRef
- Panduan keamanan: Keamanan
Muat ulang snapshot runtime
Me-resolve ulang ref secret dan menukar snapshot runtime secara atomik.
openclaw secrets reload
openclaw secrets reload --json
openclaw secrets reload --url ws://127.0.0.1:18789 --token <token>
Catatan:
- Menggunakan metode RPC gateway
secrets.reload. - Jika resolusi gagal, gateway mempertahankan snapshot terakhir yang diketahui baik dan mengembalikan error (tanpa aktivasi parsial).
- Respons JSON mencakup
warningCount.
Opsi:
--url <url>--token <token>--timeout <ms>--json
Audit
Pindai state OpenClaw untuk:
- penyimpanan secret plaintext
- ref yang tidak ter-resolve
- drift prioritas (kredensial
auth-profiles.jsonyang membayangi refopenclaw.json) - residu
agents/*/agent/models.jsonyang dihasilkan (nilai providerapiKeydan header provider sensitif) - residu lama (entri store auth lama, pengingat OAuth)
Catatan residu header:
- Deteksi header provider sensitif berbasis heuristik nama (nama header auth/kredensial umum dan fragmen seperti
authorization,x-api-key,token,secret,password, dancredential).
openclaw secrets audit
openclaw secrets audit --check
openclaw secrets audit --json
openclaw secrets audit --allow-exec
Perilaku exit:
--checkkeluar non-zero jika ada temuan.- ref yang tidak ter-resolve keluar dengan kode non-zero prioritas lebih tinggi.
Sorotan bentuk laporan:
status:clean | findings | unresolvedresolution:refsChecked,skippedExecRefs,resolvabilityCompletesummary:plaintextCount,unresolvedRefCount,shadowedRefCount,legacyResidueCount- kode temuan:
PLAINTEXT_FOUNDREF_UNRESOLVEDREF_SHADOWEDLEGACY_RESIDUE
Configure (helper interaktif)
Bangun perubahan provider dan SecretRef secara interaktif, jalankan preflight, dan secara opsional terapkan:
openclaw secrets configure
openclaw secrets configure --plan-out /tmp/openclaw-secrets-plan.json
openclaw secrets configure --apply --yes
openclaw secrets configure --providers-only
openclaw secrets configure --skip-provider-setup
openclaw secrets configure --agent ops
openclaw secrets configure --json
Alur:
- Penyiapan provider terlebih dahulu (
add/edit/removeuntuk aliassecrets.providers). - Pemetaan kredensial kedua (pilih field dan tetapkan ref
{source, provider, id}). - Preflight dan apply opsional terakhir.
Flag:
--providers-only: konfigurasikan hanyasecrets.providers, lewati pemetaan kredensial.--skip-provider-setup: lewati penyiapan provider dan petakan kredensial ke provider yang ada.--agent <id>: cakup penemuan targetauth-profiles.jsondan penulisan ke satu store agen.--allow-exec: izinkan pemeriksaan SecretRef exec selama preflight/apply (dapat mengeksekusi perintah provider).
Catatan:
- Memerlukan TTY interaktif.
- Anda tidak dapat menggabungkan
--providers-onlydengan--skip-provider-setup. configuremenargetkan field yang mengandung secret diopenclaw.jsonplusauth-profiles.jsonuntuk cakupan agen yang dipilih.configuremendukung pembuatan pemetaanauth-profiles.jsonbaru secara langsung di alur picker.- Surface kanonis yang didukung: Surface Kredensial SecretRef.
- Perintah ini menjalankan resolusi preflight sebelum apply.
- Jika preflight/apply mencakup ref exec, biarkan
--allow-exectetap aktif pada kedua langkah. - Rencana yang dihasilkan secara default menggunakan opsi scrub (
scrubEnv,scrubAuthProfilesForProviderTargets,scrubLegacyAuthJsonsemuanya aktif). - Jalur apply bersifat satu arah untuk nilai plaintext yang telah discrub.
- Tanpa
--apply, CLI tetap menampilkan promptApply this plan now?setelah preflight. - Dengan
--apply(dan tanpa--yes), CLI menampilkan konfirmasi tambahan yang tidak dapat dibatalkan. --jsonmencetak rencana + laporan preflight, tetapi perintah ini tetap memerlukan TTY interaktif.
Catatan keamanan provider exec:
- Instalasi Homebrew sering mengekspos binary symlink di bawah
/opt/homebrew/bin/*. - Atur
allowSymlinkCommand: truehanya jika diperlukan untuk path package manager tepercaya, dan pasangkan dengantrustedDirs(misalnya["/opt/homebrew"]). - Di Windows, jika verifikasi ACL tidak tersedia untuk path provider, OpenClaw gagal tertutup. Hanya untuk path tepercaya, atur
allowInsecurePath: truepada provider tersebut untuk melewati pemeriksaan keamanan path.
Terapkan rencana yang disimpan
Terapkan atau preflight rencana yang sebelumnya telah dibuat:
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json --allow-exec
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json --dry-run
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json --dry-run --allow-exec
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json --json
Perilaku exec:
--dry-runmemvalidasi preflight tanpa menulis file.- Pemeriksaan SecretRef exec dilewati secara default dalam dry-run.
- Mode tulis menolak rencana yang berisi SecretRef/provider exec kecuali
--allow-execdiatur. - Gunakan
--allow-execuntuk ikut serta dalam pemeriksaan/eksekusi provider exec pada salah satu mode.
Detail kontrak rencana (path target yang diizinkan, aturan validasi, dan semantik kegagalan):
Yang dapat diperbarui oleh apply:
openclaw.json(target SecretRef + upsert/delete provider)auth-profiles.json(scrub target provider)- residu
auth.jsonlama - kunci secret yang dikenal di
~/.openclaw/.envyang nilainya telah dimigrasikan
Mengapa tidak ada backup rollback
secrets apply sengaja tidak menulis backup rollback yang berisi nilai plaintext lama.
Keamanan berasal dari preflight yang ketat + apply yang hampir atomik dengan pemulihan in-memory best-effort saat gagal.
Contoh
openclaw secrets audit --check
openclaw secrets configure
openclaw secrets audit --check
Jika audit --check masih melaporkan temuan plaintext, perbarui path target yang masih dilaporkan dan jalankan ulang audit.