AgentOps observability
Trace every agent run as a step tree, inspect prompts and tool calls, replay failures, and roll token cost into one view.

Agent infrastructure for production systems
The runtime and operations layer for autonomous AI agents. Observe every step, orchestrate durable workflows, share memory, route models, scale workers, govern actions, and keep humans in control.
What Romanica does
Teams should not have to stitch together tracing, queues, memory, routing, approvals, policy, and dashboards before an agent can run in production. Romanica packages those operating primitives together.
Trace every agent run as a step tree, inspect prompts and tool calls, replay failures, and roll token cost into one view.
Queue long-running work, persist execution attempts, compile agent DAGs, and keep lifecycle state visible from request to completion.
Store scoped memories, rank retrieval by confidence and freshness, and move JSON messages between agents through project channels.
Route model calls, watch worker pressure, evaluate policies, create approvals, and turn traces into regression cases.
Product surface
Romanica starts with the sharpest production pain: an agent failed, looped, retried, or burned tokens and no one can see why. The dashboard turns each run into a navigable tree with cost, latency, input, output, and failure context attached to every step.
{
"tool_calls": 2,
"prompt_tokens": 1248,
"completion_tokens": 318,
"retry_reason": "policy_blocked_tool"
}The ten layers
The current product center is AgentOps and observability. The same local platform already exposes real paths across the broader control plane, so trace data can feed routing, evaluation, approvals, and runtime decisions.
Isolated agents, queued runs, persisted HTTP execution attempts.
Versioned DAGs, Rust compilation, dispatch lifecycle records.
Scoped records with ranked retrieval, lineage, confidence, and freshness.
Structured traces, span trees, replay, cost rollups, and analytics.
Observed model candidates selected by cost, latency, and health.
Worker pool pressure, autoscaling recommendations, and applied decisions.
Project-scoped message bus for handoffs, acknowledgements, and failures.
API scopes, policy decisions, immutable audit events, and route families.
Trace-derived failure signals and exportable LLM regression cases.
Approval checkpoints, decisions, intervention records, and review queues.
For developers
Romanica fits the TypeScript agent ecosystem: Vercel AI SDK, LangChain.js, Next.js, custom tool loops, and raw model API calls. The SDK emits spans asynchronously, batches exports, and fails silently if the backend is unavailable.
import { Romanica } from "@romanica/sdk";
const romanica = new Romanica({
apiKey: process.env.ROMANICA_API_KEY
});
await romanica.trace("support-agent", async (trace) => {
await trace.span("retrieval", "search-kb", async (span) => {
span.setRetrieval({ query: "refund policy", topK: 3 });
span.setOutput(await searchKB("refund policy"));
});
await trace.span("llm", "draft-reply", async (span) => {
const response = await model.generate(messages);
span.setLLM({ model: "gpt-4o", usage: response.usage });
span.setOutput(response);
});
});Operational signals
Every LLM, tool, retrieval, and custom span lands in one tree.
Model choices use observed latency, spend, and health constraints.
Planned actions are checked before tools mutate production state.
Humans can approve, reject, or cancel high-risk workflow steps.
Architecture
SDK, API gateway, dashboard, and shared schemas live in TypeScript so adoption is natural for teams already building with TS agent stacks.
Rust engines handle the hot paths: trace ingest, workflow DAG compilation, and eventually sandboxed runtime execution.
Postgres stores trace and control-plane metadata. S3-compatible object storage keeps large inputs and outputs out of relational hot paths.
Scoped API keys, policy checks, immutable audit events, and approval records give enterprise teams room to operate safely.
Romanica cloud
Romanica is for teams moving from demos to durable AI operations. Start with tracing, then let the same execution data power the rest of the agent control plane.