Changes
🚀 Features
- feat(provider): add OpenCode Zen provider with multi-backend routing and cost tracking @amitksingh1490 (#2594)
- feat(forge_domain): dark theme with CSS variables and toggle button for conversation HTML view @tusharmath (#2592)
- feat: add custom_headers for providers + built-in Kimi Coding provider @david-strejc (#2576)
🐛 Bug Fixes
- fix(todo): content-keyed incremental updates, insertion-order display, correct removed-item icons, no IDs in responses @amitksingh1490 (#2606)
- fix(forge_app): add notifier to prevent tool output interleaving @laststylebender14 (#2596)
- fix(provider): retry anthropic overloaded errors (SSE event + HTTP 529) @tusharmath (#2595)
- fix: set model+provider atomically @amitksingh1490 (#2600)
- chore(deps): bump the patch group with 18 updates @dependabot[bot] (#2584)
- fix(sync): workspace indexing on Windows @aminya (#2587)
- fix: enhance model matching by adding provider disambiguation @laststylebender14 (#2577)
- fix(attachment): hash full file content instead of range content and consolidate FileInfo @tusharmath (#2578)
- fix(forge_app): use oneshot for title generation tasks @tusharmath (#2573)
🧰 Maintenance
- fix(todo): content-keyed incremental updates, insertion-order display, correct removed-item icons, no IDs in responses @amitksingh1490 (#2606)
- chore(provider): add minimax m2.7 and m2.7 highspeed models @amitksingh1490 (#2597)
- chore(provider): increase model cache TTL to one week @tusharmath (#2588)
- chore(provider): add gpt-5.4-mini and gpt-5.4-nano models to provider.json @amitksingh1490 (#2589)
- chore(deps): bump the patch group with 18 updates @dependabot[bot] (#2584)
- chore(deps): bump the major group with 2 updates @dependabot[bot] (#2582)
- chore(deps): bump the minor group with 5 updates @dependabot[bot] (#2583)