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

# Quickstart

> From install to judged conversations in three steps.

## 1. Install

Pick the extra that matches your LLM library:

```bash theme={null}
pip install "eldros-sdk[openai]"        # or [anthropic] / [claude-agent-sdk]
```

## 2. Initialize

Set your agent's API key (generated from its **Configuration → Trace API Keys** page on the Eldros dashboard — [one key per agent](/docs/configuration#one-key-per-agent)), then call `init()` once at agent startup — before your event loop:

```bash theme={null}
export ELDROS_API_KEY=agt_...
```

```python theme={null}
import eldros_sdk

eldros_sdk.init(traffic_type="prod")
```

This resolves your config, turns the pipeline on, and auto-instruments your LLM library — every model call becomes a trace span with **no change to your model code**. The extra you installed in step 1 is the switch: installed means instrumented, and `init()` kwargs or env vars can override it — see [LLM tracing](/docs/tracing).

## 3. Capture conversations

Wrap each user↔agent exchange in a turn:

```python theme={null}
with eldros_sdk.turn(user_msg, session_id=conversation_id) as t:
    reply = await agent.respond(user_msg)   # LLM call nests under the turn automatically
    t.reply(reply)                          # records the assistant turn
```

That's it — every conversation is now assembled, judged, and surfaced in the Eldros dashboard, with each LLM call nested under its turn.

## Verify it works

Send one message through your agent, then check the dashboard: you should see the conversation with its turn, and the LLM span nested underneath. If nothing appears, the SDK logs a warning explaining what's missing — capture problems fail loudly, never silently.
