Download AgentGrid

Bring your coding agents, terminals, and browsers into one workspace. Available for macOS, Windows, and Linux.

Choose your desktop platform

Latest release · v2.9.3

All platforms and architectures

Choose your platform

What's new · v2.9.3

Features

  • 🎉 A guided canvas tour walks you through the key moves right after first setup
  • 📣 Configure which projects surface your @mentions yourself, no request needed
  • 🪟 Windows test builds now unpack by default and run side-by-side without replacing your current install
  • 🧠 Reasoning token usage is visible across all your connected harnesses
  • ✏️ Rename multiple panes at once with the new batch rename tool
  • 📋 The pane list is now compact — with filters, paging, a summary count, and a search field
  • 💬 Icon tooltips are styled and show the keyboard shortcut in a legible badge
  • 🧲 Panes snap to nearby edges as you drag and resize, Figma-style

Fixes

  • 📌 Archived note tie-breaks are now explicit and stay pinned correctly
  • 🔧 Cleaned up minor display issues in tool-call rows
  • ⌨️ Escape no longer accidentally triggers canvas actions; focus returns when a dialog closes
  • 🐧 Linux release verification now targets only the intended native prebuilds
  • ⏱️ Fixed a timing issue that could cause transcript updates to reference stale values
  • 🗄️ Database connections during startup and refresh now use TCP for reliable handling
  • 🔄 The app recovers cleanly from a database WebSocket error on startup
  • 🏷️ Worker turn-status styles renamed to match current terminology — no visible change
  • 🧪 Canvas send tests now use a temporary data directory so they don't touch your real data
  • 🚧 Tightened internal module boundaries to prevent accidental cross-layer code
  • 🎨 All stylesheets now participate in theme switching, including ones that were previously bypassed
  • 🔬 Profile injection canary uses a unique path each run to avoid conflicts
  • 🛡️ Only true `..` path segments are treated as directory escapes, reducing false positives
  • 📸 PR screenshots can now be fetched and verified byte-for-byte with a new helper
  • 🏷️ Campaign tags follow signed-in visitors correctly; sign-up progress is saved when you open a new tab
  • 🔍 Manually expanded activity rows stay expanded while you search
  • ❌ Failed-turn errors now appear exactly once in the transcript instead of repeating
  • 📝 PR body generation handles edge cases around fenced examples and missing captions or headings
  • 📐 Tool summaries stay readable in narrow panes
  • 🛑 The app no longer tries to reconnect after errors that retrying won't fix
  • 🖱️ Mouse events in terminal panes now pass through correctly to the underlying process
  • 📷 The Screenshots section is preserved when using `--block-file`
  • 🔊 Screen readers now hear the current turn phase in Codex master panes
  • ↩️ Enter works correctly in agent terminal UIs; Devin's composer is now detected and handled
  • 🪟 The Other-agents flyout repositions itself when you resize the window
  • 🔌 Named dev profiles each bind their own ephemeral port instead of competing for 8765
  • ⌨️ The worker transcript is now keyboard-focusable
  • 🎨 The sign-in screen now respects your selected theme; undeclared color tokens have been replaced
  • 🔊 Screen readers in worker panes now hear the live turn phase as it changes
  • 🤖 Gemini 3.7 and 3.8 are now in the model catalog; effort settings are validated for fixed-tier models
  • ⌨️ ⌘1/2/3 and the spawn menu now show the same ordered harness list
  • ✅ The sign-in card clears once your session is restored
  • 🗂️ Model catalog discovery is now scoped correctly per pane type
  • 💬 The most recent streamed text is always visible, even when a reply is long
  • 📍 Panes reopen exactly where you left them
  • 🔗 The app launches correctly when invoked through a symlink
  • ⚡ Antigravity now supports `xhigh` and `max` effort levels
  • 🪟 Cursor agent now starts reliably on Windows
  • 🏷️ The model name shown stays accurate even when Claude emits internal synthetic markers
  • ♿ The close-tab confirmation dialog now meets accessibility contrast requirements
  • 📤 The model and effort you select are now correctly dispatched to the agent
  • 🔭 You can zoom the canvas with the numpad + and − keys
  • 📊 Weekly usage stats are no longer incorrectly extrapolated from daily remaining data
  • 🔧 Launch args no longer include effort levels the terminal CLI doesn't support
  • ⌨️ Typing in the composer no longer triggers unnecessary panel re-renders
  • 📝 Close dialog copy is shorter and cleaner; em dashes replaced with plain dashes
  • 🤖 Devin workers no longer launch in read-only ask mode; orchestrators pick the worker mode
  • 🔒 Restored attachments are tied to the correct turn; OpenCode and Kimi credentials stay private to their pane
  • ⚡ Live tool calls and reasoning appear in real time without duplicating streamed text
  • 🖱️ Icon and Colour submenus in the group menu now open on hover
  • ⌨️ The first characters of a startup command are no longer swallowed by shell stdin readers
  • 🧩 Tool calls in a group now render using the lead pane's style
  • ✖️ Sub-agent panes that lost their parent can always be closed
  • ✅ Root-level code checks are passing again
  • 📋 Each Codex turn now gets a single, ordered working group
  • 🔒 Desktop authorization now requires interactive login on the server side
  • 📢 The deferred install banner is dismissible and has a clear cancel button
  • 📤 Turn traces can be exported; lookup operations now show progress feedback
  • 🗂️ Worker directories are checked before each turn; deleted worktrees are recreated automatically
  • 🖱️ Scrollbar dragging works correctly even when mouse reporting is active in terminal panes
  • 📋 Groups appear in pane order rather than floating to the top
  • 🤖 `/model` now shows clean model names without ANSI color codes
  • 🗂️ Focus history is tracked separately per tab
  • 📌 Installed harnesses appear at the top of the harness list
  • ⚖️ The sign-in recovery flow looks correct in narrow panes
  • 🍎 The first workspace tab no longer overlaps the macOS window controls
  • 🖱️ Control-click context menus work correctly on macOS; browser panes gain attached menus
  • 🤖 Codex workers now work correctly with `auto` permission mode
  • 🤖 Team leads in both GUI and terminal now post as the agentgrid-ai bot
  • 📦 One-click install no longer fails on systems without npm
  • 🔄 Release builds that retry now pull fresh assets instead of reusing stale ones
  • 💊 Status pill text now matches the header typography
  • 🔄 Reconnection attempts now back off gradually instead of retrying constantly
  • 👁️ Focus and minimized-window issues during sign-in handoff are now caught and handled
  • 🔄 Panes stop looping when a turn ends cleanly with its final events
  • 🔌 The app falls back to environment variables when the control-port file is unavailable
  • 🤖 The bot token can now read CI checks, action runs, and commit statuses
  • 🧹 Floating windows idle for more than five minutes are automatically cleaned up
  • 📍 New team leads appear in a free canvas slot instead of stacking in the corner
  • 📋 Team lead status notices render as compact, collapsed lead rows
  • 🤖 Workers spawned from a master pane now post as the agentgrid-ai bot
  • 🔑 Credentials stay cached in memory when the system keychain is unavailable
  • 🗑️ A premature v3.0.0 changelog entry has been removed
  • 🖱️ Canvas scroll works correctly even when an iframe is focused
See full changelog

System requirements

macOS
11 Big Sur or later, Apple Silicon (M1+) or Intel
Windows
Windows 10 or 11, 64-bit
Linux
Ubuntu 20.04+, Debian 11+, or compatible

Troubleshooting

macOS says “The disk image couldn’t be opened — the disk image is corrupted”
That almost always means the download was incomplete, not a bad build. Delete the .dmg and download it again — a fresh, complete download resolves it. If it keeps happening, try a different network.

Analytics and advertising

Essential features, including sign-in and remembering these choices, stay on. Your choice applies to this browser for six months.

Turning a category off reloads this page to stop tags already loaded.