Plugins
Bundel Plugin
OpenClaw dapat memasang plugin dari tiga ekosistem eksternal: Codex, Claude, dan Cursor. Ini disebut bundel — paket konten dan metadata yang dipetakan OpenClaw ke fitur native seperti skills, hooks, dan alat MCP.
Mengapa bundel ada
Banyak plugin berguna dipublikasikan dalam format Codex, Claude, atau Cursor. Alih-alih mengharuskan penulis menulis ulang plugin tersebut sebagai plugin native OpenClaw, OpenClaw mendeteksi format ini dan memetakan konten yang didukung ke dalam set fitur native. Artinya, Anda dapat memasang paket perintah Claude atau bundel skill Codex dan langsung menggunakannya.
Memasang bundel
Install from a directory, archive, or marketplace
# Local directoryopenclaw plugins install ./my-bundle # Archiveopenclaw plugins install ./my-bundle.tgz # Claude marketplaceopenclaw plugins marketplace list <marketplace-name>openclaw plugins install <plugin-name>@<marketplace-name>Verify detection
openclaw plugins listopenclaw plugins inspect <id>Bundel ditampilkan sebagai Format: bundle dengan subtipe codex, claude, atau cursor.
Restart and use
openclaw gateway restartFitur yang dipetakan (skills, hooks, alat MCP, default LSP) tersedia pada sesi berikutnya.
Apa yang dipetakan OpenClaw dari bundel
Tidak semua fitur bundel berjalan di OpenClaw saat ini. Berikut yang berfungsi dan yang terdeteksi tetapi belum dihubungkan.
Didukung saat ini
| Fitur | Cara pemetaannya | Berlaku untuk |
|---|---|---|
| Konten skill | Root skill bundel dimuat sebagai skill OpenClaw normal | Semua format |
| Perintah | commands/ dan .cursor/commands/ diperlakukan sebagai root skill |
Claude, Cursor |
| Paket hook | Tata letak gaya OpenClaw HOOK.md + handler.ts |
Codex |
| Alat MCP | Konfigurasi MCP bundel digabungkan ke pengaturan OpenClaw tertanam; server stdio dan HTTP yang didukung dimuat | Semua format |
| Server LSP | Claude .lsp.json dan lspServers yang dideklarasikan manifes digabungkan ke default LSP OpenClaw tertanam |
Claude |
| Pengaturan | Claude settings.json diimpor sebagai default OpenClaw tertanam |
Claude |
Konten skill
- root skill bundel dimuat sebagai root skill OpenClaw normal
- root
commandsClaude diperlakukan sebagai root skill tambahan - root
.cursor/commandsCursor diperlakukan sebagai root skill tambahan
Artinya, file perintah markdown Claude bekerja melalui pemuat skill OpenClaw normal. Markdown perintah Cursor bekerja melalui jalur yang sama.
Paket hook
- root hook bundel bekerja hanya ketika menggunakan tata letak paket hook
OpenClaw normal. Saat ini, ini terutama adalah kasus yang kompatibel dengan Codex:
HOOK.mdhandler.tsatauhandler.js
MCP untuk OpenClaw tertanam
- bundel yang diaktifkan dapat menyumbangkan konfigurasi server MCP
- OpenClaw menggabungkan konfigurasi MCP bundel ke pengaturan OpenClaw tertanam efektif sebagai
mcpServers - OpenClaw mengekspos alat MCP bundel yang didukung selama giliran agen OpenClaw tertanam dengan meluncurkan server stdio atau terhubung ke server HTTP
- profil alat
codingdanmessagingmenyertakan alat MCP bundel secara default; gunakantools.deny: ["bundle-mcp"]untuk tidak mengikutsertakan agen atau gateway - pengaturan agen tertanam lokal proyek tetap berlaku setelah default bundel, sehingga pengaturan workspace dapat menimpa entri MCP bundel bila diperlukan
- katalog alat MCP bundel diurutkan secara deterministik sebelum pendaftaran, sehingga
perubahan urutan
listTools()upstream tidak mengacak blok alat prompt-cache
Transport
Server MCP dapat menggunakan transport stdio atau HTTP:
Stdio meluncurkan proses anak:
{ "mcp": { "servers": { "my-server": { "command": "node", "args": ["server.js"], "env": { "PORT": "3000" } } } }}HTTP terhubung ke server MCP yang sedang berjalan melalui sse secara default, atau streamable-http ketika diminta:
{ "mcp": { "servers": { "my-server": { "url": "http://localhost:3100/mcp", "transport": "streamable-http", "headers": { "Authorization": "Bearer ${MY_SECRET_TOKEN}" }, "connectionTimeoutMs": 30000 } } }}transportdapat diatur ke"streamable-http"atau"sse"; jika dihilangkan, OpenClaw menggunakanssetype: "http"adalah bentuk downstream native CLI; gunakantransport: "streamable-http"dalam konfigurasi OpenClaw.openclaw mcp setdanopenclaw doctor --fixmenormalisasi alias umum.- hanya skema URL
http:danhttps:yang diizinkan - nilai
headersmendukung interpolasi${ENV_VAR} - entri server dengan
commanddanurlsekaligus ditolak - kredensial URL (userinfo dan parameter kueri) disunting dari deskripsi alat dan log
connectionTimeoutMsmenimpa batas waktu koneksi default 30 detik untuk transport stdio dan HTTP
Penamaan alat
OpenClaw mendaftarkan alat MCP bundel dengan nama yang aman untuk penyedia dalam bentuk
serverName__toolName. Misalnya, server dengan kunci "vigil-harbor" yang mengekspos
alat memory_search didaftarkan sebagai vigil-harbor__memory_search.
- karakter di luar
A-Za-z0-9_-diganti dengan- - fragmen yang akan dimulai dengan nonhuruf diberi prefiks huruf, sehingga kunci
server numerik seperti
12306menjadi prefiks alat yang aman untuk penyedia - prefiks server dibatasi hingga 30 karakter
- nama alat lengkap dibatasi hingga 64 karakter
- nama server kosong menggunakan fallback
mcp - nama hasil sanitasi yang bertabrakan dibedakan dengan sufiks numerik
- urutan alat akhir yang diekspos deterministik berdasarkan nama aman agar giliran embedded-agent berulang tetap stabil terhadap cache
- pemfilteran profil memperlakukan semua alat dari satu server MCP bundel sebagai milik plugin
oleh
bundle-mcp, sehingga allowlist dan deny list profil dapat menyertakan nama alat terekspos individual atau kunci pluginbundle-mcp
Pengaturan OpenClaw tertanam
- Claude
settings.jsondiimpor sebagai pengaturan OpenClaw tertanam default ketika bundel diaktifkan - OpenClaw membersihkan kunci override shell sebelum menerapkannya
Kunci yang disanitasi:
shellPathshellCommandPrefix
LSP OpenClaw tertanam
- bundel Claude yang diaktifkan dapat menyumbangkan konfigurasi server LSP
- OpenClaw memuat
.lsp.jsonditambah pathlspServersapa pun yang dideklarasikan manifes - konfigurasi LSP bundel digabungkan ke default LSP OpenClaw tertanam efektif
- hanya server LSP berbasis stdio yang didukung yang dapat dijalankan saat ini; transport
yang tidak didukung tetap muncul di
openclaw plugins inspect <id>
Terdeteksi tetapi tidak dieksekusi
Ini dikenali dan ditampilkan dalam diagnostik, tetapi OpenClaw tidak menjalankannya:
- Claude
agents, otomatisasihooks.json,outputStyles - Cursor
.cursor/agents,.cursor/hooks.json,.cursor/rules - metadata inline/aplikasi Codex di luar pelaporan kemampuan
Format bundel
Codex bundles
Penanda: .codex-plugin/plugin.json
Konten opsional: skills/, hooks/, .mcp.json, .app.json
Bundel Codex paling cocok dengan OpenClaw ketika menggunakan root skill dan direktori
paket hook gaya OpenClaw (HOOK.md + handler.ts).
Claude bundles
Dua mode deteksi:
- Berbasis manifes:
.claude-plugin/plugin.json - Tanpa manifes: tata letak Claude default (
skills/,commands/,agents/,hooks/,.mcp.json,.lsp.json,settings.json)
Perilaku khusus Claude:
commands/diperlakukan sebagai konten skillsettings.jsondiimpor ke pengaturan OpenClaw tertanam (kunci override shell disanitasi).mcp.jsonmengekspos alat stdio yang didukung ke OpenClaw tertanam.lsp.jsonditambah pathlspServersyang dideklarasikan manifes dimuat ke default LSP OpenClaw tertanamhooks/hooks.jsonterdeteksi tetapi tidak dieksekusi- Path komponen khusus dalam manifes bersifat aditif (memperluas default, bukan menggantikannya)
Cursor bundles
Penanda: .cursor-plugin/plugin.json
Konten opsional: skills/, .cursor/commands/, .cursor/agents/, .cursor/rules/, .cursor/hooks.json, .mcp.json
.cursor/commands/diperlakukan sebagai konten skill.cursor/rules/,.cursor/agents/, dan.cursor/hooks.jsonhanya dideteksi
Presedensi deteksi
OpenClaw memeriksa format plugin native terlebih dahulu:
openclaw.plugin.jsonataupackage.jsonvalid denganopenclaw.extensions— diperlakukan sebagai plugin native- Penanda bundel (
.codex-plugin/,.claude-plugin/, atau tata letak Claude/Cursor default) — diperlakukan sebagai bundel
Jika direktori berisi keduanya, OpenClaw menggunakan jalur native. Ini mencegah paket format ganda dipasang sebagian sebagai bundel.
Dependensi runtime dan pembersihan
- Bundel kompatibel pihak ketiga tidak mendapatkan perbaikan
npm installsaat startup. Bundel tersebut harus dipasang melaluiopenclaw plugins installdan membawa semua yang diperlukan dalam direktori plugin terpasang. - Plugin bundel milik OpenClaw dikirim ringan dalam core atau dapat diunduh melalui pemasang plugin. Startup Gateway tidak pernah menjalankan package manager untuknya.
openclaw doctor --fixmenghapus direktori dependensi staged lama dan dapat memulihkan plugin yang dapat diunduh yang hilang dari indeks plugin lokal ketika konfigurasi mereferensikannya.
Keamanan
Bundel memiliki batas kepercayaan yang lebih sempit daripada plugin native:
- OpenClaw tidak memuat modul runtime bundel arbitrer dalam proses
- Path Skills dan paket hook harus tetap berada di dalam root plugin (diperiksa batasnya)
- File pengaturan dibaca dengan pemeriksaan batas yang sama
- Server MCP stdio yang didukung dapat diluncurkan sebagai subprocess
Ini membuat bundel lebih aman secara default, tetapi Anda tetap harus memperlakukan bundel pihak ketiga sebagai konten tepercaya untuk fitur yang diekspos.
Pemecahan masalah
Bundle is detected but capabilities do not run
Jalankan openclaw plugins inspect <id>. Jika suatu kemampuan tercantum tetapi ditandai
belum dihubungkan, itu adalah batas produk — bukan instalasi yang rusak.
Claude command files do not appear
Pastikan bundel diaktifkan dan file markdown berada di dalam root
commands/ atau skills/ yang terdeteksi.
Claude settings do not apply
Hanya pengaturan OpenClaw tertanam dari settings.json yang didukung. OpenClaw tidak
memperlakukan pengaturan bundel sebagai patch konfigurasi mentah.
Claude hooks do not execute
hooks/hooks.json hanya dideteksi. Jika Anda memerlukan hook yang dapat dijalankan, gunakan
tata letak paket hook OpenClaw atau kirim plugin native.
Terkait
- Pasang dan Konfigurasikan Plugin
- Membangun Plugin — buat plugin native
- Manifes Plugin — skema manifes native