# Paneflow v0.7.7

- Released: 2026-07-06T14:19:35Z
- URL: https://paneflow.dev/releases/v0.7.7
- GitHub: https://github.com/arthjean/paneflow/releases/tag/v0.7.7
- Previous release: v0.7.6

## Release notes

Paneflow v0.7.7
Paneflow v0.7.7 is a major hardening release across the agent control plane, terminal runtime, workspace persistence, diff workflow, and distribution pipeline. The release covers 36 commits since v0.7.6, including the final version bump and release-fix commits.
Highlights

Agent control plane: MCP pane tools are explicitly read-only, workspace-scoped by default, and wrap terminal output as untrusted content. Workspace automation gained safer spawn planning, bounded prefill/context handling, and stricter scripting gates.
Terminal runtime: cell geometry, search, input, bracketed paste, OSC52 handling, copy mode, hyperlinks, scroll state, and output detection were hardened. Hera dogfood diagnostics now provide a shadow/side-by-side runtime for render parity checks behind an opt-in environment gate.
Workspace and sessions: tabbed pane state now persists across restore, session restore is stricter, fleet surfaces are more stable, Rosetta/attention queues are less fragile, and notification surfaces are opt-in.
Diff and review: the in-app diff engine, worktree scans, generated/binary file handling, review state, and agents diff dock are more resilient under large or multi-project changes.
Updates and distribution: signed self-update installers, Windows MSI relay, macOS DMG, Debian, RPM, AppImage, Homebrew, Winget, AppStream, and release CI gates were tightened.
Docs: Conductor, MCP bridge, scripting, Context7 docs metadata, and user-facing launch/demo material were refreshed to match the runtime contracts.

Agent Control Plane And MCP

Added the Paneflow MCP bridge hardening pass: list_panes, read_pane, and search_pane advertise read-only behavior, clamp output, scope access to the current workspace by default, and require an explicit global scope opt-in for instance-wide reads.
Terminal data returned to agents is fenced as untrusted terminal output, reducing prompt-injection risk when agents inspect pane contents.
MCP install/status/uninstall logic is now idempotent across Claude Code, Codex, Gemini, and opencode configs, with config locks, backup-aware writes, TOML/JSON/JSONC preservation, and cross-platform command resolution.
Shared subprocess execution now uses a bounded helper with timeouts, stdout/stderr caps, null stdin, and process-tree cleanup on Unix and Windows.
workspace.up and related IPC methods now plan pane spawns before execution, canonicalize working directories, dedupe labels, bound context/prefill content, gate orchestration primitives, and provide clearer failure shapes.
surface.read, surface.send_text, surface.send_keystroke, events.subscribe, and ai.* routes have tighter validation, pagination, fencing, CR/LF rejection where appropriate, submit echo handling, and better structured responses.
CLI automation was expanded around paneflow up, paneflow flow, paneflow wait, paneflow watch, split/select/focus helpers, dry-run/json modes, env token substitution, managed worktrees, and public IPC barriers.

Workspace, Sessions, And UI

Persisted surface schema now exposes tabbed surface fields so split/tab layouts can be restored more faithfully.
Session restore, worktree scans, pane scans, stale session cleanup, surface identity mapping, mode routing, and agents surfaces were hardened.
Agents UI runtime fixes cover fleet sidebar rows, bottom panel behavior, visibility, labels, active/running protection, and noisy interrupt completion events.
Rosetta and attention queue state received stability fixes for cross-agent status surfaces.
Notification surfaces are opt-in instead of silently on by default.
Settings primitives, input handling, shortcut recording, theme shortcuts, window chrome, markdown theme sync, and the main panel bottom corners were polished.

Terminal, Search, And Rendering

Renderer cell geometry was aligned with frame metrics, backed by golden Hera snapshots and broader layout tests.
Search/input handling now deals better with wide characters, regex errors, lowercase expansion, row/column mapping, copy mode, and focus changes.
Hyperlink and file-path activation, OSC52 clipboard handling, bracketed paste state, cursor blink/color, scrollbars, and terminal output-service detection were hardened.
Hera dogfood runtime can run disabled, shadow, or side-by-side modes via environment configuration, emit scrubbed/raw artifacts, track render mismatches, and compare viewport/cursor/style state against Paneflow's terminal model.
Multiline surface sends and terminal IPC paths now reject or route ambiguous content more predictably.

Diff, Review, Markdown, And Security

Diff scopes, worktree branch selection, multi-project grouping, watcher parking, warm-resume cache, generated/binary file handling, and large patch boundaries are more stable.
The agents diff dock uses shared diff colors/pipelines, better resize behavior, split/unified toggles, collapse state, cached rows, and per-file scroll spans.
Markdown rendering received state and security hardening, including safer rendering boundaries, link behavior, and renderer lifecycle fixes.
Cross-platform test gates were tightened for release and layout behavior, including Unix-specific clippy coverage and Windows-only import guards.

Updates, Packaging, And Release Gates

Signed self-update flows now reject unsigned/keyless builds before touching disk, use stricter semver guards, verify AppImage replacements, and stage Windows MSI updates through a relay after the current process exits.
System package update routes cover APT, DNF, and Zypper, with rpm-ostree and unknown package managers falling back to explicit user guidance.
Release packaging was hardened across Windows MSI, macOS DMG, Debian, RPM, AppImage, tar.gz, Homebrew, Winget, AppStream metadata, SHA256/minisig sidecars, and repository publish checks. The Windows MSI Start Menu shortcut now uses the HKCU KeyPath required by WiX ICE38/ICE43 while binaries and PATH remain machine-wide.
Release CI now checks workspace tests, formatting, clippy, AppStream freshness against the workspace version, MSI relay integrity, and platform-specific packaging behavior before publishing assets.
The final v0.7.7 bump updates the workspace version, lockfile package versions, Debian changelog, and AppStream top release entry.

Behavioral Notes

MCP bridge reads now default to the active workspace. Use the documented opt-in global scope only when an agent truly needs instance-wide visibility.
Notification surfaces are now opt-in, so existing configs may be quieter until explicitly enabled.
surface.send_keystroke rejects newline bytes. Use surface.send_text for text submission flows.
The release workflow requires the first AppStream release entry to match the workspace version.

Validation
Local validation before tagging:

cargo check --workspace
cargo fmt --check
cargo clippy --workspace -- -D warnings
cargo test --workspace
git diff --check
AppStream XML parsed locally and first release version verified as 0.7.7

GitHub release workflow: https://github.com/arthjean/paneflow/actions/runs/28795870781, all build, smoke, auto-update, and publish jobs succeeded.
Repository publish workflow: https://github.com/arthjean/paneflow/actions/runs/28798467533, APT amd64/arm64 and RPM x86_64/aarch64 metadata verified at pkg.paneflow.dev.
Release assets: 32 assets published on GitHub, including Linux AppImage/deb/rpm/tar.gz for x86_64 and aarch64, macOS aarch64 DMG, Windows x86_64 MSI, SHA256/minisig sidecars, and AppImage zsync files.
Full Commit Set

47a219e1 docs(readme): add Paneflow badge
56d046c3 docs(readme): tighten Paneflow badge spacing
d66bd859 docs(readme): refresh Paneflow badge source
76bdbed6 fix(config): expose persisted surface fields in schema
f6acc27e docs(user): refresh Conductor docs for Context7
5fbc533a feat(agent-control): add MCP hardening and Hera dogfood runtime
5c297472 fix(agent-control): normalize agent launches
f0db92d2 feat(workspace): persist tabbed surface state
8702205e fix(terminal): align renderer cell geometry
c1ca5c03 fix(terminal): harden input and search handling
3056247f fix(ipc): guard multiline surface sends
e337a2f4 fix(app): centralize mode routing and expose agents surfaces
c7ea92e5 fix(app): harden session persistence restore
14ecad53 fix(workspace): harden worktree and surface scans
52bf7b6d fix(cli): harden orchestration control plane
cac3ba4b fix(agents): harden agents UI runtime
fc1a217b fix(app): stabilize Rosetta and attention queue state
4dcb30cf fix(app): harden fleet sidebar surfaces
1b719cb6 fix(diff): harden diff engine edge cases
d8417141 fix(diff): stabilize review and agents diff state
9e0623eb fix(markdown): harden renderer state and security
eef7e66c fix(ci): stabilize cross-platform test gates
3e28ff57 fix(app): satisfy unix markdown clippy
38287675 fix(ui): harden settings primitives and input handling
19779b2d fix(app): harden theme shortcuts and window chrome
91435e40 fix(update): harden signed self-update installers
f9ef896e fix(release): harden distribution packaging
83f9eead fix(docs): align public surfaces with runtime contracts
028a561a chore(tasks): harden PRD and demo artifacts
d49ca3ec ci(tests): harden release and layout gates
744ee6b7 fix(update): gate MSI stdio import on Windows
494dab67 fix(config): make notification surfaces opt in
58de4c98 fix(app): suppress interrupt completion noise
fdaca5d9 fix(app): square main panel bottom corners
de717e42 chore(release): bump version to v0.7.7
9d7789f5 fix(release): allow MSI shortcut key path

Full changelog: v0.7.6...v0.7.7
