Skip to main content
praisonai-code is the terminal-native agent CLI — install it on its own for a smaller footprint when you only need agentic commands.
from praisonaiagents import Agent

agent = Agent(
    name="assistant",
    instructions="You are a helpful coding assistant.",
)
agent.start("Summarise the top 3 arXiv papers on RAG this week")
The user runs a terminal prompt; praisonai-code executes the agent and streams the reply.
As of praisonai-code 0.0.22, default run "…", chat, and code require the praisonai wrapper. On a standalone install they emit an install hint. run --output actions "…" stays standalone-safe.

Which install do I need?

Both praisonai-code (console script) and python -m praisonai_code call the same entry point: configure logging, register commands, then run the Typer app.

Quick Start

1

Install standalone

pip install praisonai-code
praisonai-code version
The panel lists PraisonAI Code, PraisonAI Agents, and Python. When the full wrapper is installed, a PraisonAI Wrapper line appears as well.Use --version for a quick one-liner (package version only, no panel):
praisonai-code --version
Run your first agent:
praisonai-code run --output actions "Summarise the top 3 arXiv papers on RAG this week"
Use --output actions for the standalone-safe in-process Agent path. Default run "…" (no --output actions) requires the wrapper.
2

Upgrade later if you need bots or gateway

pip install praisonai
The same praisonai-code binary keeps working. Wrapper-only commands (gateway, bot, onboard, pairing, identity, kanban, claw, dashboard) become available through the composed install.

How It Works

When a command needs the praisonai wrapper, the CLI uses an internal bridge. If the wrapper is missing, you get a clear install hint instead of a silent failure. Plugin discovery is vendored inside praisonai-code, so plugin-related flows keep working without the wrapper. The default run "…" guard checks wrapper_available() before any credential setup. When the wrapper is absent it prints:
Default run mode requires the praisonai wrapper. Install with: pip install praisonai
Standalone alternative: praisonai run --output actions "your prompt"
chat and code raise the parallel hint: Error: chat requires the praisonai wrapper. Install the full wrapper: pip install praisonai (and the same for code). The vendored _registry module means plugins work even without the wrapper installed. Version resolution reads from the praisonai-code package metadata directly, not the wrapper.

Command matrix

Three tiers decide what a command needs: fully standalone, wrapper-required (listed on a standalone install but needs the wrapper at runtime), and wrapper-only (not listed without the wrapper).
Standalone (pip install praisonai-code)Wrapper-required (listed, needs praisonai)Wrapper-only (pip install praisonai)
acp · agent · agents · attach · auth · batch · benchmark · browser · call · checkpoint · command · commit · completion · config · context · debug · deploy · diag · docs · doctor · endpoints · env · eval · examples · flow · github · hooks · init · knowledge · langextract · langfuse · loop · lsp · managed · mcp · memory · models · n8n · obs · package · paths · permissions · plugins · port · profile · publish · rag · realtime · recipe · registry · replay · research · run --output actions · rules · sandbox · schedule · serve · session · setup · skills · templates · test · todo · tools · traces · tracker · train · ui · up · validate · version · workflowrun "…" (default) · chat · codebot · claw · daemon · dashboard · gateway · identity · kanban · onboard · pairing
Wrapper-required commands are listed in --help but fail fast with an install hint when the wrapper is missing. Wrapper-only names stay out of --help entirely and do not load a Typer module.
daemon start runs standalone in both foreground and --background modes — only the bot/gateway daemon sub-apps are wrapper-only.

Standalone limits

On a pip install praisonai-code-only install:
CommandWorks standalone?Notes
run --help, config, doctorYes
run --output actions "…"YesIn-process Agent
run "…" (default)NoRequires pip install praisonai
chat, codeNoTUI / interactive legacy live in wrapper
daemon start (foreground)Yes
daemon start --backgroundYesSpawns python -m praisonai_code.runtime
Piped stdin (type file.log | praisonai-code run "…")YesWorks on Windows as of 2026-07-07 (PR #2705) via a stat-based pipe classifier; also supports Get-Content file.log | praisonai-code run "…". Interactive terminals skip the stdin read. See Piped Input.
For full terminal UX (chat, code, default run), install the wrapper: pip install praisonai.

Wrapper-command loading

Wrapper-only commands (bot, gateway, pairing, identity, onboard, kanban, dashboard, claw, daemon) are Typer sub-apps whose implementations live in the praisonai wrapper. When you install praisonai-code standalone, these commands are not listed in --help and are not resolvable — get_command() returns None instead of loading a module that doesn’t exist in praisonai_code.
# Standalone install, wrapper-only command
$ pip install praisonai-code
$ praisonai-code bot --help
Error: No such command 'bot'.
To use bot, gateway, pairing, identity, onboard, kanban, dashboard, claw, or daemon, install the full wrapper:
pip install praisonai

Configuration and environment

Variable / commandBehaviour
LOGLEVELRead on CLI entry via configure_cli_logging (default WARNING). Controls root log verbosity for standalone runs.
praisonai-code version checkCompares your installed version with PyPI (https://pypi.org/pypi/praisonai-code/json).

Version commands

praisonai-code version
Shows the full version panel:
PraisonAI Code: 0.0.4
PraisonAI Wrapper: 1.x.x   ← only shown when praisonai is installed
PraisonAI Agents: 1.6.x
Python: 3.12.x
praisonai-code version --json
Returns structured JSON:
{
  "praisonai-code": "0.0.4",
  "praisonai": "1.x.x",
  "praisonaiagents": "1.6.x",
  "python": "3.12.x"
}
The praisonai key is omitted when the wrapper is not installed.
praisonai-code version check
Queries PyPI and returns update status:
{
  "current": "0.0.4",
  "latest": "0.0.5",
  "update_available": true
}
praisonai-code version check needs outbound HTTPS to PyPI.

Best Practices

Use praisonai-code when you only need run --output actions, config, doctor, or the warm-runtime daemon — smaller install, no gateway/bot deps.
Install praisonai for interactive chat/code, default conversational run "…", Telegram/Discord/Slack bots, the WebSocket gateway, or kanban/dashboard.
In dev, pip install -e src/praisonai-agents && pip install -e src/praisonai-code && pip install -e src/praisonai (this exact order) — matches the release publish order in pypi-release.yml.
from praisonai import AgentOS and from praisonai import AgentApp both work — AgentApp is a backward-compat silent alias for AgentOS. No deprecation warning is emitted.

Choose your install

Compare full wrapper, code-only, and SDK installs

Architecture

Three-package layout and dependency direction