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.
These catalog resources define agent behavior, identity, and access control. They cover everything from reusable agent personas to tenant-wide role bindings.
agent
Runtime record created when an agent is spawned. Tracks the agent’s lifecycle state in the catalog.
Fields
| Field | Type | Description |
|---|
name | string | Agent identifier (matches the slug). |
agent_id | string | Unique agent identifier. |
grants | array | Permissions granted to this specific agent. |
created_at | timestamp | When the agent was spawned. |
terminated_at | timestamp | When the agent finished or was killed (if applicable). |
session_url | string | URL to the agent’s live session view. |
purpose | string | Human-readable summary of the agent’s goal. |
service_profile | string | Reference to a service-profile resource for this agent’s identity. |
Example
name: fix-auth-bug
agent_id: wf-abc123
grants:
- agent.read
- agent.edit
created_at: "2026-05-08T10:00:00Z"
session_url: "https://app.murmur.dev/w/acme/u/jdoe/fix-auth-bug/session"
purpose: "Fix the authentication bypass vulnerability in the login endpoint"
Agent resources are created automatically when you spawn an agent. You typically do not create them manually via murmur set.
agent-persona
Reusable persona definitions that customize an agent’s behavior, model, and available tools.
Fields
| Field | Type | Description |
|---|
name | string | Persona identifier (e.g. architect, reviewer, security-auditor). |
content | string | System prompt content appended to the agent’s context. Alias: prompt. |
model | string | Model override for agents using this persona. |
tools | array | Allowlist of tools the agent can use. Empty means all tools. |
disallowed_tools | array | Denylist of tools the agent cannot use. |
max_turns | integer | Maximum number of turns before the agent is stopped. |
tasks | array | Default checklist tasks for agents using this persona. |
Example
name: security-auditor
content: |
You are a security auditor. Focus exclusively on security vulnerabilities,
authentication issues, and authorization bypasses. Do not make functional
changes unless they are security-related.
Always check for:
- SQL injection
- XSS vulnerabilities
- Authentication bypasses
- Insecure direct object references
- Missing authorization checks
model: opus
disallowed_tools:
- Bash(rm *)
- Bash(git push --force*)
max_turns: 50
tasks:
- "Review authentication middleware"
- "Check authorization on all endpoints"
- "Scan for injection vulnerabilities"
flight
Stored flight documents — reusable orchestration plans with optional triggers for automated execution.
Fields
| Field | Type | Description |
|---|
name | string | Flight identifier. |
content | string | The flight document (Markdown with structured orchestration instructions). |
workspace | string | Default workspace for agents spawned by this flight. |
paused | boolean | If true, triggers are disabled. Default: false. |
daemon | boolean | If true, the flight runs continuously. Default: false. |
triggers | array | Event triggers that automatically launch the flight. |
triggers[].event | string | Event type (e.g. pr_opened, push, schedule). |
triggers[].filter | object | Conditions for the trigger (e.g. branch pattern, label). |
max_concurrent | integer | Maximum simultaneous runs of this flight. |
persona | string | Reference to an agent-persona for the pilot agent. |
model | string | Model override for the pilot agent. |
expected_output | string | Expected output type (pr, push, respond). |
dequeue_strategy | string | Follow-up dequeue strategy: all, one, or five. |
service_profile | string | Reference to a service-profile for the flight’s identity. |
Example
name: pr-review
content: |
# PR Review Flight
Review the pull request and provide feedback.
1. Read the PR diff
2. Check for bugs, security issues, and style problems
3. Post a review with comments
workspace: acme-backend
triggers:
- event: pr_opened
filter:
base_branch: main
- event: pr_synchronize
filter:
base_branch: main
max_concurrent: 5
persona: reviewer
model: sonnet
expected_output: respond
secret
Tenant-wide secrets, encrypted at rest with the tenant’s KMS key. Injected into VMs as environment variables.
Fields
| Field | Type | Description |
|---|
name | string | Secret identifier. Becomes MURMUR_SECRET_{NAME} on VMs (uppercased, hyphens to underscores). |
plaintext_value | string | The secret value. Write-only — accepted on set, never returned on get. |
encrypted | string | The KMS-encrypted value. Managed by the platform. |
created_at | timestamp | When the secret was created. |
Example
# Create a secret (interactive)
murmur set secret npm-token --value "npm_abc123def456"
# The secret is available on VMs as:
# MURMUR_SECRET_NPM_TOKEN=npm_abc123def456
Secret values are write-only. Once set, you cannot read back the plaintext value. If you need to update a secret, set it again with the new value.
user-secret
Per-developer secrets. Same as secret but encrypted with the developer’s identity in the AAD, ensuring they can only be decrypted for that specific developer.
Fields
| Field | Type | Description |
|---|
name | string | Secret identifier. |
plaintext_value | string | The secret value. Write-only. |
encrypted | string | The KMS-encrypted value with developer AAD. |
created_at | timestamp | When the secret was created. |
User secrets are useful for developer-specific credentials that should not be shared across the team (e.g. personal API tokens for third-party services).
user
User identity records in the catalog.
Fields
| Field | Type | Description |
|---|
name | string | Username (GitHub login). |
git_name | string | Git commit author name. |
git_email | string | Git commit author email. |
ssh_public_keys | array | SSH public keys for VM access. Array of strings. |
Example
name: jdoe
git_name: "Jane Doe"
git_email: "jdoe@example.com"
ssh_public_keys:
- "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ... jdoe@laptop"
role
Named permission sets. See Authorization for the full permission model.
Fields
| Field | Type | Description |
|---|
name | string | Role identifier (e.g. developer, observer, admin). |
permissions | array | List of {kind}.{verb} permission strings. Supports wildcards. |
Example
name: developer
permissions:
- agent.create
- agent.edit
- agent.read
- agent.list
- agent.delete
- secret.read
- secret.list
- "*.read"
- "*.list"
group
User groups for bulk role assignment.
Fields
| Field | Type | Description |
|---|
name | string | Group identifier. |
source | string | Member source: static, github_admin, or all_tenant_members. |
members | array | List of usernames (only for static source). |
Example
# Static group with explicit members
name: backend-team
source: static
members:
- alice
- bob
- carol
# Dynamic group matching all org admins
name: platform-admins
source: github_admin
tenant-binding
Binds users or groups to roles at the tenant level.
Fields
| Field | Type | Description |
|---|
name | string | Binding identifier. |
grant | object | The grant specification. |
grant.role_ref | string | Reference to a role resource. |
grant.user_ref | string | Username to bind (mutually exclusive with group_ref). |
grant.group_ref | string | Reference to a group resource (mutually exclusive with user_ref). |
Example
name: backend-developers
grant:
role_ref: developer
group_ref: backend-team
alias
Name aliases for resources, enabling shorthand references.
Fields
| Field | Type | Description |
|---|
name | string | Alias name (the shorthand). |
agent_id | string | The target agent’s identifier. |
port | integer | Optional port number for port aliases. |
Example
name: my-api
agent_id: wf-abc123
port: 8080
service-profile
Service identity and credentials for platform operations. Defines the identity under which agents or services operate.
Fields
| Field | Type | Description |
|---|
name | string | Service profile identifier. |
git_name | string | Git commit author name for this service identity. |
git_email | string | Git commit author email for this service identity. |
secret_refs | array | List of secret names available to this service profile. |
grants | array | Permissions granted to this service profile. |
Example
name: ci-bot
git_name: "CI Bot"
git_email: "ci-bot@acme.com"
secret_refs:
- npm-token
- deploy-key
grants:
- agent.create
- agent.read
- agent.list