A workspace is the top-level organizational unit within a Murmur tenant. It groups repositories, references an environment and placement, and defines the default configuration for agents spawned within it.Documentation Index
Fetch the complete documentation index at: https://docs.murmur.dev/llms.txt
Use this file to discover all available pages before exploring further.
What is a workspace?
A workspace is a catalog resource (workspace kind) that binds together:
- Repos — which repositories agents can clone, with optional base branch overrides
- Placement — where agent VMs run (platform-managed or customer-owned)
- Environment — what VMs look like (machine type, disk, image)
- Image — the VM image agents boot from
- Secrets — tenant secrets injected into agent VMs
- Ports — labeled ports for dashboard display (e.g.,
3000: "dev server")
Workspace vs tenant
| Concept | Scope | Example |
|---|---|---|
| Tenant | Your GitHub org — the top-level isolation boundary | acme-corp |
| Workspace | A logical grouping within the tenant | backend, frontend, ml-team |
Creating a new workspace
There are two ways to create a new workspace:- Create workspace from Murmur UI You can create a new workspace from the Murmur UI, from Organization Settings → Workspaces,
- Create workspace from the CLI You can also create a new workspace directly from your command line:
How does Murmur CLI/MCP know which workspace to use?
When you runmurmur spawn from the CLI or call the spawn tool over MCP, the server needs to know which workspace to operate in: because the workspace defines the repos, environment, placement rules, etc. that the agent will use.
There are three places that workspace can come from:
.murmur/murmur.yaml(the team default, checked into the repo) This is the baseline config that lives in your repo. The field is:workspace: <my-team-workspace>. Because this file is committed, every teammate who clones the repo gets this same config..murmur/murmur.local.yaml(the per-developer override, gitignored) This follows the same schema as.murmur/murmur.local.yaml, but it’s a local overlay that is not checked in. This overrides any team default in.murmur/murmur.yaml.- Per-spawn override (highest priority)
Every
spawnaccepts a workspace argument that will trump anything in the.yamlconfig files. For example:
Multiple repos
A workspace can reference multiple repositories. When an agent spawns, it clones all repos in the workspace. You can override which repos an agent uses with the--repo argument:
--repo format is URL, URL=base_branch, or URL=base_branch:working_branch.