Skip to content

LLM Task

llm-task 是一个可选插件工具,运行纯 JSON 输出的 LLM 任务并返回结构化输出(可选择根据 JSON Schema 验证)。

这非常适合用在 Lobster 等工作流引擎中:无需为每个工作流编写自定义 OpenClaw 代码,即可添加单个 LLM 步骤。

启用插件

第一步:启用插件

json
{
  "plugins": {
    "entries": {
      "llm-task": { "enabled": true }
    }
  }
}

第二步:将工具加入允许列表(该工具以 optional: true 注册):

json
{
  "agents": {
    "list": [
      {
        "id": "main",
        "tools": { "allow": ["llm-task"] }
      }
    ]
  }
}

配置(可选)

json
{
  "plugins": {
    "entries": {
      "llm-task": {
        "enabled": true,
        "config": {
          "defaultProvider": "openai-codex",
          "defaultModel": "gpt-5.4",
          "defaultAuthProfileId": "main",
          "allowedModels": ["openai-codex/gpt-5.4"],
          "maxTokens": 800,
          "timeoutMs": 30000
        }
      }
    }
  }
}

allowedModelsprovider/model 字符串的允许列表。如果设置,列表之外的任何请求都会被拒绝。

工具参数

  • prompt(字符串,必填)
  • input(任意类型,可选)
  • schema(对象,可选 JSON Schema)
  • provider(字符串,可选)
  • model(字符串,可选)
  • thinking(字符串,可选)
  • authProfileId(字符串,可选)
  • temperature(数字,可选)
  • maxTokens(数字,可选)
  • timeoutMs(数字,可选)

thinking 接受标准 OpenClaw 推理预设,例如 lowmedium

输出

返回包含已解析 JSON 的 details.json(提供 schema 时会对其进行验证)。

示例:Lobster 工作流步骤

lobster
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 验证,否则将输出视为不可信
  • 在任何有副作用的步骤(发送、发布、exec)之前放置审批步骤

小龙虾开发技巧:llm-task 是让你的龙虾工作流变得"可预测"的关键——强制 JSON 输出 + Schema 验证,让 AI 步骤的输入输出格式跟普通 API 调用一样规范,大幅降低下游步骤出错的概率。