Інструменти та Plugins
Усе, що агент робить, окрім генерації тексту, відбувається через інструменти. Інструменти — це спосіб, у який агент читає файли, запускає команди, переглядає веб, надсилає повідомлення та взаємодіє з пристроями.Інструменти, Skills і plugins
OpenClaw має три шари, які працюють разом:Інструменти — це те, що викликає агент
Інструмент — це типізована функція, яку агент може викликати (наприклад
exec, browser,
web_search, message). OpenClaw постачається з набором вбудованих інструментів, а
plugins можуть реєструвати додаткові.Агент бачить інструменти як структуровані визначення функцій, надіслані до API моделі.Skills навчають агента, коли і як
Skill — це markdown-файл (
SKILL.md), який вбудовується в системний промпт.
Skills дають агенту контекст, обмеження та покрокові вказівки для
ефективного використання інструментів. Skills зберігаються у вашому робочому просторі, у спільних папках
або постачаються всередині plugins.Довідник Skills | Створення SkillsPlugins пакують усе разом
Plugin — це пакет, який може реєструвати будь-яку комбінацію можливостей:
канали, провайдерів моделей, інструменти, skills, мовлення, транскрипцію в реальному часі,
голос у реальному часі, розуміння медіа, генерацію зображень, генерацію відео,
web fetch, web search тощо. Деякі plugins є core (постачаються разом з
OpenClaw), інші — external (опубліковані спільнотою в npm).Установлення й налаштування plugins | Створіть власний
Вбудовані інструменти
Ці інструменти постачаються разом з OpenClaw і доступні без встановлення будь-яких plugins:| Інструмент | Що робить | Сторінка |
|---|---|---|
exec / process | Запускає shell-команди, керує фоновими процесами | Exec |
code_execution | Виконує ізольований віддалений Python-аналіз | Code Execution |
browser | Керує браузером Chromium (навігація, кліки, знімки екрана) | Browser |
web_search / x_search / web_fetch | Шукає у вебі, шукає дописи в X, отримує вміст сторінок | Web |
read / write / edit | Файловий I/O у робочому просторі | |
apply_patch | Багатофрагментні патчі файлів | Apply Patch |
message | Надсилає повідомлення через усі канали | Agent Send |
canvas | Керує node Canvas (present, eval, snapshot) | |
nodes | Виявляє та вибирає спарені пристрої | |
cron / gateway | Керує запланованими завданнями; перевіряє, патчить, перезапускає або оновлює gateway | |
image / image_generate | Аналізує або генерує зображення | Image Generation |
video_generate | Генерує відео | Video Generation |
tts | Одноразове перетворення тексту на мовлення | TTS |
sessions_* / subagents / agents_list | Керування сесіями, статусом і оркестрацією субагентів | Sub-agents |
session_status | Полегшене зчитування у стилі /status і перевизначення моделі сесії | Session Tools |
image для аналізу та image_generate для генерації або редагування. Якщо ви націлюєтеся на openai/*, google/*, fal/* або іншого нестандартного провайдера зображень, спочатку налаштуйте автентифікацію/API-ключ цього провайдера.
Для роботи з відео використовуйте video_generate. Якщо ви націлюєтеся на qwen/* або іншого нестандартного провайдера відео, спочатку налаштуйте автентифікацію/API-ключ цього провайдера.
session_status — це полегшений інструмент статусу/зчитування в групі sessions.
Він відповідає на запитання у стилі /status про поточну сесію та може
за потреби встановлювати перевизначення моделі для окремої сесії; model=default очищає це
перевизначення. Як і /status, він може дозаповнювати розріджені лічильники токенів/кешу та
мітку активної моделі середовища виконання з останнього запису використання транскрипту.
gateway — це інструмент середовища виконання лише для власника для операцій gateway:
config.schema.lookupдля одного піддерева конфігурації в межах шляху перед редагуваннямconfig.getдля поточного знімка конфігурації + хешаconfig.patchдля часткових оновлень конфігурації з перезапускомconfig.applyлише для повної заміни конфігураціїupdate.runдля явного самооновлення + перезапуску
config.schema.lookup, а потім config.patch. Використовуйте
config.apply лише тоді, коли ви навмисно замінюєте всю конфігурацію.
Інструмент також відмовляється змінювати tools.exec.ask або tools.exec.security;
застарілі псевдоніми tools.bash.* нормалізуються до тих самих захищених шляхів exec.
Інструменти, надані plugins
Plugins можуть реєструвати додаткові інструменти. Деякі приклади:- Lobster — типізоване середовище виконання робочих процесів із відновлюваними погодженнями
- LLM Task — крок LLM лише з JSON для структурованого виводу
- Diffs — переглядач і рендерер дифів
- OpenProse — оркестрація робочих процесів із пріоритетом markdown
Конфігурація інструментів
Списки дозволів і заборон
Керуйте тим, які інструменти агент може викликати, черезtools.allow / tools.deny у
конфігурації. Заборона завжди має пріоритет над дозволом.
Профілі інструментів
tools.profile задає базовий allowlist перед застосуванням allow/deny.
Перевизначення для окремого агента: agents.list[].tools.profile.
| Профіль | Що включає |
|---|---|
full | Без обмежень (те саме, що не вказано) |
coding | group:fs, group:runtime, group:web, group:sessions, group:memory, cron, image, image_generate, video_generate |
messaging | group:messaging, sessions_list, sessions_history, sessions_send, session_status |
minimal | лише session_status |
Групи інструментів
Використовуйте скороченняgroup:* у списках allow/deny:
| Група | Інструменти |
|---|---|
group:runtime | exec, process, code_execution (bash приймається як псевдонім для exec) |
group:fs | read, write, edit, apply_patch |
group:sessions | sessions_list, sessions_history, sessions_send, sessions_spawn, sessions_yield, subagents, session_status |
group:memory | memory_search, memory_get |
group:web | web_search, x_search, web_fetch |
group:ui | browser, canvas |
group:automation | cron, gateway |
group:messaging | message |
group:nodes | nodes |
group:agents | agents_list |
group:media | image, image_generate, video_generate, tts |
group:openclaw | Усі вбудовані інструменти OpenClaw (без інструментів plugins) |
sessions_history повертає обмежене, відфільтроване з погляду безпеки подання для згадування. Воно видаляє
теги thinking, каркас <relevant-memories>, XML-payload викликів інструментів у простому тексті
(включно з <tool_call>...</tool_call>,
<function_call>...</function_call>, <tool_calls>...</tool_calls>,
<function_calls>...</function_calls> і усіченими блоками викликів інструментів),
понижений каркас викликів інструментів, витеклі ASCII/full-width токени керування моделлю
та некоректний XML викликів інструментів MiniMax з тексту помічника, а потім застосовує
редагування/усічення та, за потреби, заповнювачі надто великих рядків замість того, щоб діяти
як сирий дамп транскрипту.
Обмеження для окремих провайдерів
Використовуйтеtools.byProvider, щоб обмежувати інструменти для конкретних провайдерів без
зміни глобальних значень за замовчуванням: