v1.4 · prod uptime 99.98% · 4.2B agent steps last 30d

Run AI agents
in production.

Lattice is the orchestration layer for production agents. Schedule, retry, trace, and observe long-running LLM jobs at any scale. Self-host the OSS runtime, or run on our managed cloud with one command.

runs / agent_id=ax_8a7flive · 2:14 ago
01ingest.url84ms
02extract.signal1.2s
03tools.search3.4s
04claude.reason5.1s
05verify.cite
06publish.draft
ingest.url completed (84ms)
extract.signal · 12 entities
tools.search · 8 sources retrieved
claude.reason · streaming response
> Synthesizing findings from 8 sources…
> Verifying citation [3]: matches source domain
> Drafting summary (1,840 tokens / 4,096 budget)
$ tail -f run.log
cost · $0.0142tokens · 14,820p95 · 3.6shealthy

Four primitives.
Composable, observable, durable.

Most agent failures aren’t model failures — they’re infra failures. Lattice gives you the four pieces that turn a script into a system you can debug at 3am.

runs

Long-running execution.

Durable execution that survives restarts. Resume from any step. Run for hours, days, or until a human approves.

$ lattice.run(agent, { resumable: true })
scheduler

Smart scheduling.

Queue-aware concurrency, rate limits per provider, retries with backoff, dead-letter handling. Nothing gets lost.

$ lattice.schedule(agent, { rate: '60/m' })
tracing

Real observability.

Full trace tree per run — every prompt, every tool call, every retry. OpenTelemetry export. Replay any historical run.

$ lattice.trace.replay('run_8a7f')
evals

Inline evals.

Attach evaluators to any run. Auto-flag regressions on every deploy. Compare model variants on real production traffic.

$ lattice.evals.attach(rubric, sample=0.1)
A position, not a feature list ↓

Agents are systems, not scripts. The platforms that pretend otherwise will quietly cost you a year.

The first wave of agent frameworks was built on the premise that an agent is a clever loop you can demo on a laptop. That was true for a year. It’s not true now. Production agents touch real customer data, run for hours, fail at inconvenient steps, and need to be debugged by an on-call engineer at 3am.

We built Lattice because the team — most of us came out of Anthropic and Replit — kept hitting the same five problems on every customer agent we shipped. Durability, scheduling, traceability, evaluation, and a story for the long-running case. Every team rebuilds these in-house. Most of those rebuilds are bad.

The shape of Lattice is opinionated by design. The runtime is open source under Apache 2.0; the managed cloud is paid. The traces are real OpenTelemetry, not a proprietary blob. The pricing is per-step, not per-seat. You can leave on a Tuesday afternoon and we promise the export will work.

We’re betting that the right primitive for AI infra in 2026 looks more like Temporal than LangChain, more like Vercel than Airflow. That’s the bet. If you agree — there’s a quickstart below, and someone on the team is on a call this afternoon if you want to talk.

customers ↓ReplicateVercelModalGranolaPylonLinearCrestaDecagon
2026-04-14 09:42infoSasha Lin · Staff eng, Replicate
We migrated four in-house schedulers to Lattice in six weeks. Replays alone have saved my team an entire on-call rotation per quarter.
2026-03-28 16:11infoMarcus Reid · CTO, Granola
Lattice is the only agent infra we evaluated that took the long-running case seriously. Our nightly runs are 11 hours. Nothing else handled it.
2026-02-19 22:07infoImani Ewell · Lead, Decagon
The eval primitive is the thing. We catch model regressions on production traffic before customers do. That has changed how we ship.

Per-step. Not per-seat. Self-host or managed.

The runtime is open source. The cloud is what you pay for. No talk-to-sales tier — sales lives at the Enterprise plan, where it belongs.

plans.ts·last updated 2026-04-22
export const plans = {
free: {
price: "$0",
steps: "10,000 / mo",
note: "Self-host the OSS runtime. No support."
},
team: {
price: "$0.0008 / step",
steps: "100k included",
note: "Managed cloud. Email support, 99.9% SLA."
},
scale: {
price: "$0.0005 / step",
steps: "1M+ / mo",
note: "Volume tiering. SOC 2, dedicated tenancy, 99.95% SLA."
},
enterprise: {
price: "talk to us",
steps: "unlimited",
note: "On-prem option, BAA, custom contract, named CSM."
}
} as const;

One command.
Then you’re running.

$npx lattice init·~ 14s
Get ProposalInstant SEO Audit