> ## Documentation Index
> Fetch the complete documentation index at: https://praison.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# PraisonAI UI

> Launch a clean, distraction-free chat interface for your PraisonAI agents.

PraisonAI UI provides a streamlined, single-page chat experience powered by `praisonaiui`. It removes the complex sidebars and admin panels found in [PraisonAI Claw](/docs/docs/ui/claw) to focus entirely on conversation and agent interaction.

## Quick Start

<Steps>
  <Step title="Install">
    Install the UI package:

    ```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    pip install "praisonai[ui]"
    ```
  </Step>

  <Step title="Launch">
    Start the clean chat interface:

    ```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    praisonai ui
    ```

    The UI will automatically start on `http://localhost:8081` and load the default chat application.
  </Step>
</Steps>

## Features

* **Distraction-Free:** No sidebars, no complex configuration pages—just chat.
* **Customizable:** Provide your own `app.py` or `agents.yaml` file to define custom agents or tasks.
* **Auto-Reload:** Supports developer-friendly dynamic reloading.
* **Host Integration:** Embed directly in your applications using Pattern B integration.

## Run in Your Own Host

Integrate PraisonAI UI directly into your Python application:

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
from praisonai.integration import build_host_app

# Create host app with UI integration
app = build_host_app(
    title="My Agent App",
    pages=["chat", "agents", "sessions"],
    agents=[{
        "name": "Assistant",
        "instructions": "You are a helpful assistant",
        "llm": "gpt-4o"
    }]
)

# Run with uvicorn, gunicorn, or any ASGI server
# uvicorn main:app --host 0.0.0.0 --port 8000
```

### Legacy Mode

`praisonai ui` now uses `configure_host()` internally with configurable `style` and `context_paths` options. For the old callback-only behavior:

```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
export PRAISONAI_HOST_LEGACY=1
praisonai ui
```

This disables provider wiring and uses only `@aiui.reply` callbacks.

See [Host Integration](/docs/docs/features/host-integration) for complete integration patterns.

## External Agents

The PraisonAI UI automatically detects installed external CLI tools and shows checkboxes for available agents. When working with `AgentTeam` configurations, enabled external agents add tools that can be merged with YAML-defined role tools.

### Available Agent Toggles

When external CLIs are installed, the following checkboxes appear automatically:

* **Claude Code**: Enable for file editing and advanced coding tasks
* **Gemini CLI**: Enable for code analysis and search capabilities
* **Codex CLI**: Enable for refactoring and optimization tasks
* **Cursor CLI**: Enable for IDE-integrated development workflows

### AgentTeam Integration

External agent tools merge seamlessly with `AgentTeam` member configurations:

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
# YAML-defined agent with role tools
agent_config = {
    "role": "Senior Developer", 
    "tools": ["file_reader", "web_search"]  # From YAML
}

# External agents add additional tools when toggles are enabled:
# → ["file_reader", "web_search", "claude_code_tool", "gemini_cli_tool"]
```

### Session-Based Settings

* **Persistence**: Session-based toggles reset on browser refresh
* **Auto-Detection**: Only available/installed CLIs show checkboxes
* **Workspace Context**: External agents operate within `PRAISONAI_WORKSPACE`

<Note>
  For comprehensive documentation on external agents across all PraisonAI interfaces, see [External Agents in UI](/docs/docs/features/external-agents-ui).
</Note>

## CLI Options

You can customize how the UI starts using flags:

```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
praisonai ui                        # Chat on port 8081
praisonai ui --port 9000            # Run on custom port 9000
praisonai ui --host 127.0.0.1      # Bind to localhost only
praisonai ui --app my-chat.py       # Load a custom Python config
praisonai ui --reload               # Enable auto-reload on file changes
```

## Custom Chat Applications

By default, the `praisonai ui` command provisions a default chat application located at `~/.praisonai/ui/app.py`.

You can define your own custom chat experience using a standard Python script and pointing the `praisonai ui` command to it:

```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
praisonai ui --app custom-agent.py
```

## Related

<CardGroup cols={2}>
  <Card title="PraisonAI Claw" icon="lobster" href="/docs/docs/ui/claw">
    Need a full administrative dashboard? Use PraisonAI Claw to manage channels, knowledge, and multi-agent memory.
  </Card>

  <Card title="PraisonAI Chat" icon="comments" href="/docs/docs/ui/chat">
    Want to dynamically chat with 100+ LLMs with vision capabilities? Explore PraisonAI Chat.
  </Card>
</CardGroup>
