This page summarises the expected install and runtime shape for PraisonAIUI in both modes.
| Mode | Package install | Runtime dependency | Behaviour |
| --- | --- | --- | --- |
| Standalone UI | pip install praisonaiui | Optional SDK packages absent | Uses built-in local managers and fallbacks |
pip install praisonaiui
| Integrated (PraisonAI) | pip install praisonaiui praisonai praisonaiagents | SDK and wrapper available | Uses injected backends and SDK-aware managers |
pip install praisonaiui praisonai praisonaiagents
When hosted via praisonai.integration.host_app.configure_host(), the wrapper calls praisonaiui.backends.set_backend() for:
praisonai.integration.host_app.configure_host()
praisonaiui.backends.set_backend()
| Backend key | Feature area |
| --- | --- |
| hooks | Hooks dashboard |
hooks
| workflows | Workflow runs |
workflows
| usage_query / usage_sink | Usage analytics |
usage_query
usage_sink
| approvals_pending / approvals_policies | HITL approvals |
approvals_pending
approvals_policies
| jobs_store / jobs_executor | Async jobs (optional) |
jobs_store
jobs_executor
| channel_bot | Channel bots (optional) |
channel_bot
| tool_resolver | Agent tool name resolution (optional) |
tool_resolver
Detect integrated mode in code: praisonaiui.backends.is_integrated_mode().
praisonaiui.backends.is_integrated_mode()
These features work standalone with in-memory stores. Health responses include sdk_gap: true:
sdk_gap: true
| Feature | Gap | Standalone behaviour |
| --- | --- | --- |
| nodes | No cluster API in praisonaiagents | In-memory node registry |
| auth | No SDK auth module | In-memory API keys / sessions |
| channels | Bot runtime via praisonai wrapper | In-memory channel registry; bots need praisonai[bot] |
praisonai[bot]
| jobs | Mock success only when standalone and agent missing | Integrated mode fails job instead of fake success |
| realtime | WebRTC needs OPENAI_API_KEY | Mock stream standalone; degraded error when integrated without key |
OPENAI_API_KEY
| media / code | SDK paths optional | status: simulated standalone; status: degraded integrated on failure |
status: simulated
status: degraded
View gaps in the dashboard sidebar footer (GET /api/health → sdk_gaps array).
GET /api/health
sdk_gaps
Use standalone mode for local UI-only workflows. Use integrated mode when you need shared runtime state with PraisonAI agents, tools, tracing, approvals, and schedules.
See also backend-integration.md and praisonai-package-integration.md.