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

# murmur install-repo

> Configure a GitHub repository to deliver branch updates, PRs, comments, and CI results to Murmur via a generated GitHub Actions workflow.

Installs a GitHub Actions workflow that forwards repository [events](/concepts/events) (pushes, PR comments, CI results, reviews) to the murmur webhook. Agents watching branches in this repo receive those events in real time.

## Synopsis

```bash theme={null}
murmur install-repo --webhook-url <url>
```

## Arguments

| Name            | Type   | Required | Description                                                         |
| --------------- | ------ | -------- | ------------------------------------------------------------------- |
| `--webhook-url` | string | yes      | Base URL of the murmur webhook service, without the `/ingest` path. |

## What it does

1. Resolves the repo name from the current directory's git remote (`origin`).
2. Mints a repo token via the murmur API, scoped to this repo and [tenant](/concepts/overview).
3. Writes a GitHub Actions workflow file to `.github/workflows/murmur-events.yaml` with the webhook URL and repo token baked in.

After the command completes, commit and push the workflow file to activate event delivery.

### Events forwarded

The installed workflow triggers on these GitHub events and forwards them to the webhook:

| GitHub event                                       | Trigger                                                 |
| -------------------------------------------------- | ------------------------------------------------------- |
| `push`                                             | Push to `main` — delivers changed file lists to agents. |
| `issue_comment`                                    | Comment on a pull request.                              |
| `pull_request_review`                              | PR review submitted.                                    |
| `pull_request_review_comment`                      | Inline review comment.                                  |
| `check_suite` (completed)                          | CI check suite finishes.                                |
| `pull_request` (opened, closed, reopened, labeled) | PR lifecycle changes.                                   |
| `issues` (opened)                                  | New issue created.                                      |

<Note>
  Repos owned by a GitHub App [tenant](/concepts/overview) receive events through the App webhook directly. [`murmur install-repo`](/cli/install-repo) is for repos that use GitHub OAuth tenants or repos outside the App organization.
</Note>

## Examples

### Install event delivery for the current repo

```bash theme={null}
murmur install-repo --webhook-url https://webhook.murmur.example.com
```

```
  wrote .github/workflows/murmur-events.yaml (webhook_url=https://webhook.murmur.example.com, repo=acme/backend)
Done. Commit and push to activate.
```

Then commit and push:

```bash theme={null}
git add .github/workflows/murmur-events.yaml
git commit -m "Add murmur event delivery"
git push
```

## Errors

| Code                                                               | Meaning                                                                                                         | What to do                                                      |
| ------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- |
| `--webhook-url is required`                                        | The flag was not provided.                                                                                      | Pass `--webhook-url` with the base URL of your webhook service. |
| `cannot parse repo from remote URL`                                | The git remote URL is not a recognized GitHub URL.                                                              | Verify the `origin` remote points to a GitHub repository.       |
| `org uses GitHub App webhook delivery; install-repo is not needed` | The repo belongs to a GitHub App [tenant](/concepts/overview) that already receives events via the App webhook. | No action needed — events are delivered automatically.          |
| `UNAUTHENTICATED`                                                  | Identity token is missing or expired.                                                                           | Run [`murmur setup`](/cli/setup) or [`murmur auth`](/cli/auth). |

## Related

* [Events](/concepts/events) — how events reach agents
* [`murmur setup`](/cli/setup) — configure your developer profile (prerequisite)
* [Catalog: repo-config](/catalog/repo-config) — per-repo configuration in the catalog
