# imbue-ai/mngr architecture

> Architecture diagram of the GitHub repository imbue-ai/mngr, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-10-01). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/imbue-ai/mngr
- Repository: https://github.com/imbue-ai/mngr

## Overview

mngr is a Unix-style CLI for creating, managing, and connecting to coding agents across local and remote hosts. The main workflow is a user invoking CLI commands, which load the plugin system and operate on agents through provider-backed compute; users can then connect, message, transfer work, or snapshot and clone agent state. The repository also includes an SSH-forwarding plugin and provider implementations. Edges are limited to relationships stated in the README or visible in the supplied source index and excerpts; unsampled internals are not assumed.

Main entry points: [`libs/mngr/imbue/mngr`](https://github.com/imbue-ai/mngr/tree/main/libs/mngr/imbue/mngr) (Agent Lifecycle), [`libs/mngr_vps/imbue/mngr_vps/vps_client.py`](https://github.com/imbue-ai/mngr/blob/main/libs/mngr_vps/imbue/mngr_vps/vps_client.py) (VPS Provisioning), [`libs/mngr/imbue/mngr/main.py`](https://github.com/imbue-ai/mngr/blob/main/libs/mngr/imbue/mngr/main.py) (mngr CLI), [`libs/mngr_forward/imbue/mngr_forward/server.py`](https://github.com/imbue-ai/mngr/blob/main/libs/mngr_forward/imbue/mngr_forward/server.py) (Forward Server)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_cli["CLI and Plugins"]
  node_cli["mngr CLI<br/>[main.py]"]
  node_plugins["Plugin Manager<br/>[plugin_manager.py]"]
  node_commands["CLI Commands"]
end

subgraph group_agent["Agent Operations"]
  node_agent_runtime["Agent Lifecycle"]
  node_agent_types["Agent Plugins<br/>[plugin.py]"]
  node_codex["Codex Client"]
  node_autocompact["Auto-compact<br/>[manager.py]"]
end

subgraph group_providers["Compute Providers"]
  node_vps["VPS Provisioning<br/>[vps_client.py]"]
  node_aws["AWS Provider<br/>[client.py]"]
  node_azure["Azure Provider<br/>[client.py]"]
  node_gcp["GCP Provider<br/>[client.py]"]
  node_imbue_cloud["Imbue Cloud<br/>[client.py]"]
end

subgraph group_connectivity["Remote Access"]
  node_forward["Forward Server<br/>[server.py]"]
  node_streams["Agent Event Streams<br/>[stream_manager.py]"]
  node_ssh["SSH Tunnels<br/>[ssh_tunnel.py]"]
end

node_user(("User"))
node_agent_host["Agent Hosts"]
node_coding_agent["Coding Agent"]

node_user -->|"runs commands"| node_cli
node_cli -->|"dispatches to"| node_commands
node_cli -->|"loads plugins"| node_plugins
node_plugins -->|"loads agent plugins"| node_agent_types
node_commands -.->|"manages agents"| node_agent_runtime
node_agent_runtime -->|"runs on"| node_agent_host
node_agent_runtime -->|"starts and manages"| node_coding_agent
node_agent_types -.->|"integrates agent"| node_coding_agent
node_autocompact -->|"integrates with"| node_agent_runtime
node_agent_host -.->|"provisioned by"| node_vps
node_aws -->|"implements client"| node_vps
node_azure -->|"implements client"| node_vps
node_gcp -->|"implements client"| node_vps
node_imbue_cloud -.->|"provides compute"| node_agent_host
node_user -->|"connects remotely"| node_forward
node_forward -->|"manages streams"| node_streams
node_forward -->|"uses tunnels"| node_ssh
node_streams -->|"observes agents"| node_agent_runtime

click node_cli "https://github.com/imbue-ai/mngr/blob/main/libs/mngr/imbue/mngr/main.py"
click node_plugins "https://github.com/imbue-ai/mngr/blob/main/libs/mngr/imbue/mngr/cli/plugin_manager.py"
click node_commands "https://github.com/imbue-ai/mngr/tree/main/libs/mngr/imbue/mngr/cli"
click node_agent_runtime "https://github.com/imbue-ai/mngr/tree/main/libs/mngr/imbue/mngr"
click node_agent_types "https://github.com/imbue-ai/mngr/blob/main/libs/mngr_claude/imbue/mngr_claude/plugin.py"
click node_codex "https://github.com/imbue-ai/mngr/blob/main/libs/mngr_codex/imbue/mngr_codex/app_server_client.py"
click node_autocompact "https://github.com/imbue-ai/mngr/blob/main/libs/mngr_autocompact/imbue/mngr_autocompact/manager.py"
click node_vps "https://github.com/imbue-ai/mngr/blob/main/libs/mngr_vps/imbue/mngr_vps/vps_client.py"
click node_aws "https://github.com/imbue-ai/mngr/blob/main/libs/mngr_aws/imbue/mngr_aws/client.py"
click node_azure "https://github.com/imbue-ai/mngr/blob/main/libs/mngr_azure/imbue/mngr_azure/client.py"
click node_gcp "https://github.com/imbue-ai/mngr/blob/main/libs/mngr_gcp/imbue/mngr_gcp/client.py"
click node_imbue_cloud "https://github.com/imbue-ai/mngr/blob/main/libs/mngr_imbue_cloud/imbue/mngr_imbue_cloud/connector/client.py"
click node_forward "https://github.com/imbue-ai/mngr/blob/main/libs/mngr_forward/imbue/mngr_forward/server.py"
click node_streams "https://github.com/imbue-ai/mngr/blob/main/libs/mngr_forward/imbue/mngr_forward/stream_manager.py"
click node_ssh "https://github.com/imbue-ai/mngr/blob/main/libs/mngr_forward/imbue/mngr_forward/ssh_tunnel.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_cli,node_plugins,node_commands,node_user toneBlue
class node_agent_runtime,node_agent_types,node_codex,node_autocompact toneAmber
class node_vps,node_aws,node_azure,node_gcp,node_imbue_cloud toneMint
class node_forward,node_streams,node_ssh toneRose
class node_agent_host,node_coding_agent toneIndigo
```

## Components

### CLI and Plugins

- [mngr CLI](https://github.com/imbue-ai/mngr/blob/main/libs/mngr/imbue/mngr/main.py): `libs/mngr/imbue/mngr/main.py`
- [Plugin Manager](https://github.com/imbue-ai/mngr/blob/main/libs/mngr/imbue/mngr/cli/plugin_manager.py): `libs/mngr/imbue/mngr/cli/plugin_manager.py`
- [CLI Commands](https://github.com/imbue-ai/mngr/tree/main/libs/mngr/imbue/mngr/cli): `libs/mngr/imbue/mngr/cli`

### Agent Operations

- [Agent Lifecycle](https://github.com/imbue-ai/mngr/tree/main/libs/mngr/imbue/mngr): `libs/mngr/imbue/mngr`
- [Agent Plugins](https://github.com/imbue-ai/mngr/blob/main/libs/mngr_claude/imbue/mngr_claude/plugin.py): `libs/mngr_claude/imbue/mngr_claude/plugin.py`
- [Codex Client](https://github.com/imbue-ai/mngr/blob/main/libs/mngr_codex/imbue/mngr_codex/app_server_client.py): `libs/mngr_codex/imbue/mngr_codex/app_server_client.py`
- [Auto-compact](https://github.com/imbue-ai/mngr/blob/main/libs/mngr_autocompact/imbue/mngr_autocompact/manager.py): `libs/mngr_autocompact/imbue/mngr_autocompact/manager.py`

### Compute Providers

- [VPS Provisioning](https://github.com/imbue-ai/mngr/blob/main/libs/mngr_vps/imbue/mngr_vps/vps_client.py): `libs/mngr_vps/imbue/mngr_vps/vps_client.py`
- [AWS Provider](https://github.com/imbue-ai/mngr/blob/main/libs/mngr_aws/imbue/mngr_aws/client.py): `libs/mngr_aws/imbue/mngr_aws/client.py`
- [Azure Provider](https://github.com/imbue-ai/mngr/blob/main/libs/mngr_azure/imbue/mngr_azure/client.py): `libs/mngr_azure/imbue/mngr_azure/client.py`
- [GCP Provider](https://github.com/imbue-ai/mngr/blob/main/libs/mngr_gcp/imbue/mngr_gcp/client.py): `libs/mngr_gcp/imbue/mngr_gcp/client.py`
- [Imbue Cloud](https://github.com/imbue-ai/mngr/blob/main/libs/mngr_imbue_cloud/imbue/mngr_imbue_cloud/connector/client.py): `libs/mngr_imbue_cloud/imbue/mngr_imbue_cloud/connector/client.py`

### Remote Access

- [Forward Server](https://github.com/imbue-ai/mngr/blob/main/libs/mngr_forward/imbue/mngr_forward/server.py): `libs/mngr_forward/imbue/mngr_forward/server.py`
- [Agent Event Streams](https://github.com/imbue-ai/mngr/blob/main/libs/mngr_forward/imbue/mngr_forward/stream_manager.py): `libs/mngr_forward/imbue/mngr_forward/stream_manager.py`
- [SSH Tunnels](https://github.com/imbue-ai/mngr/blob/main/libs/mngr_forward/imbue/mngr_forward/ssh_tunnel.py): `libs/mngr_forward/imbue/mngr_forward/ssh_tunnel.py`

### Other components

- **User**
- **Agent Hosts**
- **Coding Agent**

## Connections

- User → mngr CLI: runs commands
- mngr CLI → CLI Commands: dispatches to (evidence: `libs/mngr/imbue/mngr/main.py`)
- mngr CLI → Plugin Manager: loads plugins (evidence: `libs/mngr/imbue/mngr/main.py`)
- Plugin Manager → Agent Plugins: loads agent plugins (evidence: `libs/mngr/imbue/mngr/cli/plugin_manager.py`)
- CLI Commands → Agent Lifecycle: manages agents (evidence: `libs/mngr/imbue/mngr/cli/plugin_manager.py`)
- Agent Lifecycle → Agent Hosts: runs on
- Agent Lifecycle → Coding Agent: starts and manages
- Agent Plugins → Coding Agent: integrates agent
- Auto-compact → Agent Lifecycle: integrates with (evidence: `libs/mngr_autocompact/imbue/mngr_autocompact/manager.py`)
- Agent Hosts → VPS Provisioning: provisioned by
- AWS Provider → VPS Provisioning: implements client (evidence: `libs/mngr_aws/imbue/mngr_aws/client.py`)
- Azure Provider → VPS Provisioning: implements client (evidence: `libs/mngr_azure/imbue/mngr_azure/client.py`)
- GCP Provider → VPS Provisioning: implements client (evidence: `libs/mngr_gcp/imbue/mngr_gcp/client.py`)
- Imbue Cloud → Agent Hosts: provides compute
- User → Forward Server: connects remotely
- Forward Server → Agent Event Streams: manages streams (evidence: `libs/mngr_forward/imbue/mngr_forward/server.py`)
- Forward Server → SSH Tunnels: uses tunnels (evidence: `libs/mngr_forward/imbue/mngr_forward/server.py`)
- Agent Event Streams → Agent Lifecycle: observes agents (evidence: `libs/mngr_forward/imbue/mngr_forward/stream_manager.py`)
