返回顶部
t

task-dispatch任务调度

Task scheduling and dispatching for task boards. Use when setting up periodic task dispatch, checking for dispatchable tasks, creating subagents to execute tasks, or verifying task completion. Supports task board APIs like ClawBoard.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.1.0
安全检测
已通过
116
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

task-dispatch

任务调度

任务管理系统的自动化任务调度与执行。

快速开始

用户说设置任务调度或部署 ClawBoard时,按以下流程引导:

步骤 1:检测环境

bash

检查 Node.js


node --version # 需要 >= 18

检查 ClawBoard 是否已安装

ls -la ~/ClawBoard 2>/dev/null || echo ClawBoard 未安装

步骤 2:部署 ClawBoard(如未安装)

bash

克隆仓库


git clone https://github.com/CCCaptain0129/ClawBoard.git ~/ClawBoard
cd ~/ClawBoard

安装依赖并初始化

./clawboard install

生成访问令牌(自动保存到 .env)

./clawboard token --generate

步骤 3:启动服务

bash
cd ~/ClawBoard
./clawboard start

检查状态

./clawboard status

步骤 4:配置 Agent 环境

在 Agent 工作目录创建 .env 文件:

bash

获取令牌


TOKEN=$(cat ~/ClawBoard/.env | grep BOARDACCESSTOKEN | cut -d= -f2)

写入 Agent 工作目录

echo TASKBOARDAPIURL=http://127.0.0.1:3000 >> ~/.openclaw/workspace-<名称>/.env echo TASKBOARDACCESSTOKEN=$TOKEN >> ~/.openclaw/workspace-<名称>/.env

步骤 5:打开看板

  • - 前端看板: http://127.0.0.1:5173
  • 后端 API: http://127.0.0.1:3000
  • 输入 .env 中的 BOARDACCESSTOKEN 登录

步骤 6:设置定时调度(可选)

用户说设置定时调度时:

json
{
name: ClawBoard 调度巡检,
schedule: { kind: every, everyMs: 300000 },
payload: {
kind: agentTurn,
message: 执行 task-dispatch 调度检查。无任务时返回 HEARTBEAT_OK。
},
sessionTarget: isolated,
delivery: { mode: none }
}



Agent 角色

你是调度员,不是执行者。

  • - 你的职责:规划、调度、验证、更新状态
  • 不是你的职责:亲自实现任务
  • 任务执行:委托给子 Agent
  • 你验证结果并更新任务状态

数据真实来源

内容来源
任务数据API 端点(例如 http://127.0.0.1:3000/api/tasks/...)
任务文件
tasks/*.json(由 API 写入) | | 项目文档 | projects/<项目名称>/docs/ | | 数据真实来源 | 前端看板(仅查看) |

ClawBoard 部署指南

前置条件

  • - Node.js >= 18
  • Git
  • PM2(由 ./clawboard install 自动安装)

安装命令

命令描述
./clawboard install安装依赖,创建 .env
./clawboard start
启动前端 + 后端服务 | | ./clawboard stop | 停止所有服务 | | ./clawboard status | 检查服务健康状态 | | ./clawboard token | 显示当前访问令牌 | | ./clawboard token --generate | 生成新令牌 |

验证检查清单

部署后,验证:

  1. 1. ✅ 后端 API 响应:curl http://127.0.0.1:3000/health
  2. ✅ 前端加载:打开 http://127.0.0.1:5173
  3. ✅ 令牌有效:curl -H Authorization: Bearer $TOKEN http://127.0.0.1:3000/api/tasks/projects
  4. ✅ Agent 的 .env 已配置令牌

常见问题

问题解决方案
端口 3000 被占用lsof -i :3000 然后终止进程
端口 5173 被占用
lsof -i :5173 然后终止进程 | | 令牌无效 | 使用 ./clawboard token --generate 重新生成 | | 服务无法启动 | 检查 ~/ClawBoard/logs/ 中的日志 |

调度操作

概述

此技能使 Agent 能够:

  1. 1. 检查任务看板以获取可调度任务
  2. 生成子 Agent 来执行任务
  3. 验证完成情况并更新任务状态
  4. 持续调度直到无任务剩余(不等待下一次定时触发)

关键原则:持续调度

触发一次 → 循环执行直到无任务 → 结束

而不是:

触发一次 → 派发一个任务 → 等待下次触发

调度循环

python
def dispatch_loop():
while True:
task = selectdispatchabletask()
if not task:
return HEARTBEAT_OK # 本轮结束

# 派发并等待完成
result = spawnandwait(task)

# 验收
if result.success:
update_task(task.id, status=review)
else:
update_task(task.id, status=failed, blockingReason=result.error)

# 【关键】立即继续下一轮,不返回
# 循环会自动检查下一个任务



API 参考

获取项目

GET {TASKBOARDAPIURL}/api/tasks/projects
Authorization: Bearer {TOKEN}

获取任务

GET {TASKBOARDAPIURL}/api/tasks/projects/{projectId}/tasks
Authorization: Bearer {TOKEN}

创建项目

POST {TASKBOARDAPIURL}/api/tasks/projects
Authorization: Bearer {TOKEN}
Content-Type: application/json

{
id: my-project,
name: 我的项目,
description: ...,
taskPrefix: MP,
color: #3B82F6,
icon: 📁
}

创建任务

POST {TASKBOARDAPIURL}/api/tasks/projects/{projectId}/tasks
Authorization: Bearer {TOKEN}
Content-Type: application/json

{
title: 任务标题,
description: ...,
status: todo,
priority: P1,
executionMode: auto,
assignee: agent-id
}

更新任务

PUT {TASKBOARDAPIURL}/api/tasks/projects/{projectId}/tasks/{taskId}
Authorization: Bearer {TOKEN}
Content-Type: application/json

{
status: in-progress,
claimedBy: agent-id
}



任务选择规则

满足所有条件时,任务才可调度:

条件要求
executionModeauto
status
todo 或 in-progress(未认领) |
| assignee | 空或 null |
| claimedBy | 空或 null |
| dependencies | 所有依赖项 status 为 done |

优先级顺序

  1. 1. P0 > P1 > P2 > P3
  2. 相同优先级:较早的 createdAt 优先

子 Agent 执行

准备调度上下文

在生成子 Agent 之前,使用调度模板准备上下文:

完整模板请参见 references/dispatch-template.md

需要填写的必填字段:

  • - 任务标识(来自任务数据)
  • 目标(一句话)
  • 硬约束(禁止事项)
  • 交付物(来自 task.deliverables)
  • 验收标准(来自 task.acceptanceCriteria)
  • 输出格式(completion_signal 块)

生成并等待

使用调度上下文调用 sessions_spawn:

json
{
runtime: subagent,
mode: run,
task: <已填写的调度模板>,
timeoutSeconds: 300
}

主 Agent 应:

  1. 1. 使用任务上下文填写调度模板
  2. 使用模板生成子 Agent
  3. 等待完成(阻塞或轮询)
  4. 从响应中解析 completion_signal
  5. 验证交付物并更新状态

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 task-dispatch-1776023838 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 task-dispatch-1776023838 技能

通过命令行安装

skillhub install task-dispatch-1776023838

下载

⬇ 下载 task-dispatch v1.1.0(免费)

文件大小: 12.66 KB | 发布时间: 2026-4-13 12:16

v1.1.0 最新 2026-4-13 12:16
新增 ClawBoard 部署引导、环境检测、服务启动、配置向导功能

Archiver·手机版·闲社网·闲社论坛·智能体自动化市场· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2026 闲社网·AI智能体论坛·AI自动化解决方案·http://xianshe.com

p2p_official_large
返回顶部