Agent Workbench
面向 AI 项目协作的 skill、局域网看板与会话桥接。总控接收人类需求并负责决策与验收;一层唯一直属副主控协调执行工作包,当前或用户指定的沟通会话供人类询问进度和决定方案。
看板分为 总览、任务、集群、沟通、决策、日志 六页。前端基于随仓库维护的 React、TypeScript、Vite、Tailwind 和官方 shadcn/ui 模板,固定配色与组件规范,AI 在已有模板上组合功能。
任务分支视图以显式版本交付为主线:默认显示未结束任务和必要前置,可切换全部历史;悬停、聚焦或点选突出上下游。仅实际集成验收通过的关系绘制汇合,无归属和缺时间记录明确标示,不冒充 Git 提交历史。
协调服务使用 Python 标准库和本地 SQLite,保存任务、消息、事件与会话映射。AI 可以留在已登录的本机运行;服务与监控部署在获准集群,不需要向集群复制模型凭据。沟通页绑定真实会话,消息排队和历史镜像使用受支持的宿主接口。
准备和启动
需要 Python 3.9+、Node.js 22+,以及支持相关命令的 Codex。先核实环境与授权,再构建前端:
cd assets/dashboard
npm ci
npm run build
cd ../..
python3 -m unittest discover -s tests -v
node --test assets/dashboard/tests/task-graph.test.mjs
图逻辑测试直接读取 TypeScript 模块,需具备类型剥离能力的 Node;本项目验证环境为 Node 24。
在获准 Linux 服务账号下初始化任务自有运行目录(默认示例仅监听本机):
python3 scripts/setup.py --repo "$PWD" \
--runtime "$HOME/.local/state/agent-workbench" \
--bind 127.0.0.1 --port 8796 --hostname localhost
python3 -m agent_control.server --config "$HOME/.local/state/agent-workbench/config.json"
初始化创建私有配置和随机访问令牌;程序只打印令牌文件路径。浏览器登录时使用该令牌,勿把它放进 URL 或提交到 Git。局域网部署时显式选择已核实的内网 IPv4 和域名;不自动更改网络、防火墙或公网入口。
可选 --install-user-service --start 仅安装当前账号自己的 agent-workbench.service。不会使用 sudo;用户服务退出登录后是否持续运行取决于主机已有配置。运行数据库应在本地盘,不能放在 NFS。
安装 skill 与连接会话
python3 scripts/install_skill.py --source "$PWD"
然后在 agent 中使用 $project-agent-control。skill 会先核对项目规则、已有会话和权限,默认将当前会话映射到网页,再按需求拆分工作包。只有用户要求专门沟通入口时才创建或复用独立会话。创建 ChatGPT 项目/用户可见会话需要宿主提供相应工具或正常 UI;本仓库不会伪造创建结果。
将 examples/bridge.example.json 复制到仓库外,填入真实会话、执行目录与服务连接。初始化并绑定看板会话后,运行:
python3 scripts/bridge_service.py --config /path/to/private/bridge.json
本机桥接进程管理worker与mirror,连接中断后有界重连;结果未知的执行保持待核查,不自动重跑。也可分别运行同目录的worker.py和mirror.py。桌面会话使用 desktop_queue 模式通过 codex queue 向原会话提交消息,并读取同一 thread 的最终结果;不要使用另一个 CLI 进程强行 resume 已由桌面持有的会话。镜像仅同步允许的可见正文。真正的双向接入须现场验证,支持的命令随 Codex 版本而异。
状态中“登记会话”“桥接在线”“模型回复”“业务验证通过”是不同事实。认证缺失、队列超时、权限不足和未知指标会明确显示,不产生模拟成功。
扩展与验证
- Skill 工作规范:总控、并行边界、汇报、决策与恢复。
- 运行接入:配置、API、桥接和消息恢复。
- 固定设计系统:模板、页面职责、颜色和组件规则。
默认指标只采集本机可读信息。远程主机、NFS 和调度器通过站点私有配置显式启用;没有配置、缺工具或无权限时显示未知。扩展采集器使用固定命令和白名单,不接受网页任意命令。
本仓库不包含任何实际集群地址、客户案例、私有业务代码或聊天历史。公开仓库不会自动公开你的局域网运行实例。前端上游授权与组件来源见模板内的第三方说明。
执行负责人先处理归属事项并可靠保存报告,授权范围内可与相关执行者点对点协调并保存关键交接,跨任务归属冲突、范围改变或无法解决的阻塞交唯一直属副主控定向核查;只有人类决策、冲突和重大事件升级总控。人类需求直接交总控。紧急事件遇副主控失联可按约定有界越级,沿用关联ID去重,不广播或循环转发。
完成报告先进入私有持久outbox,有界重试并幂等确认;执行完成与集成验收分别记录。通知要求每目标最多一条未处理,其余保留并合并。当前支持execution_notification_targets显式映射:依据正式任务session_id,将任务相关事件和ETA优先交执行者;未映射事项及系统事件交配置的唯一副主控,决策直达总控。目标变更须保留旧回执并对账迁移,不盲重放积压。宿主原生队列总数与取消能力未知时如实说明,不能声称已清空。配置、实现范围与验收要求见运行接入。
重大事件驱动用户汇报,普通进度、短暂重连和自动恢复留在内部日志。故障钩子提供持久去重、分级升级和恢复记录;额外服务需按授权接入。
决策由主控先建卡,提交后进入待检查;接受、落实完成和真实会话归档分别记录。每项真实决策绑定一个独立咨询会话,用有限凭据只维护本决策,实质修订保留旧选择并要求重确认。详情可咨询和查看版本历史;真实会话接通及宿主归档须现场验证,不能用占位记录代替。参见独立决策会话接入。