Skip to content

承接 #40:AI 图像生成后续迭代路线图(A–H)——图片库项目化/终端日志/Debug 模式/UI 设计工具链 #44

Description

@BaSui01

📌 背景

原 issue #40(内置 AI 图像生成能力 + 迭代路线图)的核心功能已由 PR #41 实现(24 commits,已合并),issue 因 PR 合并被自动关闭。但 #40 中基于现有代码分析整理的 A–H 八个后续迭代方向 尚未开始实施。

为避免路线图随 issue 关闭而丢失,特开本 issue 承接,作为后续迭代的单一跟踪入口(tracking issue)。每个 P0 项将拆分为独立 issue 跟进,本 issue 负责汇总与更新状态。

✅ 已实现回顾(PR #41,24 commits)

  • 原生生图工具 imagegen-generate:OpenAI 兼容 + Gemini 双协议、18 参数、流式预览、图生图、按需暴露
  • 任意数量生图渠道(channels[],独立 Base URL/密钥/模型/默认参数,顺序即优先级)
  • 设置面板(表格 + 弹窗):行内启用开关、搜索、名称自定义、模型能力联动下拉、别名/预览/弃用徽章
  • 会话内相框画廊 + 流式预览 + 保存/放大;图库图片管理(统计/级联删除)
  • 模型能力校验(400 防护):多图/多模态校验、切换模型自动修正不支持参数
  • 侧边栏:多选批量删除、分区折叠、删除确认弹窗(可选级联删图)
  • 聊天体验:输入草稿持久化、流式指标栏多分辨率适配
  • 第三方配置导入性能优化(扫描次数减半、并行目录遍历、缓存增强)
  • 中英文文档;作者 4 点审查意见(去冗余 icon / 统一 CustomSelect / 未配置模型不自动启用 / 多图多模态 400 防护)均已处理

🗺️ 路线图(A–H)

A. imagegen 存量优化

编号 需求 关键方案 优先级
A1 渠道拖拽排序 拖拽后走现有 config-set 全量替换,Rust 侧零改动;附「默认渠道」星标 P0
A2 能力表动态化 静态 constants.ts → 独立 JSON 版本化 → config-list 暴露给 AI → 渠道能力自检 P1
A3 用量统计/计费 新增 imagegen_usage 表 + 图库面板「用量」页 + imagegen-usage 只读工具 P1

验收标准

  • A1:设置面板支持拖拽调整渠道顺序,优先级实时生效;支持标记/取消「默认渠道」
  • A2:新增模型/能力无需改代码发版,AI 可通过 config-list 读取能力并自检
  • A3:每次生成落一条用量记录;图库「用量」页可按渠道/模型/时间聚合

B. 图片库项目级迭代(P1)

需求:图片库从全局单库升级为项目级隔离,配合文件夹目录类型 UI。

  • 数据模型:image_libraryproject_id(NULL = 全局)
  • 存储路径:新图落盘 image/<projectId>/YYYY-MM-DD/,旧图零迁移
  • UI:树 + 列表双栏(全局/项目/日期/渠道/模型分组),目录级多选/移动/重命名

涉及模块imageLibraryHandlers.ts / imageLibraryApi.ts / 图库面板组件

验收标准:切换项目后图库自动隔离;全局图(project_id NULL)在任意项目可见;移动/重命名目录后引用路径同步更新。

⚠️ 需动 Rust 存储层,建议独立 PR 分步做。

C/D. UI 设计读取与美化(工具链 + Skills)(P2)

需求:一个工具读取 UI 设计图 → 生成结构化规范 → 美化页面;配套官方 UI 设计 skill 包。

  • ui-design-inspect(设计图 → ui-design.json 规范)/ ui-design-apply(生成 Tailwind theme/CSS 变量)/ ui-design-compare(页面临摹对比)
  • 与 imagegen 闭环:设计图 → 色板 → 生成图标/背景 → 落地代码
  • 官方 snow-ui-design skill 包(SKILL.md 工作流 + 样式映射模板 + 工具调用约定)

验收标准ui-design-inspect 可输出结构化设计规范 JSON;snow-ui-design skill 可按规范完成一次完整页面美化。

建议先出 ui-design-inspect MVP 验证。

E. 存量杂项

编号 需求 优先级
E1 孤儿图片清理(未被引用文件巡检 + 清理按钮) P0
E2 渠道健康检查(测试连接按钮) P1
E3 参考图上限扩展(5 张/20MB → 压缩上传) P1
E4 seed 复现(「以此图为种子再生成」) P2
E5 透明度校验回显(gpt-image-2 alpha 降级提示) P2

F. 终端日志与调试(新方向)

需求:内置终端可诊断——PTY 会话输入输出落盘 + 事件入 app_logs + AI 可读。

编号 需求 关键方案 优先级
F1 终端会话日志落盘 ~/.snow/log/terminal/,环形保留 20MB/7 天 P0
F2 终端事件入 app_logs module=terminal:启动失败/PTY 崩溃/SSH 错误/泄漏清理 P0
F3 terminal-inspect MCP 工具 list/read/diagnose P1
F4 系统日志页 UI 增强 筛选/搜索/导出/脱敏 P1
F5 终端会话回放 P2

涉及模块ptyManager.ts / conptyDllHelper.ts / terminalCommandBroker.ts / snowLogger.ts

验收标准:F1 会话全程可回溯;F2 终端异常自动入日志且 AI 工具可查询;F3 支持列出/读取/诊断会话。

G. 更多新功能

  • 终端域:命令历史跨会话、输出错误检测 +「让 AI 诊断」、分屏、PTY 泄漏告警、SSH 连接保存/重连
  • 日志域app_logs 归档策略、request_id 贯穿追踪、崩溃自愈 + 诊断包
  • 跨域:AI 自动诊断上下文包、bash 后台任务看板、浏览器报错自动入 app_logs

H. Debug 模式开发

需求:应用级调试模式——一个开关(D1)+ 全链路日志(D2)+ 可视化与导出(D3)。

编号 需求 关键方案 优先级
D1 debugMode + logLevel 开关与级别过滤 默认 WARN/ERROR,开启记 DEBUG P0
D2 渲染进程 console/onerror 接入、终端日志(合并 F1)、request_id 贯穿 P1
D3 调试面板 UI(实时日志/IPC 记录)+ 诊断包导出(脱敏 zip) P2

验收标准:D1 开关全局生效且级别可过滤;D3 导出的诊断包不含敏感信息。

📊 优先级总览

优先级 理由
P0 A1 渠道拖拽 / E1 孤儿清理 / F1+F2 终端日志 / D1 debug 开关 改动小、数据结构先行、止血
P1 A2 能力表 / A3 用量统计 / B 图片库项目化 / F3-F4 日志工具与 UI / G 日志归档+request_id / D2 全链路 增值明显,依赖 P0 基础
P2 C/D UI 设计工具链+Skills / F5 回放 / D3 调试面板 / G 其余 新方向,先 MVP 验证

🚀 下一步

  • P0 项拆成独立 issue 逐个跟进
  • 建议首个:F1+F2 终端日志落盘 + 事件入库(P0,改动集中、止血价值高)
  • 本 issue 作为 tracking issue 持续更新各方向状态

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions