A transparent account of what the simulator does and exactly how AI agents are used to produce each negotiation — including what they do not do.
The Diplomatic Simulator replays multi-party diplomatic negotiations. Each delegation in a scenario is played by an AI agent that argues from that government's real negotiating brief. The output — a round-by-round transcript, a tactic analysis, and a convener report — is generated end-to-end by large language model agents. This page documents that process so the results can be read with the right amount of trust.
Every statement, score, and summary on this site is generated by an AI language model role-playing a government. It is notional and educational — not a forecast, not intelligence analysis, and not the position of any real government or official. Scenarios are adapted from academic crisis-negotiation exercises (see Provenance). Treat the simulator as a structured thought experiment, not a source of fact about world events.
Each scenario moves through six stages. Stages 1–5 are the same reusable toolchain (sim/); only the source documents change.
build_session.py, inject.py, build_report.py) stitches the agent outputs into a session record, normalises the self-tagged tactics, and renders the interactive table and this report page. No model is involved here.The core design choice is information isolation. Real diplomacy runs on private information; so does this simulator. When a delegation agent writes its statement for a round, it is given only:
The agent is instructed to stay in role, ground its claims in its brief, protect its secret bottom lines, and — for the analysis layer — self-tag the negotiating tactics it used from a fixed vocabulary (e.g. anchoringconditional-offerred-line-signaledissue-linkagecoalition-buildingappeal-to-law). It writes one statement and nothing else; it does not see other delegations' private reasoning, only their public words.
A profile says what a delegation wants — its end-states, red lines and tradeable concessions. It says much less about how that delegation bargains. Two delegations with identical objectives can behave completely differently: one concedes early to build momentum, the other holds everything to the last hour; one treats the chair's agenda as binding, the other as an obstacle. Each profile therefore also carries a behavioralProfile block of seven dimensions, each a controlled value with a short note grounding it in that delegation's own role, BATNA or privileged instructions.
| Dimension | Values | What it governs |
|---|---|---|
| Temperament | imperturbable · measured · guarded · warm · brittle · volatile | Affective baseline, and what pressure does to it |
| Risk tolerance | low · moderate · high | Appetite for the BATNA, the walkout, brinkmanship |
| Time horizon | urgent · patient · attritional | Whether delay costs this party or pays it |
| Concession pattern | front-loading · reciprocal · end-loading · withholding | When and on what terms it gives ground |
| Procedural posture | convening · chair-deferential · rule-exploiting · obstructive · agenda-foreclosing | Its relationship to the chair, the agenda and the format |
| Trust posture | verification-first · conditional · relationship-first · assumes-bad-faith | What it requires before believing a commitment |
| Register | declamatory · legalistic · plainspoken · elliptical · conciliatory | Rhetorical mode — how the argument is made, not what it is |
Because the values are coded rather than free prose, they can be counted across the corpus: no two delegations at the same table share all seven, and the average pair differs on 4.9 of the 7. The register dimension is the one to watch against cross-party bleeding — if delegations authored as declamatory and legalistic end up sounding alike in transcript, that is measurable homogenization rather than an impression.
Provenance, stated plainly. These blocks were authored in a later pass as a structured reading of profiles that already existed — they are not output of the original per-country extraction agent, and they were not present when any published transcript was generated. Nothing on this site was produced under their influence. They are a lens over the corpus and an input available to future runs, not a record of how these runs were made.
They are not yet an experimental variable. A disposition is authored per delegation from its source pack and held constant across runs of that scenario, exactly like a red line. Testing whether disposition changes outcomes needs the opposite arrangement — the same profile played under deliberately different dispositions — which is a separate design and is not what is published here.
| Round | Phase | What each delegation does |
|---|---|---|
| 1 | Opening plenary | Headline priorities, framing, opening anchors, coalition signals |
| 2 | Positioning Arctic only / Bargaining | React to rivals by name; defend challenged red lines; probe for trades |
| 3 | Bargaining & coalitions | Table concrete conditional offers and packages; form coalitions; use linkage / side-payments |
| 4 | Closing plenary | Assess progress; state supported understandings and remaining gaps; propose a way forward |
The flagship Arctic scenario runs four rounds; the others run three (opening → bargaining → closing).
After the talks conclude, a single analyst agent reads the whole transcript alongside every delegation's profile and judges how well each side achieved its stated objectives. It outputs:
These numbers are an AI's subjective judgement of an AI-written transcript. They are internally reasoned and differentiated across parties, but they are not measured outcomes and carry no ground truth. Read satisfaction as "how the analyst rated the argument on the page," not as a real assessment of national interest.
What a Monte Carlo simulation is. A single negotiation run tells you one story. But the result depends on chance and on conditions no one controls — a sudden crisis, the mood in the room, who has leverage that week. A Monte Carlo simulation answers a different question: if we ran this many times under many different conditions, what range of outcomes would we see, and how often? The technique — named after the casino — is simple: (1) identify the uncertain inputs, (2) draw random values for them, (3) run the model once for that draw, and (4) repeat many times and look at the distribution of results rather than any single run. Where a point estimate says "the deal fails," a Monte Carlo says "the deal fails in 2 of 8 runs, usually when a hardline shock coincides with a confrontational mood" — which is far more useful for judging how robust or fragile an outcome is.
For each scenario we re-simulate the negotiation many times, and each trial randomizes four exogenous conditions:
An agent simulates the negotiation's outcome under that specific draw — who concedes, which coalitions form, whose red lines hold, and whether a deal is reached — and returns a structured result (deal type, per-party satisfaction, goal status, red-line holds). Across the trials we aggregate the distribution: the mix of deal types, each delegation's satisfaction spread (mean and min–max range), how often each red line survives, and which coalitions recur. A wide spread means the outcome is condition-sensitive; a tight one means it is robust. Results are on the Monte Carlo page.
Reduced-form, and still not a forecast. To keep this affordable, each trial is a single-agent outcome simulation conditioned on the random draw — not a full re-run of the multi-round negotiation. So the Monte Carlo samples the model's distribution over plausible outcomes, not an empirical distribution of real events. The randomized conditions are illustrative, not calibrated probabilities. Read it as "how sensitive does the model think this outcome is to shocks and mood," never as odds on real diplomacy. Trial counts are shown per scenario on the Monte Carlo page (40 each, plus 20 for the Strait of Hormuz demonstration). A further caveat added 2026-07-22: the trial outcomes are authored under each randomized draw rather than sampled from re-run negotiations. That means a result like "0 comprehensive settlements across every scenario" partly reflects how the trials were written, and is not independent evidence for the claim it appears to support.
Richer delegations. Each delegation profile now carries a cultural-background note, a named diplomatic style (for example wolf-warrior assertiveness, cowboy directness, reserved consensus-seeking, or bamboo diplomacy), its real alliances, and its key figures — the actual head of government and foreign and defence ministers as of mid-2026, characterised from public reporting. These are sourced characterisations of office-holders, not claims about any individual’s private conduct, and they are labelled as such on the dashboard.
Group dynamics. Each Monte Carlo trial now records its blocs rather than a flat coalition label: whether a bloc is a standing alliance (NATO, the US-Japan-ROK trilateral, the China-Russia axis) or a situational partner of convenience, and whether its cohesion is tight, loose, or fractured. The aggregate view reports how often blocs of each type and cohesion recur.
Agreement type and ratification. Outcomes are tagged with the form of any deal — none, communiqué, memorandum, framework, or treaty — and, for each party, whether it could realistically ratify and deliver that outcome at home. A deal at the table is not a deal until it survives ratification, the domestic half of the two-level game.
What “success” means. Because success is party-relative — a breakdown can be a win for a spoiler that prefers no deal — the probability of success is reported as several separate figures rather than one: the share of trials reaching any agreement, the share reaching a framework or better, each party’s primary-goal attainment, and how often red lines and ratification hold. A high in-simulation success rate on a low-plausibility table still says more about the scenario pack than about the world.
Same caveat as the rest of the Monte Carlo layer. These variables are authored under each randomised draw, not sampled from re-run negotiations, so they describe the model’s own distribution over plausible outcomes, not real-world odds.
An editorial layer, not a model output. Each scenario is a teaching pack, and some describe a table that no government would currently join. Alongside the six scenarios we publish a convening-plausibility rating — low, moderate, or high — for how plausible it is, in the real world of 2026, that these parties would actually convene and bargain in good faith in the format staged. This is the author's judgement drawn from the public record, offered as a caveat: it is not produced by the simulator and it is not a forecast.
The ratings. Central Asia rates high — Kyrgyzstan, Tajikistan and Uzbekistan actually signed the Treaty of Khujand fixing their border tripoint in March 2025. Cyprus rates moderate — the parties convene under the UN but remain split between a federation and two states since the Crans-Montana talks collapsed in 2017. The Arctic, the South China Sea, Korea and Jammu & Kashmir all rate low: the Arctic Council's Russia track has been frozen since 2022; China rejects the 2016 arbitral award and any multilateral South China Sea format; the Korean Six-Party process has been defunct since 2009; and India refuses any third-party Kashmir table. That four of the six rate low is itself the point — it cautions against reading any negotiation result here as commentary on how these disputes are likely to move, and it is the same fact the "0 comprehensive settlements" result reflects: the packs describe more willing tables than the real ones.
Model. Every agent in the main negotiations — profile extraction, public brief, delegation role-play, and analysis — is Claude Opus 4.8 (Anthropic), run through Claude Code's agent framework. The lighter-weight Monte Carlo trials use Claude Sonnet to keep that batch inexpensive. There is no fine-tuning and no other provider.
Orchestration. The Arctic scenario was run with direct parallel agent calls. The next three were run as a background workflow that fans out one agent per delegation per round and sequences the phases (setup → profiles → rounds → analysis). Roughly 130 agent tasks produced those four simulations. Korea and Jammu & Kashmir were run later, as direct parallel calls with persistent delegation agents: each delegation is spawned once and resumed by message for rounds 2 and 3, so it carries its own memory of what it said and why, while receiving only the public transcript of the rounds before. That run was 41 agent tasks and completed without failures.
The first orchestration run hit a transient network outage that failed about half its agents mid-negotiation. A targeted re-run then completed the missing rounds and analyses cleanly. No gaps were papered over — every published statement is a real agent output, and the run artifacts (profiles, transcripts, analyses) are committed under sim/scenarios/ for inspection.
Decisions that shape what this simulator does and does not claim are recorded here as they are taken, with the reasoning, so a reader can disagree with the reasoning rather than guess at it.
2026-07-22 — Korea and Jammu & Kashmir were regenerated under information isolation. Both scenarios were first written in a single context: one process produced all six or seven delegations' statements at once. Every statement was still model-generated, but the isolation this page claims — each delegation seeing only its own privileged instructions — did not hold for them. Rather than soften the claim, both were re-run properly: one agent per delegation, each reading only the public brief and its own profile, three rounds in lockstep, each round seeing only the public transcript of the rounds before. The superseded single-context versions remain in git history (commit ac390a5) rather than being deleted, so the difference is inspectable. Known limit: isolation is enforced by instruction, not by sandbox — an agent is told not to read another delegation's profile and could physically do so. Enforcing it properly needs per-agent filesystem scoping, which is not yet built.
2026-07-22 — A mixed-model run was added to test whether the results are an artifact of one model. The independent peer review's central finding is that a single model plays every side, that this is acknowledged but never tested, and that the headline "0 comprehensive settlements" result may reflect the model's disposition rather than anything about diplomacy. Because the isolated Korea run gives a controlled baseline, the test is now cheap: the same scenario, the same profiles, the same prompts and rounds, changing only which model sits behind each delegation. Delegations defending hard red lines (DPRK, United States) stay on the strongest model, since the existing bake-off found weaker models self-breach red lines at dense adversarial tables; the remaining seats are split across mid- and small-tier models. If the same convergences and red-line breaks recur, the original finding survives a real test; if they do not, the finding is about the model, which is more useful to know than to assume.
2026-07-22 — A live news feed alongside the scenarios was considered and declined. The proposal was to attach current headlines, retrieved by a research API, to each scenario page. Two reasons not to. The practical one: this is a static site in a public repository, with no backend and nowhere to hold an API key that would not be readable by any visitor; it would require a scheduled build that fetches and commits a digest. The substantive one: this project deliberately disables search indexing so that AI-invented statements attributed to real governments cannot circulate as reporting. Placing genuine, sourced headlines directly beside fabricated quotes attributed to the actual governments of India, Pakistan or the DPRK works against that, and makes a reader more likely to mistake the invented material for real. If context about how current each scenario is becomes necessary, the intended form is a dated provenance note — "this pack's timeline ends here; here is what has happened since, with sources" — kept structurally separate from the simulated transcript.
2026-07-23 — Behavioural dispositions were added to every delegation profile. Profiles recorded what each delegation wanted but only a single prose line about how it bargained, and that line was never used for anything beyond display. All 42 profiles across the six scenarios now carry a seven-dimension behavioural block, coded so it can be counted rather than only read. Three things this deliberately is not. It is not retroactive: the blocks were authored after every published transcript was generated, so no transcript on this site was produced under their influence. It is not new evidence: each value is a reading of material already in that delegation's profile or source pack, not an additional fact about the delegation. And it is not yet an experiment — dispositions are authored per delegation and held constant, so they cannot currently test whether disposition changes outcomes; doing that requires varying disposition independently of profile, which is a separate design.
Reproducibility. The toolchain and every intermediate artifact are in the repository. Given the same source PDFs, the pipeline (sim/extract_pdf.py → profiles → negotiation → sim/build_session.py → sim/inject.py → sim/build_report.py) reproduces a comparable session; because language models are stochastic, exact wording will differ between runs.
The working paper, reference architecture, and convening behind this project were scoped to respect Microsoft's IP, public-disclosure, and conflict-of-commitment obligations. About 70% of the working paper is publishable as-is from public Microsoft references, EEA / x402 Foundation materials, and existing academic literature; material touching Microsoft Traceability Program internals is treated synthetically or routed through CELA and Microsoft Communications review on a published timeline. The Diplomacy Table reference architecture is built on the open-source DTFS / TwinForge stack and is publishable in full.
Scenario packs are adapted from U.S. Army War College International Strategic Crisis Negotiation Exercise (ISCNE) and related academic crisis-negotiation materials — notional exercise content for educational purposes. The simulator, toolchain, and generated negotiations were built under Ethical Tech CoLab. Negotiation content is AI-generated with Claude Opus 4.8.
“Diplomacy is telling someone to go to hell and they look forward to the trip.”
— an ISCNE maxim