SplashSessions & worktrees

Every agent gets its own checkout.

Two agents editing the same files is how you lose an afternoon. A Splash session is one agent working in one folder: the project itself, or a git worktree on its own splash/… branch. Run as many as you like, side by side.

Isolation

In place, or in a worktree.

In a git repository, choose Worktree and Splash makes a second checkout on a fresh splash/… branch, so the agent can't trip over your work or another agent's.

  • Archiving or deleting the session removes the worktree and keeps the branch.
  • Uncommitted changes need an explicit discard confirmation first.
  • Add extra workspace folders when an agent needs to see a sibling repository.

Transcript

Everything the agent does, readable.

Markdown with syntax highlighting, thinking you can collapse, tool calls with their status, output and diffs, plans as live checklists, and permission requests inline. This window shows one of every entry, from the app's own component playground.

The rest of the workbench

The agent’s own controls

Model, mode and effort pickers appear when the agent offers them. Slash commands complete as you type. Context and cost readouts show when the agent reports usage.

Changes, files, details

The side panel lists the session’s git changes, a file tree and session details. Diffs and files open as tabs next to the chat.

A terminal where the agent works

Press ⌘J for a shell in the session folder: your login shell on macOS and Linux, PowerShell on Windows.

Resume without replay

Saved conversations open without starting the agent. Continue, and Splash reconnects with session/resume or session/load when the agent supports them.

A failed reconnect loses nothing

The original session ID and history stay put, and your unsent draft is still in the composer to try again.

The wire, one tab away

Each session’s Log tab shows its JSON-RPC traffic for the current run, for when you need to know exactly what the agent said.

New session · screenshot
Terminal · screenshot