FDF Labs
Cement OS

A concrete-pole plant run from WhatsApp.

Cement OS is what we built for a concrete-pole plant in Paraguay. An artificial intelligence agent, Claude, answers in the plant group and in the owner's and the manager's chats. Behind it, a database keeps batches, stock, purchases, deliveries, payments and payroll.

The production plan in the dashboard, on demo data: four batches of poles laid out by stage (rebar, loading, curing, inspection, ready), one marked late, and the materials each batch is still missing.
The production plan in the dashboard, on demo data.

The group is still the group.

People write the way they always have. The system writes it down, asks about what doesn't add up and tells whoever needs to know.

Plant group

Workerbatch 2 moved to loading, we already marked the 41 poles

Cement OSBatch 2 skipped "rebar" to get to loading. Is that really what happened, or was it a typo?

Workerwe're running out of wire, we need about 100 kg for batch 3

Cement OSRequest for 100 kg of wire logged, and the owner has been told.

Workerhey, how much do we charge [customer] per pole?

No reply. In the group there are no prices, customers or money.

Owner's chat

Ownerhow much cement do we have, and how many 12/300 poles is it enough for

Cement OSCement: 600 bags in stock (minimum 100, not low).
A 12/300 pole takes 4.08 bags → enough for about 147 poles, looking at cement alone.
Careful: with sand (10 m3 in stock, 0.27 m3 per pole) the real limit comes sooner: about 37 poles. Sand is the bottleneck, not cement.

A real exchange with the system on demo data, trimmed and translated from Spanish. Names are shown as roles, the customer in brackets.

One absence moves the schedule.

The schedule doesn't live in anyone's head. A planner works it out from molds, people, holidays and rain, and runs again when something changes.

Cement OSReplan

  1. AttendanceThe manager says a worker is off sick.
  2. YesThe owner approves the absence in one line.
  3. PlanThe planner runs again.
  4. LateThe owner hears which batch is now late.
  5. TasksThe manager gets the stage tasks it freed up.

SaturdayAnd on Saturday the absence is already in the week's payroll.

Numbers from the database, not the model.

Every answer comes from a tool that reads the database. Stock comes down on its own, by recipe, as poles finish each stage.

The stock page in the dashboard, on demo data: six materials (release oil, wire, sand, cement, crushed stone, 8 mm rebar) with current level, minimum and unit; wire is below its minimum.
tools the agent can use
128
modules, from orders to payroll
18

What isn't left to the model.

The rules that matter are in the code, not in an instruction.

Roles
Each person only gets the tools of their role. In the group, the ones for prices, customers and money don't exist. A number nobody added is stored and never acted on.
Confirmation
Eight actions wait for a yes: creating, cancelling or deleting an order, approving a purchase, sending a quote or turning it into an order, deleting a customer and recording a payment. If nobody confirms within 30 minutes, it lapses.
Routines
At 5:00 it checks the forecast and, if the chance of rain passes the threshold, offers the manager to mark the day lost. On Monday at 16:00 it puts together the owner's next two weeks of purchases. On Saturday at 11:00, the week's payroll. At 22:30, overdue payments.
The dashboard
For the owner and the manager, with the same data as the chat. Money and staff, the owner only. Quotes, purchase orders, delivery notes and inspection reports come out as PDFs.
If it gets stuck
Two errors in a row in one chat and it hands over to a person. Voice notes are transcribed before they reach the agent.

Run a plant?

Tell us how it runs today and what you want to run on its own.

← Back to home