Skip to main content
Every specialised agent starts from the same friendly Agent primitive — one instruction, one call — then adds tools or dedicated methods for its domain.
from praisonaiagents import Agent

agent = Agent(instructions="Your task-specific instructions")

agent.start("Your task description")
PraisonAI provides a diverse set of specialized agents for various tasks. Each agent is designed with specific capabilities and tools to handle different types of tasks effectively.

Quick Start

1

Simple Usage

Create a plain agent and start it.
from praisonaiagents import Agent

agent = Agent(instructions="Your task-specific instructions")

agent.start("Your task description")
2

With a Specialised Agent

Swap in a dedicated agent class when a task needs it.
from praisonaiagents import CodeAgent

agent = CodeAgent(name="Coder")

code = agent.generate("Write a function to reverse a string")
print(agent.execute(code)["stdout"])

How It Works

Data & Analysis

Data Analyst

Analyze data from various sources, create visualizations, and generate insights.

Finance

Track stocks, analyze financial data, and provide investment recommendations.

Research

Conduct comprehensive research and analysis across various topics.

Wikipedia

Search and extract information from Wikipedia articles.

Media & Content

Image Analysis

Analyze and understand visual content from images.

Image to Text

Convert images to textual descriptions and extract text content.

Video

Analyze video content and extract meaningful information.

Markdown

Generate and format content in Markdown syntax.

Search & Recommendations

Web Search

Perform intelligent web searches and gather information.

Recommendation

Generate personalized recommendations based on preferences.

Shopping

Compare prices and find the best deals across stores.

Planning

Create travel plans and detailed itineraries.

Development

Programming

Write, analyze, and debug code across multiple languages.

Single Agent

Simple, focused agent for basic tasks without external tools.

Getting Started

Each agent can be easily initialized and customized for your specific needs. Here’s a basic example:
from praisonaiagents import Agent

agent = Agent(instructions="Your task-specific instructions")

response = agent.start("Your task description")
For more detailed information about each agent, click on the respective cards above.

Best Practices

A plain Agent with a clear instruction handles most tasks. Reach for a specialised class only when you need its dedicated methods or built-in tooling.
Use CodeAgent for sandboxed code, VisionAgent for image understanding, RealtimeAgent for voice, and so on. Each ships the right defaults for its domain.
Many “agents” here are just a plain Agent plus a tool (search, finance, wiki). Attaching a tool is often simpler than adopting a whole specialised class.
Set memory=True when a task spans several interactions so the agent keeps context across turns instead of starting fresh each time.

The minimal single-purpose agent to start from.

The CodeAgent with sandboxed generation and execution.