跳转至

03-13~15:UI 重构与功能覆盖

Dad 的关键产品决策

地图交互重构

03-13 问题:建筑堆在一起、模块排列不自然

Dad 要求: - 模块要有序排列成长方形/正方形并留间隔 - 增加围墙概念隔开建筑 - 点击实体后不要移动地图 - 地图画布应该是无限的

从 3D 感到 2D 地图(03-14)

关键决策: - 去掉 3D 感,改成 2D 地图 - 整个屏幕都应是地图,四边加阴影 - 增加围墙概念隔开建筑

建筑网格化(03-15)

进一步要求: - 建筑应按格子摆放,不要圆形,不要随意摆 - 建筑是矩形/方形,占多个格子 - 所有建筑都不能是圆的

交互模型简化

原设计:右键显示功能菜单

新决策: - 点击模块直接打开对应效果 - 删除 CommandWheel - 删除右键/长按操作 - 统一为点击实体 → 右下角卡片

技术问题与根因分析

围墙系统演进

自动围墙阶段: - drawWalls 根据实体位置自动画围墙 - 问题:围墙不自然

手动围墙工具阶段: - 增加 wall tool UI(右侧浮动按钮) - 问题:线段式围墙交互不好用

砖块铺设模式阶段(最终方案): - 像游戏一样点击添加 4x4 砖块,拖动时持续添加 - 用砖块集合替代线段 - pointerdown/pointermove/pointerup 支持刷墙

砖块刷新丢失问题

现象:刷新后砖块丢失

根因:后端实际已存 144 块砖,但 actionLayoutLoad 只返回 positions,忘了返回 walls

修复:在 load 响应中加入 walls 数据

建筑点击失效

现象:技能/档案/记忆三个建筑点击没反应

根因:per-agent 建筑 ID 变成 skills:main / memory:main / files:main,但 handleBuildingClick 仍只匹配 skills/memory/files

修复:兼容带 agent 后缀的 building ID

网格对齐问题

现象:建筑与背景格子只对上一半,内部格线错位

根因:建筑如 3×2 格,中心吸附到网格点,导致边缘落在半格位置

解决方案: - snapToGrid 支持按 cellSpan 吸附 - 对奇数宽高实体使用半格偏移吸附 - 实体规格:Gateway=3×3、Agent=2×2、Building=3×2

解决方案

无限画布实现

// drawGroundGrid 改为按相机 world 位置动态绘制可见区域
// 引入"相机移动超过一个 grid unit 才重绘"的 snapped 策略
// 加入 scale 参数,解决缩小时网格覆盖不足问题

围墙工具栏增强

  • Shift 直线绘制
  • 点击已有砖块 = 删除
  • ghost layer 显示半透明预览砖块
  • 墙体只在 dirty 时重绘,优化性能
  • 橡皮擦与快捷键提示

按 Agent 归属重构建筑

架构改变: - KingdomBuilding 增加 agentId - skills/memory/files 按 agent 拆分 - channels/models/plugins/cron/tools 保持全局建筑

数据流修复: - 按 building ID 中的 agentId 匹配 - 只连 Gateway → Agent → 该 Agent 的建筑 - 全局建筑不连 agent

10 轮自主迭代成果

  1. 墙体 ghost 预览
  2. Gateway → 全局建筑数据流
  3. Agent 建筑群环形布局
  4. 区域标签(全局设施 / Agent 名)
  5. 建筑投影阴影
  6. 快捷键(Esc / R / Ctrl+Z)
  7. Session 轨道动画
  8. 选中 Agent 时高亮其建筑群
  9. 墙体 dirty-check 重绘优化
  10. 围墙工具栏增强

100% 功能覆盖审查

Dad 要求:逐项查 OpenClaw 官方文档,确保 ClawCraft 中都有对应操作

审查方式: - 读配置参考与后端实现 - 对比各 Panel 的操作能力 - 逐项测试

结果:达到 100% 覆盖率

后续问题:Dad 指出"虽然做了很多,但用户根本不知道怎么用",问题转向 UX 可发现性

UX 可发现性重构

新增: - WelcomeOverlay 首次引导 - QuickActionBar:直接打开 Gateway / 频道 / 模型 / 设置 / 环境

拆分设置: - 原本集中在 SettingsPanel 的 18 个配置项拆分回各建筑面板 - 例如:ChannelManager 底部嵌入 Messages / TTS / Hooks 折叠配置

里程碑

03-13

  • [x] 文档与代码清理(300MB → 680KB)
  • [x] 移动端长按支持
  • [x] 频道面板修复
  • [x] 初始王国建筑上图(7 个模块)
  • [x] 建筑点击直接映射到对应管理面板
  • [x] 面板展示方式重构为右下角统一展示
  • [x] 删除 CommandWheel 和右键操作

03-14

  • [x] 2D 地图化重构
  • [x] 围墙系统从自动→手动→砖块模式演进
  • [x] 无限画布实现
  • [x] 取消点击平移
  • [x] 砖块持久化修复

03-15

  • [x] 按 Agent 归属重构建筑与数据流
  • [x] 10 轮自主迭代完成
  • [x] 建筑网格化与精确对齐
  • [x] 100% OpenClaw 功能覆盖审查
  • [x] UX 可发现性重构
  • [x] 功能从 SettingsPanel 拆分回各建筑