Case study — 07 · Product

Multi-Agent Marketing System

Two agents on one platform, with a person approving everything before it ships. One researches an industry and takes a position; the other plans a week of posts reviewed as a batch.

The problem

What it was like before

Summarising what other people have written is a solved problem and a worthless one. Anything that reads like a digest of other articles is ignored, correctly.

The useful output is a position — this is what is actually happening in this industry, and here is what we think about it. That requires research, clustering and judgement, and it requires a human to agree before it goes out.

How it looks

Two in, one gate, feedback out

Both agents converge on a single human review, and what is rejected steers the next draft.

Research agentwhat the industry is working throughPlanning agenta week, planned as one setReviewapprovedShipsrejectedRouted backit steers the next draft
What we built

What it does

A research agent

Finds what an industry is genuinely working through, rather than what was published about it.

Clustering into themes

Related material is grouped so a position can be taken on a theme rather than on a single article.

A position, not a summary

The output argues something. That is the point of it.

A planning agent

Lays out a week of posts as a coherent set rather than as seven unrelated items.

Batch review

A person reviews the week at once, which is a realistic amount of attention to ask for.

Rejections steer the next draft

Approval is not a gate that merely stops things; what gets rejected shapes what comes next.

Where it got to

In production

HumanApproval before anything ships
BatchA week reviewed at once
RoutedRejections steer the next draft
Our view

The approval step is a feature

It is tempting to measure an agent by how little human involvement it needs. For anything that speaks in your name, that is the wrong measure.

Batching the review is what makes the human step sustainable. Approving one post at a time is a job nobody keeps doing; approving a week at once is a meeting.

Built with

Tech stack

  • LangGraph
  • FastAPI
  • Claude
  • pgvector
  • PostgreSQL
  • Next.js
  • Python
The work behind it

Delivered under Workflow Automation and AI Agent Development.

More work

Other things we have built.

Banking

Sanctions Screening Agent

Watchlist alerts arrive all day and most are false matches. The agent clears the obvious ones against a rule engine backed by an LLM and sends every disagreement to a person with the evidence already assembled.

Read it
Banking

Law-Enforcement Request Intake

Requests arrive as letters with scanned attachments. The agent reads the mailbox, OCRs the attachments, verifies identifiers against core banking, classifies the intent and routes it — with an audit trail behind every step.

Read it
Banking

Internal Policy Assistant

Staff ask a policy question in plain language and get an answer drawn strictly from approved documents, with the source named. Nothing leaves the bank, and the assistant says so when the documents do not answer.

Read it
Compliance

CTR to goAML Conversion

A compliance team spent hours a week turning Currency Transaction Reports into goAML XML by hand. Parser, XML builder, schema validator and audit trail, behind a interface officers actually use.

Read it
Compliance

Regulatory Reporting Engine

A registry of every periodic return a bank owes. The engine pulls the data, builds each report against the mandated template, then schedules and submits it behind a maker-checker step.

Read it
Product

Autonomous Social Media Agent

A ReAct loop that researches, reads its own history to avoid repeating itself, writes a strategy memo, critiques its own drafts, publishes, and learns from every rejection.

Read it
Healthcare

WhatsApp Booking Agent

Patients book on the number a clinic already advertises, at any hour, in the language they normally write. Only genuinely free slots are offered, and anything clinical goes to a person immediately.

Read it

Have something like this?

Describe the process and we will come back with whether it is worth automating, roughly what it would take, and what we would build first — or tell you plainly if it is not a job for us.