# 路线图与版本自省 > 每个版本完成后在此追加"自省":缺什么、哪里不好、下一版怎么补。 ## 版本计划 | 版本 | 主题 | 内容 | |---|---|---| | v0.1.0 | 骨架 + 聊天链路 | monorepo、electron-vite 三进程、pi SDK 嵌主进程、IPC 事件转发、聊天 UI(流式文本 + thinking 折叠)、停止/排队基础 | | v0.2.0 | 会话管理 | 会话列表/新建/恢复/重命名/删除、分支(New session / Edit from here)、运行状态与用量展示 | | v0.3.0 | 模型与设置 | 模型选择、Provider/API key 管理(写入 ~/.pi auth)、系统提示词自定义、连通性测试 | | v0.4.0 | 工具与审批 | 工具调用卡片(参数/结果折叠展示)、tool_call 拦截 → Approval Card、defineTool 业务工具骨架(本地可跑的演示工具) | | v0.5.0 | 打磨 | 深浅主题、GSAP 动效细节、快捷键、错误态/空态、队列可视化、自动滚动策略 | | 未来 | | electron-builder 打包与自动更新、i18n(中/英)、sqlite 持久化与迁移、本地备份恢复、CDP 插件、热点词/生成/模板业务插件、手动模式编排 UI、RPC 子进程隔离模式 | --- ## v0.1.0 — 骨架 + 聊天链路 **交付**: - pnpm monorepo(`apps/desktop` + `docs/`;后端/后台/数据库按约定未创建) - Electron 44 + electron-vite 5 + React 19 + Tailwind v4 + GSAP + lucide-react - 主进程 ESM(`.mjs`)内嵌 pi SDK 0.85.0(`@earendil-works/*` 全部 external,运行时从 node_modules 加载);preload 输出 `.cjs` - IPC:`agent:send/steer/stop/state` + `agent:event` 事件流(delta 40ms 合批,参考 pi-web 节流经验) - UI:侧栏(品牌/模型状态/上下文用量/成本/版本)、聊天区(用户气泡、流式助手文本 + 光标、thinking 折叠、工具卡片含参数/结果)、输入区(自适应高度、Enter 发送/Shift+Enter 换行、流式时排队提示 + 停止按钮)、空状态建议词、错误条 + 自动重试条 - 会话复用 `~/.pi/agent`(与用户已装的 pi CLI 互通) - 验证:typecheck 通过、build 通过、应用启动 UI 截图核验通过、pi SDK 冒烟脚本通过(无凭据时错误干净传播) **自省**(v0.1.0 → 指导 v0.2+): 1. **真实 LLM 往返未验证**——本机 `~/.pi/agent/auth.json` 为空对象,无任何 API key;模型解析为 `unknown/unknown`(pi 的 fallback)。需要用户配 key(`pi /login` 或等 v0.3 设置界面)后复测流式/工具/思考链路。 2. **会话管理完全缺失**——重启后不恢复历史;侧栏列表是占位框。v0.2 用 `SessionManager`(list/open/create/rename/delete + 分支)补齐,pi 会话文件在 `~/.pi/agent/sessions//` 下按 cwd=home 分组,要注意 cwd 策略(固定 home 还是工作区选择)。 3. **工具面过宽**——当前默认 `read/bash/edit/write` 全开(冒烟已证实)。按架构 D2/D6,v0.4 收窄为业务工具白名单。 4. **Markdown 渲染极简**——只有 fenced code/行内 code/加粗;标题、列表、链接、表格都没有,长回复可读性差。排 v0.5。 5. **无 SSE 之外的流控**——超长回复没有虚拟化,消息多后可能卡;先记录,v0.5 评估虚拟滚动。 6. **坑位记录**:pi-coding-agent 0.85.0 漏声明 `@earendil-works/pi-server` 依赖(已手动补装);electron-vite 5 需显式 `external: ['electron', /^@earendil-works\//]`;`"type":"module"` 下 preload 必须 `.cjs`;PowerShell 改写含中文的源文件会毁编码(统一用写入工具)。 7. **交互验证受限**——computer-use 无法激活该窗口(虚拟显示),键盘链路未实测;已用截图 + Node 冒烟双层验证替代,后续版本需人工过一遍键盘操作。