Skip to main content
Changelog

Changelog

What shipped in Daintree

A curated record of releases, features and fixes, newest first. It runs back to the founding sprint.

August 2026

Pilot, one searchable launcher, and a leaner MCP surface (v0.30.0 through v0.32.0)

  1. v0.32.0: Park and snooze, so a deliberate wait stops reading as demand

    • Park a run with a note and an optional gate. It drops into a quiet Parked band, stops counting as demand everywhere, and hands itself back the next time the gated terminal goes ready
    • Snooze an agent for 15 minutes, 30 minutes, 6 hours, or until you interact with it; any typed input wakes it
    • Project group headers carry a demand chip, and a working run that has been silent for over ten minutes shows a quiet cue instead of rendering as healthy
    • A missing Git binary is caught at startup with a banner and a one-click install where that is safe, rather than surfacing as a raw spawn error
    • File paths reach git as literal pathspecs, closing a route by which discarding one file could destroy uncommitted work in another
  2. v0.31.0: One searchable launcher, and a copy-context history

    • The toolbar agent and panel trays and the dock + button collapse into a single searchable launcher: same inventory, with per-row pinning, shortcut capture, preset rows, and running-state pips. The file browser now opens as a persistent grid panel from every entry point, and ships visible on the toolbar
    • The copy-context button becomes a dropdown: copy the full context, or re-run one of the five most recent copies for the project
    • An empty command palette query browses the whole action inventory grouped by category, rather than favorites plus a short recents band
    • Git writes resolve the branch's real push remote instead of assuming origin, so a fork-configured branch stops writing to the wrong repository
    • Daintree stops probing Anthropic, OpenAI, and Google every 30 minutes and on every window focus, regardless of which agents you use
  3. v0.30.0–v0.30.1: Pilot, and an MCP surface real clients can hold

    • Pilot: every agent run across every project and scratch workspace in one searchable view on ⌥⌘O (Ctrl+Alt+O on Windows and Linux), grouped by project and ordered by what needs you most
    • The external MCP tool surface drops from 100 tools to 23. The surface itself is versioned, and returned payloads are bounded and schema-checked. Clients were silently truncating the overflow and choosing for you
    • Forge actions over MCP grow enough reach for an agent to run a whole work loop without leaving Daintree
    • The file browser feeds files straight into an agent: drag a row or press Cmd+I to send an @file reference
    • A relaunch restores every open project window on the project it was showing, voice dictation moves to gpt-live-transcribe, and v0.30.1 closes the routes by which one project's state reached another: terminal restore, reconnect, spawn, and workspaces with no repository

July 2026

Workspaces without a repository, and a faster, more durable app (v0.22.0 through v0.29.0)

  1. v0.29.0: Any folder is a workspace, and a project can move

    • Daintree stops requiring a Git repository: any folder opens as a lightweight workspace, and git init becomes an explicit upgrade
    • Move or rename a project folder from inside Daintree; panels, terminals, and agent conversations follow it
    • A new read-only file browser panel with a resizable tree and live filesystem updates, and a file viewer that plays video and audio inline and previews PDFs through Chromium's viewer
    • A large durability wave protects agent sessions, typed drafts, recipes, and uncommitted work
    • Voice dictation moves to GPT-5.6 Luna ahead of the model shutdowns, and the correction-model dropdown is removed now that both tiers collapse to one model
  2. v0.28.0–v0.28.1: Panels open as dialogs, and a deleted worktree keeps its agents

    • The file viewer, diff viewer, review workspace, and Review Hub move onto one panel model: each opens as a dialog and can be promoted into the grid
    • Deleting a worktree no longer kills the agents running in it: their terminals stay alive on a deleted-worktree card you can drag them out of
    • Agent scrollback ceiling raised from 5,000 to 10,000 lines
  3. v0.25.0–v0.27.0: Scratch workspaces, terminal editing, and a memory pass

    • Scratch workspaces become a first-class place to work: nameable, with a real first-run launcher and bulk cleanup
    • Type-anywhere rescue routes stray keystrokes back to the agent you were talking to, and Option+←/→ jumps a word at a time in the shell line editor
    • Forge toolbar counts refresh off local git activity instead of a fixed timer, so merge sprees update promptly
    • Codex's $ trigger surfaces its Skills, Apps, and Plugins in the completion picker
    • Renderer memory in project views is capped while agents stream, and reclaim passes free real memory
  4. v0.23.0–v0.24.0: A multi-file review workspace, and a 25% faster boot

    • Opening a multi-file changeset opens a dedicated review workspace: a file sidebar with change counts, review progress, a filter, and per-file viewed markers, and changed images get a compare view with two-up, swipe, and onion-skin modes
    • Cold startup is ~25% faster, switching back to a recent project is near-instant, and agent terminals appear ~5× faster
    • A new file viewer panel opens any text file alongside your terminals, with a rendered view for markdown
    • Terminals show why an agent is waiting: approval, question, error, or prompt
    • Automatic pre-agent git stash snapshots are removed, so agent starts no longer accumulate auto-stashes in git stash
  5. v0.22.0: Closed agent sessions become resumable

    • Every terminal close journals a resume record, so a closed agent session can be reopened later from a searchable list
    • The empty panel grid is reworked into a recipe-forward launcher with quick actions and resume shortcuts
    • User plugins gain a full lifecycle: hot enable and disable, background update checks, and a startup kill-switch
    • The rendering pipeline prioritizes whichever terminal you are looking at under heavy multi-agent load
    • A "Why am I slow?" snapshot surfaces the current performance bottleneck on demand

June 2026

The plugin system reaches 1.0, and light mode is redesigned (v0.16.0 through v0.21.1)

  1. v0.20.0–v0.21.1: The plugin system reaches 1.0, and hibernation goes away

    • Plugins reach their 1.0 contract: a release-ready authoring toolchain, a frozen manifest, out-of-process execution with crash isolation, and just-in-time consent for high-risk capabilities
    • Forge write operations land over MCP: PR create, merge, comment and edit, issue create, close and label, and PR review
    • Per-terminal hibernation is removed: backgrounded terminals stay live, ending the recurring agent-TUI corruption across OpenCode, Codex, Gemini, and Claude
    • Cold project switches reveal a themed skeleton in ~150ms instead of freezing on the outgoing project for seconds
    • Grok (xAI) joins the agent roster, and the Gemini CLI agent is deprecated (still working, no longer recommended)
  2. v0.19.0–v0.19.1: Permission bypass becomes a real setting

    • A global skip-permissions toggle with a tri-state DangerousMode, plus a first-run onboarding step to set it
    • The in-app assistant can name agent terminals at spawn and rename them afterwards
    • A round of panel-tab, terminal-rehydration, and tooltip reliability work
  3. v0.17.0–v0.18.2: Light mode looks designed, and GitHub stops being special

    • The light-theme token engine is rebuilt for perceptual contrast, with Bondi Beach as the gold-standard template and six more light themes redesigned on it
    • GitHub is rebuilt as one forge provider among many: issue creation, assign-to-me, and worktree actions all route through a provider-neutral contract, and the temporary github.* action aliases are removed
    • The Daintree Assistant gains a figure rail, lightbox, inline documentation images, and a live MCP tool-call activity strip
    • Voice dictation gains context keyterms, terminal-derived biasing, and a dictionary learned from transcript corrections
    • Long-running terminals recover more reliably from wake, stalls, and heavy output, with memory-aware trimming, and Electron 42 brings Chromium 148
  4. v0.16.0: The plugin manager becomes a first-class view

    • Per-plugin configuration, capabilities, and permissions move out of the settings tab into a dedicated master-detail view
    • A daintree:// deep-link scheme can install or open a plugin from outside the app
    • Plugins can register agents through a contributes.agents contribution point
    • A round of memory-leak and long-session fixes: xterm dispose, PTY descriptors, and disk-state growth

May 2026

Review Hub, Windows parity, and the first plugin platform (v0.9.0 through v0.15.0)

  1. v0.15.0: A plugin platform, and voice input grows up

    • The .dntr archive format, an atomic install pipeline, a daintree-plugin CLI, and the @daintreehq/plugin-sdk
    • Plugins contribute commands, context menus, keybindings, settings forms, and views, sandboxed behind manifest-declared capabilities
    • Voice input gains client-side voice activity detection, push-to-talk, and dictation target locking
    • Dev preview sessions persist across relaunch, with a cross-worktree dev-server dashboard
    • Notifications gain a persistent inbox with age-based retention and OS Do-Not-Disturb awareness
  2. v0.13.0–v0.14.1: A scrollable panel grid, and cheaper forge traffic

    • The panel grid is reworked from count-driven to size-driven, and scrolls when fleets exceed the viewport
    • GitHub and forge traffic is overhauled: host-side batch loading, cross-window GraphQL coalescing, and an ETag-gated activity probe
    • The action palette gains pinning, scope chips, mode-prefix routing, and destructive-action disclosure
    • A broad accessibility sweep lands across menus, dialogs, palettes, and forced-colors mode
    • Antigravity (agy) joins the built-in agent roster
  3. v0.12.0–v0.12.1: Forge providers, faster cold start, and a fleet broadcast rework

    • Forge provider model: git host integration is no longer tied to GitHub, with the provider set per project and overridable per worktree
    • Faster cold start: the boot path batches its initial invoke and runs hydration concurrently, with memory-pressure handling that scales as load climbs
    • Virtualized worktree sidebar: rows now show dirty state, last commit, base-branch divergence, and fetch staleness
    • Fleet broadcast rework: per-target edit and skip, fuzzy matching in the picker, and saved fleets split into pinned and smart sets
    • MCP server: audit tooling with NDJSON export, time-bounded per-tool grants, and a cap on repeated auth failures
    • v0.12.1 follow-up: closing a grid panel feels instant, the file diff viewer loads again, the workspace sidebar no longer hangs on a project folder that has moved, and the assistant says when a saved agent is unavailable instead of quietly falling back
  4. v0.11.0–v0.11.1: Windows feature parity with macOS and Linux

    • Windows reaches feature parity with macOS and Linux: NSIS and Store builds, native menus and keybindings, and UTF-8 in fallback shells
    • Review becomes the fourth built-in panel kind
    • Destructive actions now prompt for confirmation, including every remote push
    • Status banners consolidated onto shared InlineStatusBanner chrome
    • A resilience pass across the pty-host, file watchers, and crash recovery
  5. v0.10.0–v0.10.2: Review Hub rebuilt for staging, diffing, and pushing changes

    • Review Hub: stage, diff, commit, and push worktree changes, with a commit composer that gates the push and inline recovery for rejected pushes
    • Voice transcription moved from Deepgram to the OpenAI Realtime API
    • Voice dictation runs a whole-passage AI correction pass when recording stops
    • PR CI status now shows on worktree cards and the Review Hub chip
    • Conflict UI rebuilt: merge, rebase, cherry-pick, and revert conflicts now show as a commit sequence
  6. v0.9.0–v0.9.1: Daintree Assistant and a built-in MCP server

    • Daintree Assistant: a bundled help session backed by Claude, Gemini, or Codex, with its own settings tab
    • Built-in MCP server: streamable HTTP transport, per-tier authorization, and an audit log for every tool dispatch
    • Fleet broadcasting: a cold-start fleet picker, saved named fleets, and an in-flight progress counter for large broadcasts
    • Notification inbox: keyboard navigation, pinning, grouping by context, and silencing per event kind
    • Assistant toolbar pip reflects live working and waiting state

April 2026

Daintree rebrand and fleet broadcasting (v0.6.0 through v0.8.0)

  1. v0.8.0: Fleet broadcasting, plugin system, and nine new agents

    • Fleet: multi-agent broadcasting with a dockable Fleet Deck, scoped arming, and a broadcast bar
    • Plugin system: manifests with a strict permissions enum, runtime action registration, and host API injection
    • Nine new built-in agents, including Aider, Goose, Crush, Qwen Code, and Sourcegraph Amp
    • Runtime-detected agent identity becomes a first-class panel field driving chrome, focus, and routing
    • New theme browser panel with hover-to-preview
    • The Notes panel has been removed
  2. v0.7.0–v0.7.1: Canopy becomes Daintree, plus a reworked setup wizard

    • Project renamed from Canopy to Daintree across types, icons, menus, protocol schemes, and user data
    • Setup wizard reworked: a three-state CLI availability model, a tiered agent list, and install cards
    • Theme system: a command palette toggle, live preview on hover, and per-theme accent override
    • GitHub Copilot CLI added as a built-in agent
    • Privacy & Data settings now disclose the specific telemetry fields collected at each level
  3. Help Agent and agent intelligence

    • Help Agent: dedicated workspace for answering Daintree usage questions, pre-configured with a free Daintree document search MCP
    • Per-agent assistant model selection in settings: choose which model powers each agent type
    • Agent availability status shown in the panel palette and setup wizard
    • Granular agent state detection: exited, approval-waiting, and working states tracked independently
    • Custom CLI arguments per recipe terminal for fine-grained agent configuration
  4. Performance overhaul: 29 PRs optimizing startup, rendering, and memory

    • Lazy loading for HybridInputBar, NewWorktreeDialog, and non-critical UI components
    • CSS layout containment and content-visibility for faster composite and paint
    • Compile caching, singleflight cache, and adaptive batching for terminal output
    • MessagePort ACK gates and byte-count carry for zero-copy I/O tuning
    • End-to-end startup pipeline wired and measured: initial hydration no longer blocks rendering
  5. Multi-window support, Electron 41, and terminal session transfer

    • Open projects in independent windows with per-window workspace hosts and state persistence
    • Blue-green workspace swap for seamless project switching without flicker
    • Terminal session transfer: move an agent session mid-task to a different worktree
    • Adaptive resource profiles scaling memory and CPU across active and background projects
    • Electron 41 upgrade with React 19.2 Activity API for workspace view caching
  6. Theme refinements, sound system, and onboarding redesign

    • All 14 themes individually audited and refined: light theme contrast, background blur, and dialog title bar fixes
    • Sound system with audio cues for agent completion, waiting, and all-clear events
    • Streamlined 2-step onboarding with redesigned agent setup wizard
    • Pre-agent file snapshots with one-click rollback to restore pre-run state
    • Plugin system foundation: manifest schema, panel loader, toolbar button extensions
  7. Windows support, project management, and workspace UX

    • Full Windows platform support with native git credentials, system requirements checks, and E2E coverage
    • Clone GitHub repos directly from within Daintree with improved clone dialog
    • Batch worktree creation from multiple selected GitHub issues
    • Project switcher redesigned with frecency scoring and MRU ordering
    • Renderer crash recovery with React 19 error boundaries and error classification
    • Nightly update channel support alongside the stable release track

March 2026

Feature expansion (v0.2.0 through v0.5.3)

  1. v0.5.1–v0.5.3: Crash recovery, disk monitoring, accent rebrand, Liquid Glass icon

    • Renderer crash recovery with per-panel selective restore and safe mode boot
    • Disk space monitoring with low-space alerts in the status bar
    • Accent color rebranded to #36CE94 across the full design system
    • Liquid Glass app icon for macOS 26+
  2. v0.5.0: 14-theme system, bulk command center, memory resource management

    • 14 built-in themes across dark and light variants with system-preference auto-switching
    • Bulk Command Center: send a command or recipe to multiple worktrees simultaneously
    • Adaptive memory resource profiles across active and background projects
    • Custom Daintree tree icon set
  3. v0.4.0: 12 nature themes, Cursor CLI agent, workflow engine, WebGL renderer

    • 12 nature-inspired dark and light themes with unified theme selector
    • Cursor CLI added as a fifth supported agent alongside Claude, Gemini, Codex, and OpenCode
    • Workflow engine with DAG-based task definitions and execution tracking
    • WebGL terminal renderer upgrade for improved performance
  4. v0.3.0: Worktree sidebar redesign, voice input improvements, project relocation

    • Worktree sidebar redesigned with improved filtering, sorting, and drag reorder
    • Voice input improvements: word-level streaming and AI correction
    • Project relocation support: move a project directory without losing state
  5. v0.2.0: Review Hub, voice input, MCP server, crash recovery, notification center

    • Review Hub: in-app git staging, commit, and push without leaving Daintree
    • Real-time voice input via Deepgram with paragraph detection
    • Per-project MCP server configuration
    • Crash recovery with safe mode and agent state snapshots
    • Notification center for agent completion and attention-required events

February 2026

Agent monitoring and release preparation

  1. Security hardening: Electron fuses, CSP lockdown, IPC rate limiting

    • Hardened runtime security defaults and Electron Fuses with code signing enforcement
    • Strengthened CSP across all sessions
    • IPC rate limiting with error sanitization
  2. UX polish: OS-specific keyboard shortcuts, guided Git setup

    • OS-specific keyboard shortcut labels and restore-defaults option
    • Guided Git setup wizard for new projects
    • Tab button in two-pane split mode
  3. Auto-updater with GitHub Actions release pipeline

    • electron-updater integration with R2 publishing
    • GitHub Actions release workflow
    • In-app update notification UI
    • Git file watching for instant sidebar updates
  4. Dev preview architecture rewrite

    • Replaced DevPreviewService with stateless UrlDetector
    • Panel-owns-process model with smart dev server discovery
    • Persistent server state across project switches
  5. JetBrains-style action palette and component refactoring

    • Double-Shift trigger for action palette
    • Attach GitHub issues to existing worktrees
    • Extracted shared hooks (useSearchablePalette, useAnimatedPresence)
  6. Project switching reliability and dev preview improvements

    • Persist zoom levels, input bar content, and active worktree across switches
    • Dev preview migrated to terminal-first model
  7. Agent monitoring: conflict radar, SLA timers, event-based coordination

    • Conflict radar warns when multiple agents edit the same files
    • SLA timers showing agent working duration in panel headers
    • "Attention Required" strip for blocked or waiting agents
    • Full pub/sub event system with one-shot listeners and auto-cleanup
  8. Agent monitoring features and Assistant polish

    • Agent filters by state and worktree
    • Retry button for Assistant failures
    • Request/response logging for debugging

January 2026

Delegation and workspace density

  1. Daintree Assistant: built-in AI coordinator with multi-step tool calling

    • Vercel AI SDK integration with multi-step tool calling
    • Execution log aesthetic with terminal state change listeners
    • DAG-based task queue with capability-based agent routing
    • Worktree-aware context injection, background message processing
  2. Build infrastructure and security hardening

    • Node version pinning with committed lockfile
    • Trusted renderer origin enforcement
    • safeStorage for project environment variables
    • Recipes tab in Project Settings
  3. Tab groups: stack panels into tabs with drag reorder and keyboard nav

    • Full panel tabbing system in grid cells and dock slots
    • Drag to reorder, double-click to rename, duplicate with "+" button
    • Enforced worktree invariant across tab groups
    • Persisted and hydrated across restarts
  4. Slash commands: /github:create-issue and /github:work-issue builders

    • Core command infrastructure with picker UI
    • Multi-step issue builder and work-issue command
    • Project-level command overrides with custom prompts
    • Resizable two-pane split layout with per-worktree persistence
  5. Browser panels, panel grid rebranding, and dock evolution

    • Browser panels migrated from iframe to Electron webview
    • Zoom controls, native context menus, proper session isolation
    • "Terminal grid" renamed to "panel grid" reflecting the app's evolution
    • Interactive slash command chips with hover info
  6. Terminal subsystem modularization

    • TerminalInstanceService, TerminalProcess, and pty-host decomposed into focused modules
  7. Major stability and security sweep: ~40 bug fixes in 2 days

    • Race conditions, OOM from agent output, IPC contract drift fixes
    • Secret redaction failures and terminal state leak patches
    • SVG XSS prevention and IPC payload validation
    • Cross-project agent state monitoring with tiered polling
  8. OpenCode support, quick project switcher, background project persistence

    • Fourth agent added alongside Claude Code, Gemini CLI, and Codex CLI
    • Quick project switcher palette (Cmd+Alt+P)
    • Dock modes: expanded, slim, and hidden with auto-collapse

December 2025

Core workspace buildout

  1. Panel system: Notes panel and Dev Preview with live browser

    • Content grid generalized from terminal panes to typed panels
    • Notes panel with markdown notepad for agent instructions
    • Dev Preview panel with embedded browser and auto dev-server management
    • Terminal Recipes for saved agent + prompt + dev command templates
    • GitHub integration with PR badges, repo stats caching, and issue titles
  2. Terminal performance hardening and security sweep

    • SAB polling moved to Web Worker with Atomics.wait
    • Sharded visual SAB to prevent noisy-neighbor starvation
    • MessagePort origin validation and production CSP tightening
    • Hybrid input persistence across minimize/restore
  3. Unified input bar: consistent multi-line input across every agent

    • Hybrid input overlay providing consistent multi-line input
    • Design token unification merging Daintree + Shadcn token systems
  4. Worktree-scoped workspaces: isolated terminals per branch, GitHub issues integration

    • Each worktree became an isolated workspace with dedicated terminals
    • Create worktrees directly from GitHub issues with branch prefix selection
  5. Design system unification, keyboard-first UX, and TUI rendering

    • Replaced hardcoded colors and spacing with semantic tokens
    • Comprehensive keyboard shortcuts with customizable bindings
    • Atomic frame updates for WebGL, smart sticky scrolling
    • WorktreeCard redesigned as high-precision workspace overview
  6. Portal: embedded browser for web AI chats alongside terminal agents

    • Context Sidecar with multi-tab Chromium browser panel
    • Magic Paste for CopyTree context injection into web chats
  7. Terminal grid with drag-and-drop dock, multi-project support, and context injection

    • Pty Host pattern with dedicated UtilityProcess for PTY management
    • SharedArrayBuffer ring buffer for zero-copy terminal I/O
    • Configurable grid layouts with bidirectional drag-and-drop
    • Process preservation during project switching
    • Sleep/wake recovery with proactive PTY pause/resume

November 2025

Founding sprint

  1. First commit: Electron, React, xterm.js, node-pty, worktrees

    • Core architecture built in a 3-day sprint: IPC bridge, PtyManager, xterm.js integration
    • Multi-agent coordination with lifecycle state tracking
    • Terminal UX with tiling window manager aesthetic
    • AI-powered semantic terminal activity detection
    • Event-driven architecture with correlation IDs from day one