How litellm-labs/litellm-agent-control-plane works
LiteLLM Agent Control Plane provides one UI and API for creating and running agents on multiple runtimes. The main workflow is to configure an agent and its tools or skills, choose a runtime, then run it through a persistent session and inspect the result. The repository also exposes management for schedules, memory, rules, approvals, files, channels, and MCP servers. The excerpts show top-level routing and session persistence; several domain links are documented or indicated by routes, but their handler internals were not sampled.
Main entry points: managed_agents/routes.rs Agent routes · http/routes.rs HTTP routing · sessions.rs Session handling · mod.rs Managed-agent database
Components 25
User interface
- Control UI
src/ui/src/app/agents/new/page.tsx
Gateway API
- Service startup
src/main.rs - HTTP routing
src/http/routes.rs - MCP services
src/http/mcp_registry/tools.rs
Agent management
- Agent routes
src/http/managed_agents/routes.rs - Agent registry
src/http/managed_agents/registry/create.rs - Schedules
src/http/managed_agents/routines/trigger.rs - Rules
src/http/managed_agents/rules/create.rs - Skills
src/http/managed_agents/skills/create.rs - Agent memory
src/http/managed_agents/memory/store.rs - Agent files
src/http/managed_agents/files/upsert.rs - Inbox approvals
src/http/managed_agents/inbox/approvals.rs - Chat channels
src/http/managed_agents/slack/events.rs
Runtime execution
- Session handling
src/http/sessions.rs - Session persistence
src/http/sessions/storage.rs - Agent SDK
src/sdk/agents/client.rs - Provider routing
src/sdk/routing.rs - Runtime adapters
src/sdk/providers/base/runtime.rs - OpenCode template
templates/opencode/src/app.mjs
State and integrations
- Managed-agent database
src/db/managed_agents/mod.rs - File repository
src/db/managed_agents/files/repository.rs - Message repository
src/db/managed_agents/messages/mod.rs - MCP upstreams
src/mcp/upstream.rs
Other components
- Developer
- Agent runtime
Connections 30
- Developer → Control UI: configures agents
- Control UI → HTTP routing: sends API requests
- Service startup → HTTP routing: serves routes
src/main.rs - HTTP routing → Agent routes: mounts routes
src/http/routes.rs - Agent routes → Agent registry: routes registry calls
src/http/managed_agents/routes.rs - Agent routes → Schedules: routes schedule calls
src/http/managed_agents/routes.rs - Agent routes → Rules: routes rule calls
src/http/managed_agents/routes.rs - Agent routes → Skills: routes skill calls
src/http/managed_agents/routes.rs - Agent routes → Agent memory: routes memory calls
src/http/managed_agents/routes.rs - Agent routes → Agent files: routes file calls
src/http/managed_agents/routes.rs - Agent routes → Inbox approvals: routes inbox calls
src/http/managed_agents/routes.rs - Agent routes → Chat channels: routes channel events
src/http/managed_agents/routes.rs - HTTP routing → Session handling: routes session calls
src/http/routes.rs - Session handling → Session persistence: persists session data
- Session persistence → Message repository: appends messages
src/http/sessions/storage.rs - Session persistence → Managed-agent database: reads session records
src/http/sessions/storage.rs - Agent registry → Managed-agent database: stores agent records
- Schedules → Managed-agent database: stores schedules
- Agent files → File repository: persists files
- File repository → Managed-agent database: writes file rows
src/db/managed_agents/files/repository.rs - Developer → Session handling: runs an agent
- Session handling → Agent SDK: invokes runtime
- Agent SDK → Provider routing: selects provider
src/sdk/agents/client.rs - Provider routing → Runtime adapters: dispatches requests
src/sdk/routing.rs - Runtime adapters → Agent runtime: calls runtime
- Agent runtime → Session handling: returns run events
- OpenCode template → Agent runtime: serves runtime API
- HTTP routing → MCP services: mounts MCP routes
src/http/routes.rs - MCP services → MCP upstreams: proxies tool calls
- Developer → MCP services: discovers tools