Skip to main content

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.

Once an agent is spawned, you need to check its status, send follow-ups, watch its progress, and eventually stop or kill it. This page covers all the agent management commands.

murmur status

Query the current state of an agent, including phase, VM info, progress, cost, PRs, and timeline events.
murmur status <slug>

Flags

FlagTypeDescription
--serviceboolShow the underlying service details
--childrenboolInclude child agent statuses in the response
--timelinestringComma-separated timeline event types to include
--workspacestringOverride workspace

Timeline event types

TypeDescription
phasePhase transitions (provisioning, running, idle, etc.)
childChild agent lifecycle events
taskCompleteTask checklist item completions
commitGit commits made by the agent
pushGit pushes
checksCI check results
followUpFollow-up messages delivered
uploadFile uploads
# Basic status
murmur status fix-auth-bug

# Status with children and timeline
murmur status fix-auth-bug --children --timeline phase,commit,checks

# Service-level details
murmur status fix-auth-bug --service

Example output

Agent: fix-auth-bug
Phase: running
VM:    vm-a1b2c3d4 (us-central1-a)
Model: claude-opus-4-6
Cost:  $1.23

Progress:
  [x] Identified the bug in session.go
  [x] Implemented the fix
  [ ] Running tests

PRs:
  #142 - Fix session timeout handling (open)

murmur ls

List your running agents. By default, shows only your own active agents.
murmur ls [flags]

Flags

FlagShortTypeDescription
-aboolInclude completed, failed, and killed agents
-qboolQuiet mode — print slugs only, one per line
--jsonboolOutput as JSON array
-AboolShow all developers’ agents (admin)
--developerstringFilter to a specific developer login, or * for all
--workspace-wstringOverride workspace
# List your active agents
murmur ls

# Include completed/failed agents
murmur ls -a

# JSON output for scripting
murmur ls --json

# Slugs only (pipe to other commands)
murmur ls -q

# All developers' agents
murmur ls -A

# Specific developer
murmur ls --developer alice

Example output

SLUG              PHASE      VM              COST    AGE
fix-auth-bug      running    vm-a1b2c3d4     $1.23   12m
update-docs       idle       --              $0.45   1h
deploy-fix        sleeping   --              $2.10   3h

murmur wait

Block until an agent reaches a target phase. Useful in scripts and CI pipelines.
murmur wait <slug> [flags]

Flags

FlagTypeDescription
--phasestringPhase to wait for (e.g., task-complete, idle, running). Defaults to any phase needing attention.
--workspacestringOverride workspace
# Wait for agent to complete
murmur wait fix-auth-bug --phase task-complete

# Wait for agent to reach idle (finished its turn)
murmur wait fix-auth-bug --phase idle

# Wait for any notable phase change (default)
murmur wait fix-auth-bug
The command exits with code 0 when the target phase is reached and prints the agent’s status.

murmur kill

Cancel an agent and its entire subtree of child agents.
murmur kill <slug> [flags]

Flags

FlagTypeDescription
--serviceboolAlso terminate the underlying service
--workspacestringOverride workspace
# Kill an agent and all its children
murmur kill fix-auth-bug

# Kill with service cleanup
murmur kill fix-auth-bug --service
murmur kill is irreversible for the current session. The agent’s branch and any pushed code remain intact, but the conversation context is lost unless you --resurrect later.

murmur sleep / murmur wake

Sleep stops the VM while preserving the agent’s state. Wake restarts the agent on a fresh VM with its full context restored.
murmur sleep <slug>
murmur wake <slug>
# Put an agent to sleep (stops the VM, saves money)
murmur sleep fix-auth-bug

# Wake it up later (claims a new VM, restores context)
murmur wake fix-auth-bug
Sleeping agents cost nothing in compute — only the agent state is retained. Use sleep/wake for agents you want to pause temporarily.

murmur session

Interact with a live agent’s Claude Code session.

session watch

Stream the agent’s session output to your terminal in real time:
murmur session watch <slug>

session send

Send a message to the agent’s active Claude session:
murmur session send <slug> "Also update the tests for the new behavior"

session interrupt

Interrupt the agent’s current Claude turn (equivalent to Ctrl+C):
murmur session interrupt <slug>

session stop

Stop the Claude Code process on the VM (the agent remains active):
murmur session stop <slug>
session send delivers a message directly to the active Claude session. For messages that should be queued and delivered between turns, use murmur queue add instead.

murmur queue

Manage the follow-up message queue for agents. Messages in the queue are delivered when the agent is ready (between Claude turns).

queue add

Send a follow-up message to a running agent:
murmur queue add <slug> "Also fix the session expiry logic"
You can include additional task checklist items:
murmur queue add <slug> "New requirements came in" \
  --task "Add rate limiting" \
  --task "Update API docs"

queue clear

Discard all queued follow-ups for an agent:
murmur queue clear <slug>

queue strategy

Change the dequeue strategy for an agent. This controls how many queued messages are delivered per turn:
murmur queue strategy <slug> <strategy>
StrategyBehavior
all (default)Drain all queued follow-ups at once
oneDeliver one message per turn
fiveDeliver up to five messages per turn
murmur queue strategy fix-auth-bug one

queue conflict-resolution

Configure how conflicting follow-ups are resolved:
murmur queue conflict-resolution <slug> <mode>

murmur each

Fanout: spawn one agent per line from stdin. The {} placeholder in the slug template and description template is replaced with each line.
murmur each [flags] <slug-template> <desc-template>

Flags

FlagShortTypeDescription
--dry-runboolPrint what would be spawned without actually spawning
--agentstringAgent persona for all spawned agents
--modelstringModel override for all spawned agents
-dstringDelimiter for splitting lines (default: newline)
--repostringRepository override. Repeatable.
--workspace-wstringOverride workspace
# Spawn one agent per module to fix tests
echo -e "auth\npayments\nnotifications" | murmur each "fix-{}" "Fix failing tests in the {} module"

# Dry run to preview
cat modules.txt | murmur each --dry-run "fix-{}" "Fix the {} module"

# With model override
cat packages.txt | murmur each --model claude-opus-4-6 "refactor-{}" "Refactor the {} package"

Example dry-run output

Would spawn: fix-auth        "Fix failing tests in the auth module"
Would spawn: fix-payments    "Fix failing tests in the payments module"
Would spawn: fix-notifications "Fix failing tests in the notifications module"

murmur rekey

Rotate credentials on a running agent and all its children. Re-encrypts and re-delivers your developer profile without restarting the VM.
murmur rekey <slug>
# Rotate credentials after a token refresh
murmur rekey fix-auth-bug
This is useful when your GitHub token or Claude credentials have been refreshed and you need running agents to pick up the new credentials.

murmur watch

Watch an agent’s events in real time. Similar to session watch but shows structured events (phase changes, commits, task completions) rather than raw session output.
murmur watch <slug> [flags]

Flags

FlagTypeDescription
--fromstringStart from a specific timestamp (RFC3339)
--jsonboolOutput events as JSON lines
# Watch events in real time
murmur watch fix-auth-bug

# JSON output for processing
murmur watch fix-auth-bug --json

# Start from a specific time
murmur watch fix-auth-bug --from 2025-01-15T10:00:00Z

Example output

10:23:01  phase     → running
10:23:45  commit    abc1234 "Fix session timeout handling"
10:24:12  push      branch fix-auth-bug → origin
10:24:30  checks    CI started (3 checks)
10:25:15  checks    CI passed (3/3)
10:25:20  phase     → idle