Praison AI

PraisonAI is a production-ready Multi-AI Agents framework with self-reflection, designed to create AI Agents to automate and solve problems ranging from simple tasks to complex challenges. It provides a low-code solution to streamline the building and management of multi-agent LLM systems, emphasising simplicity, customisation, and effective human-agent collaboration.

PraisonAI Logo PraisonAI Logo
Total Downloads
Latest Stable Version
License
GitHub Stars
GitHub Forks
Build production-ready AI agents that reason, remember, self-improve, and act autonomously — with just a few lines of code.

Why PraisonAI?


Differentiators

🧠 Self-Reflection & Reasoning

Unlike simple chatbots, PraisonAI agents can reflect on their outputs and iteratively improve them. Built-in reasoning capabilities enable multi-step problem solving without manual prompting.

python
from praisonaiagents import Agent, ReflectionConfig

# Simple reflection
agent = Agent(
    name="analyst",
    instructions="You analyze data carefully.",
    reflection=True          # Enable self-correction
)

# Advanced reflection with custom iterations
agent = Agent(
    name="analyst",
    instructions="You analyze data carefully.",
    reflection=ReflectionConfig(max_iterations=3)
)
💾 Persistent Memory

Agents remember past interactions across sessions. Short-term, long-term, and episodic memory systems keep context without re-prompting.

python
from praisonaiagents import Agent, MemoryConfig

agent = Agent(
    name="assistant",
    memory=MemoryConfig(
        backend="file",
        user_id="user_123"
    )
)
📚 Knowledge Bases (RAG)

Connect agents to your documents, databases, and APIs. Built-in RAG with auto-chunking, embeddings, and semantic search.

python
from praisonaiagents import Agent

agent = Agent(
    name="researcher",
    knowledge=[                # Multiple knowledge sources
        "./docs/",
        "notes.txt",           # arbitrary web URLs aren't ingested; fetch web pages first
        "s3://my-bucket/handbook.pdf",  # cloud storage URIs are downloaded automatically
        "./pdfs/"
    ]
)
🌐 Browser Control

Agents can navigate websites, fill forms, click buttons, and extract data — fully automated browser automation.

python
agent = Agent(
    name="web_agent",
    tools=["browser_tool"],   # Built-in browser
    llm="gpt-4o"
)
agent.run("Book a flight from NYC to LA for next Tuesday")
💬 11+ Messaging Platforms

Deploy agents to Slack, Discord, Telegram, WhatsApp, Signal, LINE, iMessage, and more — with a single command.

bash
praisonai bot slack --token $SLACK_BOT_TOKEN --app-token $SLACK_APP_TOKEN
🔌 Extensible Plugins

Write custom tools in Python or use any of the 140+ pre-built integrations. MCP protocol support for external tool servers.

python
from praisonaiagents import Agent

def custom_tool(query: str) -> str:
    """My custom tool description."""
    return f"Result for {query}"

agent = Agent(tools=[custom_tool])

Quick Start

No Code

  1. Install
    bash
    pip install praisonai
  2. Set API Key
    bash
    export OPENAI_API_KEY=sk-xxx
  3. Run
    bash
    praisonai --auto "Research the top 5 AI trends in 2025 and create a report"

    That’s it! Agents are automatically created and orchestrated.

Python SDK

  1. Install
    bash
    pip install praisonaiagents
  2. Create Agent
    python
    from praisonaiagents import Agent
    
    agent = Agent(
        name="researcher",
        instructions="You are a research analyst specializing in AI trends.",
        llm="gpt-4o"
    )
    
    result = agent.start("What are the top AI trends for 2025?")
    print(result)

Multi-Agent

python
from praisonaiagents import Agent, Task, AgentTeam

# Create specialized agents
researcher = Agent(
    name="Researcher",
    role="Research Analyst",
    goal="Find accurate, up-to-date information",
    llm="gpt-4o"
)

writer = Agent(
    name="Writer",
    role="Content Writer",
    goal="Create engaging, clear content",
    llm="gpt-4o"
)

# Define tasks
research_task = Task(
    name="research",
    description="Research AI trends for 2025",
    agent=researcher
)

write_task = Task(
    name="write",
    description="Write a blog post based on the research",
    agent=writer
)

# Orchestrate
agents = AgentTeam(
    agents=[researcher, writer],
    tasks=[research_task, write_task],
    process="sequential"
)

result = agents.start()

Platform Integrations


CLI Commands

Full-featured CLI for deploying and managing AI agents:

Messaging Bots

bash
# Start a Telegram bot
praisonai bot telegram --token $TELEGRAM_BOT_TOKEN

# Slack with full capabilities
praisonai bot slack --token $SLACK_BOT_TOKEN --app-token $SLACK_APP_TOKEN \
  --agent agents.yaml --browser --web --memory

# Discord with custom tools
praisonai bot discord --token $DISCORD_BOT_TOKEN \
  --tools DuckDuckGoTool WikipediaTool

Browser Control

bash
# Navigate and interact with websites
praisonai browser navigate https://example.com
praisonai browser run "Click the submit button"
praisonai browser screenshot --output page.png
praisonai browser doctor

Skills & Plugins

bash
# Manage skills
praisonai skills list
praisonai skills check --verbose
praisonai skills create --name csv-analyzer --description "Analyze CSV" --script

# Manage plugins
praisonai plugins list --enabled
praisonai plugins doctor

Sandbox

bash
# Contain every agent shell command
PRAISON_SHELL=sandboxed praisonai code
praisonai sandbox status
praisonai sandbox explain --agent work

Architecture

Diagram

LLM Providers

Deployment Options

Agent Capabilities

Your Application

👤 User

🤖 PraisonAI Agents

🔧 140+ Tools

💾 Memory

📚 Knowledge

🧠 Reasoning

⌨️ CLI

🌐 REST API

💬 Messaging Bots

🖥️ Web UI

OpenAI / Anthropic / Google / Ollama / 100+


Use Cases


Explore