ForemanThe deck — eleven slides, and every number read off the contract.Open the control room
The claim01

The machine asks for its own spare part.
A human sets the limit, once.

Foreman watches vibration on a machining line, projects when a bearing will cross the ISO 10816-3 stop the machine threshold, and buys the part before the line stops. Payment settles into on-chain escrow against a spend permission signed weeks earlier.

The problem02

Industrial 4.0 automated the data and left the decision

Sensors went on the machines. A human was left to read the dashboard, raise a requisition, chase three quotes, wait for a PO number and phone the supplier — while the bearing kept degrading.

  1. Hours Vibration crosses a threshold nobody is watching at 02:00
  2. Days Requisition, three quotes, approval, PO number
  3. Then Supplier lead time starts — after the failure window closed

The data loop was automated. The decision-to-cash loop was not, and that is the one that costs a shift.

What it costs03
CNC-07 stopped
$890
per hour of unplanned downtime
The bearing
$180
6205-2RS, 36-hour lead time
Decision lag
days
requisition to purchase order
Warning available
58 h
projected, from the trend

The warning is there. The part is cheap. What is missing is the authority to act on the warning inside the window it gives you.

The loop04

Sense, decide, commit, settle

vibration telemetry      ISO 10816-3 zones, log-linear RUL trending
        │
        ▼
maintenance agent        4 tools · reads health, stock, quotes · signs
        │
        ▼
spend permission         autonomous ≤ ceiling · human above it · 30-day budget
        │
        ▼
supplier paid            on confirmed receipt, against a despatch document

Every step is a real transaction on Base Sepolia. The reasoning trace streams as it happens rather than arriving after a spinner, because a shift assessment is a sequence of decisions and the sequence is the part worth watching.

The idea05

Two lanes, and the split is on chain

Routine goes through

no human

$180 bearing, 58 hours of life left, zero on the shelf, a vetted supplier who can deliver in 36. Proposed and funded in one transaction. The line never stops and nobody raised a requisition.

Exceptions stop and wait

human

$4,000 spindle is proposed and left there. No Funded event, no money moved, until a separate key approves it — and that approval bypasses the cap, because the cap bounds the agent, not the plant.

This is what “humans handle exceptions, machines handle routine” looks like when it is enforced by a contract instead of written in a policy document.

The product06

The control room

The Foreman control room
Trust07

What the contract will not let the agent do

Invent a payee
Payment only reaches an allowlisted supplier. A hallucinated or injected address is rejected at the contract, not by a prompt.
Invent a price tool layer
The agent chooses whose quote to take; it cannot write the amount. A decimal in the wrong place was a vetted supplier handed ten times their quote, inside budget. This one is enforced in lib/agent.ts rather than on chain, because the price list is not on chain — and saying so is cheaper than having it noticed.
Re-buy what is coming
A second order for the same part on the same machine reverts. A guarantee that lives only in application memory is not a guarantee.
Overspend
$2,000 per rolling 30 days, checked on chain on every autonomous fund.
Release escrow on a click
The supplier commits a despatch document hash with their own key, and receipt reverts unless goods-in submits a reference that matches.
Why now08

Industrial 5.0 asks for exactly this

  • Humans handle exceptions. The split is enforced on chain, not documented in a binder nobody opens.
  • Authority is explicit and revocable. A spend permission is a signed, auditable on-chain object with a budget and a ceiling — not an API key with unbounded access to a corporate card.
  • Resilient supply chains. The order is placed against a projected failure instead of a monthly reorder cycle.
  • Privacy a plant will sign. Telemetry never leaves for a model provider that retains it — the agent runs on Venice AI, which does not store inference data.
Not a mockup09

Live, and checkable without running anything

Agent budget
$2,000
read off the contract, now
Signs alone up to
$500
above this, a human approves
Failure horizon
72 h
inside it, the agent may act
Tests
241
across contract, unit, browser and pilot

Foreman0x6cc8fafc87328a087ac0da2d0c8cae7f9bec2e9a

Verified, so the bytecode running on Base Sepolia can be checked against the source in the repo rather than taken on trust. Press Run agent on the live deployment and it spends actual testnet money on your behalf — bounded by the same contract a plant would rely on.

Past the demo10

A pilot is configuration, not a fork

Every fixture is a seam with a real implementation behind it, and the fixture stays the default so the public demo still runs offline.

Telemetry
A historian export or a live gateway — MQTT, OPC-UA or CSV, through an on-prem bridge.
Stock and quotes
A REST endpoint in front of the plant's ERP.
Operators
Named accounts, scrypt-hashed, with an append-only journal of who approved what.
The agent key
A KMS-agnostic signing seam, so the key stops being an environment variable.

What a pilot still is not: mainnet USDC, and an audited contract. Both are deliberate — get the plant data and the loop right where a mistake costs nothing, then decide whether real money is worth an audit.

The ask11

One line, one machine, one shift

The next step is a paid pilot with a single Malaysian precision-machining plant: one machine, real telemetry, real ERP, testnet settlement — to prove the loop where a mistake costs nothing. The integration layer for that is already built and tested.