跳转至

ClawCraft MVP 开发

双轨开发策略

决策者:bot
时间:2026-03-12 中午到下午

架构拆分

bot 将 MVP 拆成两个独立代码包: - plugin:后端,接入 OpenClaw,采集状态、暴露 API/SSE - frontend:前端,RTS 风格世界视图与 HUD

选型理由

  • 插件层:负责"OpenClaw 语义 → 世界状态"转换
  • 前端层:负责"世界状态 → 游戏化可视化"渲染
  • 开发便利:支持 Mock 与真实环境切换

技术栈选择

前端技术栈

  • PixiJS:世界视图 / 等距实体渲染
  • Zustand:状态管理
  • Vite:开发与构建
  • Web Audio API:程序化音效

端口配置

  • 本地开发
  • Vite dev server: 18821
  • Mock server: 18790
  • 测试机部署
  • Mock server: 18850
  • 前端访问: 18851

Codex 协助与问题

Codex 使用经验

bot 同时启动两个 Codex 任务开发 plugin/frontend,遇到问题: 1. 生成了文件但未 commit 2. 任务超时退出 3. 前端关键组件缺失:HUD、World、Controls 目录为空

解决方案

  • 手动补全:bot 手动补全核心组件
  • 保留可用部分:保留 Codex 已生成的 store/types/hooks
  • 编译验证:修复 TypeScript 编译错误

经验教训

  • Codex 适合铺骨架,不适合无人监管完成复杂集成
  • 关键路径仍需人工收尾与编译验证
  • 生成代码必须经过实际构建测试

Mock 服务设计

双轨验证策略

决策者:Dad

Dad 明确要求的"双轨验证"策略: - 本地/前端:mock 快速迭代 UI - 测试机:真实 OpenClaw 环境验证插件与事件流

Mock API 设计

前端通过 Vite proxy 指向 mock/OpenClaw API,支持: - 系统状态模拟 - 事件流 SSE - 配置接口模拟 - 操作响应模拟

E2E 验证成功

真实数据测试

最终在测试机完成真实 OpenClaw 数据 E2E 验证: - 测试结果:7/7 测试通过 - 数据展示:3 个 Agent、8 个 Session(其中 6 个活跃) - 功能验证:前端成功显示真实 OpenClaw 系统状态

测试场景扩展

为验证 RTS 风格界面,bot 创建了多个测试场景: - 创建多个 agent - 启动多个 subagent - 模拟 RTS 式活动和状态变化

技术问题与修复

组件 API 统一

解决 Codex 生成代码中的问题: - 问题Badge 组件缺 variant prop,Codex 使用了 tone - 解决:统一组件 API,修复 TS 编译错误 - 结果:TypeScript 编译通过,构建成功

部署配置

测试机部署时的端口调整: - Mock server 端口从 18790 改为 18850 - 适配测试机开放端口策略 - 通过代理正确转发请求

里程碑意义

这次 MVP 开发成功验证了: 1. Plugin 架构可行性:可以通过 Plugin 获取 OpenClaw 完整状态 2. RTS 界面可行性:游戏化界面能够承载复杂系统状态 3. 双轨开发效率:Mock + 真实环境并行开发大幅提升效率 4. Codex 辅助边界:明确了 AI 辅助工具的适用范围和限制

为后续从"只读监控"升级到"可配置操作工作台"奠定了坚实的技术基础。