Tools
Завдання LLM
llm-task — це вбудований необов’язковий інструмент Plugin, який виконує один виклик LLM лише з JSON і повертає структурований результат, який за потреби перевіряється за схемою JSON Schema. Він надає рушіям робочих процесів на кшталт Lobster крок LLM без написання спеціального коду OpenClaw для кожного робочого процесу.
Увімкнення
- Увімкніть Plugin:
{ "plugins": { "entries": { "llm-task": { "enabled": true } } }}- Дозвольте інструмент:
{ "tools": { "alsoAllow": ["llm-task"] }}alsoAllow додає llm-task до активного профілю інструментів, не обмежуючи інші основні інструменти. Натомість використовуйте tools.allow, лише якщо потрібен обмежувальний режим списку дозволених інструментів.
Конфігурація (необов’язково)
{ "plugins": { "entries": { "llm-task": { "enabled": true, "config": { "defaultProvider": "openai", "defaultModel": "gpt-5.6-sol", "defaultAuthProfileId": "main", "allowedModels": ["openai/gpt-5.6-sol"], "maxTokens": 800, "timeoutMs": 30000 } } } }}allowedModels — це список дозволених рядків provider/model; запит будь-якої іншої моделі відхиляється. Усі інші ключі є резервними значеннями для окремих викликів і використовуються, коли у виклику інструмента відповідний параметр пропущено.
Параметри інструмента
| Параметр | Тип | Примітки |
|---|---|---|
prompt |
рядок | Обов’язковий. Інструкція із завданням для LLM. |
input |
будь-який | Необов’язкові вхідні дані; серіалізуються в JSON і додаються до запиту. |
schema |
об’єкт | Необов’язкова схема JSON Schema, якій має відповідати розібраний результат. |
provider |
рядок | Перевизначає defaultProvider / типового постачальника агента. |
model |
рядок | Перевизначає defaultModel; приймає ідентифікатори моделей без префікса, псевдоніми або посилання provider/model (дубльований префікс постачальника автоматично видаляється). |
thinking |
рядок | Рівень міркування (наприклад, low, medium); має підтримуватися визначеною моделлю. |
authProfileId |
рядок | Перевизначає defaultAuthProfileId. |
temperature |
число | Застосовується за можливості; підтримується не всіма постачальниками. |
maxTokens |
число | Орієнтовне обмеження кількості токенів у результаті. |
timeoutMs |
число | Час очікування виконання; типове значення — 30000. |
Результат
Повертає details.json (розібраний JSON, перевірений за схемою), а також details.provider і details.model, які вказують, що саме було фактично виконано.
Приклад: крок робочого процесу Lobster
Важливе обмеження
У наведеному нижче прикладі передбачається, що автономний Lobster CLI працює в середовищі, де openclaw.invoke уже має правильний контекст URL Gateway та автентифікації.
Для вбудованого в OpenClaw інтегрованого засобу запуску Lobster цей шаблон із вкладеним CLI наразі ненадійний:
openclaw.invoke --tool llm-task --action json --args-json '{ ... }'Доки інтегрований Lobster не матиме підтримуваного мосту для цього потоку, віддавайте перевагу одному з таких варіантів:
- прямі виклики інструмента
llm-taskпоза Lobster; - кроки Lobster, які не залежать від вкладених викликів
openclaw.invoke.
Приклад для автономного Lobster CLI:
openclaw.invoke --tool llm-task --action json --args-json '{ "prompt": "Given the input email, return intent and draft.", "thinking": "low", "input": { "subject": "Hello", "body": "Can you help?" }, "schema": { "type": "object", "properties": { "intent": { "type": "string" }, "draft": { "type": "string" } }, "required": ["intent", "draft"], "additionalProperties": false }}'Зауваження щодо безпеки
- Лише JSON: модель отримує вказівку повертати лише значення JSON без блоків коду та коментарів.
- Без інструментів: інструменти вимкнено для базового виконання, тому модель не може викликати їх під час виконання завдання.
- Вважайте результат ненадійним, якщо не перевіряєте його за допомогою
schema. - Розміщуйте підтвердження перед будь-яким кроком із побічними ефектами (надсилання, публікація, виконання), який використовує цей результат.