Skip to main content
PraisonAI supports automatic agent generation with dynamic complexity analysis, workflow patterns, and multiple frameworks (PraisonAI Agents, CrewAI, AG2).

What’s New

Dynamic Agent Count

Analyzes task complexity and creates 1-4 agents as needed.

Workflow Patterns

6 patterns: sequential, parallel, routing, loop, orchestrator-workers, evaluator-optimizer.

Pattern Recommendation

Automatically recommends the best pattern based on task keywords.

Tool Preservation

LLM-suggested tools are now preserved in generated YAML.

Installation

Choose your preferred framework:
# For PraisonAI Agents
pip install praisonai

# For CrewAI
pip install "praisonai[crewai]"

# For AG2 (Formerly AutoGen)
pip install "praisonai[autogen]"

# For both frameworks
pip install "praisonai[crewai,autogen]"

Basic Usage

Auto-Generate Agents

# Simple auto-generation (analyzes complexity, creates optimal agents)
praisonai --auto "create a movie script about Dog in Moon"

# With specific framework
praisonai --framework crewai --auto "create a movie script about Dog in Moon"
praisonai --framework autogen --auto "create a movie script about Dog in Moon"

Workflow Auto-Generation

Generate workflow YAML files with specific patterns:

Sequential (Default)

praisonai workflow auto "Research and write a blog post" --pattern sequential

Parallel

praisonai workflow auto "Research from multiple sources simultaneously" --pattern parallel

Routing

praisonai workflow auto "Classify and route customer requests" --pattern routing

Orchestrator-Workers

Central orchestrator dynamically delegates to specialized workers:
praisonai workflow auto "Comprehensive market analysis" --pattern orchestrator-workers

Evaluator-Optimizer

Iterative refinement with feedback loops:
praisonai workflow auto "Write and refine a high-quality article" --pattern evaluator-optimizer

Pattern Selection Guide

PatternUse WhenKeywords
SequentialClear step-by-step dependenciesDefault
ParallelIndependent subtasks”multiple”, “concurrent”, “compare”
RoutingDifferent input types need different handling”classify”, “categorize”, “route”
Orchestrator-WorkersComplex tasks needing dynamic decomposition”complex”, “comprehensive”, “break down”
Evaluator-OptimizerTasks requiring iterative refinement”refine”, “improve”, “quality”, “polish”

CLI Options

praisonai workflow auto "topic" [OPTIONS]

Options:
  --pattern <pattern>    Workflow pattern (sequential, parallel, routing, 
                         loop, orchestrator-workers, evaluator-optimizer)
  --output <file>        Output file name (default: auto-generated)
  --framework <name>     Framework (praisonai, crewai, autogen)

Framework-specific Features

PraisonAI Agents

  • Dynamic agent count (1-4 based on complexity)
  • All 6 workflow patterns supported
  • Tool preservation from LLM suggestions
  • Merge support for incremental agent building

CrewAI

  • Task delegation capabilities
  • Sequential and parallel task execution
  • Built-in tools integration
  • Structured agent-task relationships

AG2 (Formerly AutoGen)

  • Multi-agent conversation capabilities
  • Code execution environment
  • Built-in tools integration
  • Flexible agent interactions

Examples

Simple Task (Creates 1-2 Agents)

praisonai --auto "Write a haiku about spring"

Complex Task (Creates 3-4 Agents)

praisonai --auto "Research AI trends, analyze market data, and write a comprehensive report"

Workflow with Pattern

praisonai workflow auto "Refine and improve content quality" --pattern evaluator-optimizer

Available Tools

The auto-generator can assign these tools to agents:
ToolDescription
CodeDocsSearchToolSearch code documentation
CSVSearchToolSearch CSV files
DirectorySearchToolSearch directories
DOCXSearchToolSearch Word documents
FileReadToolRead files
PDFSearchToolSearch PDF files
ScrapeWebsiteToolScrape websites
WebsiteSearchToolSearch websites
YoutubeVideoSearchToolSearch YouTube videos
Tools are automatically assigned based on task requirements. Use empty list [] if no tools are needed.

Python API

For programmatic control, use the Python API:
from praisonai.auto import AutoGenerator, WorkflowAutoGenerator

# Generate agents.yaml with pattern support
generator = AutoGenerator(
    topic="Research AI trends",
    agent_file="agents.yaml",
    framework="praisonai",
    pattern="parallel",      # NEW: workflow pattern
    single_agent=False       # NEW: single agent mode
)
path = generator.generate(merge=False)

# Generate workflow.yaml
wf_gen = WorkflowAutoGenerator(
    topic="Build customer support",
    workflow_file="workflow.yaml",
    framework="praisonai"    # NEW: framework support
)

# Pattern recommendation (keyword-based, no API call)
pattern = wf_gen.recommend_pattern()

# LLM-based recommendation with reasoning
rec = wf_gen.recommend_pattern_llm()
print(f"Pattern: {rec.pattern}, Confidence: {rec.confidence}")

# Generate with merge support
path = wf_gen.generate(pattern="routing", merge=True)  # NEW: merge support

New Features in Python API

FeatureDescription
pattern parameterSet workflow pattern for AutoGenerator
single_agent modeGenerate single agent for simple tasks
framework supportWorkflowAutoGenerator now supports framework selection
recommend_pattern_llm()LLM-based pattern recommendation with reasoning
merge parameterMerge with existing YAML instead of overwriting
See AutoAgents for full API reference.