Negotiation Agent

A procurement negotiation agent where the LLM has zero authority. A deterministic engine makes every accept, counter and walk-away call; a language model only drafts the words.

The live app (FastAPI backend with Claude Opus and Haiku) is paused since November 2026. These two demos run entirely in your browser, and every number in them is real output from the engine.

One negotiation, both sides visible

Buyer and supplier side by side, so you see the information gap a real deal hides. Open the reasoning under any buyer message: the engine's decision, the approved numbers, and the guard that rejects a figure the engine did not approve. Message prose comes from persona templates here.

Open self-play

1,000 suppliers at once

The tail spend nobody negotiates by hand. Press play and watch the category close in waves, then click any supplier to see both sides' private utilities and why the trade was smart, not just fast.

Open the fleet

Engine, guard and minutes are a faithful JavaScript port of the Python core. Source, tests and design: github.com/eugnmueller-87/Negotiation-Agent.