v0.5.0
v0.5.0 更新日志
feat — 新功能
CLI 命令扩展
-
oy update— 新增 update 子命令,通过 npm 更新 CLI 工具- 先尝试
npm install -g @ghyper9023/oy(超时 300s) - 失败后自动 fallback 到
--registry https://registry.npmjs.org/(超时 300s) - 前者更新成功则不触发后者
- 先尝试
-
oy -c— 继续最近会话- 扫描
~/.oy-ai-agent/sessions/下所有 session,按修改时间取最新 - 找到则加载历史消息进入 TUI,可继续在原 session 中聊天
- 没找到则启动空白 TUI(等同
oy) - 加载后滚动条自动定位到最新消息
- 扫描
-
oy -r— 交互式 Session 选择器- 列出所有 session,按最后修改时间降序排列
- 每行显示:
[编号] uuid前缀... | 项目目录 | 首条用户消息摘要 - 用户输入编号选择要恢复的 session
- 用户消息摘要自动折叠换行为单行文本
-
oy -s <path>/oy --session <path>— 加载指定路径的 session 文件- 直接传入任意 JSON 文件路径,尝试作为 session 加载
- 文件不存在或格式非法时打印错误并退出
- 可用于加载非标准位置的 session 文件或手动备份的对话记录
会话持久化改进
- Worker 初始化支持指定 uuid 和预加载历史消息(
Worker::with_session()) - Orchestrator 新增
start_with_session()入口,复用原 session uuid - 加载 session 后继续聊天,消息续写到同一 session 文件(不生成新文件)
- 新增
list_all_sessions()/find_latest_session()/get_session_preview()/load_session_messages()查询函数 - Session 预览文本自动扁平化为单行(换行 → 空格,连续空白合并)
refactor — 架构重构
分层调整
oy-code-cli新增 session 选择交互逻辑(纯 CLI,不依赖 ratatui)oy-tui::run_tui()签名改为接受Option<PathBuf>,支持 session 路径注入App::new()增加 session 加载分支,自动从 JSON 恢复 TUI 消息显示persistence.rs新增独立查询层,与save_session/load_session保持向后兼容
chore — 工程维护
- 版本更新至 v0.5.0
oy-code-cli新增 dependency:uuid- Cargo.lock 自动更新
What's Changed
- Feat v0.5.0 by @cherish-ltt in #5
Full Changelog: v0.4.0...v0.5.0