Skip to main content
The --auto planner sees whatever the ToolResolver sees — install more tools and they show up automatically.

Quick Start

1

Run auto mode

Run --auto with your OpenAI key set:
The planner’s Available Tools: list reflects whatever is installed right now.
2

Install a tools package

Add more tools and the planner sees them next run — no config change:
3

Rerun and watch the list grow

Run the same command again — the planner now advertises the newly installed tools:
Confirm what the resolver can see with:

How It Works

The planner prompt’s Available Tools: line is filled from the canonical ToolResolver, so it always matches what your agents can call at run time. If the resolver is unavailable (import failure or air-gapped environment), the planner falls back to a frozen list so --auto still produces a working plan.

Configuration Options

The inventory is driven by the resolver — configure it through the ToolResolver API rather than a separate setting.

Tool Resolver

How PraisonAI discovers and resolves every tool source

Auto Module SDK Reference

Full API reference for AutoGenerator and BaseAutoGenerator

Common Patterns

Local tools.py picked up by the planner:
Register a wrapper ToolRegistry function so the planner sees it:
Inject an explicit resolver for tests or multi-tenant runtimes:

Best Practices

The frozen list exists only for offline / broken-import scenarios. In a normal install, let the resolver drive the inventory so the planner and your agents never drift apart.
When you want CrewAI-style tools referenced by name in --auto plans, install the package:
Inject your own resolver into AgentsGenerator(tool_resolver=...) so tests don’t share the process-wide default.
In multi-tenant runtimes switching working directories, reset the context-local default before each tenant:

Tool Resolver

Single source of truth for every tool the planner can see

AutoAgents

Automatically create and run agents from a prompt