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.

A group is a catalog resource that collects users into a named set. Tenant-bindings reference groups to grant permissions to every member at once — instead of listing individual users in each binding, you manage membership in one place. Exactly one source type must be set: static, github_admin, or all_tenant_members.

Fields

NameTypeRequiredDescription
namestringyesUnique identifier. DNS label format: [a-z][a-z0-9-]{0,62}. Names prefixed murmur- are reserved for platform builtins.
descriptionstringnoHuman-readable description shown in the dashboard. Maximum 1024 bytes.
sourceoneofyesHow membership is determined. Exactly one of static, github_admin, or all_tenant_members.

Source: static

A hand-managed list of GitHub usernames.
NameTypeRequiredDescription
static.membersstring[]yesGitHub usernames in this group. At least one member is required. No duplicates.

Source: github_admin

Resolves to the owners of the GitHub organization linked to the tenant. No additional fields.
NameTypeRequiredDescription
github_adminobjectyesEmpty object. Membership is resolved automatically from org owners.

Source: all_tenant_members

Resolves to every authenticated member of the tenant. Reserved for platform builtins.
NameTypeRequiredDescription
all_tenant_membersobjectyesEmpty object. Membership includes all tenant members.
all_tenant_members is reserved for platform-managed groups. Tenant-authored groups use static or github_admin.

Examples

Static group

name: platform-team
description: "Core platform engineers"
static:
  members:
    - alice
    - bob
    - carol
cat <<'EOF' | murmur set group platform-team
name: platform-team
description: "Core platform engineers"
static:
  members:
    - alice
    - bob
    - carol
EOF

GitHub admin group

name: org-admins
description: "GitHub organization owners"
github_admin: {}
cat <<'EOF' | murmur set group org-admins
name: org-admins
description: "GitHub organization owners"
github_admin: {}
EOF

Listing groups

murmur get group
NAME             DESCRIPTION
platform-team    Core platform engineers
org-admins       GitHub organization owners

Reading a single group

murmur get group platform-team

Errors

CodeMeaningWhat to do
INVALID_ARGUMENTname is requiredProvide a name field.
INVALID_ARGUMENTname must match [a-z][a-z0-9-]{0,62}Use a valid DNS label — lowercase letters, digits, and hyphens. Must start with a letter.
INVALID_ARGUMENTdescription exceeds 1024 byte limitShorten the description to 1024 bytes or fewer.
INVALID_ARGUMENTgroup source is required (static, github_admin, or all_tenant_members)Set exactly one of static, github_admin, or all_tenant_members.
INVALID_ARGUMENTstatic group must have at least one memberAdd at least one username to static.members.
INVALID_ARGUMENTstatic.members[N] must be non-emptyA member entry is an empty string. Provide a GitHub username.
INVALID_ARGUMENTstatic.members[N]: duplicate member "username"Remove the duplicate username from static.members.
FAILED_PRECONDITIONcannot delete group "name": referenced by tenant-binding: binding-nameRemove the tenant-binding that references this group before deleting it.