{
  "name": "agent_dispatch",
  "title": "智能体调度",
  "description": "根据任务需求匹配合适的智能体资源，综合考虑技能匹配度和负载情况",
  "group": "agent",
  "version": "1.0.0",
  "input_schema": {
    "type": "object",
    "properties": {
      "task": {
        "type": "string",
        "description": "需要执行的任务描述"
      }
    },
    "required": ["task"]
  },
  "output_schema": {
    "type": "object",
    "properties": {
      "content": {
        "type": "string",
        "description": "执行结果"
      }
    }
  },
  "steps": [
    {
      "id": "check_input",
      "description": "校验任务描述非空",
      "operator": "validator",
      "handler": "required",
      "params": {
        "field": "task",
        "value": "{{ $input.task }}"
      }
    },
    {
      "id": "generate",
      "description": "按调度流程生成执行结果",
      "operator": "executor",
      "handler": "llm",
      "on_error": {
        "retry": 2,
        "retry_delay": 500
      },
      "params": {
        "system_prompt": "{{ $meta.system_prompt }}",
        "user_prompt": "{{ $input.task }}\n\n请按流程执行：分析任务需求、获取所有智能体清单、评估各智能体能力、按技能匹配度×50%+工具匹配度×20%+负载状态×30%评分、分配任务给最佳匹配智能体。"
      }
    },
    {
      "id": "validate",
      "description": "校验生成内容非空",
      "operator": "validator",
      "handler": "required",
      "params": {
        "field": "content",
        "value": "{{ $steps.generate.content }}"
      }
    },
    {
      "id": "check_valid",
      "description": "校验失败则中止",
      "operator": "dispatcher",
      "handler": "condition",
      "params": {
        "source": "{{ $steps.validate.valid }}",
        "operator": "truthy",
        "else_jump": "end"
      }
    }
  ]
}
