Policy outcome
Risky writes pause before execution. The decision and the rule set stay on the receipt.
Agent runtime
KarmanFlow does not give agents a side door. A model calls a tool, the tool becomes a typed action, policy checks the actor and risk, approval binds a human when needed, and the receipt proves what happened.
Layers
Every agent tool call lands in the same governed write path a human action uses. There is no agent-only fast path, no privileged token mode, and no shadow write surface.
Every agent capability is a contract-checked action with a typed result and a declared risk class. MCP tools and GraphQL mutations expose the approved action set, so agent work can be scoped and audited.
Each action declares R0 through R3. Policy checks the actor, scope, tenant, and environment before a write can continue. The decision is recorded on the receipt.
R2 actions enter a pending-approval state. The approval surface binds a named human before execution. Receipts carry both actors: the agent that proposed and the operator that approved.
Receipts are immutable. Events, timelines, exports, and replay all read from the same committed action history, so support and operators can reconstruct what happened without trusting a chat log.
Proof
The point is not to show JSON for its own sake. The point is that every automated action carries a readable chain: policy outcome, actor chain, approval binding, events, and replay.
Risky writes pause before execution. The decision and the rule set stay on the receipt.
The timeline shows who proposed the action and who approved it. Both identities remain queryable.
Support can reconstruct the action without treating a chat transcript as the source of truth.
Where we draw the line
Chatbots can help answer questions, but risky commerce work needs a boundary. KarmanFlow lets agents propose structured actions, applies policy before execution, and records the receipt your team can replay.
Build against it
Start with one read, one preview, and one approval-bound write. The quickstart shows the hosted preview path.
This controls app-managed marketing analytics: cookie-free Plausible, optional Cloudflare Web Analytics, and first-party event logs with session-only UTM attribution. The site works without it.
Read the privacy notice