Skip to content

v0.4.7

Choose a tag to compare

@github-actions github-actions released this 23 Oct 05:22
· 13 commits to main since this release

GenericAgent-Admin v0.4.7

Conductor 提示词重写、可选看图工具与聊天页性能优化

重写 Conductor 主控提示词并修复回执与失败原因问题,新增可在设置中开启的看图工具,聊天页按需加载 KaTeX 并预压缩静态资源,同时完成前后端结构拆分。

发布日期:2026-10-23 · 更新范围:v0.4.6 → v0.4.7


✨ 本次亮点

  • 新增可选的 view_image 看图工具:模型可在执行过程中查看截图等图片;主模型支持看图时直接注入,不支持时转交设置中配置的视觉模型。默认关闭。
  • Conductor 主控提示词整篇重写,长度由约 5KB 精简到约 3.1KB;同一目标的后续工作复用原 worker,新增的独立需求另开 worker,子任务卡住时先在原 worker 上收窄交付物。
  • 修复 Conductor 回执读取失败与失败原因丢失问题。
  • KaTeX 运行时与样式改为按需加载;静态资源提供构建时生成的 Brotli 预压缩文件。

📦 下载与安装

如何选择? 首次使用可选择自带运行环境的「便携包」;已有运行环境可选择「普通包」。macOS 桌面用户请选择 .app 应用,通过 Finder 启动。

系统 芯片架构 普通包 / 桌面应用 便携包
Windows amd64 普通包 · SHA-256 便携包 · SHA-256
Windows arm64 普通包 · SHA-256 便携包 · SHA-256
Linux amd64 普通包 · SHA-256 便携包 · SHA-256
Linux arm64 普通包 · SHA-256 便携包 · SHA-256
macOS amd64 .app 应用 · SHA-256 暂不提供
macOS arm64 .app 应用 · SHA-256 便携包 · SHA-256

每个下载入口旁均提供 SHA-256 校验文件;不提供的组合明确标注「暂不提供」。

macOS 命令行下载与包类型说明
  • macOS amd64 命令行普通包 · SHA-256

  • macOS arm64 命令行普通包 · SHA-256

  • 普通包:需自行配置 Python 与 GenericAgent 源码等运行环境。

  • 便携包:包含 GenericAgent 源码及 Python 运行环境,解压后按包内说明启动。

  • macOS 应用:解压后通过 Finder 打开 ga-admin.app,不要直接运行应用包内部的可执行文件。

📝 更新内容

新增功能

  • 设置中新增看图工具开关及视觉模型配置;开启后模型可调用 view_image 查看图片,主模型不支持看图时自动转交视觉模型。

体验优化

  • Conductor 主控提示词仅保留角色、边界、复用、审查与交付规则,审查、进度、取消等细则交由工具说明和回执承载。
  • conductor_dispatch 说明明确:仅在继续、纠正或验证同一 worker 的原有任务时传入 session_id。
  • 子任务卡住时优先在原 worker 上给出收窄后的具体指令,仍卡住才拆分或改派,不再原样重发。
  • 聊天页 KaTeX 运行时和样式仅在出现公式时加载。
  • assets 目录静态资源在构建完成后生成 Brotli 预压缩文件,浏览器支持时直接返回;index 保持动态主题注入。
  • Markdown 分块解析结果有界缓存复用,减少重复解析。
  • 后端 chat.go 按职责拆分为 12 个文件,前端 ChatApp 拆出多个组件与工具模块,style.css 移除被覆盖的重复声明;以上均为结构调整,不改变行为。

问题修复

  • 修复 Conductor 失败原因截断后丢失末尾错误信息的问题。
  • 修复 Conductor 回执在原子替换期间被拒绝读取导致失败的问题,并在读取后删除回执文件。
  • 修复草稿附件写入 localStorage 超出配额的问题,附件改为存放在 localStorage 之外。
  • 停止跟踪编译生成的 chat worker 字节码文件。

🔧 升级提示

  • 看图工具默认关闭,需在设置中手动开启并配置视觉模型。
  • 按需下载对应平台附件升级;本次未部署或重启任何现有服务。

🧪 验证与已知限制

  • 前端 verify(lint、lib 测试、构建)及 Go 全量测试在 preview.1 阶段通过;最终提交推送前的 Go 全量测试中仅 1 项在清理临时目录时失败,单独重跑 3 次均通过,判断为偶发;Conductor 相关 Python 测试通过。
  • Conductor 提示词经模拟场景 A/B 对比(每组 6–8 次):卡住时复用原 worker 7/8,新增需求另开 worker 8/8,同一目标后续复用 8/8;样本较小,危险操作场景未用最终版重测。
  • 看图工具曾用 deepseek-v4.1-flash 实测直接注入与转交两种模式。
  • 未部署到任何目标服务,未完成真实多模型 Conductor 端到端、弱网传输及手机真机验收。

展开完整提交记录(54 项)
  • Conductor: narrow stalled corrections on the original worker before reassigning (0e4658b)
  • Rewrite Conductor parent prompt to a minimal A/B-tested version (f5f6917)
  • feat(chat): add opt-in view_image tool with vision model fallback (ac5c706)
  • fix(conductor): keep failure cause in worker error reason (3a169ae)
  • fix(conductor): delete broker replies after reading (f56c63b)
  • fix(conductor): retry broker replies denied during atomic replace (8fe9543)
  • perf(web): serve build-time Brotli asset sidecars (a1e176e)
  • perf(chat): load KaTeX runtime and styles on demand (8040f4b)
  • refactor(api): move chat uploads out of chat.go (275b88c)
  • refactor(api): move chat title generation out of chat.go (b0a296e)
  • refactor(api): move chat session storage out of chat.go (4806405)
  • refactor(api): move chat worker process out of chat.go (25addac)
  • refactor(api): move chat LLM catalog out of chat.go (07f7e82)
  • refactor(api): move chat streaming out of chat.go (200a523)
  • refactor(api): move chat run state out of chat.go (ffcf688)
  • refactor(api): move chat project mode out of chat.go (fa77031)
  • refactor(api): move chat event parsing out of chat.go (ce9e8a1)
  • refactor(api): move chat run worker out of chat.go (bda56fd)
  • refactor(api): move chat one-shot workers out of chat.go (d5fcc21)
  • refactor(api): move chat settings out of chat.go (05e14d7)
  • refactor(styles): remove shadowed alignment and protect CSS fallbacks (8d781c6)
  • refactor(styles): merge adjacent equivalent selector blocks (5333e2f)
  • refactor(styles): reuse semantic tokens in model palette (185e46b)
  • refactor(styles): isolate model workbench preserving cascade order (2282103)
  • perf(chat): reuse bounded immutable markdown block parses (b73a673)
  • refactor(web): extract assistant content, turn and usage row from ChatApp (8fd4478)
  • refactor(web): extract file summary, goal status and command result cards from ChatApp (9f2bba3)
  • refactor(web): extract keychain dialog and plan todo card from ChatApp (e28fff4)
  • refactor(web): extract worldline views from ChatApp (a7e9879)
  • refactor(web): extract composer controls from ChatApp (0a8b95b)
  • refactor(web): extract UltraPlan views from ChatApp (bfcead7)
  • refactor(web): extract markdown block components from ChatApp (22acde4)
  • refactor(web): extract JsonTree from ChatApp (28eec2f)
  • refactor(web): extract ToolResultDetails from ChatApp (4d1a811)
  • refactor(web): extract tool call block components from ChatApp (ee69e4a)
  • refactor(web): extract CopyButton from ChatApp (19648ee)
  • refactor(web): extract inline markdown components from ChatApp (aca67e7)
  • refactor(web): extract subagent output parser from ChatApp (33d6b48)
  • refactor(web): extract serialized mermaid renderer from ChatApp (af68629)
  • refactor(web): extract user message attachment text helpers from ChatApp (051a0ab)
  • refactor(web): extract worldline command helpers from ChatApp (1a3bdb9)
  • refactor(web): extract goal card state helpers from ChatApp (8bd33f8)
  • refactor(web): extract upload file helpers from ChatApp (7865a47)
  • refactor(web): extract markdown part preparation from ChatApp (f250349)
  • refactor(web): extract session and model label helpers from ChatApp (12e1d9f)
  • refactor(web): extract viewport and follow-scroll constants from ChatApp (6011c3b)
  • refactor(web): extract builtin slash command helpers from ChatApp (0ee703e)
  • refactor(web): extract usage and elapsed-time stats from ChatApp (80c44e9)
  • refactor(web): extract UltraPlan state helpers from ChatApp (0150073)
  • refactor(web): extract tool argument parsing from ChatApp (950dfc6)
  • refactor(web): extract chat formatting helpers from ChatApp (8d9cb66)
  • refactor(web): drop 846 overridden declarations from style.css (0ceb11d)
  • chore: stop tracking compiled chat worker bytecode (df5c658)
  • fix(chat): persist draft attachments outside localStorage quota (86a02e8)

查看完整版本差异