Six-Step AI Workflow with Human Oversight
Each step shows the workspace, what the AI completed, and what still needs human review.
Steps 4 and 6 need a person. Step 4 is waiting for approval right now. Click it to open the full walkthrough.
Estimates are directional and based on stated assumptions. All names, organizations, and identifying details have been anonymized in accordance with our confidentiality agreements.
How an Enterprise Investment Platform Built a Support Agent That Routes Advice Questions to Human Agents
Answers a customer in seconds at any hour, from sources it can show, and refuses the questions an investment platform must keep with a person: advice, complaints, anything it cannot evidence. Six stations, run as a loop: the handoffs a person settles at station 4 become the articles station 3 answers with next week.
What Was Broken
What We Built
Six stations and 13 subagents. Each subagent carries its own tasks and its own refusal.
How It Runs
Conversation Intake
Nobody is asked anything hereAgents watch every channel a customer can write on, thread each message to the conversation it continues, and tie the sender to an account before anything answers. Nothing waits on a person here. An unverified sender only reaches somebody through station 4.
Inquiry Triage
Nobody is asked anything hereAgents work out what the customer wants done, pull out the account and amounts the message names, and send straight to a person anything the platform's rules keep away from a bot. A person sees an inquiry here only when it is theirs by rule: advice, complaints, anything unclassifiable.
Answer Drafting
Nobody is asked anything hereAgents search the help articles and past resolved tickets, draft the reply from the passages found and nothing else, and send it only when every line traces to a source. A person never reviews a reply here. A draft with no source behind it goes to station 4 instead of a customer.
Agent Handoff
A person answers hereAgents assemble everything the bot could not or must not answer into a one-line brief with the whole history behind it, and put it in front of the team that owns that kind of question. This is the station where a person works. Everything else exists to keep this queue short.
Ticket Closing
Nobody is asked anything hereAgents watch each conversation to its end, close what the customer has confirmed or gone quiet on, and write the record with the transcript, the sources used and who answered. A person signs nothing here. The answer already happened at station 3 or station 4; this station only refuses to call it settled too early.
Service Review
A person answers hereAgents assemble the week's counts, group the handoffs by what actually caused them, and draft the articles and intents that would have kept those handoffs from happening. A person reads what the bot wants to start saying and approves it, changes it, or bins it. The bot does not teach itself.
Where a Person Decides
Operating Model
This changes how work flows through the team.
What Transfers, What Must Be True
Failure Modes
What breaks this pattern:
A partial name match looks like a verified customer, so the bot attaches the account and starts answering. Someone else's account details land in a stranger's chat.
An advice question matches a topic the bot knows, so it answers. The company is now on record giving advice the platform says only a person may give.
When no passage fits, the nearest one reads close enough, and the bot writes around the gap. The customer gets a confident answer that nothing in the knowledge base actually says.
The customer asks one more thing and the bot has nothing left to say. The ticket closes as resolved, and the reports count a customer who never got an answer as served.
Directional Outcomes
What the agent counts, and the station that counts it.
These counts are the tallies from one monitored run of the agents. They are not monthly or annual totals.
What Runs Where
Every step names the subagent that does the work, the record it writes, the thing that raises a question for a person, and what it is allowed to touch. This is drawn from the source, not from a diagram somebody kept in sync by hand.
watch-channelsconversations/inbound/<conv-id>.jsonidentity-unresolvedconversations/**, accounts/** read-onlytriage-inquiryconversations/triaged/<conv-id>.jsonreserved-for-a-personconversations/**, rules/** read-onlydraft-replyconversations/replies/<conv-id>.jsonno-supporting-sourceconversations/**, kb/** read-onlyhandoff-briefconversations/handoff/<conv-id>.jsonawait-agent-pickupconversations/handoff/**, everything else read-onlyclose-tickettickets/closed/<conv-id>.jsonheld-open-unansweredtickets/**, conversations/** read-onlyreview-weekkb/proposals/<id>.json, reports/week-<n>.jsonapprove-what-the-bot-sayskb/**, reports/**, tickets/** read-onlyStack
Every system this agent reads or writes.