Everything needed to run agents on a real line

Concepts first, then the tool reference, then deployment. Written for process engineers and integrators, not for a demo.

  • Concepts · Tools · Connectors · Deployment

Concepts

Six ideas explain the whole system.

Runs and lots

A run is a lot of pairs moving through the line as a goal, decomposed into steps by the orchestrator.

  • Run lifecycle and states
  • Steps, handoffs and artefacts
  • Cancellation and resumption

Agents and tools

An agent owns a physical step and a tool family; tools are the only way a decision reaches a machine.

  • Agent binding and scope
  • Tool schemas and ranges
  • Custom tool registration

Autonomy and approvals

Four levels, set per agent and per parameter, with approval routing and SLA behaviour.

  • Autonomy levels explained
  • Validated parameters
  • Approval SLAs and fallback

Knowledge and memory

Retrieval over specs and datasheets, plus per-factory quality and craft memory.

  • Document ingestion
  • Citation requirements
  • Tenant scoping

Tool families

The complete surface an agent can invoke against your plant.

Tool families, owning agent and approval default
Tool familyAgentExample callApproval default
hide.*Cut-and-Nesthide.scan(batch, hides)None
nest.*Cut-and-Nestnest.optimize(pattern, size_curve)None
cutter.*Cut-and-Nestcutter.execute(table, nest)None
stitch.*Stitch-and-Upperstitch.monitor(stations)None
mold.*, press.*Mold-and-Solepress.set_recipe(press, recipe)Required
last.*Last-and-Bondlast.fit_control(last_set)Required
bond.*Last-and-Bondbond.window_control(primer, rh)Required
quality.*Quality-and-Fitquality.inspect(scope, pairs)None
robot.*Robot-and-Assemblyrobot.finish_pack(spec)None
twin.*Yield-and-Energytwin.simulate(hide_batch, rh)None

Deploying an agent to a line

The canonical deployment: bind, shadow, evaluate, graduate.

deploy_guide.pypython
# 1 — bind the agent to the line and its tools
agent = client.agents.create(name="cut-and-nest/line-a", line="line-a")

# 2 — run in shadow for two weeks; no writes reach the cutter
agent.set_autonomy("observe")
agent.deploy(edge="line-a/jetson-02")

# 3 — evaluate against the plant's own golden set before graduating
report = client.evaluations.run(agent=agent.id, dataset="line-a/golden-2026Q1")
assert report.yield_delta > 0.04 and report.out_of_tolerance == 0

# 4 — graduate one level; approval routing stays on validated params
agent.set_autonomy("act", validated_params="act_with_approval")

Checklist

  • Baseline captured before any writes
  • Golden dataset built from your own lots
  • Rollback tested on the edge unit
  • Approval routing verified with a live drill

Wiring the plant

How Footeon reaches machines, and what it needs from each.

Protocols

  • OPC UA — preferred for presses, ovens and lasting machines
  • MQTT — sensors and edge gateways
  • Modbus TCP — legacy controllers
  • Vendor SDKs — cutting tables and programmable stitchers

Requirements

  • Read access to setpoints, actuals and alarms
  • Write access scoped to the parameters in the agreement
  • A dedicated OT VLAN and service account
  • Time synchronisation across stations (PTP or NTP)

Reading a run end to end

The documentation walks through RUN-4417 step by step, including the approval.

  1. 01 twin.simulate_run SUCCEEDED 2m 40s

    Simulated the whole lot in the shoe-and-line twin before a single hide was cut — nest layout, mould recipe and bonding process window for EVA midsole and rubber outsole at 71% relative humidity.

    inputs · outputs

    in: pattern velo-trainer-2, hide batch LH-2291, mould set M-14 · out: nest v7, recipe R-08, bond window 62–68 °C

  2. 02 cut.nest_optimize SUCCEEDED 4m 12s

    Scanned 64 hides, marked 1,842 scars and brand marks, then solved a defect-aware nest across the EU 36–46 size curve. Leather yield came in at 87.4% against a 79.1% plant baseline.

    inputs · outputs

    in: 64 hides, 1,842 defects · out: yield 87.4%, 12.3 s solve, 22 nested part groups

  3. 03 stitch.tension_control SUCCEEDED 11m 08s

    Held stitch tension inside ±4% across 14 stitching stations, caught three skipped stitches on the lateral overlay and re-ran those uppers before they reached lasting.

    inputs · outputs

    in: seam map v3, thread lot TL-77 · out: 3 skips corrected, 0 escapes

  4. 04 mold.density_control SUCCEEDED 9m 51s

    Trimmed press temperature and dwell on P-3 as the EVA lot ran slightly high in blowing agent, holding midsole density at 0.24 g/cm³ within ±1.8% and cure at 214 seconds.

    inputs · outputs

    in: EVA lot EV-1180, recipe R-08 · out: density 0.24 g/cm³, cure 214 s

  5. 05 last.fit_control SUCCEEDED 6m 33s

    Lasted the upper over last set L-42 under a heat and tension profile tuned to this leather lot. Toe-lasting deviation held at 0.6 mm; heel seat measured true on every pair sampled.

    inputs · outputs

    in: last set L-42, 78 °C, profile T-2 · out: deviation 0.6 mm

  6. 06 bond.window_control APPROVAL 3m 04s

    Humidity climbed to 71% mid-shift, pushing the primer flash-off outside the validated window. The agent proposed +2 °C activation and +0.3 bar press pressure, and paused for the quality engineer to approve — the change touches a validated bonding parameter.

    inputs · outputs

    in: primer PR-9, adhesive AD-22, RH 71% · out: proposed activation 66 °C, awaiting sign-off

  7. 07 quality.inspect SUCCEEDED 5m 47s

    Bond-line vision, 3D fit metrology and cosmetic scan on every pair. First-pass yield 98.2%; 21 pairs routed to rework for adhesive squeeze-out, none for bond gaps.

    inputs · outputs

    in: 1,200 pairs · out: FPY 98.2%, 21 rework, 0 bond-gap escapes

  8. 08 robot.finish_pack SUCCEEDED 18m 22s

    Robotic cleaning, lacing, insole insertion and carton packing to spec C-4, with per-pair traceability written back to the MES and the brand’s quality portal.

    inputs · outputs

    in: carton spec C-4 · out: 1,179 pairs packed, 21 held

Running Footeon in production

The topics plant IT teams open most often.

Edge OTA updates

Staged rollout, signature verification and one-command rollback per line.

Observability

OpenTelemetry traces, per-station metrics and log shipping to your stack.

High availability

Edge units run standalone through cloud outages and reconcile on reconnect.

Backup and export

Audit and per-pair records exported nightly in a documented schema.

Evaluation

Golden datasets, LLM-as-judge and regression gates before any promotion.

Air-gapped mode

Offline model updates and local-only operation for restricted plants.

When a line looks wrong

The first three commands to run.

footeon-cliterminal
$ footeon lines status line-b
edge line-b/jetson-01 · healthy · model bundle 2026.06.3 · 4 cameras online

$ footeon runs explain RUN-4417 --step bond.window_control
paused: validated parameter change requires approval
evidence: rh 0.71 (line-b/rh-04), datasheet AD-22 §4.2, twin margin +4 °C

$ footeon models rollback --line line-b --to 2026.06.2
rolled back · agents resumed on previous bundle · audit entry written

Escalation

Factory and Enterprise plans include a 24×5 or 24×7 escalation path with a named engineer and a model-regression SLA.

Contact support →

What is documented

Coverage of the surfaces you will actually touch.

  • 24 tool families with full schemas
  • 18 shipped machine and system connectors
  • 6 integration surfaces (SDK, REST, gRPC, webhooks, connector, edge)
  • 4 autonomy levels with documented semantics

Documentation questions

  • No. Footeon is a software and factory-edge autonomy layer that sits on top of the machines you already run. We connect over OPC UA, MQTT, Modbus TCP and vendor SDKs, read sensors and vision, and write setpoints back through the controls you already trust — with approval gates on any validated parameter.

Build against a sandbox first

Sandbox access includes the twin simulator so you can exercise every tool without a machine.