# 桌面端工业化升级规划(desktop-industrial-plan) 承接 [desktop-ui-plan.md](desktop-ui-plan.md)(IA/能力规划)。本文聚焦把现有桌面端从 "深色控制台 MVP"打磨到**工业级桌面产品**的质量提升路线。 > 现状基线(2026-06-12 实测):`sundynix-desktop/frontend` = React 19 + TS + Tailwind + > @xyflow/react,**无 UI 组件库**(README 写的 shadcn/ui 实际未安装),图标用 Unicode 字符, > Wails Go 桥已生成(`wailsjs/`)但前端从未调用。已有视图:工作台/编排/知识库/报告/运行·观测/记忆。 ## 诊断:为什么"不够工业级" 问题不在配色,而在**缺产品级骨架**: 1. **无设计系统** — 按钮/输入/卡片/徽标全是手搓内联 class、复制粘贴、不一致;强调色 (violet/cyan) 是散落字面量,无法换肤。 2. **图标是 Unicode 字符**(▤◆▣▦▸◇⌧⚙)— 最掉档次。 3. **Wails Go 桥未用** — 本质是"套了窗口的网页":无原生文件框、拖拽入库、本地读盘、 原生通知、自定义标题栏、"用系统 Word 打开报告"。这是"工业级桌面"最大缺口。 4. **无应用级 UX** — 无 toast / 全局错误边界 / 命令面板(⌘K) / 快捷键 / 确认弹窗 / 骨架屏。 5. **健康灯 5 个只 2 个真**(NATS/Milvus/Neo4j 灰)— 缺网关 `/health` 聚合。 6. **状态全在 App useState,刷新即丢** — 无运行历史/最近项持久化。 7. **输出裸 `
`** — 报告是 Markdown 却不渲染;无自动滚动/复制/速率。
8. **布局密度** — 为 1280 设计但窗口 min 1100,面板挤;固定高度;无可拖拽分隔。

## 升级阶段(按性价比/依赖排序)

### A. 设计系统地基(最高优先,其它都依赖它)
- 装 `lucide-react` 图标;自建轻量 primitives(不引整套 shadcn,保零重依赖、clone 即跑):
  `Button` `Input` `Textarea` `Select` `Card` `Badge` `Tabs` `Tooltip` `Dialog` `Toast`
  `Skeleton` `EmptyState`,统一 `cn()`。
- Tailwind 令牌补全:语义色(brand/accent/success/warn/danger)+ 半径/间距/字阶 token;
  强调色字面量收敛到 token。
- 6 个视图 + shell 迁到 primitives,去掉复制粘贴。

### B. 真·桌面集成("工业级桌面"最大缺口)
- 启用 Wails Go 桥:`app.go` 增 `OpenFileDialog`/`SaveFileDialog`/`SaveReport`/
  `OpenInSystem`/`ReadFile`,前端经 `wailsjs` 调。
- 知识库**拖拽 + 原生选择框**入库;报告**原生"另存为 .docx"** + "用系统 Word 打开"。
- 原生通知(报告完成弹系统通知)、最近文件、窗口标题随任务变。
- 自定义无边框标题栏(macOS 红绿灯内嵌 + 可拖拽区)。

### C. 应用级 UX 骨架
- 全局 `ToastProvider`(替代散落 err 文本)、`ErrorBoundary`、确认 `Dialog`。
- 命令面板 `⌘K`(跳转/新建报告/搜知识库/运行)+ 全局快捷键。
- 骨架屏 + 有插画的空状态(取代"规划中"文字)。

### D. 内容与可信度
- Markdown 渲染(报告/输出)+ 代码高亮 + 复制 + 流式自动跟随底部 + tokens/s 速率表。
- 网关 `GET /health` 聚合 NATS/Milvus/Neo4j/PG/Redis → 5 灯全真。
- 运行历史持久化(Wails 配置或 localStorage),RunsView 列出历史可回看。

### E. 布局与密度
- 可拖拽分隔的面板、响应式断点、记忆面板宽度。

## 建议路线
先 **A(设计系统)** 打底 → **B(真桌面集成)**,这两个一起把"网页套壳"扭转成"工业级桌面应用",
感知提升最大。C/D/E 增量补。

## 边界/原则
- **零重依赖**:自建 primitives 而非整套组件库,守住 "clone 即跑、无重 native 依赖" 目标。
- 不破坏既有真实链路(任务流/工具调用/Token 流/执行事件/报告)。
- 深色优先;令牌化后保留未来切浅色的可能。