01Product
The control plane for production AI.
Lattice treats an AI action as a governed event. Observe every execution, define what agents are allowed to do, hold the consequential actions for a human, attribute the cost, and keep a record that can be reconstructed.
02What Lattice controls
Six things, precisely.
- Agents
- Every agent in every environment, with an owner and a risk classification.
- Models
- Which providers and models an agent routes to, and what each call cost.
- Tools
- The tools an agent may reach, and whether each one is allowed, gated or denied.
- Data
- Which stores an agent may query, and which fields are redacted before inference.
- Actions
- The consequential call itself — held, approved, denied or allowed to proceed.
- Evidence
- An append-only record of who acted, under which policy, and what resulted.
05The product
See the entire AI system.
One map of every agent, the models it calls, the tools it can use, the data it reads and the policies that stand between them. Switch the overlay to change what the same map tells you.
Live lattice map — agents, models, tools, data and the systems they act upon. 13 nodes and 14 connections. Customer agent, a agent in prod · low risk, connects to General large. Research agent, a agent in staging · low risk, connects to Reasoning mid. Finance agent, a agent in prod · medium risk, connects to General large and Reasoning mid. General large, a model in provider a, connects to CRM tool and Knowledge index and Refund API, through a allow gate and allow gate and approval gate. Reasoning mid, a model in provider b, connects to Knowledge index and Ledger database, through a allow gate and redact gate. CRM tool, a tool in read, connects to CRM. Knowledge index, a data in vector store, connects to Warehouse. Ledger database, a data in read, connects to Warehouse. Refund API, a tool in write, connects to Approver. CRM, a system in system of record, terminal node. Warehouse, a system in analytics, terminal node. Approver, a human in finance ops, connects to Payments. Payments, a system in financial, terminal node.
- Agent
- Model
- Tool
- Data
- Human
- System
- Policy gate
OVERLAY · POLICY — gates shown on every governed edge, with the policy that applies
- 09:41:07tool.call · payments.refund.create◐ approval
- 09:41:06model.call · general-large● allow
- 09:41:04tool.call · crm.customer.read● allow
- 09:41:02tool.call · erp.invoice.read● allow
- 09:40:58tool.call · email.send✕ deny
- 09:40:55vector.query · knowledge_v3● allow
- 09:41:07P-014 · refund above threshold◐ approval
- 09:40:58P-031 · outbound email to new domain✕ deny
- 09:40:55P-021 · pii redaction applied● allow
- 09:40:31P-014 · refund below threshold● allow
No node selected
Select any node in the lattice map to see its identity, environment, permissions and recent activity.
Amber ticks mark policy events · scrub to reconstruct the map at that moment
FIG. 04 — Command Center. All entities, activity and figures on this screen are illustrative.
07The five control layers
Five layers. One operating surface.
Observe, govern, approve, optimize and audit are not separate products. They are one path that every governed action travels, in that order.
Reconstruct any action after the fact.
Each governed action leaves an append-only record: the actor, the action, the policy version that applied, the approver if there was one, and the result the target system returned.
who
finance_approver
what
payments.refund.create
when
2026-01-14 09:41:10.402
why
P-014 v4 · amount above threshold
result
rfd_0d93aa · 402 ms
- 09:41:07P-014 · refund above threshold◐ approval
- 09:40:58P-031 · outbound email to new domain✕ deny
- 09:40:55P-021 · pii redaction applied● allow
- 09:40:31P-014 · refund below threshold● allow
09Agent inventory
Agents are infrastructure. Manage them like it.
An agent has an owner, an environment, a risk classification, a set of tools it may reach, the models it routes to, the policies attached to it and an operating cost. That makes it an asset, not a script.
| Agent | Status | Owner | Risk | Last execution | Cost · 30d |
|---|---|---|---|---|---|
| Invoice Resolution Agent agt_invoice_resolution | ● PRODUCTION | Finance Automation | MEDIUM | 2 min ago | ₹18,240 |
| Customer Resolution Agent agt_customer_resolution | ● PRODUCTION | Support Automation | HIGH | 14 s ago | ₹42,900 |
| Research Agent agt_market_research | ◐ STAGING | Knowledge Platform | LOW | 6 min ago | ₹7,120 |
| Release Notes Agent agt_release_notes | ○ DEVELOPMENT | Developer Experience | LOW | 3 h ago | ₹410 |
| Ticket Triage Agent agt_ticket_triage | ● PRODUCTION | Support Automation | LOW | 38 s ago | ₹11,650 |
| Vendor Onboarding Agent agt_vendor_onboarding | ◐ STAGING | Procurement Ops | MEDIUM | 22 min ago | ₹2,980 |
Swipe → for more columns
Invoice Resolution Agent
agt_invoice_resolution
- owner
- Finance Automation
- environment
- production
- risk
- MEDIUM
- last execution
- 2 min ago
- runs · 24h
- 1,204
- cost · 30d
- ₹18,240
Tool permissions
- erp.invoice.read● ALLOW
- billing.api.write◐ APPROVAL
Models
- general-largerouted
Attached policies
- Finance Refund PolicyACTIVE
- PII redactionACTIVE
Runtime
Every run, as it actually happened.
A run is a trace made of spans: model calls, tool calls, data access and policy evaluations. Human approval time is recorded but excluded from agent latency, because the agent was not the slow part.
| Trace | Duration | Decision |
|---|---|---|
| tr_8f21c4 Customer Resolution Agent | 3.04 s | APPROVED |
| tr_8f21b9 Ticket Triage Agent | 820 ms | ALLOW |
| tr_8f21a2 Invoice Resolution Agent | 1.41 s | ALLOW |
| tr_8f2190 Vendor Onboarding Agent | 640 ms | DENIED |
| tr_8f2184 Research Agent | 2.60 s | REDACT |
* approval wait is human time, excluded from agent latency
- trace
- tr_8f21c4
- agent
- agt_customer_resolution
- environment
- production
- tool
- payments.refund.create
- policy
- P-014 v4
- decision
- require_human_approval → approved
- approver
- finance_approver
- result
- rfd_0d93aa
Telemetry connection interrupted
Last event received 43 seconds ago · ingest endpoint ap-south
10Policy engine
Write the boundary once. Enforce it everywhere.
A policy is a condition and an action. Because it is evaluated at the boundary rather than inside the prompt, it applies whatever the model decided to do.
Move the test amount below ₹50,000 to watch the decision change.
Prevent autonomous refunds above ₹50,000
When
transaction.type=refund
AND
transaction.amount>50000
Then
require_human_approval
Scope
Finance Agents · Production
Evaluation preview
{
"transaction": {
"type": "refund",
"amount": 82400
}
}Decision
◐ approval required
matched P-014 · amount above ₹50,000
- v4threshold raised to ₹50,00011 Jan
- v3scope narrowed to finance agents04 Jan
- v2action changed to require_human_approval28 Dec
- v1created in observe-only mode21 Dec
11Approval center
Keep a human on the decisions that matter.
The held action arrives with the trace, the context and the exact call attached — enough to decide without opening four other systems. Approve or reject below; both write an audit event.
Refund request
Customer Resolution Agent
₹82,400
- policy
- P-014 · high-value financial action
- risk
- HIGH
- waiting
- 2 min
- approver role
- finance_approver
- sla
- 30 min · 12 min remaining
Pending action
POST /v1/refunds
{
"order": "ORD-40218",
"amount": 82400,
"currency": "INR",
"reason": "damaged_on_arrival"
}Context
Order ORD-40218 · delivered 11 Jan · two prior support contacts · no previous refunds on this account.
Agent reasoning summary
Customer reported damage on arrival with photographic evidence attached to the ticket. Refund matches the order total.
No decision recorded in this session yet.
12Cost intelligence
Know what every agent costs to run.
Spend attributed to the agent, the model and the tool that produced it, with event markers for the changes that moved the line. All figures on this screen are illustrative.
Show values as a table
| Day | Spend (₹ thousands) |
|---|---|
| 1 | 22 |
| 2 | 25 |
| 3 | 24 |
| 4 | 28 |
| 5 | 31 |
| 6 | 30 |
| 7 | 34 |
| 8 | 33 |
| 9 | 38 |
| 10 | 41 |
| 11 | 39 |
| 12 | 44 |
| 13 | 48 |
| 14 | 46 |
| 15 | 52 |
| 16 | 50 |
| 17 | 55 |
| 18 | 58 |
| 19 | 54 |
| 20 | 61 |
| 21 | 59 |
| 22 | 64 |
| 23 | 68 |
| 24 | 66 |
| 25 | 71 |
| 26 | 74 |
| 27 | 72 |
| 28 | 78 |
| 29 | 81 |
| 30 | 84 |
Executions per day, thousands · illustrative
general-large₹54,300
reasoning-mid₹21,880
embedding-small₹7,120
Small multiples rather than a stacked area, so each model is readable on its own scale.
Next 30 days
₹96,400
Projected from the current 30-day trend and the execution volume of the last seven days. Shown as a dashed continuation on the spend chart.
- basis30d linear trend
- confidenceillustrative only
- driversvolume · model mix
Audit
Reconstruct any action afterwards.
Five fields answer the question an auditor actually asks: who, what, when, why and result. Expand a record to see them aligned, with the policy version and the approver that applied.
who
agt_customer_resolution
what
payments.refund.create
when
2026-01-14 09:41:10.402
why
P-014 v4 · approved by finance_approver
result
rfd_0d93aa
Put a control layer around your AI systems.
Connect your agents, understand their behaviour, define their boundaries and operate AI systems with a clear audit trail.