# Add Arroway to a repository

> For a coding agent asked to add Arroway to this repository. Once the files below are committed, every teammate and every agent that opens the project arrives with Arroway connected.

## Steps

1. Write the MCP configuration of each tool this repository uses, pointing to Arroway's public address: `.mcp.json` for Claude Code, `.cursor/mcp.json` for Cursor, `.codex/config.toml` for Codex. Codex reads a project's own configuration only when the project is trusted.
2. Never write a personal account's private address into the repository — that address is the person's identity. The repository gets only the public address; each person's identity comes from their own sign-in.
3. Add the Arroway block below to the repository's AGENTS.md (or CLAUDE.md), replacing <project> with the Arroway project this repository belongs to.
4. Optional: in Claude Code, `.claude/settings.json` offers Arroway's plugin to everyone who opens the project; the plugin adds the skill and the prompts that make the opening read and the closing record automatic. The connection is required; the plugin is not.
5. Tell the person the one thing only they can do: sign in the first time their tool connects to Arroway — in Codex, with `codex mcp login arroway`.
6. Check that a read answers: call `arroway_read` on the project. When it returns the project's rules, the repository is ready.

## The files

### `.mcp.json` — Claude Code

```json
{
  "mcpServers": {
    "arroway": {
      "type": "http",
      "url": "https://www.arroway.app/api/mcp"
    }
  }
}
```

### `.cursor/mcp.json` — Cursor

```json
{
  "mcpServers": {
    "arroway": {
      "type": "http",
      "url": "https://www.arroway.app/api/mcp"
    }
  }
}
```

### `.codex/config.toml` — Codex, trusted projects only

```toml
[mcp_servers.arroway]
url = "https://www.arroway.app/api/mcp"
```

### `AGENTS.md` — instructions every agent reads

```markdown
## Arroway

This repository's decisions live in Arroway, in the project "<project>". Before acting on a task here, call `arroway_read` on that project and use what it returns. When you finish, record what the work settled with `arroway_log`.
```

### `.claude/settings.json` — Claude Code plugin (optional)

```json
{
  "extraKnownMarketplaces": {
    "arroway": {
      "source": {
        "source": "github",
        "repo": "oaleviola/arroway-plugin"
      }
    }
  },
  "enabledPlugins": {
    "arroway@arroway": true
  }
}
```

## What never goes into the repository

The private address of a personal account, passwords, tokens or API keys. The files above carry only the public address.

Installation page for people: https://www.arroway.app/en/install
