> ## 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.

# Service Profiles

> Non-human identities for automated agents — Flights, scheduled tasks, and bots that operate on behalf of the org without a developer's credentials.

A service profile is a bot identity that [agents](/concepts/agents) run under when they operate on behalf of the org rather than a specific developer. Instead of using your GitHub token and Claude key, the agent authenticates with the profile's credentials and commits as a bot author.

## When to use a service profile

Developer-spawned [agents](/concepts/agents) run as *you* — your GitHub token, your Claude subscription, your git identity. That works for interactive work. But automated [agents](/concepts/agents) — [flights](/concepts/flights) triggered by events, scheduled tasks, merge-queue processors — need an identity that doesn't belong to any individual.

A service profile provides:

* **Bot git identity** — commits show the GitHub App's bot avatar, not a developer's
* **Org-scoped credentials** — an Anthropic API key owned by the team, not an individual
* **Access grants** — control who can spawn agents with this profile

## What a service profile contains

| Field              | Purpose                                                                                    |
| ------------------ | ------------------------------------------------------------------------------------------ |
| Name               | Unique identifier (e.g. `ci-builder`, `merge-queue`)                                       |
| Git name and email | The commit author identity                                                                 |
| Claude credentials | Anthropic API key or OAuth token — stored as encrypted tenant [secrets](/concepts/secrets) |
| Access grants      | Which users or [groups](/catalog/group) can use this profile                               |

## Using a service profile

**From the dashboard** — the spawn dialog shows an identity picker. Select the profile instead of your personal identity.

**From [flights](/concepts/flights)** — set `service_profile` in the flight frontmatter. Every agent the flight launches inherits the profile's identity.

**From the CLI** — pass `--service-profile` on [`murmur spawn`](/cli/spawn).

**By default for every spawn** — set `service_profile` in `murmur.yaml` (or its `murmur.local.yaml` overlay). Every CLI and MCP spawn that does not name a profile explicitly borrows this one. Precedence is explicit value (the `--service-profile` flag or the MCP `service_profile` argument) > a flight's frontmatter `service_profile` > the `murmur.yaml` `service_profile`. Leave it unset to keep the default behavior of spawning as yourself.

See the [service profiles guide](/security/service-profile) for step-by-step setup from the dashboard.

***

| Type      | Page                                                  |
| --------- | ----------------------------------------------------- |
| Guide     | [Create a service profile](/security/service-profile) |
| Reference | [service-profile](/catalog/service-profile)           |
| Concept   | [Agents](/concepts/agents)                            |
| Concept   | [Flights](/concepts/flights)                          |
| Concept   | [Secrets](/concepts/secrets)                          |
| Concept   | [Authorization](/security/authorization)              |
