Development Setup

Set up a PraisonAI development environment with uv

Set up a local PraisonAI development environment using uv — the fast Python package manager.

Diagram

Contributor Workflow

📦 Install uv

📂 Clone Repo

⚙️ Install Deps

🚀 Develop

📤 Release

Quick Start

  1. Install uv
    bash
    pip install uv
  2. Clone and Install
    bash
    git clone https://github.com/MervinPraison/PraisonAI.git
    cd PraisonAI
    
    # Install base dependencies
    uv pip install -r pyproject.toml
  3. Install with Extras
    bash
    # Single extra
    uv pip install -r pyproject.toml --extra code
    
    # Multiple extras
    uv pip install -r pyproject.toml --extra "crewai,autogen"

Available Extras

ExtraWhat It Includes
codeCode generation and analysis tools
chatChainlit-based chat interface
crewaiCrewAI framework integration
autogenAG2 (AutoGen) framework integration
langgraphLangGraph framework integration (probe + doctor recognition; also install praisonai-frameworks[langgraph] for the adapter)
toolsAll built-in tool packages
botDiscord/Telegram/Slack bot support
osProduction-ready OS-level dependencies

Bump and Release

bash
# Bump version and prepare release
python src/praisonai/scripts/bump_and_release.py 2.2.99

# With praisonaiagents dependency update
python src/praisonai/scripts/bump_and_release.py 2.2.99 --agents 0.0.169

# Publish to PyPI
cd src/praisonai && uv publish

Project Structure

praisonai-package/
├── src/
│   ├── praisonai/           # Main user-facing CLI package (pip install praisonai)
│   ├── praisonai-code/      # Agentic terminal CLI — extracted from praisonai (incremental C0–C6)
│   ├── praisonai-agents/    # Agent SDK (praisonaiagents)
│   ├── praisonai-ts/        # TypeScript SDK
│   └── praisonai-rust/      # Rust SDK
├── examples/                # Example scripts
└── tests/                   # Test suites

praisonai-code Sibling Package

praisonai-code hosts the agentic terminal CLI (run, chat, code, warm runtime, CLI backends) as an internal sibling package. praisonai remains the user-facing install; praisonai-code is not published standalone to PyPI during migration.

Status: C0 scaffold merged in PraisonAI#2520. C1 moved runtime/ and cli_backends/ into praisonai_code in PraisonAI#2523; PEP 562 shims keep the old import paths working. See the praisonai-code migration guide for the full C0–C6 roadmap and shim behaviour.

Dependency Rules

praisonai (main)  →  depends on  praisonai-code
praisonai-code    →  depends on  praisonaiagents (core SDK)
Diagram

📦 praisonai
user-facing install

💻 praisonai-code
agentic terminal CLI

🤖 praisonaiagents
agent SDK

Dev Install

  1. Install the sibling package in editable mode
    bash
    pip install -e src/praisonai-code
  2. Verify the install
    bash
    python -c "import praisonai_code; print(praisonai_code.__version__)"
    # → 0.0.1

Migration Plan (C0–C6)

Track upstream progress in the praisonai-code migration guide and PraisonAI#2512.

StepScopeStatus
C0Scaffold (this)✅ Merged in #2520
C1runtime/ + cli_backends/✅ Merged in #2523
C2interactive/, execution/, ui/, output/, state/Tracking
C3Agentic commands (80 files)Tracking
C4Agentic features (158 files)Tracking
C5main.py, app.py, config/session/utils + shimsTracking
C6Integration gateTracking

Related