IRL Engine v1.3 · Production

Cryptographic
chain of custody
for autonomous trading.

IRL seals every AI decision before it reaches the exchange — cryptographically, before execution. Self-hosted in your VPC or fully managed. Daily Merkle roots anchored to Bitcoin, so the audit chain verifies without trusting anyone — including us.

pip install irl-sdk · npm install irl-sdk Python 3.10+ · Node ≥18
Agent-42 · reasoning snapshot
actionLong BTC-USD
quantity0.5
notional32,500
POST /irl/authorize
IRL Engine · pre-execution gate
MAR registry verified
Policy checks passed
Bitemporal gate clear
SHA-256 sealing...

reasoning_hash → a3f2d9c1e8b047f5...
embed hash → place order
Exchange
exchange_tx_idex9a2f...
POST /irl/bind-execution
Final proof · chain closed
✓ MATCHED
final_proof = SHA-256(reasoning_hash ‖ tx_id)
p99 <3ms
Seal latency · colocated
Ed25519
Signed broadcasts
RFC 8785
Canonical JSON seal
Bitcoin
Daily Merkle anchor
99.9%
L2 uptime SLA

The Ownership Gap

Current observability infrastructure captures what autonomous agents did and when. It cannot prove why — or what the agent knew at the moment of decision. This is the gap that regulators are asking about, and that no existing tool closes.

Capability Current state With IRL
What action was takenLoggedLogged + sealed
When the action occurredSingle timestampBitemporal (valid_time + txn_time)
Why the action was takenApproximate / inferredDeterministic CognitiveSnapshot
What the agent knew at decision timeNot provableCryptographically proven via L_t fingerprint
Whether constraints were enforcedNot guaranteedPre-execution hard halt on violation
Which model produced the decisionNot verifiableModel hash in Multi-Agent Registry
Whether execution matched reasoningNot trackedPost-trade verifier with divergence detection

The Audit Chain

Every trade produces a cryptographic chain from regime attestation to exchange confirmation. No party can alter any link after the fact without breaking the chain. Authorize is a synchronous pre-execution call — p99 under 3 ms colocated. Built for systematic and mid-frequency desks; if you are racing the tick, IRL is not your tool.

MacroPulse MTA
Ed25519-signed regime broadcast. Cryptographic proof of the macro state at the exact moment of decision.
IRL Engine — POST /irl/authorize
Agent submits reasoning snapshot. IRL runs all pre-execution checks atomically, then seals: reasoning_hash = SHA-256(RFC 8785 canonical JSON of snapshot)
MAR check Policy enforce L_t fingerprint Bitemporal gate SHA-256 seal
Agent receives
reasoning_hash + trace_id — embedded in exchange order metadata before submission.
Exchange execution
Order hits the market. Execution report returned to agent with exchange_tx_id.
IRL Engine — POST /irl/bind-execution
final_proof = SHA-256(reasoning_hash ‖ exchange_tx_id) — chain closed.
MATCHEDChain closed. Regulator can verify independently.
DIVERGENTFlagged. Reason recorded permanently.
✓ VERIFIED — root matches Bitcoin anchor ✗ TAMPER EVIDENT — root ≠ Bitcoin anchor
trace #1041 · sealed
action Long BTC-USD · hash 9c41f0…
trace #1042 · sealed
quantity 0.55.0 ← edited after the fact
hash a3f2d9…e08b17… (changed)
daily merkle root
7d04c2…cannot be reproduced
₿ Bitcoin block · OpenTimestamps
root 7d04c2… — committed forever, beyond anyone's reach

Edit a single byte of any sealed trace and every hash downstream stops matching — but the original root is already in a Bitcoin block. No one, including us, can rewrite it. That is the entire trust model, in one loop.

What a Closed Chain Proves — and What It Doesn't

Precision matters more than marketing here. IRL is a commitment scheme with independent timestamping: it does not make dishonesty impossible — it makes it expensive, contemporaneous, and permanent. Here is the exact guarantee, stated the way your auditor will ask for it. Don't take our word for any of it: the verifier is open source (MIT) and the anchor feed is public.

traces · reasoning_hash sealed pre-execution SHA-256 merkle root · 32 bytes one root per day OpenTimestamps calendar attestation Bitcoin blocks after this point, not even MacroPulse can rewrite the record — verify with irl-verify + ots
A MATCHED chain proves
  • Existence — this exact snapshot existed at sealing time, byte-for-byte
  • Integrity — no field of the snapshot was altered after the seal
  • Temporal order — seal happened before execution; bitemporal gate rejects retro-dating
  • Binding — this reasoning is cryptographically tied to that specific exchange transaction
  • Independence — daily Merkle roots anchor to Bitcoin via OpenTimestamps. Verification requires zero trust in MacroPulse — check it yourself
  • Identity — the model hash matches what was registered before the trade, not after
It does not prove
  • Snapshot honesty — the agent self-reports its reasoning state. A malicious operator could seal a fabricated snapshot

Why fabrication doesn't pay
  • The lie must be told before the outcome is known — sealed pre-execution, no hindsight edits
  • Model hash registry — the snapshot must reference a model registered before the trade
  • Divergence detection — executed parameters are reconciled against sealed intent; mismatch is recorded permanently as DIVERGENT
  • L3 roadmap — TEE attestation moves snapshot capture inside hardware-attested enclaves, closing this gap structurally

Zero-Risk First Step

Nobody puts an untested gate in front of live order flow. You don't have to. Run IRL in shadow mode against production traffic — it seals everything and blocks nothing — and run it inside your own perimeter from day one.

Shadow Mode
Audit everything. Block nothing.

Every authorize call is checked, sealed, and written to the ledger — but never denied. Point your agents at IRL today, compare its verdicts against your live behavior for a month, and flip enforcement on only when the evidence says so.

SHADOW_MODE=true
# full seal + ledger, zero execution risk
Self-Hosted
Your alpha never transits our infrastructure.

One container in your VPC. Snapshots — features, prompts, hyperparameters — are sealed and stored inside your perimeter, encrypted at rest with per-trace DEKs (local key, AWS KMS, GCP KMS, or HSM). MacroPulse sees nothing. The Bitcoin anchor publishes only a 32-byte Merkle root.

$ docker compose -f docker-compose.standalone.yml up -d
# PostgreSQL + mock MTA bundled · no external account

Try it now — no setup

Three demo agents are pre-seeded. Use Swagger UI to run a full authorize → bind-execution cycle in-browser. No API key, no registration.

Wire any agent in under 20 lines

Native SDKs for Python and TypeScript wrap the IRL REST API with typed models and automatic heartbeat handling. Available on PyPI and npm — no build step required.

PYTHON · pip install irl-sdk
import asyncio
from irl_sdk import IRLClient, AuthorizeRequest

async def trade():
    async with IRLClient("https://irl.macropulse.live") as client:
        result = await client.authorize(AuthorizeRequest(
            agent_id="agent-42",
            model_hash_hex="a3f2...",
            action="Long",
            asset="BTC-USD",
            quantity=0.5,
            notional=32500,
        ))
        if result.authorized:
            place_order(reasoning_hash=result.reasoning_hash)

asyncio.run(trade())
irl-sdk on PyPI →
TYPESCRIPT · npm install irl-sdk
import { IRLClient } from "irl-sdk";

const client = new IRLClient({
  irlUrl: "https://irl.macropulse.live",
  apiToken: process.env.IRL_API_TOKEN!,
});

const result = await client.authorize({
  agent_id: "agent-42",
  model_hash_hex: "a3f2...",
  action: "Long",
  asset: "BTC-USD",
  quantity: 0.5, notional: 32500,
});
if (result.authorized)
  placeOrder(result.reasoning_hash);
irl-sdk on npm →
Developer Guide Live Sandbox Python 3.10+  ·  Node.js ≥ 18  ·  CJS + ESM

Each Layer Adds One Guarantee

Same API surface at every layer — upgrading never touches your agent code. Full feature lists are in pricing.

L1 · SIDECAR prove what happened L2 · AUDIT PLATFORM prove what the market was L3 · SOVEREIGN prove without revealing · roadmap ⟲ verification — free, for anyone, no trust required
Free Verification — for everyone, forever
Not a tier. Anyone can verify a proof bundle offline with the open-source irl-verify CLI, audit the public anchor feed, and check Bitcoin anchoring with the standard OpenTimestamps client. No account, no license, no trust in MacroPulse. Provers pay; verifiers never do.
L2 IRL Audit Platform — prove what the market was Live
Signed market truth. Every authorization is cryptographically tied to a specific Ed25519-signed regime broadcast — historical regimes cannot be replayed to justify present-day trades. Adds forensic replay and the compliance dashboard.
L3 IRL Sovereign Gateway — prove without revealing Roadmap
Confidential proving. TEE-hosted enforcement, sandboxed Wasm policies, and ZK proofs that demonstrate compliance to a regulator without exposing model state or strategy.

Bring Your Own Signal — or Use Ours

IRL's engine is agnostic to the regime source. The MtaClient interface accepts any cryptographically signed signal — MacroPulse's pipeline, your own quant model, or nothing at all. Three modes. Same audit guarantees.

02 — Bring Your Own
Custom MtaClient
Implement a single Rust trait and pass it at startup. Your model stays private; your compliance chain is cryptographically identical to Mode 01.
  • One trait: MtaClient — 3 methods
  • Any signal format: REST, gRPC, or shared memory
  • IRL seals against your signal, not ours
  • For quant firms with proprietary regime models
MTA_MODE=custom
MTA_IMPL=./mta_client.so
MTA_PUBKEY=ed25519:...
03 — Policy Only
MtaMode::None
Bypass regime verification entirely. All Multi-Agent Registry policy checks — notional caps, side constraints, per-agent rules — remain fully active.
  • No external signal dependency
  • MAR policies enforced as normal
  • Seal records signal_mode="none"
  • For firms managing macro risk internally
MTA_MODE=none
# KMS encryption still active
# Audit chain unaffected

Built for the Regulations That Are Coming

IRL produces evidence that maps directly to specific regulatory requirements — not general "auditability," but the specific proof each framework asks for.

Requirement IRL mechanism
EU AI Act Art. 12 Requires high-risk AI systems to automatically log events enabling post-market monitoring and incident investigation. Autonomous trading systems are classified as high-risk under Annex III. Phased enforcement begins 2025–2027. Read regulation → — Decision auditability reasoning_hash = SHA-256(canonical snapshot)
EU AI Act Art. 13 Mandates that high-risk AI systems be sufficiently transparent that deployers can understand and interpret outputs. Requires logging of decisions and human oversight capability — including disclosure to regulators on request. Read regulation → — Transparency to regulators Sealed snapshot disclosure today · ZK proofs on the L3 roadmap
SEC Rule 15c3-5 The Market Access Rule requires broker-dealers with market access to implement pre-trade risk controls and supervisory procedures. Firms must have systems to prevent erroneous orders and ensure compliance with applicable regulatory requirements. Read regulation → — Pre-trade risk controls Policy Engine blocks non-compliant intents before execution
MiFID II RTS 6 Requires algorithmic traders to maintain contemporaneous records of all algorithmic orders showing time of creation, modification, cancellation and execution. Records must include the parameters that triggered the order and remain available to regulators for five years. Read regulation → — Contemporaneous recordkeeping Bitemporal timestamps: valid_time + txn_time, immutable
DORA Art. 9 & 10 The Digital Operational Resilience Act requires financial entities to maintain registers of all ICT-supported functions and third-party dependencies, with continuous monitoring and incident classification. Applies to AI systems used in financial decision-making from Jan 2025. Read regulation → — Fleet governance Multi-Agent Registry: per-agent identity and risk controls

Per-Agent.
Not Per-Trade.

The value of a sealed reasoning trace is in its existence — not in counting seals. Flat per-agent pricing means compliance scales linearly with your fleet, never with your volume. L1 is operational in under a day.

FREE
IRL Verify
Verification is not a tier.
$0
forever · for anyone
Open-source CLI (MIT, offline)· Frozen spec — reimplement in any language· Public anchor feed — no auth· In-browser explorer — nothing uploaded
Your auditors, allocators, and regulators verify without an account — and without trusting us.
irl-verify → Explorer →
L2
IRL Audit Platform
Prove what the market was. Anti-replay. Signed market truth.
$1,200 / agent / mo
MIN 3 AGENTS · 99.9% SLA

  • Everything in L1, plus:
  • +Signed heartbeats — monotonic Ed25519 sequence, anti-replay enforced
  • +MacroPulse MTA integration — or plug in your own MtaClient
  • +Forensic replay API — any historical trade reconstructable from its sealed snapshot
  • +Regime binding — every authorize tied to a specific signed MTA heartbeat (mta_ref)
  • +Compliance dashboard — read-only regulator view, point it at your engine
Agents: 3 = $3,600/mo total
or book a technical demo →
Coming Soon
L3
IRL Sovereign Gateway
Prove without revealing. For clients where compliance cannot expose alpha.
Enterprise
TEE + ZK · QUOTED PER ENGAGEMENT

  • Everything in L2, plus:
  • +TEE execution — Intel TDX / AMD SEV hardware-attested enclave
  • +Wasm policy modules — hot-reloadable, sandboxed, zero engine restarts
  • +ZK compliance proofs — prove adherence without revealing model or strategy
  • +Double-Green signing — API key inaccessible until MTA + MAR both pass
  • +Dedicated support · Quarterly review
Notify me →

Fleet discounts — L1 & L2

Fleet sizeDiscount
1–5 agentsList price
6–15 agents−15%
16–30 agents−25%
31+ agents−35% (negotiated)

Add-ons

MacroPulse MTA (L1 add-on)+$300/mo
Custom MTA deploymentsno surcharge

Start With the Sandbox

The API is live. Three demo agents are pre-seeded. Run a full authorize → bind-execution cycle in Swagger UI, then deploy in shadow mode against your own traffic — sealed, never blocked — before any enforcement decision.

Open Swagger UI → Contact for Licensing