Our own project: software we built and operate ourselves.
Millwright
A system that shows the whole shop floor in one panel and assigns tasks across 8 machines on its own: CNC, assembly, a test station. The MCT-S algorithm is designed to compute each task's assignment in under 200 ms. See also the project page: the problem and the savings (ROI) explained without clicking through panels.

A shop floor with no shared picture of the situation
Orders and machine status live in spreadsheets, on whiteboards, and in foremen's heads. When a machine breaks down or a rush order lands, nobody sees right away where to move the work or what it will cost. Millwright shows the whole floor in one place and decides where every task goes before a person can work it out by hand.
Setup awareness built in: the MCT-S algorithm
Priority (Critical → Rush → Normal) sets the order, constraint tightness bumps up tasks with fewer capable machines, and LPT (longest task first) arranges the rest for optimal bin-packing.
Score = (completion time − preference bonus) × priority weight, where more urgent tasks get a lower weight. Lowest score wins; ties are broken in favor of no setup required.
Idle machines scan overloaded queues themselves, check task compatibility, and take it over when it pays off. Zero manual intervention.
A new task lands in a machine's queue at the position its priority actually earns, not always at the tail. A critical order can jump ahead of work that's already waiting instead of sitting behind it until that finishes.
An in-house heuristic called MCT-S (Minimum Completion Time with Setup Awareness): greedily pick the lowest-scoring machine, break ties with LPT, and bake the setup cost directly into the formula. A product name, not a formal optimality proof from a scheduling-theory textbook.
Performance targets of the system
design target: time from a task entering the pool to its machine assignment.
design target: a full re-shuffle of the queue after a machine breakdown is reported.
design target: maximum tasks assigned per hour across 8 machines, under optimal conditions.
By design, work stealing is meant to move about 15% of tasks dynamically between machines, and grouping similar operations is meant to cut setup time by roughly 40%: design targets, not a measured benchmark. The analytics panel does compute real OEE (Availability × Performance × Quality) from each machine's actual downtime and run time, not a canned formula for show.
Check these numbers yourself in the live demoEvery choice has a reason
Got a nagging problem? Describe it, I'll code the rest.
One sentence is enough to start. Tell me what's bothering you. Within 48 hours I come back with a clear answer: can it be done, and at what fixed price.