Repository navigation
Home
Fleet RLM Lite is a Python agent runtime for working with files, executing code, and delegating investigations to child agents. It combines DSPy reasoning, Daytona sandbox execution, PostgreSQL persistence, and MLflow observability behind a streaming terminal client.
The current runtime lives entirely under src/fleet_rlm/. It is not the former multi-package
backend or TypeScript terminal application. If you remember a Node-based TUI, a multi-package
workspace, or separate RLM worker services, those are gone; the current code is a single compact
Python package.
A user types a task into the terminal client. The client sends it to a FastAPI server, which runs one Turn of an adaptive DSPy program. Depending on how the request is routed, the model answers directly, runs a bounded Flex workflow, or enters the primary RLM loop that writes Python, executes it in a Daytona sandbox, observes results, and iterates until it submits an answer. Large inputs stay in workspace files: the model receives paths, sizes, digests, and bounded previews, then explores the data through code. Sessions keep history, files, reviewed memory, and runtime selections across restarts.
Terminal client ── HTTP / SSE ──> FastAPI ──> DSPy Turn program
│ │
│ └── Daytona: generated Python,
│ root and child sandboxes
├── PostgreSQL: durable session state
└── MLflow: traces and evaluation
-
Operators run
uv run fleet cliand work interactively: attach files, ask questions, inspect artifacts, review traces, and label examples for optimization. -
Evaluators and maintainers use
fleet evalandfleet optimizeto build curated datasets, score Turns with the sharedfleet_metric, and gate GEPA candidate programs. - Integrators talk to the FastAPI server directly; the HTTP API and SSE stream are documented in HTTP API.
| Route | What runs | Typical use |
|---|---|---|
direct |
Chain-of-thought answer, no code | Greetings, explanations |
flex |
A dspy.Flex module with a Daytona interpreter |
One bounded Python or Skill workflow |
rlm |
dspy.RLM iterative loop with tools and child agents |
Multi-part exploration and delegation |
hybrid mode (the default) lets a triage predictor pick the route per Turn; strict rlm and
flex modes bypass triage. See Hybrid routing and
Routes and signatures.
- Architecture: components, request path, trust boundaries
- Getting started: install, configure, run, test
- Glossary: Turn, Session, namespace, bundle, and other load-bearing terms
- Systems: engine, sandbox, store, session, skills, optimization, terminal
- Features: routing, code-driven reasoning, delegation, GEPA, tracing
- Reference: configuration, data models, dependencies, CLI
These pages describe the code at commit 26e199728 on main (2026-10-20), the first state after
the Fleet RLM Lite refactor merged in PR #623. Every behavioral claim should be traceable to a file
under src/fleet_rlm/; the lore page records what came before.
Generated by Factory