1.0.22
🎉 1.0.22
中文
✨ 新功能
-
Goal 持久化恢复:目标(Goal)状态现在写入 SQLite 数据库,应用重启后自动恢复进行中的目标,不再丢失迭代进度和预算追踪数据。
-
Memory 按需检索与选择性后台学习:Memory 从"自动注入"切换为"按需检索"模式,配合策略化的系统提示词和受限制的工作区工具。新增选择性后台学习,避免无差别全量记忆造成上下文噪音。
-
子代理思考强度配置:每个子代理现在可独立配置思考深度(off / low / medium / high / max),不再受限于全局默认值。
-
内置 Review 子代理:新增 Review 内置代理,可对代码变更、设计方案、架构提案进行系统性审查。
-
侧边栏分组展开状态持久化:项目分组和普通会话的展开/折叠状态现在保存到 localStorage,应用重启后保持原样。
-
进程摘要增强:子代理操作、Memory 工具、Goal 工具现在统一归入进程摘要区块,不再散落为独立内容块。子代理任务摘要现在也展示在摘要中。
🐛 修复
-
上下文压缩策略修复:将固定的
reserveTokens默认值替换为基于窗口大小的分级百分比策略(<16K 禁用,16-64K 25%,64-256K 20%,≥256K 15%),解决大上下文窗口下过早触发压缩导致溢出的问题。 -
初始窗口尺寸约束:限制初始窗口尺寸不超过屏幕可用区域(
workAreaSize),避免窗口超出 macOS Dock 或菜单栏范围。 -
子代理配置编辑修复:编辑代理时自动回填 Provider/Model 下拉框;
setAgentModelIPC 桥接现在正确透传thinking参数。 -
工具展示 UI 修复:超长工具组片段以省略号截断;工具标签移除
flex-1使摘要正确对齐;get_subagent_result/steer_subagent不再显示无意义的行数统计;子代理工具标签现在显示类型 + 描述。 -
编译产物部署修复:
deployBuiltinAgents源路径补全缺失的一层dirname,修复打包后内置代理部署失败。
♻️ 重构
- 子代理模型配置简化:移除全局默认子代理模型配置,改为每个代理独立设置(支持"跟随主模型"或自选模型),删除冗余
model-strategy.ts,简化config-store逻辑。
🎨 样式
- ESLint 全面接入:新增
.eslintrc.js配置(TypeScript + React Hooks 规则),修复 97 处 ESLint 错误覆盖 43 个文件,npm run lint零错误通过。
English
✨ New Features
-
Goal Persistence & Recovery: Goal state is now written to SQLite, with automatic recovery of active goals on app restart — iteration progress and budget tracking survive crashes and restarts.
-
On-Demand Memory Retrieval & Selective Background Learning: Memory shifts from automatic injection to on-demand retrieval, backed by a policy-aware system prompt and workspace-bound tools. Selective background learning avoids indiscriminate memory ingestion and reduces context noise.
-
Per-Subagent Thinking Level: Each subagent can now independently configure its thinking depth (off / low / medium / high / max), decoupled from any global default.
-
Built-in Review Agent: New Review built-in agent for systematic review of code changes, design documents, and architectural proposals.
-
Sidebar Expansion State Persistence: Project group and session collapse/expand states are now persisted to localStorage, surviving app restarts.
-
Process Summary Enhancements: Subagent operations, Memory tools, and Goal tools are now grouped into process summary blocks instead of appearing as standalone content. Subagent task summaries are also rendered in the summary.
🐛 Bug Fixes
-
Context Compaction Strategy Fix: Replaced fixed
reserveTokensdefaults with tiered window-size-based percentages (<16K disabled, 16-64K 25%, 64-256K 20%, ≥256K 15%), preventing premature compaction-triggered overflows in large context windows. -
Initial Window Size Constraint: Window dimensions are now capped to
screen.workAreaSize, preventing the window from extending behind the macOS Dock or menu bar. -
Subagent Config Edit Fix: Provider/Model dropdowns now auto-populate when editing an agent. The
setAgentModelIPC bridge correctly forwards thethinkingparameter. -
Tool Display UI Fixes: Overflowing tool group fragments are now truncated with ellipsis. Removed
flex-1from tool labels so summaries align correctly.get_subagent_result/steer_subagentno longer show meaningless line counts. Subagent tool labels now show type + description. -
Compiled Output Deployment Fix:
deployBuiltinAgentssource path now includes the missingdirnamelevel, fixing built-in agent deployment failures in packaged builds.
♻️ Refactoring
- Simplified Subagent Model Config: Removed global default subagent model configuration. Each agent now has independent model selection (follow main model or custom selection). Removed dead code (
model-strategy.ts) and simplifiedconfig-storelogic.
🎨 Style
- ESLint Integration: Added
.eslintrc.jswith TypeScript + React Hooks rules. Fixed 97 ESLint errors across 43 files.npm run lintnow passes with zero errors.