Agentomatic¶
Drop agents, not code. β‘
The zero-code multi-agent API platform framework.
Turn any Python function, LangGraph workflow, LangChain pipeline, or Deep Agent into a production-ready microservice β with auto-discovery, SSE streaming, thread persistence, visual debugging, and prompt optimization. Every agent, plugin, pipeline, endpoint, and ingestor is automatically callable sync, async, batch, streaming, or as a tracked background task, with a unified task board and a whole-platform status dashboard.
What is Agentomatic?¶
Agentomatic is a production-ready application server for AI agents. Drop a Python folder containing a manifest and an execution function into your agents/ directory β Agentomatic auto-discovers the code and mounts a complete FastAPI application with REST endpoints, SSE streaming, database persistence, middleware, telemetry, and a visual debugging studio.
It works with any agent framework β LangGraph, LangChain, Deep Agent, or raw Python β and requires zero boilerplate configuration.
Why teams choose Agentomatic
- Ship in minutes β go from a Python function to a documented, streaming REST API with one command
- Debug visually β Studio provides graph visualization, time-travel debugging, and live state editing
- Scale with confidence β built-in auth, rate limiting, metrics, telemetry, and PostgreSQL persistence
- Stay framework-agnostic β switch between LangGraph, LangChain, Deep Agent, or plain Python without changing your infrastructure
Features at a Glance¶
Platform¶
-
Auto-Discovery & REST API
Drop a folder with
agent.py(class-based) or__init__.py+manifest(functional) intoagents/. Agentomatic generates 26 REST endpoints per agent automatically β invoke, stream, chat, health, config, threads, feedback, HITL, A2A, and more. -
SSE Streaming
Every agent gets synchronous
/invokeand asynchronous/invoke/streamendpoints. Stream intermediate thoughts, tool calls, and final answers to clients in real-time via Server-Sent Events. -
Multi-Turn Threads
The
/chatendpoint manages conversation history automatically. Pass athread_idand Agentomatic handles context. Swap between MemoryStore, SQLite, or PostgreSQL backends. -
Universal Frameworks
First-class support for LangGraph, LangChain, Deep Agent, and raw Python. The adapter pattern ensures every framework gets the best debugging experience possible.
-
Universal Execution Modes
Every agent, plugin, pipeline, endpoint, and ingestor runs sync, async, batch, streaming, or as a background task β automatically. Poll status/progress, stream events, cancel, and get completion webhooks from a unified
/api/v1/tasksboard. -
Unified Status Dashboard
One
/statusHTML page (and/api/v1/statusJSON) rolls up the health of every agent, plugin, pipeline, endpoint, ingestor, the storage backend, and the task engine into a single control-plane view. -
Ingestion & RAG Packaging
Bring any library (PDFβmarkdown, loaders, splitters, embedders, vector stores); Agentomatic packages it as a discoverable ingestor callable sync/async/as-a-task and usable as a pipeline step. Ops, not implementation.
-
Composable Pipelines
Chain agents, plugins, endpoints, ingestors, transforms, loops, and sub-pipelines with typed data-passing, conditionals, retries, timeouts, rollback/compensation, and optional schema enforcement.
Debugging & Development¶
-
Agentomatic Studio
Visual debugging environment with graph visualization, SSE node streaming, time-travel debugging, state inspection, and live editing. Works with every framework via universal adapters.
-
Chainlit Chat Interface
Built-in conversational testing UI at
/chat. Token-by-token streaming, conversation history, file uploads, and built-in feedback collection β no frontend code needed. -
Powerful CLI
Scaffold agents, run the platform, test interactively, inspect configurations, diagnose environments, optimize prompts, and launch debug interfaces β all from the terminal.
-
Prompt Optimization & Local Training
DSPy-inspired prompt fitting with 5 optimizer strategies (GEPA, MIPRO, rewrite, few-shot bootstrap, param search). Train against a local LLM β no cloud keys, no HTTP server β using the
compile β fit β evaluateML lifecycle.
Production & Operations¶
-
Enterprise Middleware
API key auth, token-bucket rate limiting, Prometheus metrics at
/metrics, structured logging with Loguru, and user feedback capture β toggle globally or per-agent. -
OpenTelemetry Observability
Distributed tracing, spans, and metrics export via the OpenTelemetry SDK. Instrument every request, LLM call, and tool invocation with zero code changes.
-
Prompt Versioning
Track prompt templates in
prompts.json. Hot-reload changes, A/B test versions, inspect history through the API, and run optimization experiments β all without redeploying. -
Container-Ready
Production
Dockerfileanddocker-compose.ymlincluded. Distroless variant available for minimal attack surface. CI/CD-ready with GitHub Actions. -
Per-Agent Connections
Give every agent its own authenticated databases, vector stores (RAG), HTTP services, and any custom backend (redis, mongo, β¦) β declared in
connections.pywith${ENV}secrets and purpose tagging. -
Custom Endpoints
Expose custom APIs that fan out to multiple deployed models over authenticated upstreams (OAuth2), aggregate results, and feed them into pipelines β no router code.
-
Production Control Plane
Inspect agents, endpoints, and connection health at runtime; drain or re-enable individual agents; toggle maintenance mode β via REST or the Studio Control view.
The 3-Line Deploy¶
from agentomatic import AgentPlatform
platform = AgentPlatform.from_folder("agents/") # (1)!
app = platform.build() # (2)!
# Run: uvicorn main:app --reload (3)
- Scans the
agents/directory and auto-discovers all agent packages containing amanifest - Builds a complete FastAPI application with routes, middleware, storage, and Studio
- Visit
http://localhost:8000/docsfor your auto-generated OpenAPI specification
That's it. Every folder inside agents/ becomes a full REST API with streaming, persistence, health checks, and documentation β no router code, no endpoint wiring, no boilerplate.
Platform Architecture¶
graph TB
subgraph Clients["Client Layer"]
CLI["CLI / Terminal"]
REST["REST / curl / SDK"]
STUDIO["Studio UI<br/>(React)"]
CHAT["Chat UI<br/>(Chainlit)"]
end
subgraph Platform["AgentPlatform"]
direction TB
MW["Middleware Stack<br/>(Auth Β· Rate Limit Β· Metrics Β· Logging)"]
RF["Router Factory<br/>(auto-generates 26 routes per agent)"]
REG["Agent Registry<br/>(auto-discovery from agents/ folder)"]
PM["Prompt Manager<br/>(hot-reload Β· versioning Β· optimization)"]
STORE["Storage Backend<br/>(Memory Β· SQLite Β· PostgreSQL)"]
TEL["Telemetry & Feedback<br/>(OpenTelemetry Β· Prometheus)"]
TASK["Task Engine<br/>(async Β· batch Β· progress Β· webhooks)"]
RES["Resources<br/>(Plugins Β· Pipelines Β· Endpoints Β· Ingestors)"]
end
subgraph Agents["Agent Layer"]
A1["Agent A<br/>(LangGraph)"]
A2["Agent B<br/>(LangChain LCEL)"]
A3["Agent C<br/>(Deep Agent)"]
A4["Agent D<br/>(Raw Python)"]
end
subgraph StudioBackend["Studio Backend"]
GI["GraphInspector<br/>(graph topology, nodes, edges)"]
RT["RunTracker<br/>(time-travel, state history)"]
end
CLI --> MW
REST --> MW
STUDIO --> MW
CHAT --> MW
MW --> RF
RF --> REG
REG --> A1
REG --> A2
REG --> A3
REG --> A4
RF --> STORE
RF --> TEL
RF --> TASK
RF --> RES
TASK --> RES
REG --> PM
STUDIO --> StudioBackend
StudioBackend --> REG
How it works
- Agent folders are dropped into the
agents/directory β each containing amanifestand either agraph_fn(for LangGraph/Deep Agent) or anode_fn(for LangChain/custom agents) AgentRegistryauto-discovers and validates every agent at startupRouterFactorygenerates REST endpoints for each agent β invoke, stream, chat, health, config, prompts, and more- Middleware wraps every request with auth, rate limiting, metrics, logging, and telemetry
- Studio connects to the
GraphInspectorandRunTrackerfor visual debugging
How Does It Compare?¶
| Feature | Agentomatic | LangServe | AgentOps | Raw FastAPI |
|---|---|---|---|---|
| Auto-generated REST API | 26 routes/agent | Limited | β | Manual |
| SSE streaming | Native | Built-in | β | Custom |
| Multi-framework support | LG Β· LC Β· DA Β· Py | LC only | Any | Manual |
| Visual debugging (Studio) | Built-in | β | Dashboard | β |
| Chat interface | Chainlit | β | β | β |
| Thread persistence | Memory Β· SQL Β· PG | β | β | Manual |
| Prompt versioning & optimization | DSPy-inspired | β | β | β |
| Auth, rate limiting, metrics | Toggle-based | β | Partial | Manual |
| OpenTelemetry tracing | Auto-instrumented | β | Custom | Manual |
| CLI scaffolding & management | init Β· run Β· demo |
β | β | β |
| Zero config required | Drop folder & go | β | β | β |
Quick Installation¶
Install Extras
Agentomatic uses optional extras to keep the base package light:
| Extra | Includes | Use Case |
|---|---|---|
all |
Everything below | Full development & production |
langgraph |
LangGraph + LangChain Core | LangGraph-based agents |
ollama |
LangChain-Ollama bindings | Local LLM development |
openai |
LangChain-OpenAI bindings | OpenAI API agents |
ui |
Chainlit chat interface | Conversational testing at /chat |
studio |
React-based visual debugger | Graph debugging at /studio/ui/ |
db |
SQLAlchemy + database drivers | SQLite / PostgreSQL persistence |
optimize |
DeepEval, DSPy metrics | Automatic prompt tuning |
metrics |
Prometheus client | /metrics endpoint for monitoring |
cli |
Rich terminal output + questionary | Enhanced CLI experience |
telemetry |
OpenTelemetry SDK | Distributed tracing |
Create Your First Agent in 60 Seconds¶
# 1. Scaffold a chatbot from the built-in template
agentomatic init my_chatbot --template basic
# 2. Launch the platform with Studio
agentomatic run --studio --reload
Your platform is now running:
| Service | URL |
|---|---|
| API Docs (Swagger) | http://localhost:8000/docs |
| Agentomatic Studio | http://localhost:8000/studio/ui/ |
| Agent Endpoint | http://localhost:8000/api/v1/my_chatbot/invoke |
Expected Response:
{
"response": "Hello! I'm your chatbot assistant. How can I help you today?",
"agent_type": "agent-my_chatbot",
"thread_id": "auto-generated-uuid",
"suggestions": [],
"citations": [],
"steps_taken": ["greeting_node"],
"metadata": {},
"duration_ms": 114.2
}
Core Public API¶
The main exports you'll use when building with Agentomatic:
| Export | Module | Purpose |
|---|---|---|
AgentPlatform |
agentomatic |
Main entry point β scans folders, builds FastAPI app |
AgentManifest |
agentomatic |
Dataclass defining agent identity (name, slug, framework) |
BaseAgentState |
agentomatic |
Default LangGraph TypedDict state with reducers |
AgentRegistry |
agentomatic |
Manages registered agents, lookups, and health checks |
PromptManager |
agentomatic |
Hot-reload prompt templates from prompts.json |
GraphInspector |
agentomatic |
Extracts graph topology (nodes, edges) for Studio |
RunTracker |
agentomatic |
Records execution history for time-travel debugging |
MemoryStore |
agentomatic.storage |
In-memory thread storage (development) |
SQLAlchemyStore |
agentomatic.storage |
SQL-based thread storage (production) |
BaseGraphAgent |
agentomatic.agents |
Base class for class-based agents with graph wiring |
History / EarlyStopping / Loss |
agentomatic |
Keras-style training lifecycle primitives for fit() |
SQLAlchemyTaskStore |
agentomatic.tasks |
Durable, multi-worker task persistence backend |
BaseIngestor |
agentomatic.ingestion |
Base class to package any ingestion/RAG job as a resource |
from agentomatic import AgentPlatform, AgentManifest, BaseAgentState
from agentomatic.storage import SQLAlchemyStore
platform = AgentPlatform.from_folder(
"agents/",
store=SQLAlchemyStore("postgresql+asyncpg://user:pass@localhost/agents"),
enable_auth=True,
auth_api_key="my-secret-key",
enable_metrics=True,
enable_studio=True,
)
app = platform.build()
Where to Go Next¶
-
Install, scaffold, and run your first agent in under 60 seconds with tabbed examples for every framework.
-
Step-by-step tutorial building an agent from scratch with annotated code and debugging.
-
Understand the convention-over-configuration folder layout β manifest, graph_fn, node_fn, and more.
-
Visual debugging with graph view, state inspection, time-travel, and live editing.
-
Register and debug Deep Agent workflows with full Studio support.
-
Auto-tune your prompts with DSPy-inspired optimization loops and evaluation metrics.
-
Every command, flag, and workflow documented β
init,run,test,demo,optimize, and more. -
Deep dive into platform internals, request flow, adapters, and design decisions.
-
Build agents as Python classes with typed state, graph wiring, and ML lifecycle.
-
10 copy-paste patterns: RAG, routing, HITL, schemas, prompts, and ML plugins.