跳到内容
所有版本

v0.6.7

发布于

Highlights

  • Restored native desktop notifications for agent lifecycle events: completed turns, approval/input requests, unexpected exits, and stalled agents now notify when Paneflow is not foregrounded.
  • Polished the core app feel with an animated startup splash, smooth sidebar open/close transitions, fixed-width terminal tabs, hover-to-close tabs, better title truncation/tooltips, and a collapsible tab-bar action cluster.
  • Hardened the signals that make Paneflow useful as a control plane: service badges are less timing-dependent, Windows now participates in port detection, agent status is shared between UI and IPC, and pane resize/lifecycle behavior has stronger guardrails.

Install

See the Installation section in the README.

What Changed

Agent notifications

  • Restored the desktop notification firing path for ai.* lifecycle events after the in-app chat removal had left the visibility gates in place but no notifier behind them.
  • Added specific notification bodies for finished turns, approval-needed/input-needed states, unexpected agent exits, and stalled agents.
  • Kept notification delivery off the GPUI thread and gated by the configured notify_when_agent_waiting setting plus foreground-window state.
  • Sanitized agent-supplied notification text by bounding it and stripping bidi/zero-width control characters before showing it in a native notification.
  • Added Windows notification identity support with a stable Strivex.PaneFlow AppUserModelID, registry registration for unpackaged/dev runs, and a matching WiX Start Menu shortcut property so packaged MSI installs get reliable toast attribution.
  • Clarified the config schema semantics for PrimaryScreen and AllScreens: native OS notification APIs own display placement, so Paneflow treats both as foreground-window-gated notification modes.

UI polish

  • Added a lightweight startup splash that mounts before the main app and shows a subtle animated Paneflow wordmark before handing off to the real workspace.
  • Made the primary left sidebar animate open and closed across CLI, Agents, Diff, and Settings surfaces; the title bar now follows the animated rail width instead of snapping.
  • Reworked terminal tabs into stable fixed-width chips with safer title derivation from custom names, agent titles, shell cwd titles, and default terminal cwd fallback.
  • Added tooltips for truncated tab titles and switched the close affordance to a hover-revealed leading slot, keeping the tab label aligned while making close easier to hit.
  • Expanded the tab context menu with copy path, copy relative path, move-to-pane, cancel queued prompt, and close tab actions.
  • Added a collapsible tab-bar action cluster so dense pane toolbars can be folded without losing access to copy, zoom, sessions, agent launchers, and custom buttons.

Panes and layout

  • Hardened pane splitting and closing with focused layout-tree tests for sibling insertion, cross-direction wrapping, ratio redistribution, and single-child container collapse.
  • Improved border resize behavior with a wider hit target, asymmetric minimum-size clamping, nested-layout minimum calculations, and clean resize-end callbacks when mouse state/window bounds interrupt a drag.
  • Changed terminal PTY exit handling to drain final output after child exit before showing the exit overlay, matching Zed's terminal behavior and avoiding clipped last lines from fast exits.
  • On Windows, terminal teardown now walks and terminates the process tree children before the root process, reducing orphaned descendants under ConPTY.

Service and agent status

  • Stabilized dev-server/service badges by merging OS-side port scans with terminal text detection instead of requiring both to win a timing race.
  • Preserved frontend labels and exact URLs when backend output mentions the same port, pruned stale service labels, and avoided substring lookalikes like invite or origin being misclassified as Vite.
  • Ignored shared/listener-balanced ports when computing per-terminal port conflict badges, so a shared port does not look like a collision.
  • Added Windows port scanning with ToolHelp process-tree traversal plus IPv4/IPv6 GetExtendedTcpTable listener ownership, bringing service badges closer to Linux/macOS behavior on Windows.
  • Shared one workspace agent-status projection between the CLI sidebar and fleet.list, keeping hooked sessions, unhooked process-scan fallbacks, and active-agent tooltips consistent.
  • Simplified Agents sidebar thread indicators to compact lifecycle states derived from hook-backed agent state, with failed agents shown distinctly instead of falling back to idle.
  • Added process-start fingerprints to agent thread tracking so stale sweeps can distinguish the original process from PID reuse where the platform exposes enough information.

Cross-platform and release hardening

  • Added a mandatory repository instruction to verify every implementation decision against Windows, macOS, Linux distro families, Wayland, and X11 before considering work complete.
  • Gated the Windows process-basename helper so non-Windows builds do not trip -D warnings on platform-specific helpers.
  • Bumped the workspace, lockfile package entries, and Debian changelog to 0.6.7.

Validation

Commits

  • 2cffbf3 fix(notifications): restore agent desktop notifications
  • db145e9 fix(ci): gate Windows process basename helper
  • f96650b feat(app): add premium startup splash
  • 899ca0b fix(app): harden agent status indicators
  • cee0320 fix(app): stabilize dev-server service badges
  • ab9d8e5 feat(app): smooth sidebar animations
  • affc2b6 fix(layout): harden pane border resize
  • af16a44 refactor(panes): harden pane lifecycle behavior
  • 07e487f docs: require cross-platform compatibility checks
  • 2208eea feat(app): polish terminal tab bar interactions
  • a0b40c3 chore(release): bump version to v0.6.7

Full changelog: v0.6.6...v0.6.7