cohalen

Workspaces

Launch parallel Workspaces on their own branches, resume them across restarts, and retire them with Archive when the work ships.

A Workspace is the unit of parallel work: one isolated git worktree, its branch, a running environment, and an agent chat, plus the Diff, Checks, and pull-request lifecycle that follows. Because each Workspace has its own worktree, agents working in parallel never write to the same checkout, and you can run as many as your machine holds.

Launch

Launch a Workspace from its Repository's group in the sidebar. Two launch modes decide the branch:

  • New branch forks a fresh branch for the task. This is the default for new work.
  • Existing branch checks out a branch that already exists: your own work in progress, a teammate's branch, or a pull request. A branch can be checked out in at most one Workspace at a time.

The first prompt you send is the Workspace's starting line: the canonical place the task is given to the agent. Keep one task per Workspace; the Changeset you review later is everything the Workspace changed, so a Workspace that did one thing reads as one reviewable unit.

The Base branch

Each Workspace has a Base branch: the Repository branch its changes merge into, and what its Git status and Changeset are measured against. It defaults to the Repository's default branch and can be retargeted later at the Checks surface, where the merge actually happens.

Working in parallel

Launch more Workspaces for more tasks; each is owned by one agent and runs independently. The sidebar shows which Workspace needs attention. When two in-flight Workspaces touch the same file, Cohalen marks the Collision so you see the future merge conflict before it lands; see Working as a team.

Two agents running at once, captured from the app; the sidebar tracks which Workspace needs you.

Resume

The agent conversation is a durable Session, which the Coding agent itself persists on disk. Re-opening a Workspace, including after an app restart, rebuilds the Chat and resumes the same Session, so the agent keeps its context and its working set instead of starting fresh.

Archive, Restore, Delete

The lifecycle is a small state machine: Archive is the reversible exit, Delete the permanent one.

Archive retires a finished Workspace from the active list: leftover changes are auto-committed so nothing is lost, the Repository's Archive script runs, the worktree is removed from disk, and the branch and record are kept under the Repository's History. Restore re-creates the worktree from the kept branch and the Session resumes where it left off. Archiving can also fire automatically when the pull request merges, a per-Repository setting.

Delete removes the worktree and the branch Cohalen created, and drops the record. A branch you brought yourself is never deleted. Delete asks first, and asks again when git refuses a dirty worktree or an unmerged branch.


Next: Agents and models, choosing who does the work and how hard it thinks.

On this page