Skip to content
unmatrixai

Agent architecture

LangGraph workflow agents

A LangGraph workflow agent is an agent built as an explicit graph of nodes and edges, where each node does one job and the language model makes decisions only at the nodes designed for it. Unmatrix AI builds these when the process is known and has to be predictable, auditable and easy for your own team to change.

Last updated

Resume screening as a LangGraph workflowA graph runs parse job description, parse resume, redact protected attributes, score against the rubric, then a decide node routes each candidate to book an interview, a human review queue, or a decline draft for recruiter approval. State is checkpointed at every node.PARSE JDrubric, approved oncePARSE RESUMEtyped fieldsREDACTprotected attributesSCORELLM · typed score cardDECIDErecruiter thresholdsABOVE THRESHOLDBORDERLINEBOOK INTERVIEWscheduling link via ATSDECLINE DRAFTrecruiter approvesHUMAN REVIEWinterrupt nodeSTATE CHECKPOINTED AFTER EVERY NODE · RUBRIC VERSION STORED WITH EVERY DECISION
Resume screening as a LangGraph workflow

When is this the right architecture?

  • The process is known and repeatable, with a few decision points
  • You need to see and control exactly where the model is allowed to decide
  • Steps must be retried, resumed or paused for a person without losing state
  • Compliance needs a diagram of the process that matches the code

When is it the wrong one?

  • Open-ended investigations where the next step depends on each result. See autonomous agents
  • One-shot document questions with no process around them. See RAG agents
  • Processes that change weekly and have no owner

Mechanics

How does it work?

  1. 01

    Map the process as a graph

    Every step becomes a node: parse, fetch, score, decide, notify. Edges say what happens next, including conditional edges that a rule or the model chooses between.

  2. 02

    Give the model specific decisions

    Only some nodes call a model, and each has a narrow question with a typed answer: a score, a category, a yes or no with a reason.

  3. 03

    Persist state at every node

    LangGraph checkpoints the state after each step, so a run can pause for human input, survive a restart, or be replayed for audit.

  4. 04

    Add human-in-the-loop nodes

    Interrupts pause the graph where a person must approve, edit or reject. The run resumes from exactly that point.

  5. 05

    Wire tools and systems

    Nodes call your ATS, CRM, email or data warehouse through scoped connectors. Side effects sit in their own nodes so they can be gated.

  6. 06

    Evaluate and ship

    Each decision node gets its own eval set. The graph is versioned, so a change to one node does not silently change another.

Controls

What guardrails ship with it?

  • Model decisions confined to named nodes with typed outputs
  • Checkpointed state and a replayable history for every run
  • Interrupt nodes for human approval before any external side effect
  • Deterministic rules where the law or your policy already says what to do
  • Per-node evals and a versioned graph definition
  • Protected attributes redacted before any scoring step

Worked example

A typical build: resume scoring and screening agent

A talent team receives thousands of applications for each opening. Recruiters spend most of their time on the first pass, and the first pass is inconsistent.

  1. 01

    Parse the job description

    A node extracts must-have criteria, nice-to-haves and knockout rules into a structured rubric that the recruiter approves once.

  2. 02

    Parse each resume

    Experience, skills, education and dates are extracted into the same structure. Names, photos, addresses, age signals and other protected attributes are redacted before anything is scored.

  3. 03

    Score against the rubric

    A model node scores each criterion with a one-line justification. The output is a typed score card, not free text.

  4. 04

    Decide

    A conditional edge routes each candidate: above the threshold, borderline, or below. Thresholds are set by the recruiter, not the model.

  5. 05

    Act

    Eligible candidates receive an email with a link to book an interview slot through your scheduling tool, logged in the ATS. Borderline candidates go to a human review queue. Below-threshold candidates get a decline draft that a recruiter approves before it sends.

  6. 06

    Audit

    Every score, justification and decision is stored with the rubric version, so a candidate's outcome can be explained and the tool can be bias-audited.

Recruiters spend their time on borderline cases and interviews. Eligible candidates hear back the same day.

Stack

What do we typically build it with?

Framework
LangGraph (Python or TypeScript) with LangChain tool integrations
Models
Claude or GPT-class models at decision nodes, smaller models for extraction, open-source models on-prem where required
State
Postgres-backed checkpoints with a queryable run history for audit
Integrations
ATS (Greenhouse, Workday, SuccessFactors), scheduling (Calendly, Microsoft Bookings), email, CRM
Observability
LangSmith or OpenTelemetry traces, per-node evals in CI

Questions

What people ask about langgraph workflow agents

What is LangGraph?

LangGraph is an open-source framework from the LangChain team for building agents as stateful graphs. Nodes are steps, edges are transitions, and state is checkpointed between them, which makes long-running, resumable, human-in-the-loop workflows practical.

How is a LangGraph agent different from an autonomous agent?

In a LangGraph workflow the shape of the process is fixed in the graph and the model decides only at specific nodes. An autonomous agent decides its own path at every step. Workflows are more predictable and cheaper. Autonomous agents handle open-ended work.

Can the resume screening agent be biased?

Any scoring system can be, which is why protected attributes are redacted before scoring, thresholds are set by people, every decision carries a justification, and the logs support a formal bias audit. We recommend one before go-live in jurisdictions that require it.

Does the agent send emails to candidates on its own?

Only the interview invitation for candidates above the recruiter-set threshold, and only if you choose that. Declines are drafted for a recruiter to approve. Both are configurable interrupts in the graph.

Can it plug into our applicant tracking system?

Yes. Nodes read applications from and write outcomes to your ATS through its API. Greenhouse, Workday and SuccessFactors are common.

How long does a build like this take?

A first version scored against your real historical applications runs inside the twelve-week forward deployment, with the remaining weeks spent on thresholds, integrations and handover.

Next step

Pick one workflow. We will be at your office in two weeks.

A thirty-minute call to find the right first workflow, followed by a written scoping note. No deck, no pilot.