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

# Configuration Reference

> Complete configuration guide for PraisonAI agents, tasks, memory, and more

# Configuration Reference

This section provides comprehensive documentation for all configuration options in PraisonAI. Each component has its own detailed configuration guide with examples, best practices, and advanced options.

## Configuration Categories

<CardGroup cols={2}>
  <Card title="Agent Configuration" icon="robot" href="/docs/configuration/agent-config">
    Complete guide to agent parameters including max\_iter, max\_retry\_limit, context\_length, and markdown options
  </Card>

  <Card title="Task Configuration" icon="tasks" href="/docs/configuration/task-config">
    Task parameters including task\_type, condition, next\_tasks, and is\_start options
  </Card>

  <Card title="Memory Configuration" icon="brain" href="/docs/configuration/memory-config">
    Memory system configuration including graph store, quality scores, and embedder options
  </Card>

  <Card title="LLM Configuration" icon="microchip" href="/docs/configuration/llm-config">
    LLM settings including retry logic, timeouts, and custom headers
  </Card>

  <Card title="Tool Configuration" icon="wrench" href="/docs/configuration/tool-config">
    Tool timeout settings and performance tuning options
  </Card>

  <Card title="Handoff Configuration" icon="handshake" href="/docs/configuration/handoff-config">
    Handoff filters and advanced delegation settings
  </Card>

  <Card title="Guardrail Configuration" icon="shield" href="/docs/configuration/guardrail-config">
    Custom validation rules and guardrail settings
  </Card>

  <Card title="Best Practices" icon="star" href="/docs/configuration/best-practices">
    Configuration best practices and common patterns
  </Card>

  <Card title="CLI Configuration" icon="gear" href="/docs/features/cli-configuration">
    Layered, project-aware defaults for the praisonai CLI (`~/.praisonai/config.yaml`)
  </Card>

  <Card title="Single-Source Config" icon="gear" href="/docs/features/single-source-config">
    Now also the single source of truth for `mcp` servers and `permissions` policy — model, MCP, and permissions in one file.
  </Card>
</CardGroup>

<Note>
  **CLI config** (`~/.praisonai/config.yaml`, project `.praisonai/config.yaml`) holds runtime defaults for the `praisonai` CLI itself — model, output, MCP servers, rules. See [CLI Configuration](/docs/features/cli-configuration) and [`praisonai config`](/docs/cli/config).

  **Agents YAML** (`agents.yaml` or similar) is the SDK-level definition of agents, tasks, and workflows. See [Agent Configuration](/configuration/agent-config) and [Task Configuration](/configuration/task-config).
</Note>

## Quick Reference

### Essential Configuration Parameters

| Component | Parameter              | Type  | Description                                                                        |
| --------- | ---------------------- | ----- | ---------------------------------------------------------------------------------- |
| Agent     | `max_iter`             | int   | Maximum iterations for task completion                                             |
| Agent     | `max_retry_limit`      | int   | Max retries for retryable tool and guardrail failures (`1 + limit` total attempts) |
| Agent     | `retry_initial_delay`  | float | First retry delay in seconds (exponential backoff)                                 |
| Agent     | `retry_backoff_factor` | float | Backoff multiplier per retry attempt                                               |
| Agent     | `retry_jitter`         | float | Jitter fraction added to each retry delay                                          |
| Task      | `task_type`            | str   | Type of task execution                                                             |
| Memory    | `quality_threshold`    | float | Minimum quality score for memory retrieval                                         |
| LLM       | `timeout`              | int   | Request timeout in seconds                                                         |
| Tool      | `execution_timeout`    | int   | Tool execution timeout                                                             |

## Environment Variables

PraisonAI supports configuration through environment variables for sensitive settings:

```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
# LLM Configuration
export OPENAI_API_KEY="your-api-key"
export OPENAI_MODEL="gpt-4o"

# Memory Configuration
export PRAISONAI_MEMORY_PROVIDER="rag"
export PRAISONAI_DB_PATH="/path/to/db"

# Performance Settings
export PRAISONAI_MAX_WORKERS=4
export PRAISONAI_TIMEOUT=300
```

## Configuration Files

PraisonAI supports YAML configuration files for complex setups:

```yaml theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
# config.yaml
agents:
  default:
    max_iter: 15
    max_retry_limit: 3
    context_length: 128000
    markdown: true

memory:
  provider: rag
  quality_threshold: 0.7
  graph_enabled: true

llm:
  timeout: 60
  max_retries: 3
  temperature: 0.7
```

## Getting Started

1. Start with the [Agent Configuration](/configuration/agent-config) to set up your agents
2. Configure [Tasks](/configuration/task-config) for your workflow
3. Set up [Memory](/configuration/memory-config) for persistent storage
4. Fine-tune [LLM settings](/configuration/llm-config) for optimal performance

## Need Help?

* Check our [Best Practices](/configuration/best-practices) guide
* See [Examples](/examples) for real-world configurations
* Visit our [GitHub](https://github.com/MervinPraison/PraisonAI) for issues and discussions
