Most projects with an AI component start the same way: a client talks for an hour, someone takes rough notes, and a week later a document appears that nobody is quite sure is right. I built a LangGraph agent to run that first conversation properly. It interviews the client, drafts a blueprint from the answers, and then stops and waits for a person to approve it before anything moves on.

This post explains why I built it that way, and why the waiting step matters more than the AI.

The problem with the first conversation

Discovery is where projects are won or lost. A missed requirement here costs far more to fix once something is built on top of it. But discovery is also repetitive: the same questions, asked in a different order, with the answers scattered across call notes and messages.

I wanted a consistent way to capture what a client actually needs, in a form that can be reviewed, corrected and signed off.

What the agent does

  1. Interviews the client. It asks questions, follows up on vague answers, and keeps the conversation moving instead of presenting a static form.
  2. Drafts a blueprint. The answers become a written plan: what the client wants, how the work is scoped, and what has to be decided.
  3. Waits for approval. The agent does not carry on by itself. A person reviews the blueprint, and only an explicit approval lets the process continue.
An agent that drafts is useful. An agent that drafts and then waits for a human is something you can actually trust with client work.

Why I used LangGraph

A conversation with a client is not a straight line. The agent has to ask, listen, decide whether it knows enough, go back and ask more, and only then draft. LangGraph lets me model that as a graph of explicit steps, with clear rules for moving between them, instead of one long prompt that hopes for the best.

It also makes the approval step a real part of the flow, not an afterthought. The agent reaches a defined point, stops, and resumes only when a person says yes.

Why human approval is the point

It is tempting to let an agent run end to end. For anything that shapes scope, price or commitments, I don't think that is wise. The model can misread a client, fill a gap with a plausible guess, or treat an unclear answer as settled.

Putting a person at the checkpoint means the AI saves the time spent on writing up, while a human still owns the decision. The client sees a blueprint they can correct, and nothing is built on an assumption nobody checked.

What I would tell anyone building one

This agent is one of several I have built around the same idea: AI does the repetitive work, and people keep the decisions. If you are planning something similar for your own client intake or internal process, I am happy to talk it through.