1.6.0 Changelog
Span: v1.5.4 → v1.6.0 (552 commits)
New
Right panel & mini program system
- Global right Panel: a new global right-side panel workspace with responsive width strategies; panels survive across sessions, limited to 20 instances across browser/Webview.
- Session-level Webview Panel Host: panels can attach to a specific session and restore with it; supports file preview and a built-in browser.
- Mini program navigation stack: mini programs can open child mini programs, built-in file previews, and browsers (AppView three-level navigation stack) with multi-level breadcrumb back; parent mini program pages stay alive during child navigation instead of refreshing on every return.
- New mini program APIs:
ctx.ui.openDiff(host-rendered diff),ctx.ui.delivery(deliverables),ctx.spaces(space list), dynamic toolbar updates (setToolbar/updateToolbarItem),window.finch.ui.toast/confirm, and thefinch-filelocal file protocol exposed to Webviews. - Terminology unification: "mini tools" are now consistently called "mini programs" across the app UI and copy.
- Webview experience: eliminated the light-mode flash on first render — the first frame stays hidden until theme injection completes; AppView child levels now hook into window forward/back history.
Diff / changes panel
- Host-rendered Diff service: supports comparing two file paths or multi-file Git refs, with patience anchors + an LCS fallback algorithm for better large-file diff performance and precision.
- Changes panel: the diff panel is renamed "Changes", integrates write files, optimizes the line-number gutter with modification counts; deleted files are marked with strikethrough + a tertiary color; large-file diff performance is improved.
- Annotation integration: the changes panel and file preview support quick selection-based annotations that auto-generate annotation tokens with paths and line numbers.
Messaging & interaction
- Twemoji rendering everywhere: 473 common emoji SVGs are bundled locally (no CDN, works offline) and rendered consistently across AI replies, user messages, sidebar titles, and ask cards, with a system-font fallback outside the subset.
- Quote replies: every AI reply gets a quote button — lightweight quotes no longer inline the full text; hover cards show "Replying to: xxx" with a jump to the original reply.
- Annotation enhancements: annotations support a
reminderfield (model prompt only, not displayed), hover cards truncate overly long content, and previews no longer leak internal tokens. - New conversation capabilities: the
Session.readtool reads LLM reply turns from a session in a structured way; a "Open in new window" option joins the session menu; child-session cards stay visible with running-state indicators. - Pending message drawer: shows parsed human-readable text without leaking annotation payloads.
Model ecosystem
- xAI: native device-code login (OAuth) for xAI with curated Grok models built in.
- DeepSeek: new vision model (deepseek-v4-flash-vision-exp, 1M context); vision-capable models get a vision badge in the model list.
- GLM 5.3: new model entry; restricted models (GLM/Kimi/DeepSeek) only show low/high/max thinking levels.
- Custom models: filter and batch-select by ID; configure vision capability; one-click add via the
finch://models/adddeep link. - Model probing: models.dev local cache corrects auto-detected model names and context lengths; models flagged as non-text output are filtered out; a new 372K context-length preset.
- OpenCode Zen Go: built-in OpenAI-compatible provider with 12 models.
- Model picker UX: without an explicit model, the last model used in a real conversation is preferred; hovering a usage chart legend highlights the matching bar.
Other
- Traditional Chinese: new zh-HK language support with proofread main UI copy.
- SQLite app storage: new SQLite application storage infrastructure (app.db), powering usage caching and more.
- MCP 2.0: client upgraded to the official
@modelcontextprotocol/client2.0 with protocol-version negotiation fallback.
Improvements
- Performance: throttled agentStore/panelStore persistence writes (main-thread load down ~40% during streaming); throttled usage snapshots while running; async chunked quicksearch no longer stutters; progressive rendering and first-frame cost optimizations for long sessions; low-frequency state animations now render as discrete jumps.
- Stability: in-place rendering of resumed running turns eliminates Timeline tearing; streaming output freezes when reading above the bottom to avoid jitter; refined running states (empty stop treated as network error, reconnect/overload shown directly, interrupted turns marked incomplete).
- Experience: right-panel buttons show shortcuts in tooltips; browser default empty-state guidance; max panel width raised to 2560; faster settings-window load.
Fixes
- Multi-window: fixed user-message sync across windows, unread-state races, follow-up messages not rendering in sync, and Dock badge unread sync.
- Permissions/Interaction: fixed historical permission cards flashing when switching sessions; pending backend permission requests are now cleared when toggling acceptCalls; interaction card response and recovery.
- Rendering: fixed blank history after session restore, abnormal timeline dates, image attachments/base64 failing to render, Chinese-boundary URL rendering issues, and Windows paths rendered as blocked.
- Input: fixed IME Enter accidentally submitting in the rename input; drag-and-drop of directories now inserts @ mentions.
- Stability: fixed message-queue races during auto-compaction, repeated compaction prompts, 524 long backoff not auto-reconnecting, and empty timelines when restoring window sessions.
- Grep: fixed content-mode context line read failures (relative paths resolved against the wrong cwd).
- Models: fixed GLM text-model image requests, OAuth model connection tests, temporary refresh failures deleting saved credentials, and Provider-enable races after login.
- OAuth: fixed callback-page localization, popup window ownership, cancelled authorization keeping the termination page, and icon version-parameter mismatches being rejected.
- Other: fixed rename IME misfires, hover sidebar menus closing accidentally, settings sub-page jumps, MCP client 1.3.x extraction failures, mini program prerelease-version compatibility checks, and directory left-ellipsis segment ordering.