SaarthiOS Workforce finds the people who will actually turn up, talks to them on WhatsApp and on the phone in their own language, books them into the nearest site that is hiring, and hands a site supervisor ten names instead of a spreadsheet. Every number on every screen traces back to a receipt.
No sign-in. Nothing to install. Four roles to switch between, 18 screens, 6 replayable conversations and 4 replayable calls.
Those four figures come from one table, summed four ways — which is why every screen in the demo agrees with every other. The last one is attributed causally: a start is only claimed when our message demonstrably came before the join date. 1,744 other people joined in the same window and we claim none of them.
The opening move is completely different in each case, and treating them the same is how a warm referral gets the same cold template as a four-year-old roster row.
A cohort we already hold — past applicants, lapsed staff, a roster for a site that is short. We speak first, on an approved template, and the template never quotes a salary unless that drive explicitly opted in.
Someone already on the rolls names a friend. The warmest list in the building and the one most often left idle. The template names the person who referred them, which is the single biggest lift on the whole track.
An applicant lands on a board. We reach out inside the hour or the lead is cold — the same outreach at six hours converts at a quarter of the rate. Speed is the entire mechanism.
A candidate writes to us first, off a poster or a forwarded message. Nothing to launch and no cohort to choose; the assistant answers every one, including the ones that arrive at 20:48 and have to wait until nine.
Three of the thirteen are a guardrail refusing something. That ratio is the design, not an accident.
52 open roles at one site. Strategy puts it at the top of "start here", with the reachable pool beside it and an estimate of what a drive would produce.
2,400 people within 60 km, lawful to message, not in cooldown, not suppressed, and not already claimed by another drive.
Ten gates, each refusal logged by name. Nearly a quarter of the cohort never reaches the channel — and the log of what was refused is how you tell a throttled drive from an idle one.
Language detected, intent classified, and the location resolved against our own site table with a real distance. The model is never asked to recall a site.
It says it is an AI and asks to record in its first sentence, then answers from the same site table and the same guardrails as the chat. One policy, two channels.
Not a spreadsheet. Ten people with a call button and a box for what happened — and what happened is what every board upstream is built from.
A reply nobody can explain is a reply nobody can fix — and on a channel where one complaint rate costs you the number, unexplainable replies are the whole risk. Five engines, colour-coded, on every turn.
A salary figure. A promise of the job. That the process is free. All three are enforced on output rather than asked for in a prompt — nine replies in one sample told candidates a paid process was free, which is how that rule came to be code instead of a sentence.
The voice agent is not a second brain. It calls the same grounded tools as the chat assistant, so the two cannot give one candidate two different answers.
One of the four seeded calls was never dialled. The handoff qualified at 20:51 and the window closes at 21:00; by the time the call would have connected it was 21:01, so the gate refused it and queued it for nine the next morning. Deferred, not dropped — dropping it loses exactly the candidate the whole track exists to catch.
Not "sentiment". What people asked, whether the answer was right, and what to do about the ones that were not — with the worst topic named in the headline rather than buried.
Seven topics, each with the real questions behind it and a correct / partial / wrong split. Location answers went from 61% to 94% correct in three weeks; accommodation sits at 41% and the fix is a data feed, not a prompt.
Twelve stages from reachable pool to started work, per track and combined, with the biggest chaseable drop flagged: 4,858 people read the message and said nothing.
120 starts claimed out of 1,864. One site had 227 people join where we can claim 2 — which is exactly the site with 2,410 untouched contacts and no drive ever run.
Two voices, 50.2% against 50.1%. The segments disagree where the total does not — and the demo says the test has not concluded rather than declaring a winner.
A real decision ladder — ten rules in order, opt-out first — running in the page with no model and no network. Watch which rule fires on each message.
The one column about the site rather than the machine: how many handed-over candidates were actually called. Two sites are below 60%, and that is the cheapest fix in the product.
68,200 messages to 21,840 people, one block, quality GREEN throughout. Not because the copy was clever — because a great many messages were never sent.
A message refused by a later gate must not have consumed a slot. Getting that order wrong spends a day's quota on messages that were never going out.
A paused drive and a dead fleet are not the same event and never share a colour. A console that cries crimson nightly gets ignored on the morning it matters.
A site supervisor gets three screens, because their whole job is ten people to call and every extra screen is a way to get that wrong.
Launches drives, reads the engine, holds the kill switch.
Watches the number, tightens a ceiling, can stop everything. Cannot launch a drive.
One site, one queue, one box to record what happened.
Reads the boards. Changes nothing, anywhere.
Eighteen screens, four roles, six conversations and four calls — all of it seed data, none of it pretending otherwise.
Open the demo console →