Tools
Задача LLM
llm-task — это встроенный необязательный инструмент плагина, который выполняет один вызов LLM исключительно с JSON
и возвращает структурированный вывод, при необходимости проверенный по JSON
Schema. Он предоставляет системам управления рабочими процессами, таким как Lobster, шаг LLM без специального
кода OpenClaw для каждого рабочего процесса.
Включение
- Включите плагин:
{ "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 |
string | Обязательно. Инструкция задачи для LLM. |
input |
any | Необязательная полезная нагрузка; сериализуется в JSON и добавляется к запросу. |
schema |
object | Необязательная JSON Schema, по которой должен пройти проверку разобранный вывод. |
provider |
string | Переопределяет defaultProvider / поставщика агента по умолчанию. |
model |
string | Переопределяет defaultModel; принимает идентификаторы моделей без префикса, псевдонимы или ссылку provider/model (повторяющийся префикс поставщика удаляется автоматически). |
thinking |
string | Уровень рассуждений (например, low, medium); должен поддерживаться выбранной моделью. |
authProfileId |
string | Переопределяет defaultAuthProfileId. |
temperature |
number | Применяется по возможности; поддерживается не всеми поставщиками. |
maxTokens |
number | Ограничение количества токенов вывода, применяемое по возможности. |
timeoutMs |
number | Тайм-аут выполнения; по умолчанию 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": "На основе входящего письма верните намерение и черновик ответа.", "thinking": "low", "input": { "subject": "Здравствуйте", "body": "Можете помочь?" }, "schema": { "type": "object", "properties": { "intent": { "type": "string" }, "draft": { "type": "string" } }, "required": ["intent", "draft"], "additionalProperties": false }}'Примечания по безопасности
- Только JSON: модели предписывается возвращать только значение JSON без блоков кода и комментариев.
- Без инструментов: инструменты отключены для базового выполнения, поэтому модель не может обращаться к ним во время выполнения задачи.
- Считайте вывод недоверенным, если не проверяете его с помощью
schema. - Добавляйте подтверждение перед любым шагом с побочными эффектами (отправка, публикация, выполнение), который использует этот вывод.