>_ Changelog

Release history and updates.

v0.4.0 Latest

May 18, 2026

  • Opus 4.7 support. Pick `claude-opus-4-7` in the spawn modal or Settings to use the deeper model and its 1M-token context window. Existing sessions keep their current model.
  • Native Agent Teams (experimental). Toggle Settings → Experimental: Agent Teams to let a session spawn in-process teammates that share its worktree. Teammates appear as cards inside the parent session with their own activity and tokens. Requires Claude Code 2.1.32+.
  • Session detail redesigned. Tool groups of 3+ collapse into a one-line summary like "Read 4 files, ran 3 commands" that expands on click. The sidebar gets a GIT card (branch, worktree, +/- diff badge) in place of the old PROGRESS list. The Files panel defaults closed; click the diff badge or the toolbar to open it.
  • Open in Editor, Terminal, and Finder. Pick your editor in Settings → External Editor (VS Code, Cursor, Xcode, Zed, Windsurf, or a custom CLI). The session sidebar gets three buttons; ⌘⇧O opens the current session’s worktree in your chosen editor. Buttons fall back to the project root for sessions without a worktree.
  • Tidy the canvas (⌘⇧T). Snap session nodes into a clean grid by creation date. Manual positions persist across relaunches; Tidy does not overwrite a drag you make afterward.
  • Accurate context window. The CONTEXT bar in the session sidebar now reflects actual tokens in the model’s window for the next turn, not lifetime totals. The bar grows through the session until the CLI auto-compacts, then drops. Each model’s real context size is respected, including Opus 4.7’s 1M.
  • Session history that survives. Old sessions no longer disappear into a hidden archive. They auto-compress to a 30-message summary after the retention window (1, 7, or 14 days, or Forever) but stay visible in the sidebar and canvas. Right-click a session to pin it and keep full history regardless of age. Sessions previously hidden in `archive/` reappear on first launch with a "legacy" banner.
  • Smart worktree cleanup, safely. Sessions that finish with a clean tree and no commits get their worktree and branch removed automatically. Sessions where the agent committed work, left untracked files, or checked out a different branch are preserved. The 2026-04-09 silent-branch-loss footgun cannot recur; cleanup gates on a base-commit SHA captured at spawn time.
  • Custom worktree conventions. Configure your branch name pattern, worktree location, and base branch per project or globally in Settings → Worktree Conventions. Placeholders `{session}`, `{initiative}`, `{date}` interpolate at spawn. Defaults match 0.3 behavior; existing sessions keep working unchanged.
  • Faster startup, smoother canvas. Multi-project session loads run in parallel. Canvas updates coalesce on a short debounce so streaming state changes do not churn re-renders. Sidebar and canvas use constant-time session lookups regardless of how many sessions are open.
  • Polish. Thinking spinner stays anchored instead of drifting across the chat. Markdown wave headers like `### Wave 2: Model + helper (parallel)` wrap cleanly. The Files panel populates during orchestrator runs (was stuck on "No files modified" in 0.3). Editor / Terminal / Finder buttons work for sessions without a worktree, falling back to the project root.
  • Under the hood. Code-quality and performance refactor pass: 87 new tests pinning on-disk format and observable behavior so future changes cannot silently break old files, plus shared utilities consolidated across the codebase. One latent atomic-write bug in initiative persistence fixed along the way. No user-facing surface change beyond the perf wins above.
v0.3.1

April 13, 2026

  • Content font — JetBrains Mono now renders all reading surfaces (chat messages, spec editor, strategy doc, markdown, code, console, inputs); SF Pro stays on UI chrome (sidebar, buttons, canvas). Two-layer typography: content you read vs. controls you click. ~550 font calls migrated across 82 files
  • Diff panel gutter fix — line numbers sit flush against the code again. The 50% empty column between gutter and content is gone; long lines scroll horizontally without pushing the gutter out of alignment
  • Annotation popover grows with content — multi-line review comments no longer get clipped at four lines. Popover resizes to match the text as you type
  • Session diffs survive relaunch — the Files panel now shows the correct change count after quitting and reopening Fermata. Previously sessions with active worktrees reported "0 changed" until the agent ran again
  • Initiative name extraction works on the full spec — Mark Spec Ready now pulls the complete `# Heading` instead of whatever partial name was set mid-typing. No more initiatives called "A"
  • SDD settings cleanup — removed the Approval Mode and duplicate Permission Profile controls from the SDD tab. Auto-approve silently skipped the review phase (dangerous); Permission Profile duplicated the Sessions tab. Both gone; defaults now land on the review-first, safe path
  • Docs site — fermata.run/docs and docs.fermata.run now live with screenshots, videos, and a full getting-started walkthrough. Linked from header and footer
v0.3.0

April 9, 2026

  • Slash commands and skills in the prompt — type `/` in any prompt input (spawn, follow-up, or expanded modal) to see commands and skills from your project, user directory, and enabled plugins. Arrow-key navigation, frontmatter descriptions, and literal `/name args` dispatch straight to the CLI
  • Plugin scoping — only plugins enabled for the current project (per installed_plugins.json) appear in the picker, so commands from other projects’ plugins don’t clutter your list
  • Worktree-aware command discovery — picks up commands committed on the session branch in addition to your main repo’s uncommitted ones
  • Homebrew installation — install Fermata with `brew tap kelios-io/fermata && brew install --cask fermata`. Auto-updates continue through Sparkle; `brew upgrade` is only needed for major version bumps
  • Branch-switch diff refresh — when an agent runs `git checkout` or `git reset` inside its worktree, the Files panel, +/- counts, and canvas badge auto-refresh within a second via a filesystem watcher on `.git/HEAD`
  • Clickable file tree rows — click anywhere on a folder row to expand, click a file row to open its inline diff. No more aiming at the tiny chevron
  • Flattened folder chains — deep paths like `apps/macos/Fermata/Fermata/Features/AgentView` now render as a single breadcrumb row instead of 6 nested rows, matching GitHub and VSCode’s flatten-folders behavior
  • Horizontal diff scroll — long lines scroll right while the line number gutter stays pinned on the left. Text selection preserved
  • CLI Session ID in the inspector — visible, copyable, with a Copy Resume Command context menu that yields the full `claude --resume <id>` string. Paste straight into Terminal to continue in the CLI
  • Tool rows show their target — every Read, Edit, Bash, Grep and friends row now shows what’s being touched (file path, command, pattern) with full value on hover. Copyable like any other text
  • Selectable metadata — branch name, worktree path, tool arguments, and assistant message text can now be drag-selected or copied via right-click across the session detail, inspector, and approval card surfaces
  • Vertical tool chips — chat tool groups now stack one tool per row so long bash commands and file paths get full width before truncation
  • Tool targets survive app restart — persistence now round-trips structured tool input so the inspector activity list keeps its file paths and commands across relaunches
  • Safer worktree cleanup — disabled the silent auto-cleanup that previously deleted branches on session completion. A footgun where any agent that committed its work and ended on a clean tree lost its branch without warning. All cleanup is now explicit via the per-session delete dialog
  • Clear Done is non-destructive — the sidebar button now only removes sessions with no branch or worktree, and shows a confirmation dialog explaining what will and won’t be cleared. Sessions with branches stay put until you delete them individually
  • Canvas node cards show full model names — Opus, Sonnet, and Haiku instead of ambiguous single letters. Fixes the case where capital O looked identical to zero at small sizes
  • Compact inspector header — the session name no longer renders as a giant page title on the canvas right panel; it sits inline with the status pill
  • Fixed auto-update for existing 0.2.0 users — the Sparkle appcast URL was missing from the Release build’s Info.plist, which broke "Check for Updates" in 0.2.0. If you’re on 0.2.0, download 0.3.0 manually from fermata.run (auto-update will work again starting with this release)
v0.2.0

April 7, 2026

  • macOS 15 Sequoia support — no longer requires macOS 26 Tahoe. macOS 26 is recommended for the full experience (Liquid Glass, minimap, animated zoom-to-fit). On macOS 15 the orchestrator runs in legacy canvas mode — drag, pan, zoom, selection, live edges all work
  • Fixed crash on session start on macOS 15 in SubagentDurationLabel’s TimelineView
  • Fixed crash on canvas mount on macOS 15 from SwiftFlow’s SwiftUI Canvas view
  • Smart worktree management — cleanup confirmation for uncommitted changes, orphan detection on launch, merge-back with stash handling, branch preservation options
  • Stop sessions from sidebar and inspector — hover to reveal stop button, no need to open Agent View
  • Initiative prompt cards — orchestrator prompts collapsed into compact card with "View Full Prompt" detail window
  • Chat pagination — sessions with hundreds of messages load smoothly with caching and stable scroll position
  • Cancel PR creation — Cancel button and Escape shortcut to dismiss the PR sheet
  • Auto-update via Sparkle — automatic update checks with Ed25519 signed releases
  • Context window progress bar in session detail showing tokens used vs model limit (200K or 1M)
  • Token counts replace dollar costs on session cards and detail panel
  • Anonymous analytics (opt-out) via TelemetryDeck — no personal data collected
  • Styled DMG installer with branded background
  • Fixed "Open in Agent View" in initiative Tasks phase, auto-naming, gh CLI discovery, and diff panel performance
v0.1.4

March 31, 2026

  • Review phase: safe merge with stash handling, merge conflict detection
  • Worktree cleanup on all completion paths — no more orphaned worktrees
  • All review actions always visible: Mark as Done, Merge Back, Create PR
  • PR creation moved to sheet — diff view always accessible during review
  • Attachments fixed — images and screenshots now work via Read tool
  • Attachment chips shown in chat for both initial prompt and follow-ups
  • GitShell pipe deadlock fix — large diffs load instantly
  • Chat panel: scroll-to-bottom on open, message truncation for long sessions
  • Done view: View PR, Copy Branch buttons, phase navigation hint
  • Complete view simplified: checkmark + Mark as Done
  • gh CLI binary discovery for PR creation
  • SDD default model correctly applied to new initiatives
v0.1.3

March 30, 2026

  • Plan detection uses word-boundary regex — "Give me a list of packages" no longer triggers plan review
  • Initiative deletion fixed — persistence was creating duplicate folders on every save
  • Settings: merged Pro Access and Developer Options into single tab, bigger hit areas
  • Stop button now marks sessions as Done instead of Failed
  • Project paths show ~/relative instead of full /Users/ path
  • Spec editor: removed empty gap below text content
v0.1.2

March 29, 2026

  • Plan mode review — detect and display plan approval cards
  • Feature flags and build tier system
v0.1.1

March 24, 2026

  • First notarized release — signed with Developer ID, hardened runtime
  • Build script: archive, sign, notarize, DMG creation
  • Strategy inline annotations — NSTextView-based markdown with text selection comments
  • Error handling: CLI discovery banner, crash detection, rate limit UI
  • Worktree management: orphan detection, cleanup, prune UI
  • Cost tracking per session and aggregate in menu bar
  • Session and settings persistence to disk
  • Notification system: required input, session done, SDD phases
  • Onboarding wizard, About panel, What's New screen
  • AskUserQuestion card with batch rendering
v0.1.0

March 18, 2026

  • Initial build — Orchestrator canvas + Agent View
  • SDD Mode — full 5-phase workflow: Spec, Strategy, Tasks, Agents, Review
  • AI-powered task decomposition and strategy generation
  • Agent teams with parallel subagent execution
  • Git worktree isolation per session
  • Tool approval flow (allow, deny, allow for session)
  • Canvas node graph with SwiftFlow
  • Embedded terminal (SwiftTerm)
  • MarkdownUI chat rendering with code blocks
  • Prompt composer with file attachments