Plugin
Plugin memperluas OpenClaw dengan kapabilitas baru: channel, provider model, tool, skill, speech, realtime transcription, realtime voice, media-understanding, image generation, video generation, web fetch, web search, dan lainnya. Beberapa plugin bersifat core (disertakan bersama OpenClaw), lainnya bersifat external (dipublikasikan di npm oleh komunitas).Mulai cepat
Jika Anda lebih suka kontrol native chat, aktifkan
commands.plugins: true lalu gunakan:
clawhub:<pkg> yang eksplisit, atau spesifikasi paket polos (ClawHub terlebih dahulu, lalu fallback ke npm).
Jika config tidak valid, instalasi biasanya gagal tertutup dan mengarahkan Anda ke
openclaw doctor --fix. Satu-satunya pengecualian pemulihan adalah jalur reinstall bundled-plugin yang sempit
untuk plugin yang ikut serta dalam
openclaw.install.allowInvalidConfigRecovery.
Jenis plugin
OpenClaw mengenali dua format plugin:| Format | Cara kerjanya | Contoh |
|---|---|---|
| Native | openclaw.plugin.json + modul runtime; dieksekusi dalam proses | Plugin resmi, paket npm komunitas |
| Bundle | Tata letak yang kompatibel dengan Codex/Claude/Cursor; dipetakan ke fitur OpenClaw | .codex-plugin/, .claude-plugin/, .cursor-plugin/ |
openclaw plugins list. Lihat Plugin Bundles untuk detail bundle.
Jika Anda menulis plugin native, mulai dari Building Plugins
dan Plugin SDK Overview.
Plugin resmi
Dapat diinstal (npm)
| Plugin | Paket | Dokumen |
|---|---|---|
| Matrix | @openclaw/matrix | Matrix |
| Microsoft Teams | @openclaw/msteams | Microsoft Teams |
| Nostr | @openclaw/nostr | Nostr |
| Voice Call | @openclaw/voice-call | Voice Call |
| Zalo | @openclaw/zalo | Zalo |
| Zalo Personal | @openclaw/zalouser | Zalo Personal |
Core (disertakan bersama OpenClaw)
Provider model (diaktifkan secara default)
Provider model (diaktifkan secara default)
anthropic, byteplus, cloudflare-ai-gateway, github-copilot, google,
huggingface, kilocode, kimi-coding, minimax, mistral, qwen,
moonshot, nvidia, openai, opencode, opencode-go, openrouter,
qianfan, synthetic, together, venice,
vercel-ai-gateway, volcengine, xiaomi, zaiPlugin memory
Plugin memory
memory-core— pencarian memory bawaan (default melaluiplugins.slots.memory)memory-lancedb— memory jangka panjang install-on-demand dengan auto-recall/capture (aturplugins.slots.memory = "memory-lancedb")
Provider speech (diaktifkan secara default)
Provider speech (diaktifkan secara default)
elevenlabs, microsoftLainnya
Lainnya
browser— plugin browser bawaan untuk browser tool, CLIopenclaw browser, metode gatewaybrowser.request, runtime browser, dan layanan kontrol browser default (diaktifkan secara default; nonaktifkan sebelum menggantinya)copilot-proxy— bridge VS Code Copilot Proxy (nonaktif secara default)
Konfigurasi
| Field | Deskripsi |
|---|---|
enabled | Tombol master (default: true) |
allow | Allowlist plugin (opsional) |
deny | Denylist plugin (opsional; deny menang) |
load.paths | File/direktori plugin tambahan |
slots | Selector slot eksklusif (misalnya memory, contextEngine) |
entries.\<id\> | Tombol per plugin + config |
openclaw gateway default), restart
tersebut biasanya dilakukan secara otomatis sesaat setelah penulisan config selesai.
Status plugin: dinonaktifkan vs hilang vs tidak valid
Status plugin: dinonaktifkan vs hilang vs tidak valid
- Dinonaktifkan: plugin ada tetapi aturan enablement mematikannya. Config tetap dipertahankan.
- Hilang: config mereferensikan ID plugin yang tidak ditemukan oleh discovery.
- Tidak valid: plugin ada tetapi config-nya tidak cocok dengan skema yang dideklarasikan.
Discovery dan prioritas
OpenClaw memindai plugin dalam urutan ini (kecocokan pertama menang):Extension workspace
\<workspace\>/.openclaw/<plugin-root>/*.ts dan \<workspace\>/.openclaw/<plugin-root>/*/index.ts.Aturan enablement
plugins.enabled: falsemenonaktifkan semua pluginplugins.denyselalu menang atas allowplugins.entries.\<id\>.enabled: falsemenonaktifkan plugin tersebut- Plugin yang berasal dari workspace nonaktif secara default (harus diaktifkan secara eksplisit)
- Bundled plugin mengikuti set default-on bawaan kecuali di-override
- Slot eksklusif dapat memaksa plugin yang dipilih untuk slot tersebut menjadi aktif
Slot plugin (kategori eksklusif)
Beberapa kategori bersifat eksklusif (hanya satu yang aktif pada satu waktu):| Slot | Yang dikendalikan | Default |
|---|---|---|
memory | Plugin memory aktif | memory-core |
contextEngine | Engine konteks aktif | legacy (bawaan) |
Referensi CLI
openclaw plugins enable <id>.
--force menimpa plugin atau paket hook yang terinstal di tempat.
Opsi ini tidak didukung dengan --link, yang menggunakan kembali path sumber alih-alih
menyalin ke target instalasi yang dikelola.
--pin hanya untuk npm. Opsi ini tidak didukung dengan --marketplace, karena
instalasi marketplace menyimpan metadata sumber marketplace alih-alih spesifikasi npm.
--dangerously-force-unsafe-install adalah override darurat untuk false
positive dari pemindai kode berbahaya bawaan. Opsi ini memungkinkan alur instalasi
dan pembaruan plugin berlanjut melewati temuan bawaan critical, tetapi tetap
tidak melewati blok kebijakan before_install plugin atau pemblokiran karena kegagalan pemindaian.
Flag CLI ini hanya berlaku untuk alur instalasi/pembaruan plugin. Instalasi dependensi skill berbasis Gateway
menggunakan override permintaan dangerouslyForceUnsafeInstall yang sesuai, sedangkan openclaw skills install
tetap menjadi alur unduh/instalasi skill ClawHub yang terpisah.
Bundle yang kompatibel berpartisipasi dalam alur list/inspect/enable/disable plugin yang sama.
Dukungan runtime saat ini mencakup bundle skills, Claude command-skills,
default settings.json Claude, default Claude .lsp.json dan
lspServers yang dideklarasikan manifest, Cursor command-skills, dan direktori hook Codex yang kompatibel.
openclaw plugins inspect <id> juga melaporkan kapabilitas bundle yang terdeteksi serta
entri server MCP dan LSP yang didukung atau tidak didukung untuk plugin berbasis bundle.
Sumber marketplace dapat berupa nama known-marketplace Claude dari
~/.claude/plugins/known_marketplaces.json, root marketplace lokal atau path
marketplace.json, singkatan GitHub seperti owner/repo, URL repo GitHub,
atau URL git. Untuk marketplace remote, entri plugin harus tetap berada di dalam
repo marketplace yang dikloning dan hanya menggunakan sumber path relatif.
Lihat referensi CLI openclaw plugins untuk detail lengkap.
Ikhtisar API plugin
Plugin native mengekspor objek entry yang mengeksposregister(api). Plugin
lama mungkin masih menggunakan activate(api) sebagai alias lama, tetapi plugin baru sebaiknya
menggunakan register.
register(api) selama aktivasi
plugin. Loader masih melakukan fallback ke activate(api) untuk plugin lama,
tetapi bundled plugin dan plugin eksternal baru sebaiknya memperlakukan register sebagai
kontrak publik.
Metode registrasi yang umum:
| Metode | Yang didaftarkan |
|---|---|
registerProvider | Provider model (LLM) |
registerChannel | Channel chat |
registerTool | Tool agen |
registerHook / on(...) | Hook siklus hidup |
registerSpeechProvider | Text-to-speech / STT |
registerRealtimeTranscriptionProvider | Streaming STT |
registerRealtimeVoiceProvider | Suara realtime duplex |
registerMediaUnderstandingProvider | Analisis gambar/audio |
registerImageGenerationProvider | Image generation |
registerMusicGenerationProvider | Music generation |
registerVideoGenerationProvider | Video generation |
registerWebFetchProvider | Provider web fetch / scrape |
registerWebSearchProvider | Pencarian web |
registerHttpRoute | Endpoint HTTP |
registerCommand / registerCli | Perintah CLI |
registerContextEngine | Engine konteks |
registerService | Layanan latar belakang |
before_tool_call:{ block: true }bersifat terminal; handler prioritas lebih rendah dilewati.before_tool_call:{ block: false }adalah no-op dan tidak menghapus block sebelumnya.before_install:{ block: true }bersifat terminal; handler prioritas lebih rendah dilewati.before_install:{ block: false }adalah no-op dan tidak menghapus block sebelumnya.message_sending:{ cancel: true }bersifat terminal; handler prioritas lebih rendah dilewati.message_sending:{ cancel: false }adalah no-op dan tidak menghapus cancel sebelumnya.
Terkait
- Building Plugins — membuat plugin Anda sendiri
- Plugin Bundles — kompatibilitas bundle Codex/Claude/Cursor
- Plugin Manifest — skema manifest
- Registering Tools — menambahkan tool agen dalam plugin
- Plugin Internals — model kapabilitas dan pipeline pemuatan
- Community Plugins — daftar pihak ketiga