Skip to content

v0.6.1

Choose a tag to compare

@github-actions github-actions released this 13 Jun 02:04
· 57 commits to main since this release
390e9f7

v0.6.1 — Bug Fixes & Prompt Enhancement

Release date: 2026-06-12

Bug 修复

Worker::run Idle 状态阻塞修复

  • commit 7f67cf8
  • 问题:Worker::run 主循环中,无条件 try_recv 排水循环会在 Agent 处于 Idle 状态时清空通道中的 Prompt 命令并注入消息历史,随后 Idle 分支的 recv().await 因通道为空而无限期阻塞,导致用户第一个 Prompt 被"吞掉"不触发 AI 思考。
  • 修复:仅在非 Idle 状态时运行 try_recv 排水循环,Idle 状态下命令正常走 assembly_prompts 路径触发状态机流转。

Agent 切换时系统提示词覆盖修复

  • commit 0735983
  • 问题:MainAgent 与 CommanderAgent 切换时,replace_messages 直接 clear 所有消息并用源 Agent 消息覆盖,导致目标 Agent 的系统提示词被替换,Agent 失去角色定位和工具集。
  • 修复:replace_messages 保留目标 Agent 自身的 System Prompt(第一条消息),仅替换后续的用户/助理/工具消息。

Windows 路径兼容性修复

  • commits c185edd4c37c9f
  • 问题:MainAgent/CommanderAgent 的 save_session 和 SubAgentRunner 中的路径处理仅替换正斜杠 /,未处理 Windows 的反斜杠 \ 和盘符冒号 :,导致在 Windows 上创建嵌套目录或保存失败。
  • 修复:统一使用 .replace(['/', '\\'], "-").replace(':', "") 处理路径,确保跨平台兼容。

功能增强

新增 oy sub-sessions 子命令

  • commit 3aac623
  • 新增独立子命令 oy sub-sessions,用于列出和交互式加载子代理 session 文件。
  • 扫描 ~/.oy-ai-agent/sessions/*/sub_agents/*.json,按修改时间降序排列。
  • 交互式选择器风格与 oy -r 一致,支持选择后通过 TUI 加载查看。
  • 不修改 list_all_sessions(),不影响 oy -r 原有行为。

CI 验收标准注入 + GitHelper 能力扩展

  • commit 54f8826
  • CommanderAgent:新增步骤 0「探索 CI 配置」,要求读取 .github/workflows/*.yml 提取验收标准;创建 planner 时通过 context 传入 CI 标准。
  • Planner:工作方式增加 CI 验收标准感知;计划模板新增「CI 验收标准」章节。
  • GitHelper:从仅支持 commit 扩展为支持 gh issue creategh pr create,成为完整的仓库协作助手。
  • 后续优化72036b4):将 CI 验收标准描述从 Rust 特化(cargo fmt/clippy/build/test)泛化为语言无关描述,以 .github/workflows/*.yml 为最终标准,无 CI 时按「测试通过 → 检查通过 → 代码格式化」三层递进。

重构优化

消除代码重复 + 补充单元测试

  • commits 0dd7cb8d2d02d3
  • 提取 replace_messages_preserve_system_prompt 共享函数到 domain/agent.rs,消除 CommanderAgent 和 MainAgent 间的重复实现。
  • drain_pending_enter_prompts 重命名为 drain_pending_commands,消除命名误导。
  • 为两个 Agent 各补充 3 个 replace_messages 单元测试,覆盖保留自身 System Prompt、空自身消息、源无 System 三种场景。
  • 应用 clippy 和 fmt 格式化优化:长链式调用换行、嵌套 if let 合并为 let-chains。

完整提交日志

3aac623 feat: 新增 `oy sub-sessions` 子命令独立查看子代理 session
72036b4 refactor: 泛化 CI 验收标准描述,消除 Rust 特化语言
54f8826 feat: 优化系统提示词 — CI 验收标准注入 + GitHelper 能力扩展
0dd7cb8 refactor: 消除 replace_messages 代码重复、重命名 drain_pending_commands、补充单元测试
d2d02d3 style: 应用 clippy 和 fmt 格式化优化
4c37c9f fix: 修复 sub_agent_runner.rs 中三处 Windows 路径兼容性问题
c185edd fix: 修复 save_session 中 Windows 路径兼容性问题
0735983 fix: 修复 Agent 切换时 replace_messages 覆盖系统提示词的问题
7f67cf8 fix: 修复 Worker::run 中 try_recv 排水循环在 Idle 状态下导致阻塞的问题

What's Changed

  • docs: v0.6.1 版本日志 + 多项修复与功能增强 by @cherish-ltt in #9

Full Changelog: v0.6.0...v0.6.1