Quick Start
Enable External Agent
Open the sidebar settings — toggles for installed CLIs appear automatically. Flip the toggle for your desired external agent:
- Claude Code: Enable for file edits and coding tasks
- Gemini CLI: Enable for analysis and search tasks
- Codex CLI: Enable for refactoring and optimization
- Cursor CLI: Enable for IDE-style development tasks
How It Works
| Component | Purpose | Features |
|---|---|---|
| UI Toggles | Enable/disable external agents | Auto-detection, persistence, per-entry-point |
| External Agent Tools | Bridge to CLI tools | Streaming, workspace context, error handling |
| CLI Integration | Execute external commands | Subprocess management, JSON output, session continuation |
Which Agent for Which Job
Per-Entry-Point Toggles
| Entry point | How toggles appear | Persistence | Workspace |
|---|---|---|---|
praisonai ui | aiui checkboxes (auto-shown for installed CLIs) | session | PRAISONAI_WORKSPACE |
praisonai ui chat | Chainlit Switch widgets in sidebar | persistent (save_setting) | PRAISONAI_WORKSPACE |
praisonai ui code | Chainlit Switch widgets (replaces old single Claude toggle) | persistent (save_setting) | PRAISONAI_CODE_REPO_PATH |
praisonai ui agents | Chainlit Switch widgets per AgentTeam member | persistent + per-agent merging with YAML tools | PRAISONAI_WORKSPACE |
Auto-Availability Detection
Only CLIs that resolve viashutil.which(...) show a toggle. The CLI → command mapping is:
claude_enabled→claudecommandgemini_enabled→geminicommandcodex_enabled→codexcommandcursor_enabled→cursor-agentcommand
Toggle IDs and Labels
| Toggle ID | Label | CLI Command | Integration Class |
|---|---|---|---|
claude_enabled | ”Claude Code (coding, file edits)“ | claude | ClaudeCodeIntegration |
gemini_enabled | ”Gemini CLI (analysis, search)“ | gemini | GeminiCLIIntegration |
codex_enabled | ”Codex CLI (refactoring)“ | codex | CodexCLIIntegration |
cursor_enabled | ”Cursor CLI (IDE tasks)“ | cursor-agent | CursorCLIIntegration |
Backward Compatibility: The legacy
claude_code_enabled setting and PRAISONAI_CLAUDECODE_ENABLED=true environment variable still work and auto-migrate to claude_enabled on next save. No user action required.External Agent Tools Implementation
When you enable an external agent toggle, the UI automatically adds the corresponding tool to your agent:- Workspace Context: Operate against
PRAISONAI_WORKSPACEorPRAISONAI_CODE_REPO_PATH - Streaming Output: Real-time feedback from external CLIs
- Error Handling: Graceful fallbacks when external CLIs fail
- Session Management: Continuation across multiple requests
Dynamic Instructions (Code UI)
Inpraisonai ui code, enabled external agents also modify the agent’s instructions dynamically:
Best Practices
Which Agent for Which Task
Which Agent for Which Task
Choose external agents based on task requirements:
- Claude Code: File edits, refactoring, adding features
- Gemini CLI: Code analysis, documentation, search
- Codex CLI: Performance optimization, code quality
- Cursor CLI: IDE-integrated development workflows
Combining Multiple Toggles
Combining Multiple Toggles
Enable multiple external agents for comprehensive development support:
Toggle Persistence and Migration
Toggle Persistence and Migration
Toggle settings persist automatically:
- Chat/Code/Agents UI: Saved to Chainlit settings, persist across sessions
- Main UI: Session-based, reset on restart
- Migration: Legacy
claude_code_enabledauto-migrates toclaude_enabled
CLI Not Showing Up Troubleshooting
CLI Not Showing Up Troubleshooting
If a CLI toggle doesn’t appear:
- Check Installation: Ensure CLI is installed and on PATH
- Verify Command: Test CLI command manually in terminal
- Restart UI: Refresh browser or restart PraisonAI UI
- Check Logs: Look for integration errors in console
Related
External CLI Integrations (Python API)
Use external agents programmatically in your code
External Agents (Code)
Python API reference for external agent integrations

