A workspace is an open project folder. Fold is single-window and shows workspaces as tabs across the top.
| Action | How |
|---|---|
| Add a workspace | +, or ⇧⌘O |
| Switch | Click a tab |
| Next workspace | ⌥⇧⇥ — shows the WORKSPACES HUD |
| Close | ✕ on the tab (confirms if sessions are running) |
Background workspaces keep their sessions alive. Switching away from a project does not stop the agents running in it — that's the point of having tabs rather than separate windows.
Switching re-roots every module at once: the git panel's sections reload against the new repository, the explorer re-reads the tree, and the quick-open cache clears.
That last one matters if you use worktrees. Two workspaces can be different checkouts of the same repository, and a stale file cache would show you the other tree's files. Clearing on switch is what keeps that honest.
The welcome window is the manager — it appears when no project is open.
| Element | Purpose |
|---|---|
| Filter box | Narrows the list by path |
| ★ / ☆ | Pin to the top |
| ✕ | Remove from the list (the folder is untouched) |
missing tag | The folder no longer exists; clicking offers to remove it |
| Open Folder… | Native folder picker |
Pinned workspaces sort to the top. The registry lives in workspaces.json in Fold's app-data directory.
Fold restores the last-focused workspace on launch. File ▸ Open Recent in the native menu lists the rest.
Opening a worktree from the git panel's WORKTREES section opens it as its own workspace tab, marked with the workspace glyph. That's the clean way to let an agent work on a branch in isolation while your main checkout stays untouched.
Per workspace, Fold remembers layout (sidebar width, panel sizes), open editor tabs, and session names and working directories.
It does not remember processes. Reopening gives you fresh shells with the right names in the right directories.