Langsung ke konten utama

Tool dan Plugin

Semua yang dilakukan agen selain menghasilkan teks terjadi melalui tool. Tool adalah cara agen membaca file, menjalankan perintah, menjelajahi web, mengirim pesan, dan berinteraksi dengan perangkat.

Tool, Skills, dan plugin

OpenClaw memiliki tiga lapisan yang bekerja bersama:
1

Tool adalah yang dipanggil agen

Tool adalah fungsi bertipe yang dapat dipanggil agen (misalnya exec, browser, web_search, message). OpenClaw menyediakan sekumpulan tool bawaan dan plugin dapat mendaftarkan tool tambahan.Agen melihat tool sebagai definisi fungsi terstruktur yang dikirim ke API model.
2

Skills mengajari agen kapan dan bagaimana

Skill adalah file markdown (SKILL.md) yang disuntikkan ke prompt sistem. Skills memberi agen konteks, batasan, dan panduan langkah demi langkah untuk menggunakan tool secara efektif. Skills berada di workspace Anda, di folder bersama, atau dikirim di dalam plugin.Referensi Skills | Membuat skills
3

Plugin mengemas semuanya menjadi satu

Plugin adalah paket yang dapat mendaftarkan kombinasi kapabilitas apa pun: channel, provider model, tool, Skills, speech, transkripsi realtime, suara realtime, pemahaman media, pembuatan gambar, pembuatan video, web fetch, web search, dan lainnya. Beberapa plugin bersifat inti (dikirim bersama OpenClaw), lainnya bersifat eksternal (dipublikasikan di npm oleh komunitas).Pasang dan konfigurasikan plugin | Bangun plugin Anda sendiri

Tool bawaan

Tool ini dikirim bersama OpenClaw dan tersedia tanpa memasang plugin apa pun:
ToolFungsinyaHalaman
exec / processMenjalankan perintah shell, mengelola proses latar belakangExec
code_executionMenjalankan analisis Python jarak jauh dalam sandboxCode Execution
browserMengendalikan browser Chromium (navigasi, klik, tangkapan layar)Browser
web_search / x_search / web_fetchMenelusuri web, menelusuri postingan X, mengambil konten halamanWeb
read / write / editI/O file di workspace
apply_patchPatch file multi-hunkApply Patch
messageMengirim pesan ke semua channelAgent Send
canvasMengoperasikan node Canvas (present, eval, snapshot)
nodesMenemukan dan menargetkan perangkat yang dipasangkan
cron / gatewayMengelola job terjadwal; memeriksa, mem-patch, memulai ulang, atau memperbarui Gateway
image / image_generateMenganalisis atau membuat gambarImage Generation
music_generateMembuat trek musikMusic Generation
video_generateMembuat videoVideo Generation
ttsKonversi text-to-speech sekali jalanTTS
sessions_* / subagents / agents_listManajemen sesi, status, dan orkestrasi subagenSub-agents
session_statusPembacaan ringan bergaya /status dan override model sesiSession Tools
Untuk pekerjaan gambar, gunakan image untuk analisis dan image_generate untuk pembuatan atau pengeditan. Jika Anda menargetkan openai/*, google/*, fal/*, atau provider gambar non-default lain, konfigurasikan autentikasi/kunci API provider tersebut terlebih dahulu. Untuk pekerjaan musik, gunakan music_generate. Jika Anda menargetkan google/*, minimax/*, atau provider musik non-default lain, konfigurasikan autentikasi/kunci API provider tersebut terlebih dahulu. Untuk pekerjaan video, gunakan video_generate. Jika Anda menargetkan qwen/* atau provider video non-default lain, konfigurasikan autentikasi/kunci API provider tersebut terlebih dahulu. Untuk pembuatan audio berbasis workflow, gunakan music_generate saat plugin seperti ComfyUI mendaftarkannya. Ini terpisah dari tts, yang merupakan text-to-speech. session_status adalah tool status/pembacaan ringan dalam grup sessions. Tool ini menjawab pertanyaan bergaya /status tentang sesi saat ini dan dapat secara opsional menetapkan override model per sesi; model=default menghapus override tersebut. Seperti /status, tool ini dapat mengisi balik penghitung token/cache yang jarang dan label model runtime aktif dari entri penggunaan transkrip terbaru. gateway adalah tool runtime khusus pemilik untuk operasi Gateway:
  • config.schema.lookup untuk satu subtree config yang dicakup path sebelum pengeditan
  • config.get untuk snapshot + hash config saat ini
  • config.patch untuk pembaruan config parsial dengan restart
  • config.apply hanya untuk penggantian config penuh
  • update.run untuk self-update + restart eksplisit
Untuk perubahan parsial, utamakan config.schema.lookup lalu config.patch. Gunakan config.apply hanya jika Anda memang sengaja mengganti seluruh config. Tool ini juga menolak mengubah tools.exec.ask atau tools.exec.security; alias lama tools.bash.* dinormalisasi ke path exec terlindungi yang sama.

Tool yang disediakan plugin

Plugin dapat mendaftarkan tool tambahan. Beberapa contoh:
  • Diffs — penampil dan perender diff
  • LLM Task — langkah LLM hanya-JSON untuk output terstruktur
  • Lobster — runtime workflow bertipe dengan persetujuan yang dapat dilanjutkan
  • Music Generation — tool music_generate bersama dengan provider berbasis workflow
  • OpenProse — orkestrasi workflow yang mengutamakan markdown
  • Tokenjuice — hasil tool exec dan bash yang ringkas untuk keluaran yang berisik

Konfigurasi tool

Daftar izin dan tolak

Kontrol tool mana yang dapat dipanggil agen melalui tools.allow / tools.deny dalam config. Penolakan selalu mengalahkan izin.
{
  tools: {
    allow: ["group:fs", "browser", "web_search"],
    deny: ["exec"],
  },
}

Profil tool

tools.profile menetapkan allowlist dasar sebelum allow/deny diterapkan. Override per agen: agents.list[].tools.profile.
ProfilCakupannya
fullTanpa pembatasan (sama seperti tidak disetel)
codinggroup:fs, group:runtime, group:web, group:sessions, group:memory, cron, image, image_generate, music_generate, video_generate
messaginggroup:messaging, sessions_list, sessions_history, sessions_send, session_status
minimalHanya session_status

Grup tool

Gunakan singkatan group:* dalam daftar allow/deny:
GrupTool
group:runtimeexec, process, code_execution (bash diterima sebagai alias untuk exec)
group:fsread, write, edit, apply_patch
group:sessionssessions_list, sessions_history, sessions_send, sessions_spawn, sessions_yield, subagents, session_status
group:memorymemory_search, memory_get
group:webweb_search, x_search, web_fetch
group:uibrowser, canvas
group:automationcron, gateway
group:messagingmessage
group:nodesnodes
group:agentsagents_list
group:mediaimage, image_generate, music_generate, video_generate, tts
group:openclawSemua tool OpenClaw bawaan (tidak termasuk tool plugin)
sessions_history mengembalikan tampilan recall terbatas yang difilter demi keamanan. Tool ini menghapus thinking tag, scaffolding <relevant-memories>, payload XML pemanggilan tool dalam teks biasa (termasuk <tool_call>...</tool_call>, <function_call>...</function_call>, <tool_calls>...</tool_calls>, <function_calls>...</function_calls>, dan blok pemanggilan tool yang dipotong), scaffolding pemanggilan tool yang diturunkan, token kontrol model ASCII/full-width yang bocor, serta XML pemanggilan tool MiniMax yang cacat dari teks asisten, lalu menerapkan redaksi/pemotongan dan kemungkinan placeholder baris yang terlalu besar alih-alih bertindak sebagai dump transkrip mentah.

Pembatasan khusus provider

Gunakan tools.byProvider untuk membatasi tool bagi provider tertentu tanpa mengubah default global:
{
  tools: {
    profile: "coding",
    byProvider: {
      "google-antigravity": { profile: "minimal" },
    },
  },
}