Five-Step AI Workflow with Human Oversight
Each step shows the workspace, what the AI completed, and what still needs human review.
Steps 3 and 5 need a person. Step 3 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 a Growth-Stage Accounting Firm Built a Support Agent That Replies from Guides and Past Answers
Answers a client's question in the time it takes to read it, from the firm's own guides and past answers, and never sends a line it cannot point to a source for. Written for a firm where the questions repeat but the answers must not vary: every reply carries where it came from, every conversation ends on a real ending, and the only things reaching the team are the questions that genuinely need a person. Five stations, run as a loop: what the weekly review approves is what next week's answers are built from.
What Was Broken
What We Built
Five stations and 11 subagents. Each subagent carries its own tasks and its own refusal.
How It Runs
Inquiry Intake
Nobody is asked anything hereAgents watch every channel a client can write on, match each message to the client and to any open conversation, and give it a type and an urgency before anything answers it. Nothing waits on a person here. A message only reaches somebody when a later station cannot settle it.
Answer Drafting
Nobody is asked anything hereAgents search the firm's guides and past answered tickets for the passage that answers this question, draft the reply, and release it only when every line traces back to a source. A person sees an answer only when its sources come up short, and then at station 3, not here.
Team Handoff
A person answers hereAgents put each held conversation with the team member who owns that client, with the whole story attached: every turn, the sources tried, the reason the bot stopped, and a drafted reply to start from. This is the station where a person works. Everything else exists to keep this queue short.
Conversation Closing
Nobody is asked anything hereAgents follow each answered conversation to a real ending, close it on a confirmation or a settled silence, and file the whole exchange to the client's record where the next person will find it. A person signs nothing here. The answer already went out, from the bot or from the team, and what cannot be closed cleanly goes back through station 3.
Weekly Review
A person answers hereAgents count the week off the tickets themselves, group everything that beat the bot by what actually caused it, and draft the knowledge-base changes that would have settled the repeats. A person signs what publishes. A person works here, because next week's answers are built from whatever this station approves.
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 message that matches no client on file gets attached to the closest name instead of held. One client's question lands in another client's history, and the answer that comes back is built on the wrong account.
An answer nobody can trace to a source goes out anyway. The client acts on it, and when it turns out wrong, nobody can say where it came from or which other answers share the flaw.
A conversation goes quiet with the client's question as the last message, and the system closes it as done. The client asked, heard nothing, and the record says the matter was settled.
A question whose right answer is a partner's judgment gets written into the knowledge base as a plain fact. Next week the system answers it automatically, and the partner never sees the call being made in their name.
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.
inbox-watchqueue/open/<ticket-id>.jsonhold-unknown-senderqueue/**, clients/** read-onlyanswer-buildqueue/answers/<ticket-id>.jsonno-source-foundqueue/**, kb/** read-only, clients/** read-onlyescalation-briefqueue/handoff/<ticket-id>.jsonawait-human-replyqueue/handoff/**, everything else read-onlyclose-ticketrecords/closed/<ticket-id>.jsonclose-blockedrecords/**, queue/** read-onlyreview-and-learnkb/drafts/<article-id>.md, reports/week-<n>.jsonapprove-kb-changekb/**, records/** read-onlyStack
Every system this agent reads or writes.