-
Notifications
You must be signed in to change notification settings - Fork 3
Town View.zh CN
phinn edited this page Jul 31, 2026
·
1 revision
🌐 Language: English | 中文
小镇视图(Town View)是游戏风格的等距(isometric)可视化,把项目和 agent 展示为小镇:项目=房子,每个 agent 会话=住在房子里的村民。
- 侧栏 ⋯ 菜单 → 小镇
- 顶部栏切换按钮可在小镇和工作台之间切换。
| 元素 | 含义 |
|---|---|
| 房子 | 一个项目。按项目名 hash 着色。窗户=agent,亮灯=running,烟囱冒烟=有 agent 运行中。 |
| 村民 | 一个 agent 会话。按引擎着色:Kaios 金(#e8b339)、Claude Code 橙(#d97757)、Codex 绿(#10a37f)。 |
| 状态动画 |
idle(浮动,闭眼)、working(弹跳+气泡)、error(抖动+红色叹号)、done(星星弹出)。 |
小镇视图支持两种视觉风格,在设置中切换(townStyle):
| 风格 | 说明 |
|---|---|
classic |
经典等距小屋,低饱和度+多层光影 |
minecraft |
我的世界方块像素风:橡木板/红砖/圆石纹理,村民为 Steve 风格。 |
根据当前主题,小镇视图显示不同的背景装饰:
- SEED 主题:高达 SEED 风格——机甲格纳库 + 驾驶员 + 通讯卫星
- Craft 主题:12 种 Minecraft 实体作为背景装饰
- 其他主题:干净的等距小镇
- 点击村民 → 侧滑面板显示:prompt、工具步骤、输出。可发送新 prompt、停止 agent、跳转完整对话。
- 增量更新:agent 事件只刷新单个村民——不重建全图。
- 远程节点:远程 MCP server 节点显示为天空中的云房子。
- 零依赖:纯 SVG + CSS + DOM,无框架。
-
渲染层:
src/renderer/town.ts— 构建 SVG 房子、村民、动画。 -
CSS:
src/renderer/town.css— 等距布局、动画、面板样式。 -
数据源:与工作台相同的
getConversations()——同一数据两种视图。
| 文件 | 作用 |
|---|---|
src/renderer/town.ts |
小镇视图渲染、村民状态、面板逻辑 |
src/renderer/town.css |
等距布局、动画、面板、遮罩 |
src/shared/i18n.ts |
town.* 键(19 个键 × 4 语言) |
另见:[Workbench]、[Engines]。