Agents can now report their status to Prowl directly through OSC 7501, starting with Claude Code and Pi. Split panes also get a close button.
New
- OSC 7501 program status support. Prowl now accepts status reports that agents send through the terminal (OSC 7501), so Working, Blocked, and Done come straight from the agent instead of being inferred from the screen. Claude Code 2.1.295+ and Pi 1.1.0+ are the first supported agents; more will follow. Pi now shows Blocked when waiting for extension confirmations, questions, or authentication.
- Split panes now have a close button beside the zoom control. Hover over the pane’s top drag handle to reveal it; the tooltip shows your configured shortcut, which defaults to ⌘W.
Improved
- Exited agents disappear from Active Agents sooner in terminals with shell integration.
- User settings now use
global.user.json and prowl.user.json. Existing settings migrate automatically while preserving legacy files, symlink targets, and any existing destination files.
Fixed
- Fixed session tracking after creating or resuming sessions in Claude Code and Pi, so Prowl updates without requiring another keystroke.
- Prevented automatic settings saves from overwriting configuration after a failed load.
- Fixed a potential crash during terminal initialization.
This release adds Devin and Antigravity support, reduces GitHub refresh traffic, and improves agent status detection.
New
- Added Devin CLI and Antigravity CLI (
agy) support, including agent detection, profiles, and skill installation. Choose either runtime in Agent Profiles to configure launch options; Devin is also available in workflow role selection.
- Added
gpt-6.1-sol to the model suggestions in the profile editor.
Improved
- Pull request refreshes now batch requests and check settled PRs less often, reducing GitHub API usage across large workspaces while keeping active checks refreshed.
- When GitHub rate-limits requests, Prowl pauses and retries automatically. The toolbar and Settings › GitHub show the retry time.
Fixed
- Corrected Working and Blocked detection for current Amp versions and Working detection for manually launched Oh My Pi sessions. Antigravity no longer gets stuck as Blocked after slash commands or answered questions.
- Fixed transcript reads for Codex panes using a shared daemon, and prevented previous-session context from lingering after a thread switch.
- Made Devin message submission wait for pasted text to be ready, and fixed
prowl send when answering menus or adding to an existing draft.
- Fixed delayed PR updates after branch switches and preserved known PR status when GitHub returns incomplete results.
This release adds a separate terminal configuration for Prowl and fixes font rendering, font size resets, and a quit hang.
New
- Use a dedicated Ghostty config through Settings → General → Terminal Config → Choose File…. It replaces the shared Ghostty config and applies to running terminals immediately; select Use Ghostty's Config to switch back.
Fixed
- Chinese, Japanese, and Korean text now uses appropriate system fonts when no font is configured, avoiding mismatched fonts and oversized characters. Explicit font settings remain respected.
- Resetting terminal font size now correctly follows the config, so new tabs and splits pick up later
font-size changes instead of retaining the old size.
- Fixed a rare hang when quitting Prowl after CLI activity.
New
.pwlworkflow bundles now appear as packages with a Prowl workflow icon in Finder. Use Show Package Contents to browse their files; open and run workflows from Prowl, not by double-clicking the bundle.
Improved
- Experimental Remote Mirror remains opt-in with
PROWL_REMOTE_MIRROR=1. Pair another Mac by copying and pasting connection details, or scan the Host’s QR code with a compatible mobile Mirror client. Mobile clients are distributed separately.
- Mirror’s Scroll Up and Scroll Down controls move the Host’s shared terminal view by about a page. Mac Mirror preserves scrollback styling when supported, with a plain-text fallback.
- Use Pair Again… to replace saved Mirror access, or Revoke All Devices… on Host to require every device to pair again.
Fixed
- Mirror input from compatible mobile clients is no longer blocked by a pending automation dispatch. Fixed Mac Mirror updates stalling when a terminal uses a fixed title or reloads its configuration.
- Canvas mode’s Run and custom-command buttons now match the spacing and margins in Normal and Shelf modes.
This release adds workspace editing and more reliable status tracking for Codex sessions.
New
- Edit existing workspaces from the sidebar workspace menu or Edit Workspace in the Command Palette. Change the title, description, task links, repository names and roles, or add, reorder, and remove repositories.
- Create a workspace with just one repository and add more later. The workspace editor also supports Simplified Chinese.
- Agent profile model suggestions now include GPT-6 models, Claude Fable 5.1, and Claude Opus 5.5.
- Use
prowl list --json to check pane visibility through the new pane.visible field, and find the calling pane through caller.
Fixed
- Codex sessions started by typing
codex now track working and idle states through the shared daemon, including subagent work and resumed conversations. Codex 0.158 footer layouts and folder trust prompts are also recognized correctly.
- Commands run by Codex through its shared daemon now resolve to the correct pane, preventing agent signals, dispatch completions, and workflow actions from being attributed to another tab.
- Agent Island keeps a consistent width when expanding or collapsing on external displays, and its full floating bar responds to hover.
- Fixed a Canvas layout cleanup crash on older macOS Swift runtimes, including macOS 26.3.1.
Improved
- Agent Island takes up less menu bar space on notched displays, leaving more room for status items. Its expanded agent list now matches the compact bar’s width.
- When space is tight, Agent Island hides the Idle count. Idle agents remain in the expanded list, and VoiceOver still reads all counts.
Fixed
- Fixed sidebar repository and worktree reordering becoming unresponsive after an earlier drag. Insertion indicators and drops now remain active until the interaction ends, including when retrying after cancellation.
New
- Added Simplified Chinese localization. Choose Follow System, English, or Simplified Chinese in Settings → General → Language, then restart Prowl to apply the change.
- Search the command palette using Chinese command names or English keywords when using the Chinese interface.
Fixed
- Prowl now finds another working Git installation when Apple’s Git tooling is unavailable, keeping worktrees and Shelf accessible.
- Repository load failures now preserve running terminal sessions and show guidance for Git or access problems. Use Retry after resolving the issue.
- Worktrees moved externally with
git worktree move now refresh automatically. Detection also remains reliable after Git’s worktree registry is replaced or recreated.
- Shelf now opens for plain folders even when Git is unavailable.
Improved
prowl create tab --background now works for plain Shell tabs as well as Agent Profile launches, so scripts and agents can open a tab without changing your selection or taking focus. Background split panes still require a Profile.
Fixed
- Fixed workflows waiting indefinitely to deliver their first task to a fresh Codex session that shows an animated starfield background.
New
- Undo closed panes and tabs with ⌘Z or ⌘⇧T within five seconds by default, restoring running programs, scrollback, and split positions—even after closing a worktree’s last tab. Press ⌘⇧Z to close them again; the restore window follows Ghostty’s
undo-timeout setting.
- Start the built-in Review Loop workflow to open a selectable reviewer beside your current session. It defaults to 2–4 rounds, checks previous findings and searches for new issues each round, and saves results in workflow history with unresolved work clearly marked.
Fixed
- Claude’s status no longer incorrectly switches from Working to Idle when you browse transcript history. Activity detection also better accounts for ongoing child tasks and background shell jobs.
- On macOS 27, clicking inside an active Canvas terminal or Command-clicking a link no longer unexpectedly changes card selection.
Agent Workflows are here: turn repeatable tasks into reusable flows that coordinate your agents, run scripts, and keep every step and result in one place.
New
- Build your own agent workflows. Combine prompts, agent launches, script actions, conditions, and loops in a reusable workflow. Assign Agent Profiles to roles so different agents can take care of different steps. Open Manage Workflows from the Agents menu, start with a single-agent or multi-agent template, or use Create with Agent to help write one for your task.
- Start and follow a run from Prowl. Launch workflows from the Agents menu, Command Palette, or Settings. The start sheet shows the participating agents, options, and steps before you run; toolbar controls let you follow progress and resolve steps that need attention. Local script actions require review and approval before execution.
- Hand off a task without losing context. The built-in Handoff workflow asks the current agent to write a briefing, saves it with repository and session context, and can launch a receiving agent in a new tab to continue. Choose save-only to keep the packet for later. Handoff now uses the workflow interface; existing
prowl handoff commands show migration instructions.
- Inspect every step in Workflow History. Open the history button beside the toolbar bell to revisit prompts, agent deliveries, script outputs, errors, and repeated steps. Filter by pane or worktree, open result files, and export a finished run as a ZIP. Local history is kept for three days; export runs you want to retain.
Improved
- Codex status tracking now uses available session lifecycle evidence to keep panes Working through quiet periods while turns or child tasks remain active. Approval and question prompts still take precedence as Blocked.
- Smaller release downloads, with the same signed and notarized app.
Fixed
- Completion reminders remain unread until you view the pane in the active, visible window, including Canvas panes that have been panned offscreen.
- Fixed active Claude Code sessions appearing Idle when the composer has a session title, and active Codex sessions appearing Idle with animated backgrounds.
Meet Agent Island: all your agents' status at your Mac's notch, with a new way to navigate built for speed and muscle memory. See who is working, waiting for you, finished, or idle at a glance, then jump straight to any agent—even from another app.
New
- All-agent status at the notch. Agent Island brings together status counts for every agent, with visible reminders for agents waiting for input or with unread results. It fits around the notch on your chosen display, or appears as a draggable floating bar on displays without one.
- Agent navigation that becomes muscle memory. Assign Toggle Agent Island in Display or Shortcuts settings, then use the same quick sequence from any app: open the roster, select with arrow keys, and press Return to jump to the pane. Number keys 1–9 jump directly to an agent on the current page; agents waiting for input and unread completions get priority when the roster opens. You can also expand the island and click any agent.
- Off by default, easy to enable. Turn on Show Agent Island in Settings → Agents → Display, or use the island toggle in the Active Agents panel.
- Active Agents and Agent Island preferences now live together in Settings → Agents → Display, including placement, opacity, and whether to hide the island when empty.
- Settings → Agents → CLI & Skills now shows whether the CLI connection is listening, with a reason when it is unavailable.
Fixed
- Closing a pane or tab now asks for confirmation if an affected terminal received editing input within the last 10 seconds or still has active input-method composition.
- Agent status now follows explicit runtime indicators more reliably, including Pi and OMP working indicators, Codex background-terminal waits, and Copilot streaming output. Claude Code and Copilot workspace-trust prompts correctly appear as Blocked.
- Adding a Custom Command now scrolls to and focuses its name editor, so typing renames the command instead of the repository.
- Fixed completion-hook setup for Codex configurations without an existing notifier.
This release lays the groundwork for Agent Workflows — multi-step, multi-agent orchestrations that Prowl runs and supervises for you. The engine and CLI are ready to try today; the complete experience, including starting and managing runs from the UI, arrives together with the workflow interface in an upcoming release.
New
- Agent Workflows (early preview): define multi-step, multi-role workflows in YAML and run them with
prowl workflow run. Track progress with prowl workflow status, complete a step with prowl workflow done, and stop a run with prowl workflow cancel; validate a definition file or inspect the schema with prowl workflow validate and prowl workflow schema. The start sheet, Settings page, and built-in workflows ship in a later release.
- A workflow status indicator now appears in the toolbar for the selected worktree. Hover or pin it to see the run's active role, current step, repeat progress, and any attention that needs your input.
prowl agents dispatch sends a new task into an agent that is already running in a pane, without restarting it, so you can queue a follow-up request once the agent goes idle.
Fixed
- Creating a new tab or split, or launching an Agent Profile, no longer fails or leaves a dead shell when the display is asleep.
- Worktree rows for a blocked agent now show a "needs input" icon instead of the running spinner, so a blocked agent no longer looks like it is still working.
This release focuses on letting Prowl and your agents know what other agents are actually doing, plus new CLI and Settings tooling for skills and panes.
New
- Agent coordination from the CLI:
prowl create tab|pane --profile <name> --prompt - launches an Agent Profile with a kickoff prompt and returns a dispatch receipt; prowl agents wait --dispatch <id> blocks until the worker reports prowl agents dispatch-complete, and prowl agents wait <pane> --until idle|blocked|changed|exit waits on an observed pane state. Agents can report their own events with prowl agents signal, and prowl profiles list shows the configured Profiles with their runtime availability.
- Native completion-signal hooks for all eight supported runtimes (Claude Code, Codex, GitHub Copilot, Droid, Qoder, Pi, Oh My Pi, OpenCode) when launched from a Profile, so
agents wait knows precisely when a turn ends or an agent needs input instead of guessing from the screen. Nothing is written to your runtime configuration; the hooks live only for that launch.
- Prowl's bundled skills (
prowl-cli) can be installed with prowl skills install, or from the Agent Skills section on the new Settings → Agents → CLI & Skills page. Both link the bundled skills into your Claude, Codex, or shared ~/.agents skill folders and show the same per-target status.
prowl create pane <anchor> --direction right|left|up|down opens a split against an explicit anchor pane, and every pane now exports PROWL_PANE_ID so an agent or script can address its own pane without guessing from focus.
Improved
- Settings now has an Agents group: Profiles moved there, and the new CLI & Skills page takes over the
prowl CLI install from Advanced.
Fixed
- Claude Code's periodic idle-prompt notification was misread as "needs input", which could make
agents wait hang on an already-idle pane; freshly launched Profile agents are also detected as idle promptly instead of timing out.
- Pi's background sub-agent activity is now recognized as Working instead of appearing idle.
- A Claude pane with an active spinner above a queued multi-line message was incorrectly reported as idle.
This release adds per-repository diffing for workspace children and unifies the Prowl CLI's target syntax.
New
- Workspace child rows now support diffs: click their
+N/-M badge or use the context menu's Show Diff / Show Outgoing Changes. Diff shortcuts (⌘⇧Y, ⌥⌘⇧Y), the View menu, and Command Palette now follow the selected workspace child, not just worktrees.
- The Prowl CLI accepts
pN/tN pane and tab handles directly in any target position, and adds action-first prowl create tab and prowl close commands. The older tab/pane lifecycle commands still work but print a deprecation warning.
Fixed
- Fixed terminal tab colors occasionally resolving incorrectly when SwiftUI rendered them asynchronously off the main thread.
Improved
- Notification and update controls in the toolbar are now grouped together for a cleaner layout.
Improved detection accuracy for Claude Code sessions, plus a new CLI command for reading agent results.
New
prowl agents read <pane> (CLI): get an immediate, read-only snapshot of a Codex or Claude Code pane's current status and completed result text. Use --result-only to pull just the trusted final output, e.g. for piping into scripts.
Fixed
- Claude Code panes with a long todo list no longer flash to Idle while a spinner is still actively running.
- Claude Code panes waiting on a background agent, or showing multi-word elapsed-time status text, are now correctly detected as working instead of Idle.
- Cmd-clicking a terminal link in Canvas no longer requires repeated clicks or misfires on the wrong link.
This release streamlines the toolbar layout and improves the accuracy of agent status detection for Claude and Codex.
New
prowl agents --json can now include a detection_reason field, showing why an agent was classified as blocked, working, or idle.
- Added
prowl read --source detection, which reads the same screen buffer Prowl uses internally for agent state detection.
Improved
- Unified the top toolbar across Normal, Shelf, and Canvas modes around Agents + Quick Launch, with the notifications bell surfaced separately. The branch/folder name was removed from the toolbar since it's already shown in the sidebar.
- Rename Branch moved from the toolbar into the worktree's context menu (and an app-level sheet), keeping its configurable shortcut.
Fixed
- Codex's directory-trust, hook-review, and first-run sign-in prompts are now correctly detected as blocked instead of being read as idle or working.
- Fixed Claude's history-search viewer being misdetected as idle after its filter/navigation footer text changed.
New
- Agent Profiles now cover the full 15-runtime catalog, with per-runtime controls for model, reasoning effort, approval mode, and Dedicated Home shown only when that runtime actually supports them.
Changed
prowl handoff now always requires an explicit briefing choice: pass --brief - with agent-authored content, or --no-brief for a context-only handoff. The automatic recorded-session fallback briefing has been removed.
Fixed
- Fixed a crash that could occur when two close-confirmation dialogs tried to appear at the same time.
- Pi's animated braille "Working..." loader is now recognized, so its status no longer gets stuck showing idle or blocked while it's actually working.
- Agent status detection (working/idle/blocked) no longer gets confused by old response text left on screen; only the live status region is checked.
- Tabs and splits launched from the Agents menu now show the correct runtime icon right away instead of a generic terminal icon.
Improved
- Reduced CPU usage from idle-agent monitoring and sidebar updates, and removed tab-bar flicker caused by animated agent titles.
- Uncommitted line-change badges no longer silently undercount large untracked files; when some files can't be counted, the badge shows
+N… and explains what was omitted.
This release introduces Agent Profiles — reusable presets for launching coding agents — along with related launcher and Settings improvements.
New
- Agent Profiles: create named launch presets for Claude Code and Codex with a chosen model, reasoning effort, execution mode, tab/split placement, extra arguments, and per-profile environment variable overrides (for example, pointing a profile at a different API endpoint). Manage them in Settings → Agents, each with its own custom icon and an optional isolated account/home.
- Launch a profile from the toolbar Agents menu, its new one-click quick-launch segment (instantly launches your Recommended profile), or the Command Palette's "Launch Agent" rows.
- Clear a recorded keyboard shortcut with the new Clear button shown while remapping — the shortcut stays unset until you press Reset.
Improved
- Settings now uses native macOS navigation chrome (sidebar and back button) throughout.
- The Agents popover groups launcher rows under one header and dims agents whose CLI isn't found on your PATH, showing why and rechecking automatically when you reopen it.
- A profile's environment variables and dedicated account now apply only to the agent it launches — manually running
codex or claude in the same tab no longer inherits them.
Fixed
- Fixed a crash when adding or removing rows in a profile's Environment Variables table.
- Fixed several brand icons (Claude Code, Cursor, GitHub Copilot, and others) rendering as a tiny dot in the Default Agent Profile picker.
Prowl 2026.7.29 adds automatic repository icon detection and an on-device icon suggestion tool, along with a reworked sidebar context-menu system.
New
- Newly added repositories now get a product icon detected automatically in the background (Apple, Android, Flutter, React Native, Web, Unity, Tauri, and more project kinds are recognized). This can be turned off in Settings → Appearance → Repository Icons ("Detect project icons automatically").
- Repository Icon menu gains Suggest an Icon…, which recommends SF Symbols on-device based on your README or package metadata, with alternates and a "Regenerate" option.
- Sidebar context menus for repositories and worktrees have been reorganized: worktree rows get
New Terminal Tab (always opens at the worktree root), Stop Running Script, Copy Branch Name, Open Pull Request, and a Close All Tabs action grouped with Archive/Delete.
- The
PR #N tag in the sidebar is now a clickable link that opens the pull request.
- The Active Agents context menu gains a Session group with Copy Session Path and Reveal Session in Finder, for agents that keep a native session log on disk.
Fixed
- Canvas tabs opened from the sidebar now focus correctly on creation.
- Grok session log paths now resolve to the correct transcript file.