~/.openclaw/, yang menyimpan konfigurasi, kredensial, dan sesi.
Lokasi default
- Default:
~/.openclaw/workspace - Jika
OPENCLAW_PROFILEditetapkan dan bukan"default", default menjadi~/.openclaw/workspace-<profile>. OPENCLAW_WORKSPACE_DIRmenggantikan kedua nilai di atas saat ditetapkan.- Agen non-default (
agents.list[]) tanpa ruang kerja eksplisit diarahkan ke<state-dir>/workspace-<agentId>, bukan ruang kerja default bersama.
~/.openclaw/openclaw.json:
agents.list[].workspace.
openclaw onboard, openclaw configure, atau openclaw setup membuat ruang kerja dan mengisinya dengan berkas bootstrap jika berkas tersebut tidak ada.
Penyalinan seed sandbox hanya menerima berkas biasa di dalam ruang kerja; alias symlink/hardlink yang diarahkan ke luar ruang kerja sumber akan diabaikan.
Folder ruang kerja tambahan
Instalasi lama mungkin telah membuat~/openclaw. Menyimpan beberapa direktori ruang kerja dapat menyebabkan penyimpangan autentikasi atau status yang membingungkan karena hanya satu ruang kerja yang aktif pada satu waktu.
Rekomendasi: pertahankan satu ruang kerja aktif. Jika Anda tidak lagi menggunakan folder tambahan tersebut, arsipkan atau pindahkan ke Sampah (misalnya
trash ~/openclaw). Jika Anda sengaja mempertahankan beberapa ruang kerja, pastikan agents.defaults.workspace (atau kunci per agen workspace) menunjuk ke ruang kerja yang aktif.Peta berkas ruang kerja
Berkas standar yang diharapkan OpenClaw di dalam ruang kerja:AGENTS.md - petunjuk pengoperasian
AGENTS.md - petunjuk pengoperasian
Petunjuk pengoperasian untuk agen dan cara menggunakan memori. Dimuat pada awal setiap sesi. Tempat yang tepat untuk aturan, prioritas, dan detail “cara berperilaku”.
SOUL.md - persona dan nada
SOUL.md - persona dan nada
Persona, nada, dan batasan. Dimuat setiap sesi. Panduan: panduan kepribadian SOUL.md.
USER.md - siapa penggunanya
USER.md - siapa penggunanya
Siapa penggunanya dan cara menyapa mereka. Dimuat setiap sesi.
IDENTITY.md - nama, nuansa, emoji
IDENTITY.md - nama, nuansa, emoji
Nama, nuansa, dan emoji agen. Dibuat/diperbarui selama ritual bootstrap.
TOOLS.md - konvensi alat lokal
TOOLS.md - konvensi alat lokal
Catatan tentang alat dan konvensi lokal Anda. Tidak mengendalikan ketersediaan alat; ini hanya panduan.
HEARTBEAT.md - daftar periksa Heartbeat
HEARTBEAT.md - daftar periksa Heartbeat
Daftar periksa kecil opsional untuk eksekusi Heartbeat. Pertahankan agar tetap singkat untuk menghindari pemborosan token.
BOOT.md - daftar periksa saat memulai
BOOT.md - daftar periksa saat memulai
Daftar periksa saat memulai yang bersifat opsional dan dijalankan secara otomatis ketika Gateway dimulai ulang (saat hook internal diaktifkan). Pertahankan agar tetap singkat; gunakan alat pesan untuk pengiriman keluar.
BOOTSTRAP.md - ritual eksekusi pertama
BOOTSTRAP.md - ritual eksekusi pertama
Ritual satu kali pada eksekusi pertama. Hanya dibuat untuk ruang kerja yang benar-benar baru. Hapus setelah ritual selesai.
memory/YYYY-MM-DD.md - log memori harian
memory/YYYY-MM-DD.md - log memori harian
Log memori harian (satu berkas per hari). Disarankan untuk membaca hari ini + kemarin saat sesi dimulai.
MEMORY.md - memori jangka panjang yang dikurasi (opsional)
MEMORY.md - memori jangka panjang yang dikurasi (opsional)
Memori jangka panjang yang dikurasi: fakta, preferensi, keputusan, dan ringkasan singkat yang bertahan lama. Simpan log terperinci di
memory/YYYY-MM-DD.md agar alat memori dapat mengambilnya sesuai permintaan tanpa menyuntikkannya ke setiap prompt. Muat MEMORY.md hanya dalam sesi utama yang privat (bukan konteks bersama/grup). Lihat Memori untuk alur kerja dan pengosongan memori otomatis.skills/ - Skills ruang kerja (opsional)
skills/ - Skills ruang kerja (opsional)
Skills khusus ruang kerja. Lokasi skill dengan prioritas tertinggi untuk ruang kerja tersebut, mendahului skill agen proyek, skill agen pribadi, skill terkelola, skill bawaan, dan
skills.load.extraDirs saat nama bertabrakan.canvas/ - berkas UI Canvas (opsional)
canvas/ - berkas UI Canvas (opsional)
Berkas UI Canvas untuk tampilan node (misalnya
canvas/index.html).Jika berkas bootstrap tidak ada, OpenClaw menyuntikkan penanda “berkas tidak ada” ke dalam sesi dan melanjutkan. Berkas bootstrap besar akan dipotong saat disuntikkan; sesuaikan batas dengan
agents.defaults.bootstrapMaxChars (default: 20000) dan agents.defaults.bootstrapTotalMaxChars (default: 60000). openclaw setup dapat membuat ulang default yang tidak ada tanpa menimpa berkas yang sudah ada.Yang TIDAK ada di ruang kerja
Item berikut berada di bawah~/.openclaw/ dan TIDAK boleh di-commit ke repo ruang kerja:
~/.openclaw/openclaw.json(konfigurasi)~/.openclaw/state/openclaw.sqlite(status penyiapan dan atestasi ruang kerja bersama)~/.openclaw/agents/<agentId>/agent/auth-profiles.json(profil autentikasi model: OAuth + kunci API)~/.openclaw/agents/<agentId>/agent/openclaw-agent.sqlite(baris sesi, transkrip, dan status runtime per agen)~/.openclaw/agents/<agentId>/agent/codex-home/(akun runtime Codex per agen, konfigurasi, Skills, plugin, dan status thread native)~/.openclaw/credentials/(status kanal/penyedia beserta data impor OAuth lama)~/.openclaw/agents/<agentId>/sessions/(sumber migrasi lama dan artefak arsip/dukungan)~/.openclaw/skills/(Skills terkelola)
openclaw-workspace-state.json,
.openclaw/workspace-state.json, dan .attested. Runtime saat ini
hanya menggunakan basis data SQLite bersama untuk status tersebut. Jika Doctor melaporkan
salah satu berkas ini, jalankan openclaw doctor --fix; Doctor mengimpor status lama yang valid
dan hanya menghapus sumber setelah memverifikasi baris basis data.
Cadangan Git (disarankan, privat)
Perlakukan ruang kerja sebagai memori privat. Masukkan ke repo git privat agar dicadangkan dan dapat dipulihkan. Jalankan langkah-langkah ini pada mesin tempat Gateway berjalan (di situlah ruang kerja berada).1
Inisialisasi repo
Jika git terinstal, ruang kerja yang benar-benar baru diinisialisasi secara otomatis. Jika ruang kerja ini belum menjadi repo, jalankan:
2
Tambahkan remote privat
- UI web GitHub
- CLI GitHub (gh)
- UI web GitLab
- Buat repositori privat baru di GitHub.
- Jangan inisialisasi dengan README (untuk menghindari konflik penggabungan).
- Salin URL remote HTTPS.
- Tambahkan remote dan lakukan push:
3
Pembaruan berkelanjutan
Jangan commit rahasia
Saran awal untuk.gitignore:
Memindahkan ruang kerja ke mesin baru
1
Clone repo
Clone repo ke path yang diinginkan (default
~/.openclaw/workspace).2
Perbarui konfigurasi
Tetapkan
agents.defaults.workspace ke path tersebut di ~/.openclaw/openclaw.json.3
Isi berkas yang tidak ada
Jalankan
openclaw setup --workspace <path> untuk mengisi berkas yang tidak ada.4
Salin sesi (opsional)
Jika Anda memerlukan sesi, salin
~/.openclaw/agents/<agentId>/agent/openclaw-agent.sqlite
secara terpisah dari mesin lama. Salin ~/.openclaw/agents/<agentId>/sessions/
hanya jika Anda juga memerlukan input migrasi lama atau artefak arsip/dukungan.Catatan lanjutan
- Perutean multiagen dapat menggunakan ruang kerja yang berbeda untuk setiap agen melalui
agents.list[].workspace. Lihat Perutean kanal untuk konfigurasi perutean. - Jika
agents.defaults.sandboxdiaktifkan, sesi non-utama dapat menggunakan ruang kerja sandbox per sesi di bawahagents.defaults.sandbox.workspaceRoot.
Terkait
- Heartbeat - berkas ruang kerja HEARTBEAT.md
- Sandboxing - akses ruang kerja dalam lingkungan yang menggunakan sandbox
- Sesi - path penyimpanan sesi
- Perintah tetap - petunjuk persisten dalam berkas ruang kerja