> ## Documentation Index
> Fetch the complete documentation index at: https://docs.enagrams.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

> Shared memory for co-coding teams — so your AI agents never contradict each other

# What is Enagrams?

Enagrams is a coordination layer for AI coding agents. When multiple developers use parallel coding agents — Cursor, Claude Code, Codex, Windsurf — those agents make independent decisions that diverge: different libraries chosen, conflicting file edits, duplicate implementations.

Enagrams gives every agent complete context about what every other agent is doing, so they naturally converge on the same architecture and never step on each other's work.

## The Problem

Without coordination, parallel agents create chaos:

* **Developer A's agent** picks `zod` for validation
* **Developer B's agent** picks `joi` for the same purpose
* Both rewrite the same route files simultaneously
* You discover the conflict at merge time — hours of rework

## The Solution

Enagrams maintains a shared knowledge graph of every architectural decision, a per-workspace symbol graph of every function and class, and a live coordination substrate of active work. Agents reserve files and symbols before editing. A gate blocks "I'm done" handoffs that break tests. Meeting transcripts automatically generate scoped work packages so every agent knows exactly what to build.

```bash theme={null}
npx enagrams init
```

One command. Browser auth. Agents connect via the Model Context Protocol. Hooks are installed automatically for Cursor, Claude Code, and Codex.

## How It Works

<CardGroup cols={3}>
  <Card title="Connect" icon="plug">
    Run `enagrams init`. Browser auth creates or joins a workspace and writes the MCP + hook config for every IDE on the machine.
  </Card>

  <Card title="Coordinate" icon="arrows-split-up-and-left">
    File and symbol reservations prevent simultaneous edits. Workstreams map 1:1 to `ena/<slug>` branches so the team shares one working branch per feature.
  </Card>

  <Card title="Align" icon="bullseye">
    Decisions and conventions are shared across agents. `must`-tier conventions block edits. The test gate blocks "ready" signals that would break dependents.
  </Card>
</CardGroup>

## Key Features

* **24 MCP tools** across six surfaces — coordination (`sync`, `decide`, `search`, `learn`, `ask`, `publish`), workstreams (`workstream_start/join/leave/end/complete/list`), tasks (`delegate_task`, `task_claim/update/list`), conventions (`convention_propose/list`, `decisions_stale`, `decision_reaffirm`), the test gate (`confirm_ready`, `sync_commit`, `sync_retract`), and negotiation (`negotiate_open/respond/list`)
* **Automatic file + symbol locking** — IDE hooks reserve files on write and can narrow down to specific functions/classes (`granularity='symbol'`)
* **Workstreams** — short-lived feature branches `ena/<slug>` that agents jump onto together; any branch matching that pattern puts the session in coordinated mode
* **Symbol graph** — per-workspace pgvector index of every top-level function, class, interface, and enum, kept fresh on every agent write
* **Test gate (`confirm_ready`)** — computes the affected-test set from the symbol graph, records pass/fail with flake tracking, writes a `sync_log` receipt the watcher uses to fan out commits
* **Living decisions + conventions** — decisions auto-link to symbols and go stale when those symbols change; `must`-tier conventions are hard gates on PreToolUse
* **Negotiation protocol** — when two agents both want a symbol, they run a bounded-turn state machine (`propose → yield / hold / split / defer → resolved | escalated | expired`)
* **Meeting ingestion** — paste a transcript or record live via Whisper; decisions, action items, and file-scoped work packages are auto-extracted
* **Real-time dashboard** — Supabase Realtime fans `agent_sessions`, `file_reservations`, `decisions`, `workstreams`, `tasks`, and `sync_log` changes to the web UI and `enagrams watch` subscribers

## Quick Start

<CardGroup cols={2}>
  <Card title="2-minute quickstart" icon="rocket" href="/guides/quickstart">
    Install, connect, and start coding with coordinated agents.
  </Card>

  <Card title="How it works" icon="gear" href="/guides/how-it-works">
    Deep dive into the coordination model.
  </Card>
</CardGroup>
