Platform · How IIVY runs the job

The product is the algorithm.

IIVY isn't a channel or a chatbot. It's a coordination engine that holds the true state of a project and drives it — reading every message, folding it into a reconciled worldview, judging what the job needs now, acting on the right channel, and recording it as evidence. Phone, text, and email are all how it reaches the job today; the algorithm doesn't change when a new channel snaps on.

The loop

Every event runs the same five steps.

A message on any channel, a deadline coming due, a daily tick — each wakes the same loop. A message-bot replies; a coordinator closes loops. All of it falls out of these five steps.

  1. 01
    Attribute
    Who, which project, which loops
    Identify the person behind the handle, the project it belongs to, and which open items this event touches.
  2. 02
    Reconcile
    Fold it into state
    Close loops that are now resolved, record commitments made, log slippage against the schedule. Owner-stated facts are pinned; IIVY annotates, never silently overrides.
  3. 03
    Judge
    What does the job need now?
    Nothing, record, reply, chase, ripple, or escalate — one reasoning call over the worldview, the roster, and the owner's standing instructions.
  4. 04
    Act
    Answer · message · watch · update
    Answer the asker with citations, message the right person on the right channel, set a watch on its own clock, update the open-loop ledger.
  5. 05
    Record
    Journal it, tune the cadence
    Write the append-only entry — event, evidence, decision, outcome — and adjust chase cadences. The record is a byproduct, never an afterthought.
The step that makes it a PM

RIPPLE: every event asks who else needs to know.

“Footings passed inspection” isn't just a fact to file. It means the electrician's rough-in can start Friday — so IIVY reaches out to confirm he's coming. That forward chain is the difference between a message-answerer and a project manager. Every event gets asked: does this change the plan, and who else needs to move?

What the coordinator holds

A great coordinator doesn't answer messages. It holds state and drives it.

Behind every reply is a live model of the job. This is the state IIVY maintains and reconciles on every event — the reason it can chase, confirm, and remember for months.

Worldview
What's true on the job
Owner-stated facts are pinned as ground truth. IIVY annotates against them and surfaces conflicts for the owner to resolve — it never silently overrides what you told it.
The plan
A living milestone register
What, who, target date, status. Seeded on day zero, confirmed by the owner, maintained as slippage moves dates — the sequence that ripple and lead-times read from.
Open-loop ledger
Everything awaiting someone
What, who owes it, since when, due when, last nudge, next chase. Typed by kind — RFI, change order, submittal, inspection, delivery, COI, punch. A first-class object, not a side effect of replying. This is the job.
Commitments
Promises, with dates
“Architect: revised drawings by Tuesday.” A commitment is a ledger loop with an owner and a due date — captured the moment it's made.
Watches
Timers it sets on itself
“Inspection 9am tomorrow → confirm result by noon.” “Chase RFI-12 if silent five days.” IIVY's own clock, running against the plan.
Journal
The append-only record
Event → evidence → decision → outcome, written deterministically from what each turn actually did. Claims-grade, and it can't be rewritten after the fact.
Instructions
The owner's standing orders
The highest authority — above anything an email or text says. They set what's auto-sendable, when to reach you, and the coordinator's voice.
The speak test

A CC'd coordinator's default is silence.

A coordinator that replies to every message is worse than none. On a CC'd thread, listening is the job. Most inbound turns end with loops updated, commitments captured, and the journal written — and no outbound message at all. IIVY speaks only when one of these holds:

It's summoned
Addressed on the To: line, or named in the body. CC is ambient listening; being addressed is an ask.
It owns the loop
A chase coming due, a confirmation it committed to, an escalation — on its own clock, to the person who owes it. Never a reply-all.
A receipt is expected
A trade texting an end-of-day update earns a one-line ack. Channel norms differ; a text to the project line is inherently addressed to IIVY.
Otherwise: it drafts
An unsummoned question the record can answer becomes a drafted answer for the owner — never an uninvited reply into someone else's thread.
People, not handles

IIVY talks to persons — never phone numbers or addresses.

One mental model of “the architect” across text and email, like a human PM with a phone log and an email trail. And the directory builds itself — nobody fills in CRM fields on a jobsite.

Assembles itself
Learned from the traffic
Every comprehended thread's participants, signature-block cell numbers, and document title blocks feed the directory as proposals. The owner only ever confirms — or answers one pointed question.
Channel per person
Reaches each the right way
Trades by text, architects by email, overridable by your instructions — resolved by role and preference, not by where the last message happened to land.
Discretion is structural
Scoped to who is asking
The owner sees the whole project; a thread participant sees their thread; an outsider gets a polite “which project is this regarding?” — enforced by the same fail-closed access gates the whole product runs on.
Channels are adapters

Add a channel without touching the core.

The core state and loop are channel-blind. Each channel is a thin adapter that turns messages into events and events into deliveries. Phone, text, and email run live today — and a new channel snaps on without touching the core.

ChannelCarries the project viaStatus
Phone (voice)Placed and received calls, transcribed to eventsLive
Text (SMS)The project's provisioned local numberLive
EmailThe project, via the thread and reply chainLive
Slack · Google ChatOne new identifier per channelRoadmap
Procore · AutodeskThe platform's own object IDs, as an event sourceRoadmap
The record

The scoreboard writes itself.

Because every loop is typed and every action is journaled, the results are queryable: loops closed by kind, median days-to-close, chases sent and answered, change orders moved to signature. Your ROI, computed from the record — never claimed.

loops closed / kindmedian days-to-closechases sent · answeredCORs → signatureescalationsspend
See it on your job

The fastest way to understand the algorithm is to watch it work.

Bring a live project. In 30 minutes we'll show IIVY reading your real correspondence, closing loops, and building the record — disclosed, governed by your rules, live the same day.