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

# Quickstart

> Build your first AI agent with Echo in 5 minutes

Get started with [Echo](https://github.com/eka-care/echo-sdk) in 5 minutes.

**1. Install**

```bash theme={null}
pip install echo-sdk
```

**2. Set API Key**

```bash theme={null}
export OPENAI_API_KEY=sk-...
# or ANTHROPIC_API_KEY or GOOGLE_API_KEY
```

**3. Create Agent**

```python theme={null}
import asyncio
from echo import (
    GenericAgent, AgentConfig, LLMConfig,
    PersonaConfig, TaskConfig, ConversationContext,
    Message, MessageRole, TextMessage
)

# LLM configuration
llm_config = LLMConfig(
    provider="openai",
    model="gpt-4o-mini",
    temperature=0.2,
    max_tokens=2000,
)

# Agent configuration (persona + task = system prompt)
agent_config = AgentConfig(
    persona=PersonaConfig(
        role="Healthcare Assistant",
        goal="Help users with health queries",
        backstory="A knowledgeable medical AI assistant",
    ),
    task=TaskConfig(
        description="Answer health-related questions accurately",
        expected_output="Clear, helpful medical information",
    ),
)

async def main():
    agent = GenericAgent(
        agent_config=agent_config,
        llm_config=llm_config,
        tools=[],
    )

    context = ConversationContext()
    context.add_message(Message(
        role=MessageRole.USER,
        content=[TextMessage(text="What are symptoms of dehydration?")],
    ))

    result = await agent.run(context)
    print(result.llm_response.text)

asyncio.run(main())
```

**4. Run**

```bash theme={null}
python my_agent.py
```

## With Streaming

```python theme={null}
from echo import get_llm, StreamEventType

llm = get_llm(LLMConfig(provider="openai", model="gpt-4o-mini"))

async for event in llm.invoke_stream(context, system_prompt="You are helpful."):
    if event.type == StreamEventType.TEXT:
        print(event.text, end="", flush=True)
    elif event.type == StreamEventType.DONE:
        print("\n--- Done ---")
```

## Next Steps

> **[Tools](https://developer.eka.care/docs/agents/agent-kit/tools.md)**
>
> Add tools to your agent

> **[MCP Integration](https://developer.eka.care/docs/agents/agent-kit/mcp-integration.md)**
>
> Connect to Eka MCP Server


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.