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

# Introduction

> Extra — an agent engine for hierarchical multi-agent systems.

## What is Extra?

Extra is an open-source platform for building and running AI agent systems declaratively.
You describe your agents, orchestrators, tools, MCP servers, and their connections in a YAML file. Extra validates, compiles, and runs that system — without you writing plumbing code.

Because each agent is strictly scoped to its own domain — with its own tools, prompts, and data sources — the system produces accurate, grounded responses with no hallucination bleeding between domains. One spec file can orchestrate agents across any number of domains, all routing correctly with no coordination code.

***

## Why Extra?

Most agent frameworks give you primitives and leave the hard parts to you: routing logic, prompt wiring, tool access control, auth, and tracing — all written by hand, every time.

Extra moves that into a reusable runtime. You declare what your system is. Extra handles how it runs.

***

## From spec to production

```yaml theme={null}
orchestrators:
  router:
    description: "Routes customer requests to the right department."
    prompts:
      orchestrator: "prompts/router.md"

agents:
  orders_agent:
    description: "Handles order status and tracking."
    tools: [get_order_status]
    mcps: [orders_api]

  returns_agent:
    description: "Handles return requests and refunds."
    tools: [create_return]

graph:
  router:
    orders_agent:
    returns_agent:
```

That's your entire system. Extra generates the plugin stubs — you fill in the business logic. We validate, compile, and run it. Production-ready.

<Steps>
  <Step title="Write your spec">
    Declare agents, tools, and connections in YAML.
  </Step>

  <Step title="Generate">
    Run `generate` via Docker — Extra creates the plugin stubs from your spec. Fill them in with your business logic.
  </Step>

  <Step title="Fill in your logic">
    Implement the stubs — your APIs, your data, your auth.
  </Step>

  <Step title="Run">
    Extra validates, compiles, and serves. Done.
  </Step>
</Steps>

***

## Key benefits

<CardGroup cols={2}>
  <Card title="No coordination code" icon="file-code">
    Define agents and their connections in YAML. Extra handles routing, scoping, and execution.
  </Card>

  <Card title="Domain isolation" icon="shield">
    Each agent is scoped to its domain. No hallucination bleeds between agents.
  </Card>

  <Card title="Any data source" icon="plug">
    Connect agents to remote MCP servers, local tools, or your own APIs — in any language.
  </Card>

  <Card title="Lifecycle hooks" icon="diagram-project" href="/docs/runtime-hooks">
    Run trusted Python at fixed runtime points — MCP auth, env validation, auditing — without touching the engine.
  </Card>

  <Card title="Drop-in widget" icon="message-bot">
    Embed a full chat interface into any web app with a single HTML tag.
  </Card>
</CardGroup>

***

## Next Steps

<CardGroup cols={2}>
  <Card title="Quickstart" icon="rocket" href="/docs/quickstart">
    Run your first agent in 5 minutes.
  </Card>

  <Card title="Architecture" icon="building" href="/docs/architecture">
    Understand how Extra routes and executes requests.
  </Card>
</CardGroup>
