# DeepAgentsApp

> **Class** in `deepagents_cli`

📖 [View in docs](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp)

Main Textual application for deepagents-cli.

## Signature

```python
DeepAgentsApp(
    self,
    *,
    agent: Pregel | None = None,
    assistant_id: str | None = None,
    backend: CompositeBackend | None = None,
    auto_approve: bool = False,
    cwd: str | Path | None = None,
    thread_id: str | None = None,
    resume_thread: str | None = None,
    initial_prompt: str | None = None,
    initial_skill: str | None = None,
    mcp_server_info: list[MCPServerInfo] | None = None,
    profile_override: dict[str, Any] | None = None,
    server_proc: ServerProcess | None = None,
    server_kwargs: dict[str, Any] | None = None,
    mcp_preload_kwargs: dict[str, Any] | None = None,
    model_kwargs: dict[str, Any] | None = None,
    **kwargs: Any = {},
)
```

## Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `agent` | `Pregel \| None` | No | Pre-configured LangGraph agent, or `None` when server startup is deferred via `server_kwargs`. (default: `None`) |
| `assistant_id` | `str \| None` | No | Agent identifier for memory storage (default: `None`) |
| `backend` | `CompositeBackend \| None` | No | Backend for file operations (default: `None`) |
| `auto_approve` | `bool` | No | Whether to start with auto-approve enabled (default: `False`) |
| `cwd` | `str \| Path \| None` | No | Current working directory to display (default: `None`) |
| `thread_id` | `str \| None` | No | Thread ID for the session.  `None` when `resume_thread` is provided (resolved asynchronously). (default: `None`) |
| `resume_thread` | `str \| None` | No | Raw resume intent from `-r` flag.  `'__MOST_RECENT__'` for bare `-r`, a thread ID string for `-r <id>`, or `None` for new sessions.  Resolved via `_resolve_resume_thread` during `_start_server_background`.  Requires `server_kwargs` to be set; ignored otherwise. (default: `None`) |
| `initial_prompt` | `str \| None` | No | Optional prompt to auto-submit when session starts (default: `None`) |
| `initial_skill` | `str \| None` | No | Optional skill name to invoke when session starts. (default: `None`) |
| `mcp_server_info` | `list[MCPServerInfo] \| None` | No | MCP server metadata for the `/mcp` viewer. (default: `None`) |
| `profile_override` | `dict[str, Any] \| None` | No | Extra profile fields from `--profile-override`, retained so later profile-aware behavior stays consistent with the CLI override, including model selection details, offload budget display, and on-demand `create_model()` calls such as `/offload`. (default: `None`) |
| `server_proc` | `ServerProcess \| None` | No | LangGraph server process for the interactive session. (default: `None`) |
| `server_kwargs` | `dict[str, Any] \| None` | No | When provided, server startup is deferred.  The app shows a "Connecting..." state and starts the server in the background using these kwargs for `start_server_and_get_agent`. (default: `None`) |
| `mcp_preload_kwargs` | `dict[str, Any] \| None` | No | Kwargs for `_preload_session_mcp_server_info`, run concurrently with server startup when `server_kwargs` is set. (default: `None`) |
| `model_kwargs` | `dict[str, Any] \| None` | No | Kwargs for deferred `create_model()`.  When provided, model creation runs in a background worker after first paint instead of blocking startup. (default: `None`) |
| `**kwargs` | `Any` | No | Additional arguments passed to parent (default: `{}`) |

## Extends

- `App`

## Constructors

```python
__init__(
    self,
    *,
    agent: Pregel | None = None,
    assistant_id: str | None = None,
    backend: CompositeBackend | None = None,
    auto_approve: bool = False,
    cwd: str | Path | None = None,
    thread_id: str | None = None,
    resume_thread: str | None = None,
    initial_prompt: str | None = None,
    initial_skill: str | None = None,
    mcp_server_info: list[MCPServerInfo] | None = None,
    profile_override: dict[str, Any] | None = None,
    server_proc: ServerProcess | None = None,
    server_kwargs: dict[str, Any] | None = None,
    mcp_preload_kwargs: dict[str, Any] | None = None,
    model_kwargs: dict[str, Any] | None = None,
    **kwargs: Any = {},
) -> None
```

| Name | Type |
|------|------|
| `agent` | `Pregel \| None` |
| `assistant_id` | `str \| None` |
| `backend` | `CompositeBackend \| None` |
| `auto_approve` | `bool` |
| `cwd` | `str \| Path \| None` |
| `thread_id` | `str \| None` |
| `resume_thread` | `str \| None` |
| `initial_prompt` | `str \| None` |
| `initial_skill` | `str \| None` |
| `mcp_server_info` | `list[MCPServerInfo] \| None` |
| `profile_override` | `dict[str, Any] \| None` |
| `server_proc` | `ServerProcess \| None` |
| `server_kwargs` | `dict[str, Any] \| None` |
| `mcp_preload_kwargs` | `dict[str, Any] \| None` |
| `model_kwargs` | `dict[str, Any] \| None` |


## Properties

- `TITLE`
- `CSS_PATH`
- `ENABLE_COMMAND_PALETTE`
- `SCROLL_SENSITIVITY_Y`
- `BINDINGS`
- `theme`

## Methods

- [`get_theme_variable_defaults()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/get_theme_variable_defaults)
- [`compose()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/compose)
- [`on_mount()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_mount)
- [`on_deep_agents_app_server_ready()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_deep_agents_app_server_ready)
- [`on_deep_agents_app_server_start_failed()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_deep_agents_app_server_start_failed)
- [`on_scroll_up()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_scroll_up)
- [`on_ask_user_menu_answered()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_ask_user_menu_answered)
- [`on_ask_user_menu_cancelled()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_ask_user_menu_cancelled)
- [`on_chat_input_submitted()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_chat_input_submitted)
- [`on_chat_input_mode_changed()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_chat_input_mode_changed)
- [`on_chat_input_typing()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_chat_input_typing)
- [`on_approval_menu_decided()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_approval_menu_decided)
- [`action_quit_or_interrupt()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/action_quit_or_interrupt)
- [`action_interrupt()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/action_interrupt)
- [`action_quit_app()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/action_quit_app)
- [`exit()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/exit)
- [`action_toggle_auto_approve()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/action_toggle_auto_approve)
- [`action_toggle_tool_output()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/action_toggle_tool_output)
- [`action_approval_up()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/action_approval_up)
- [`action_approval_down()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/action_approval_down)
- [`action_approval_select()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/action_approval_select)
- [`action_approval_yes()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/action_approval_yes)
- [`action_approval_auto()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/action_approval_auto)
- [`action_approval_no()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/action_approval_no)
- [`action_approval_escape()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/action_approval_escape)
- [`action_open_editor()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/action_open_editor)
- [`on_paste()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_paste)
- [`on_app_focus()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_app_focus)
- [`on_click()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_click)
- [`on_mouse_up()`](https://reference.langchain.com/python/deepagents-cli/app/DeepAgentsApp/on_mouse_up)

---

[View source on GitHub](https://github.com/langchain-ai/deepagents/blob/a9e6e4f7ad7fe161dd9affc3d74bb19784aca70b/libs/cli/deepagents_cli/app.py#L424)