> ## 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.

# Feature Configs • AI Agent SDK

> Feature Configuration Classes for PraisonAI Agents.

# feature\_configs

<Badge color="blue">AI Agent</Badge>

Feature Configuration Classes for PraisonAI Agents.

Provides dataclasses for consolidated feature configuration:

* MemoryConfig: Memory and session management
* KnowledgeConfig: RAG and knowledge retrieval
* PlanningConfig: Planning mode settings
* ReflectionConfig: Self-reflection settings
* GuardrailConfig: Safety and validation
* WebConfig: Web search and fetch

All configs follow the agent-centric pattern:

* False: Feature disabled (zero overhead)
* True: Feature enabled with safe defaults
* Config: Custom configuration
* Instance: Pre-configured manager/engine

Usage:
from praisonaiagents import Agent, MemoryConfig, KnowledgeConfig

# Simple enable

agent = Agent(instructions="...", memory=True)

# With config

agent = Agent(
instructions="...",
memory=MemoryConfig(backend="redis", user\_id="user123"),
knowledge=KnowledgeConfig(sources=\["docs/"], rerank=True),
)

## Import

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
from praisonaiagents.config import feature_configs
```

## Classes

<CardGroup cols={2}>
  <Card title="MemoryBackend" icon="brackets-curly" href="../classes/MemoryBackend">
    Memory storage backends.
  </Card>

  <Card title="LearnScope" icon="brackets-curly" href="../classes/LearnScope">
    Scope for learning data visibility.
  </Card>

  <Card title="LearnConfig" icon="brackets-curly" href="../classes/LearnConfig">
    Configuration for continuous learning within memory system.
  </Card>

  <Card title="MemoryConfig" icon="brackets-curly" href="../classes/MemoryConfig">
    Configuration for agent memory and session management.
  </Card>

  <Card title="ChunkingStrategy" icon="brackets-curly" href="../classes/ChunkingStrategy">
    Knowledge chunking strategies.
  </Card>

  <Card title="KnowledgeConfig" icon="brackets-curly" href="../classes/KnowledgeConfig">
    Configuration for RAG and knowledge retrieval.
  </Card>

  <Card title="PlanningConfig" icon="brackets-curly" href="../classes/PlanningConfig">
    Configuration for planning mode.
  </Card>

  <Card title="ReflectionConfig" icon="brackets-curly" href="../classes/ReflectionConfig">
    Configuration for self-reflection.
  </Card>

  <Card title="GuardrailAction" icon="brackets-curly" href="../classes/GuardrailAction">
    Action to take when guardrail fails.
  </Card>

  <Card title="GuardrailConfig" icon="brackets-curly" href="../classes/GuardrailConfig">
    Configuration for guardrails and safety validation.
  </Card>

  <Card title="WebSearchProvider" icon="brackets-curly" href="../classes/WebSearchProvider">
    Web search providers.
  </Card>

  <Card title="WebConfig" icon="brackets-curly" href="../classes/WebConfig">
    Configuration for web search and fetch capabilities.
  </Card>

  <Card title="OutputPreset" icon="brackets-curly" href="../classes/OutputPreset">
    Output style presets.
  </Card>

  <Card title="OutputConfig" icon="brackets-curly" href="../classes/OutputConfig">
    Configuration for agent output behavior.
  </Card>

  <Card title="ExecutionPreset" icon="brackets-curly" href="../classes/ExecutionPreset">
    Execution mode presets.
  </Card>

  <Card title="ExecutionConfig" icon="brackets-curly" href="../classes/ExecutionConfig">
    Configuration for agent execution limits.
  </Card>

  <Card title="TemplateConfig" icon="brackets-curly" href="../classes/TemplateConfig">
    Configuration for prompt templates.
  </Card>

  <Card title="CachingConfig" icon="brackets-curly" href="../classes/CachingConfig">
    Configuration for caching behavior.
  </Card>

  <Card title="HooksConfig" icon="brackets-curly" href="../classes/HooksConfig">
    Configuration for agent hooks/callbacks.
  </Card>

  <Card title="SkillsConfig" icon="brackets-curly" href="../classes/SkillsConfig">
    Configuration for agent skills.
  </Card>

  <Card title="MultiAgentHooksConfig" icon="brackets-curly" href="../classes/MultiAgentHooksConfig">
    Configuration for multi-agent orchestration hooks/callbacks.
  </Card>

  <Card title="MultiAgentOutputConfig" icon="brackets-curly" href="../classes/MultiAgentOutputConfig">
    Configuration for multi-agent output behavior.
  </Card>

  <Card title="MultiAgentExecutionConfig" icon="brackets-curly" href="../classes/MultiAgentExecutionConfig">
    Configuration for multi-agent execution limits.
  </Card>

  <Card title="MultiAgentPlanningConfig" icon="brackets-curly" href="../classes/MultiAgentPlanningConfig">
    Configuration for multi-agent planning mode.
  </Card>

  <Card title="MultiAgentMemoryConfig" icon="brackets-curly" href="../classes/MultiAgentMemoryConfig">
    Configuration for multi-agent shared memory.
  </Card>

  <Card title="AutonomyLevel" icon="brackets-curly" href="../classes/AutonomyLevel">
    Autonomy levels for agent behavior.
  </Card>
</CardGroup>

## Functions

<CardGroup cols={2}>
  <Card title="resolve_memory()" icon="function" href="../functions/resolve_memory">
    Resolve memory= parameter following precedence ladder.
  </Card>

  <Card title="resolve_knowledge()" icon="function" href="../functions/resolve_knowledge">
    Resolve knowledge= parameter following precedence ladder.
  </Card>

  <Card title="resolve_planning()" icon="function" href="../functions/resolve_planning">
    Resolve planning= parameter following precedence ladder.
  </Card>

  <Card title="resolve_reflection()" icon="function" href="../functions/resolve_reflection">
    Resolve reflection= parameter following precedence ladder.
  </Card>

  <Card title="resolve_guardrails()" icon="function" href="../functions/resolve_guardrails">
    Resolve guardrails= parameter following precedence ladder.
  </Card>

  <Card title="resolve_web()" icon="function" href="../functions/resolve_web">
    Resolve web= parameter following precedence ladder.
  </Card>

  <Card title="resolve_output()" icon="function" href="../functions/resolve_output">
    Resolve output= parameter following precedence ladder.
  </Card>

  <Card title="resolve_execution()" icon="function" href="../functions/resolve_execution">
    Resolve execution= parameter following precedence ladder.
  </Card>

  <Card title="resolve_caching()" icon="function" href="../functions/resolve_caching">
    Resolve caching= parameter following precedence ladder.
  </Card>

  <Card title="resolve_autonomy()" icon="function" href="../functions/resolve_autonomy">
    Resolve autonomy= parameter following precedence ladder.
  </Card>
</CardGroup>

***

## Related Documentation

<CardGroup cols={2}>
  <Card title="Configuration Overview" icon="gear" href="/docs/configuration/index" />

  <Card title="Agent Config" icon="robot" href="/docs/configuration/agent-config" />
</CardGroup>
