Bot platform adapters now ship in the
praisonai-bot package. praisonai bot serve still works exactly as documented here; for a standalone install see praisonai-bot Migration.Quick Start
1
Programmatic Registration
Register a bot platform directly in your code:
2
Entry-point Plugin
Create a pip-installable plugin using After installation, use the bot platform:
pyproject.toml:How It Works
The bot platform registry provides a central point for managing bot implementations:Configuration
The bot platform registry supports both programmatic and entry-point registration:Built-in Platforms
PraisonAI includes these built-in bot platforms:telegram- Telegram bot integrationdiscord- Discord bot integrationslack- Slack bot integrationwhatsapp- WhatsApp bot integrationlinear- Linear issues integrationemail- Email bot integrationagentmail- AgentMail integration
Entry-point Groups
Both groups are scanned by
BotPlatformRegistry on startup. A connector that would shadow a built-in platform is skipped with a warning.
Discovery via entry points (praisonai.channels)
Plugin channels are accepted on both
praisonai bot serve and praisonai gateway start (from PR #3019 / PraisonAI 2026-07-14). Older gateway builds only accepted the built-in six platforms at runtime and silently warned on plugin platforms.praisonai.channels entry-point group is the idiomatic way to distribute a bot connector as a pip-installable package. Once installed, the platform is available with no extra Python code:
pip install praisonai-irc:
praisonai.channels is preferred over praisonai.bots for new packages. Both entry-point groups continue to work.Plugin channel on the gateway runtime
Register a plugin platform, then reference it ingateway.yaml:
Common Patterns
Declare Platform Capabilities
Override a Built-in Platform
Registry uses last-write-wins with lower-cased keys:Lazy Heavy Imports
Follow the pattern used by built-ins to avoid import-time failures:Multi-tenant Isolation
Construct your ownBotPlatformRegistry to avoid leaking between tenants:
Best Practices
Use Lazy Imports
Use Lazy Imports
Never import heavy networking SDKs at module top level:
Implement Proper Protocol
Implement Proper Protocol
Follow the expected bot lifecycle pattern:
Handle Errors Gracefully
Handle Errors Gracefully
Use logging instead of raising on initialization:
Related
Bot Platform Capabilities
Declare streaming, chunking, and rate-limit behaviour
Framework Adapter Plugins
Learn about extending PraisonAI with custom execution frameworks
Messaging Channels Strategy
See our roadmap for supported messaging platforms

