Town CLIPlugin

workboard 插件

用结构化快照展示各个 agent 对外呈现出的状态与近期变化

workboard 插件

workboard 是一个内建 plugin,用来把单个 agent 的对外状态整理成结构化快照,供 Console 聚合和 UI 组件消费。

这页保留为命令入口。更完整的 Plugin 结构说明见 Plugin 总览当前有哪些内建 PluginPlugin HTTP 注入

它会展示什么

  • 当前是处于展开中、停留中还是待命中
  • 最近是否发生过新的更新
  • 对外公开的模糊线索
  • 不泄漏内部上下文的状态摘要

适合什么场景

  • 你想快速知道各个 agent 现在分别呈现出什么状态
  • 你需要在 Console 里观察整个 agent 群组的近期变化
  • 你想把这种公开状态接到自定义 host 或 UI SDK 组件上

数据接口

当 agent 运行时,workboard 会提供:

  • GET /api/workboard/snapshot
  • workboard.snapshot plugin action(Town Console 默认通过 Agent RPC 调用)

这些入口返回结构化 JSON,但只包含对外安全的概览状态,不会直接暴露内部 session、plugin runtime、task 或路径细节。

Console 中的表现

Console 会聚合所有 agent 的 workboard 快照,展示一个独立的全局 game world:

  • 在 Console 主导航里单独进入 Workboard
  • 主区域是一个 Smallville 风格的像素小镇 atlas,由中心 plaza、四栋开放式状态建筑、主干路、水边、栅栏和地形边界组成
  • 进入状态簇后会切到对应建筑的独立室内地图,每个 room 都有不同墙体、门、走廊、station、hub 和主题家具
  • 地图使用固定 40 x 24 tile 大地图画布;普通视图保持完整比例,全屏视图按 cover 方式铺满整个屏幕,始终保持正方像素块比例
  • 底部 portal rail 可以直接切换状态簇,进入 room 时会有像素化传送门过渡
  • agent 会作为带方向和状态符号的 sprite 沿 corridor、city、station 巡游与停靠
  • room 内会高亮当前聚焦 sprite 的 quest path、station 和 hub 连接关系
  • atlas 支持键盘式地图控制:左右切换状态簇、Enter 进入、Esc 返回 world
  • room 内的公开任务条目会映射成墙面公告板,station 位置会映射成房间里的蓝图桌,而不是额外覆盖的 dashboard 卡片
  • 点击状态簇可以进入该簇内部,再点击具体 sprite 查看公开片段
  • 右侧 codex log 始终跟随当前聚焦对象,展示公开片段与线索

UI SDK 中的映射方式

如果你使用 @downcity/ui,现在除了直接渲染 Workboard 组件之外,还可以使用统一的地图配置构建器:

  • buildWorkboardGameMapConfig

它会把公开快照映射成一套完整的游戏地图模型,包括:

  • 状态簇 zones
  • agent actors
  • atlas 通道 corridors
  • 簇内巡游 patrols
  • atlas 入口 city 与簇内 station
  • 舞台道具与标签

这样你可以继续复用 Downcity 默认的像素 game world,也可以把同一份公开数据接到自己的 host 渲染器里。

说明

  • workboard 默认随内建 plugin 一起提供
  • 如果你关闭该 plugin,对应快照接口会不可用
  • 当前版本优先使用确定性采集,不依赖额外模型推理
  • 当前版本默认面向对外展示,因此只输出概览式公开态

相关页面