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.tools= list; PraisonAI injects file, web, memory, and schedule tools automatically.
Injected Tools
Optional: browser (--browser)
Add a local Chromium via --browser β see Bot Browser Automation.
The browser tool is not in the auto-inject set (opt-in only) because it requires
praisonai-browser[playwright] and downloads Chromium.Quick Start
1
Zero-Config Bot
2
Custom Tool Selection
How It Works
Smart defaults activate when:Configuration Options
Complete Default Tools List
On a bot turn,
clarify delivers the question to the user. Choices render as native reply buttons via MessagePresentation.question(), and the agent ends its turn restating the question instead of guessing. See Clarify Tool β Bot Usage.Opt-In Tools (not auto-injected)
These tools are functional but require explicit opt-in:Smart Defaults Configuration
Tool Approval Settings
Setting
channels.<platform>.allow_shell: true on a gateway channel additionally injects execute_command into the agentβs tool list, lifts the tool from the deny-list, and appends a one-line permission grant to agent.instructions. On shell-enabled channels with routing rules, routed agents inherit execute_command too β the shell setup is re-applied per routed agent, cloned and cached per (channel, agent). On externally-bound gateways or channels with a group_policy, auto_approve_shell: true is downgraded to require approval unless auto_approve_shell_acknowledge_exposed: true opts in β see Bot Shell Execution β Exposure-aware auto-approval.Common Patterns
Workspace-Aware Filtering
Development vs Production
Tool Categories by Use Case
Best Practices
Trust Smart Defaults
Trust Smart Defaults
In most cases, let the bot auto-inject tools rather than specifying manually. Smart defaults adapt based on workspace configuration and provide the safest possible tool suite.
Workspace Security
Workspace Security
Destructive file tools (
write_file, edit_file, skill_manage) are automatically filtered out unless a workspace is configured. This ensures bots are safe by construction.Development Testing
Development Testing
Use
auto_approve_tools=False during development to see exactly which tools your bot is calling. Switch to auto_approve_tools=True for production deployments.Explicit Override
Explicit Override
To disable auto-injection, pass an explicit empty list:
Agent(tools=[]). Passing no tools parameter triggers smart defaults.Troubleshooting
My bot only has a few tools, not the 20+ listed here
My bot only has a few tools, not the 20+ listed here
If your bot is missing most default tools (only sees a small fallback set), upgrade to the version that includes PR #2004. A regression caused
ToolResolver to be imported from the wrong module, which silently dropped the full default toolset and left only a small hardcoded fallback.Verify the fix is active by checking that imports resolve from praisonai.tool_resolver, not praisonaiagents.tools.Related
Workspace
How workspace containment enables safe file tools
BotOS
Multi-platform bot orchestration concepts

