← All work

Founder · 2026 – now · Building now

Again

An AI sales agent for wholesale distributors that wins back the small customers no sales rep has time for.

50 / 50

agent vs. untouched control group

Role
Founder, sole builder
Since
2026
Stack
Python · Claude API · SQLite · Next.js

01The problem

A wholesale distributor sells to hundreds of small resellers. Sales reps spend their time on the big accounts, so when a small shop quietly stops ordering, nobody notices for months. Each one is small; together they add up to a lot of lost margin.

02What I built

Again is an AI sales agent that works those small accounts.

  • A model over more than four years of a distributor's invoices finds who has gone quiet and what each customer should be reordering.
  • Agents write a tailored offer in Hungarian for each one, checked against stock and price rules before anyone sees it.
  • A person approves every message before it goes out. Nothing reaches a customer on the agent's own authority.
  • An operator console for reviewing and approving the agent's work. There's an open demo on synthetic data at app.againai.co.

03How it will be measured

Small accounts are split at random. The agent works one half and the other half is left alone. The difference in margin between the two halves is the result, and the fee is a share of that measured extra margin. It's the only number I'd trust, and the only one a distributor should pay for.

04How I built it

The scoring model is Python and pandas and runs without network access. Offer writing uses the Claude API, state lives in SQLite, and the console is Next.js. 115 automated tests switch the language model off and never touch the network, so every rule is checked on every change.

I designed the agent loop and decided where each rule is enforced. AI coding agents wrote the code.

05Results

None yet, on purpose: there are no numbers until the controlled pilot has run. The pilot design is agreed with the distributor's CEO, and a rehearsal on its real data ran in October. The pilot on its small accounts comes next.

06What's next

Run the pilot with its control group, then sign a second distributor in a different sector to show the agent isn't tuned to one company.

Screens

Open demo console on synthetic data: invented distributor, customers and results

Overview of a simulated pilot: margin gained, offers waiting, replies and orders
Overview of a simulated pilot: margin gained, offers waiting, replies and orders
Offers drafted in Hungarian, each checked and waiting for a person's approval
Offers drafted in Hungarian, each checked and waiting for a person's approval
The customer base, split into the agent's half and an untouched control half
The customer base, split into the agent's half and an untouched control half
Measurement: margin per account, agent half against control half (simulated)
Measurement: margin per account, agent half against control half (simulated)
Next case studyRefshot→