Veritas Kanban 实战评测 — OpenClaw Agent 任务编排层

> 评测时间: 2026-05-05 | 版本: 4.1.0 | 作者: Brad Groux (Digital Meld)

> 仓库: | 许可证: MIT

1. 项目概述

Veritas Kanban 是一个 local-first 的 AI Agent 任务编排平台,专为 OpenClaw 生态设计。它的核心思路是:未来的 PM 是 AI Agent——人类定方向,agent 拆任务、派活、追踪进度、交叉 review,整个 sprint 周期可以无人参与。

核心能力矩阵

能力说明
Kanban 看板可视化任务状态流转(todo → in-progress → done → blocked)
REST API完整 CRUD:项目、Sprint、Task、Comment
MCP Server33+ 工具,agent 可直接通过 MCP 协议调用
OpenClaw 原生集成`sessions_spawn` 启动 worker → 完成后自动回调
多 Agent 编排PM agent 拆任务 → worker agent 执行 → 自动汇报
Squad ChatAgent 间消息传递、spawn/completed/failed 系统事件
Sprint 规划Epic → Sprint → Task 标准流程
跨模型 Code Review强制 Claude ↔ GPT 交叉 review
Agent 治理策略引擎、行为漂移检测、决策审计、输出评估

技术栈

2. 安装过程

2.1 环境准备


# Node.js v24.13.0 (满足 >= 22.0.0)
node --version  # v24.13.0

# 安装 pnpm
npm install -g pnpm

# 克隆仓库
cd /home/jay/clawd/projects
git clone https://github.com/BradGroux/veritas-kanban.git

2.2 配置与构建


cd veritas-kanban

# 安装 1146 个依赖包
pnpm install  # ~25秒,6 个 workspace packages

# ⚠️ 关键:必须先编译 shared 包
pnpm --filter @veritas-kanban/shared build  # TypeScript → dist/

# 生成密钥并配置
cp .env.example server/.env
# VERITAS_ADMIN_KEY=<随机 32 字节 hex>
# VERITAS_JWT_SECRET=<随机 64 字节 hex>
# VERITAS_AUTH_ENABLED=false  (本地开发关闭认证)

2.3 启动与排错


pnpm dev  # concurrently 启动 server + web

遇到的坑

问题原因解决
`ERR_MODULE_NOT_FOUND: @veritas-kanban/shared`shared 包未编译`pnpm --filter shared build`
`EADDRINUSE: port 3001`Vite 抢占了 server 的默认端口(3000 被占用后 Vite 自动切到 3001)清理旧进程后重新启动

最终运行状态


✅ Server API:  http://localhost:3001  →  {"ok":true,"version":"4.1.0"}
✅ Web UI:     http://localhost:3000  →  Vite dev server (仅 localhost)

3. API 探索

3.1 健康检查


curl http://localhost:3001/api/health
# {"ok":true,"service":"veritas-kanban","version":"4.1.0","uptimeMs":5219247}

3.2 预装数据

系统启动后自动创建 Welcome 项目 + 3 个入门任务:

任务类型状态
Connect your first agentsetuptodo
Try the task lifecycleworkflowin-progress
Review agent safety settingsgovernanceblocked

3.3 API 端点速查

方法路径说明
`GET``/api/health`健康检查
`GET/POST``/api/projects`项目列表/创建
`GET/POST``/api/sprints`Sprint 列表/创建
`GET/POST``/api/tasks`任务列表/创建
`GET/PATCH``/api/tasks/:id`任务详情/更新
`POST``/api/tasks/:id/comments`添加评论(需 `author` + `text` 字段)

3.4 Comment API 注意事项


# ❌ 错误:缺少 author 或用了 body 字段
curl -X POST /api/tasks/:id/comments -d '{"body":"test"}'
# → VALIDATION_ERROR: author Required, text Required

# ✅ 正确格式
curl -X POST /api/tasks/:id/comments \
  -d '{"author":"PM-Agent","text":"审核通过"}'

4. 实战 Sprint 编排

4.1 创建项目

Babel 播客系统 为真实场景,创建优化 Sprint:


# 创建项目
curl -X POST /api/projects -d '{"id":"babel-optimize","label":"Babel播客优化","color":"bg-purple-500/20"}'
# → {"id":"babel-6yTehN", ...}

# 创建 Sprint
curl -X POST /api/sprints -d '{"label":"Sprint 1 - 核心优化","project":"babel-6yTehN","goal":"提升转录速度30%,降低TTS成本50%","startDate":"2026-05-05","endDate":"2026-05-19"}'
# → {"id":"sprint-1-FNQaR_", ...}

4.2 任务拆解(PM Agent 视角)

PM Agent 将需求拆解为 Epic + 子任务:


Sprint: Sprint 1 - 核心优化 (6 tasks)
├── 🎯 Epic: Whisper转录加速30%              [todo, high]
│   ├── 📊 Benchmark现有性能基线              [done, worker-1]
│   ├── 🧪 测试Whisper模型量化方案            [todo, worker-2]
│   └── ⚡ 批处理pipeline优化                 [todo, worker-1]
├── 💰 TTS成本降低50%                        [in-progress, worker-research]
└── 🖥️ 播客网站搜索+播放列表                 [todo, medium]

4.3 状态流转演示


# Worker 领取任务
curl -X PATCH /api/tasks/task_20260505_qIQFtk -d '{"status":"in-progress"}'
# → status: in-progress

# Worker 完成 + 添加评论
curl -X POST /api/tasks/task_20260505_qIQFtk/comments \
  -d '{"author":"Worker-1 (Claude)","text":"✅ Benchmark完成。..."}'

curl -X PATCH /api/tasks/task_20260505_qIQFtk -d '{"status":"done"}'

# PM Agent 审核
curl -X POST /api/tasks/task_20260505_qIQFtk/comments \
  -d '{"author":"PM-Agent (GPT-5.5)","text":"审核通过。建议INT8量化。@Worker-2 开始量化测试。"}'

5. 真实 Agent 协作流程

> ⚠️ 这节区别于第 4 节的 curl 模拟——下面是 真正的 subagent spawn + VK 回写

5.1 流程设计


PM Agent (Tony/主会话)
  │
  ├─ (1) 读取 VK Sprint → 发现 todo: 💰 TTS成本降低50%
  ├─ (2) PATCH VK → 状态改为 in-progress
  ├─ (3) 添加 VK 评论: "已派遣 worker agent"
  ├─ (4) sessions_spawn → vk-worker-tts-research (独立 subagent)
  │
  └─ 等待 worker 完成...
      │
      ▼
  Worker Agent (vk-worker-tts-research)
    ├─ web_search: Fish-Speech / Edge-TTS 评测
    ├─ web_fetch: 2-3 篇对比文章
    ├─ 生成 TTS 方案对比报告
    └─ 输出 "VK_TASK_DONE: task_20260505_rYPnmO"
      │
      ▼
  PM Agent (Tony/主会话)
    └─ 收到 subagent 结果
       ├─ PATCH VK → 状态改为 done
       ├─ 添加 VK 评论: Worker 的完整报告摘要
       └─ 汇报 Jay

5.2 PM Agent 侧代码


# 步骤 1: 读取 Sprint
curl "http://localhost:3001/api/tasks?project=babel-6yTehN&status=todo"

# 步骤 2: 推进状态
curl -X PATCH /api/tasks/task_20260505_rYPnmO \
  -d '{"status":"in-progress","assignee":"worker-research"}'

# 步骤 3: 记录派遣
curl -X POST /api/tasks/task_20260505_rYPnmO/comments \
  -d '{"author":"PM-Agent (Tony)","text":"🚀 已派遣 worker agent 执行 TTS 方案对比研究。"}'

# 步骤 4: 在 OpenClaw 中 spawn subagent
# sessions_spawn(task="对比 OpenAI TTS vs Fish-Speech vs Edge-TTS...", mode="run")

5.3 Worker Agent 任务描述

Worker agent 收到完整的任务指令:

6. 评测总结

✅ 优势

维度评价
**部署效率**⭐⭐⭐⭐⭐ — 一条 `pnpm dev` 即可,monorepo 结构清晰
**API 完整性**⭐⭐⭐⭐ — 覆盖项目/任务/评论全生命周期,但 assignee 字段不稳定
**Agent 集成**⭐⭐⭐⭐ — REST API 够用,MCP Server 自带 33+ 工具,OpenClaw 原生支持
**设计理念**⭐⭐⭐⭐⭐ — "Agent 当 PM" 的思路前瞻,Squad Chat 和跨模型 review 是亮点
**文档质量**⭐⭐⭐⭐ — README、CONTRIBUTING、INTEGRATION.md 齐全,CHANGELOG 7 万字节

⚠️ 踩坑记录

问题影响解决
shared 包未编译导致启动失败文档已在 README 中标注,需注意执行顺序
Vite 与 server 端口冲突需清理旧进程或指定不同端口
Comment API 用 `body` 而非 `text`API 文档不够明确,靠试错发现
assignee 字段 PATCH 无效可能只支持特定角色或需要额外权限
Web UI 仅 localhost生产环境需 nginx 反代,开发用 SSH 端口转发

🔮 生产化建议

1. 持久化运行: 用 pm2 或 systemd 守护 pnpm dev/pnpm build

2. 外部访问: nginx 反代 localhost:3001vk.jaylab.io

3. Auth 开启: 生产环境必须启用 VERITAS_AUTH_ENABLED=true

4. MCP 集成: 配置 OpenClaw MCP server 让 agent 直接调用 VK 工具

5. 定期备份: VK 数据存在 .veritas-kanban/ 目录,Git 备份或 rsync

7. 结论

Veritas Kanban 是一个设计优秀的 Agent 任务编排层,特别适合以下场景:

在当前 OpenClaw 生态中,它填补了「Agent 任务编排」这一关键空白。虽然还在早期阶段(v4.1.0),但 API 稳定、设计理念成熟,值得投入时间深入集成。

下一步建议: 配置 MCP Server,让 OpenClaw agent 直接调用 VK 工具;将日常重复工作流(日报、播客、复盘)逐步迁移到 VK Sprint 管理。

评测环境: Ubuntu 24.04, Node.js v24.13.0, pnpm 9.x | 项目路径: /home/jay/clawd/projects/veritas-kanban