MESkit public website

MESkit Simulator — AI-Driven Production Simulation for Training, Testing, and Learning

Run a realistic manufacturing production line without a factory. The MESkit Simulator uses an AI agent to generate production data, quality events, and machine behavior — built for education, onboarding, QA testing, and demos.

Last updated: March 7, 2026

Summary

What the Simulator is and what it is not.

Summary

The MESkit Simulator is an AI agent that role-plays as a production factory. It generates units, moves them through manufacturing routes, introduces realistic quality defects, and toggles machine statuses — all through the same tool layer that human operators and the Operator Assistant use. The Simulator is a standalone add-on: it does not modify the MES core, does not add simulation-specific data to MES tables, and can be completely removed without affecting MES functionality. It is designed for training, testing, learning, and demonstrations — not as a replacement for the MES itself.

Who is this for

The Simulator serves multiple audiences.

Manufacturing engineering students

Learn MES and ISA-95 concepts by watching a production line operate in real time. See how units flow through workstations, how quality gates work, how defects are tracked, and how OEE is calculated — without needing access to a real factory.

University instructors

Use MESkit as a teaching tool for manufacturing systems courses. Students can configure their own production lines, run simulations, analyze quality data, and compare OEE results. The ISA-95 aligned data model maps directly to textbook concepts.

Support and onboarding teams

Train new team members on MES operations before they touch a real system. The Simulator generates realistic scenarios — yield drops, machine faults, WIP bottlenecks — so support staff learn to diagnose and respond to production issues safely.

QA and testing engineers

Generate production data at configurable speeds to test dashboards, alert thresholds, Realtime subscriptions, and analytics queries. Run at 10x speed to fill databases with hundreds of units in minutes. Test edge cases like simultaneous machine faults or zero-yield scenarios.

Solution consultants and sales engineers

Demo MES capabilities with live, realistic data instead of static screenshots. Run a simulation during a client meeting to show how units flow, how quality alerts fire, and how AI agents augment operator decisions.

Developers building MES applications

Use MESkit and the Simulator as a reference implementation. The tool layer pattern, Realtime subscriptions, agent runtime, and ISA-95 schema are production-ready patterns you can adapt to your own system.

Use cases

Common scenarios where the Simulator adds value.

  • MES training without a factory — Learn how a Manufacturing Execution System works by running a complete production cycle: define a product, configure a route, generate units, move them through workstations, and analyze quality results.
  • ISA-95 education — The Simulator exercises every level of the ISA-95 hierarchy: physical assets (Level 0-2), product and process definitions (Level 3), production execution (Level 3), and quality operations (Level 3). Students see the standard in action, not just in a diagram.
  • OEE fundamentals — Understand how Availability, Performance, and Quality combine into Overall Equipment Effectiveness. The Simulator generates the machine downtime, cycle time variance, and quality data needed to compute OEE.
  • Quality management training — Watch defect patterns emerge, see how the Quality Analyst agent detects yield drops and defect clusters, and practice root cause analysis on simulated production data.
  • Support team onboarding — New support engineers run simulated production to learn what normal operations look like, then encounter simulated problems (machine faults, quality drops) to practice troubleshooting.
  • Dashboard and analytics testing — Generate realistic production data quickly to verify that charts, metrics, alerts, and reports display correctly under various conditions.
  • AI agent evaluation — Observe how the Quality Analyst, Operator Assistant, and Production Planner agents respond to production events. Evaluate agent accuracy, response time, and decision quality.
  • Client demos and proofs of concept — Show a live MES with realistic production data flowing through it. More compelling than screenshots or slide decks.

How the Simulator works

The AI-driven simulation loop.

When you press Start, the Simulator Agent wakes up and enters a decision loop:

  1. Read state — The agent queries the current shop floor configuration, product definitions, routes, and WIP status.
  2. Generate units — Creates batches of units at the head of production lines, simulating incoming material with auto-assigned serial numbers.
  3. Move WIP — Advances units through their route steps, respecting workstation capacity. If a station is backed up, the agent slows intake — just like a real production line.
  4. Quality decisions — At pass/fail gates, the agent decides outcomes contextually: base yield around 95%, degrading over time, with realistic defect clustering. Failed units are scrapped or flagged for rework.
  5. Machine events — Periodically toggles machine statuses: introduces faults after extended runtime, simulates repairs, and models maintenance windows.
  6. Repeat — Waits for the configured tick interval, then reads state again and makes the next set of decisions.

Every action flows through the tool layer to Supabase, triggering Realtime updates that push to all connected clients. The live ticker scrolls with each event. Other agents — like the Quality Analyst — react to the data in real time.

The Simulator is not the MES

Complete architectural isolation.

The Simulator is a standalone add-on that calls the MES from the outside — like a test client or an external integration. It is not embedded in the MES core. This isolation is enforced by design:

  • No simulation columns in MES tables — There is no is_simulated flag on units, no source column. The data model does not know or care whether data came from the Simulator, a human, or an MQTT sensor.
  • No simulation conditionals in MES code — The tool layer, agent runtime, Realtime subscriptions, and UI never check if (simulation). MES behavior is identical whether the Simulator is running or not.
  • Separate file structure — All Simulator code lives in its own directories. Deleting these files leaves the MES fully functional — it compiles and runs without changes.
  • Public API only — The Simulator calls the same tool registry functions as the UI and the Operator Assistant. No internal shortcuts, no special access.
  • OEE and analytics belong to the MES — Features like machine downtime tracking, cycle time measurement, and OEE calculation are MES features that work with manual data, MQTT data, or Simulator data equally.

Three input sources, one MES

The MES accepts data from any source through the tool layer. The Simulator is just one of them:

SourceWho calls the toolsData path
SimulatorAI agent (background)Agent → Tool Layer → Supabase
ManualHuman operator (UI or chat)UI / Assistant → Tool Layer → Supabase
MQTT sensorsEdge Function (device data)Broker → Edge Function → Tool Layer → Supabase

Dashboards, analytics, Realtime subscriptions, and agent alerts all work identically regardless of input source. No code changes needed to switch between them.

Simulation controls

Start, pause, speed, and reset.

The top bar provides simulation controls:

ControlButtonWhat it does
StartWakes up the Simulator Agent and begins the production loop.
PauseStops the agent. WIP freezes in place. Press Start to resume.
Speed1x / 2x / 5x / 10xControls the delay between agent decision cycles.
ResetClears all production data (units, history, quality events). Keeps shop floor and product configuration.

Speed settings

Speed controls how fast the agent makes decisions. All speeds produce the same quality of data — faster speeds generate it more quickly.

SpeedTick intervalBest for
1x5 secondsWatching unit-by-unit progression. Ideal for learning and classroom demos.
2x2.5 secondsFaster pace, still easy to follow. Good for training sessions.
5x1 secondRapid data generation. Good for filling dashboards and analytics views.
10x500msStress testing. Bulk data generation for QA, load testing, and edge case validation.

What the Simulator generates

Realistic production data across every MES dimension.

Units and WIP

Serial-numbered units created in batches, flowing through route steps. WIP distribution reflects real capacity constraints — bottlenecks form naturally when downstream stations are slower.

Quality events

Inspections, defects, and scrap logged at quality gates. Defect codes cluster realistically — the same failure mode repeats before being “fixed”, mimicking real manufacturing patterns.

Machine status changes

Machines transition between running, idle, and down states. Faults appear after extended runtime. Repairs take realistic time. Planned maintenance windows are modeled.

Throughput and yield data

Completed unit counts over time, pass/fail ratios per workstation, and production rate curves. This data feeds Monitor Mode dashboards and analytics queries.

Audit trail

Every Simulator action is logged in the audit trail with actor: agent and agent_name: Simulator. Fully traceable — you can distinguish Simulator actions from human actions in the log.

OEE components

Machine downtime events (Availability), cycle time variance against ideal times (Performance), and quality gate pass/fail results (Quality) — the three inputs needed to calculate OEE.

Learning ISA-95 with the Simulator

See the standard in action, not just in a diagram.

The Simulator exercises the complete ISA-95 hierarchy. Here is what each level looks like during a simulation run:

ISA-95 LevelMESkit conceptWhat the Simulator does
Level 0-2 Physical equipmentLines, workstations, machinesReads the shop floor layout and toggles machine statuses (running, idle, down) to simulate equipment behavior.
Level 3 Product definitionPart numbers, BOMs, serial algorithmsReads product definitions to know what to manufacture. Generates serial numbers using the configured algorithm.
Level 3 Process definitionRoutes, route stepsFollows the configured route to move units through workstations in order. Respects pass/fail gates at each step.
Level 3 Production executionUnits, WIP, unit historyCreates units, advances them through route steps, records every move in unit history. Manages WIP distribution across workstations.
Level 3 Quality operationsQuality events, defect codesLogs inspections at quality gates, assigns defect codes to failures, marks units for scrap or rework.

Running a simulation from start to finish exercises every ISA-95 concept in the MESkit data model. For students, this provides hands-on experience that maps directly to textbook material and industry practice.

OEE and the Simulator

Understanding Overall Equipment Effectiveness through simulation.

OEE is the gold standard metric for manufacturing efficiency. It combines three factors — and the Simulator generates data for all of them:

OEE factorFormulaWhat the Simulator generates
AvailabilityRun Time / Planned TimeMachine status changes with timestamps: running, idle, down. Planned and unplanned downtime events.
PerformanceActual Output / Theoretical MaxCycle time variance per workstation. Some stations run slower than ideal, creating a performance gap.
QualityGood Units / Total UnitsPass/fail results at quality gates. Scrap and rework events logged with defect codes.

OEE = Availability × Performance × Quality. World-class manufacturing targets 85% OEE. The Simulator typically generates data in the 70-80% range, providing realistic scenarios for analysis and improvement exercises.

Agent interaction

How the Simulator works with other MESkit agents.

The Simulator does not work in isolation. It creates conditions that other agents respond to:

  • Quality Analyst — Monitors production data generated by the Simulator. When yield drops below threshold or defects cluster, the Quality Analyst fires alerts in the ticker and chat panel. The Simulator deliberately creates these patterns so users can observe how proactive quality monitoring works.
  • Operator Assistant — Stays available in the chat panel while the simulation runs. Users can ask “What is stuck at Assembly?” or “How is yield today?” and get answers based on live simulation data. This demonstrates the conversational MES interface.
  • Production Planner — Uses simulation data for capacity analysis. “How long to build 500 units at current throughput?” works because the Simulator has been generating real throughput data. This shows how AI assists production planning.
  • Anomaly Monitor — Reacts to sensor telemetry that the Simulator generates. Temperature drift, cycle time increases, and vibration anomalies trigger predictive maintenance alerts. This demonstrates the MESkit North Star: agent-driven predictive response.

Step-by-step guide

From zero to a running simulation.

Step 1 — Set up the shop floor (Build Mode)

Create at least one manufacturing line with workstations and machines. You can use the UI or the Operator Assistant:

"Create a line called Assembly"
"Add 5 workstations to Assembly"
"Add a machine called Solder Station to workstation 3"

Step 2 — Configure a product (Configure Mode)

Create a part number, configure a serial algorithm, and design a route through your workstations:

"Create part number Smartphone X"
"Configure serial algorithm for Smartphone X with prefix SMX- and 5 digits"
"Create a route for Smartphone X through all Assembly workstations"

Step 3 — Start the simulation (Run Mode)

Switch to Run Mode and press the Start button in the top bar. The Simulator Agent will begin generating units and moving them through your route. Watch the live ticker for events.

Step 4 — Observe and interact

While the simulation runs, you can:

  • Watch units flow through workstations in the Run Mode UI
  • Ask the Operator Assistant about WIP status, yield, or specific units
  • See Quality Analyst alerts when defect patterns emerge
  • Switch to Monitor Mode to view dashboards with live data
  • Adjust speed to generate data faster or watch more carefully

Step 5 — Analyze results

After pausing or completing a simulation run, use Monitor Mode to analyze:

  • Throughput charts — units completed over time
  • Yield summary — pass/fail ratios per workstation
  • WIP distribution — where bottlenecks formed
  • Unit history — drill into any serial number to see its full route
  • Quality events — defect codes, scrap rates, failure patterns

Step 6 — Reset and iterate

Press Reset to clear all production data and start fresh. Your shop floor and product configuration are preserved. Change the route, add workstations, or adjust the product definition, then run again to compare results.

Prerequisites

What you need before running the simulation.

The Simulator reads your existing configuration. Before pressing Start, make sure you have:

  1. MESkit installed and running — see the Getting Started guide.
  2. A shop floor (Build Mode) — at least one line with workstations and machines.
  3. A product (Configure Mode) — at least one part number with a serial algorithm configured.
  4. A route (Configure Mode) — at least one route with steps assigned to your workstations.

No factory, no hardware, no MQTT broker. Everything runs locally with a browser and a Supabase project.

Simulation scenarios

Pre-configured behavior profiles (planned).

Future releases will include scenario profiles that modify the Simulator’s behavior without code changes. Each scenario targets a different learning or testing objective:

ScenarioWhat happensWhat you learn
Steady State95% yield, rare faults, consistent throughputBaseline MES operations, normal production flow
Quality CrisisYield drops to 80% at one station, defect clusteringRoot cause analysis, quality alert response, defect pattern recognition
Machine BreakdownA machine goes down mid-run, WIP backs upDowntime impact on OEE, bottleneck management, maintenance response
Ramp-UpStart slow, gradually increase throughputShift startup procedures, production rate optimization
Mixed ProductMultiple part numbers running simultaneouslyMulti-product scheduling, changeover management, shared resource allocation
Cascade FailureOne fault triggers downstream problemsMulti-agent coordination, predictive maintenance, cross-station impact analysis

Key facts

Quick reference.

Key facts

  • The Simulator is a standalone add-on — it does not modify, extend, or depend on the MES core. Removing it leaves MESkit fully functional.
  • The Simulator Agent uses the same tool layer as human operators and the Operator Assistant — no separate simulation engine.
  • Every simulated event (unit creation, WIP movement, quality check, machine fault) flows through Supabase and triggers Realtime updates.
  • Quality decisions are contextual, not random — yield degrades over time and defects cluster realistically.
  • Speed control lets you run the simulation at 1x, 2x, 5x, or 10x — from watchable pace to rapid data generation.
  • The data the Simulator generates is structurally identical to real production data — dashboards, analytics, and OEE calculations work the same way.
  • No factory, no hardware, no MQTT broker needed — everything runs locally with a browser and a Supabase project.

Common questions

Answers to what comes up most.

Mini FAQ

What is the MESkit Simulator?

The MESkit Simulator is an AI agent that generates realistic manufacturing production data by role-playing as a factory. It creates units, moves them through workstations, introduces quality defects, and toggles machine statuses — all through the same tool layer that human operators use. It is designed for training, testing, education, and demonstrations.

Who is the Simulator designed for?

The Simulator is built for anyone who needs to learn, teach, or test MES concepts without a real factory: manufacturing engineering students, university instructors, support and onboarding teams, QA engineers testing MES workflows, solution consultants running demos, and developers building manufacturing applications.

Is the Simulator part of the MES core?

No. The Simulator is a standalone add-on that calls the MES tool layer from the outside — like any other user or agent. It does not add columns to MES tables, does not inject conditional logic into MES code, and can be completely removed without affecting MES functionality. The MES works identically with or without the Simulator.

How is this different from a traditional MES simulation engine?

Traditional MES simulators use scripted loops with random number generators. MESkit uses an AI agent that reads the current shop floor state and makes contextual decisions — introducing faults when machines have been running long, clustering defects realistically, and respecting workstation capacity. The behavior is organic, not scripted.

Can I use the Simulator to learn ISA-95?

Yes. The Simulator exercises the full ISA-95 data model: physical assets (lines, workstations, machines), product definitions (part numbers, BOMs), process definitions (routes, route steps), production execution (units, WIP movement), and quality operations (inspections, defects, scrap). Running a simulation lets you see how these concepts interact in practice.

Do I need a real factory or any hardware?

No. The Simulator runs entirely in software — a browser, a Supabase project, and an LLM API key. No physical equipment, no MQTT broker, no PLCs. Everything is simulated through the tool layer.

Can I use the Operator Assistant while the simulation is running?

Yes. The Simulator Agent runs in the background, controlled by the top bar buttons. The Operator Assistant stays in the chat panel and responds to your questions. Both agents call the same tool layer, so the assistant can query WIP, check yield, or scrap units while the simulation is active.

Does the simulation generate real data?

The simulation writes to the same database tables as manual operations. The data is structurally identical to real production data — dashboards, analytics, and OEE calculations work the same way. Use the Reset button to clear all production data while keeping your shop floor and product configuration.

What is OEE and how does the Simulator support it?

OEE (Overall Equipment Effectiveness) is a manufacturing metric that combines Availability (uptime), Performance (speed vs ideal), and Quality (yield). The Simulator generates all three: machine downtime events for Availability, cycle time variance for Performance, and pass/fail results at quality gates for Quality.

Can I control what kind of events the simulation generates?

Simulation scenarios are planned for a future release. Profiles like "Steady State", "Quality Crisis", and "Machine Breakdown" will let you choose the simulation behavior — they modify the agent instructions without code changes.

Can the Simulator be used for acceptance testing?

Yes. The Simulator generates production data at configurable speeds, making it ideal for testing dashboards, alert thresholds, Realtime subscriptions, and analytics queries under realistic load. Run at 10x speed to quickly generate hundreds of units for stress testing.

Is this free to use?

MESkit is MIT licensed and free. The only cost is the LLM API usage for the Simulator Agent. Google Gemini offers a free tier that covers typical simulation sessions.

Next steps

Where to go from here.

Get started with MESkit

Install MESkit, set up Supabase, and talk to the Operator Assistant in under 10 minutes.

Getting started guide

Configure products and routes

Define part numbers, BOMs, serial algorithms, and manufacturing routes that the Simulator will produce.

Configure Mode guide

Learn ISA-95

Understand how MESkit tables map to the ISA-95 standard hierarchy used in enterprise manufacturing.

ISA-95 page

Explore the agent ecosystem

See how the Operator Assistant, Quality Analyst, Production Planner, and Simulator work together.

Agents page