TL;DR
Narration-of-Thought is a structured system prompt with five mandatory sections that forces the model to list everyone affected, trace consequences two steps ahead, and admit uncertainty before it tells you "here's what to do."
Ask an LLM to help with a hard call (fire an employee, take a job offer, change contract terms) and it almost always names only one side ("you" or "the company") and never admits it can't know the outcome in advance. It just goes ahead and recommends, confidently. Not because the model is malicious, but because it has no built-in "how many people does this touch" counter and no "say you're not sure" trigger. The result: advice that sounds decisive but only looks in one direction.
NoT bolts that counter straight into the prompt. Five sections (protagonist → stakeholders → consequences → uncertainty → decision) are worked through in order within a single request. Until the model has named every party and said "here's what I don't know," it never gets to the final answer.
Want this for your own case? Apply this study to your task: AI adapts its method to what you are working on and writes the prompt.
Method Blueprint
One request, five sections in a row:
SECTION 1: PROTAGONIST
→ Who is making the decision, what role, what they know
SECTION 2: STAKEHOLDERS
→ Everyone the decision affects and what is at stake for each
SECTION 3: CONSEQUENCES
→ Every course of action × every stakeholder × 2 steps ahead
SECTION 4: UNCERTAINTY
→ What remains unknown about each option
SECTION 5: DECISION
→ The choice and its justification: why this path beats the alternatives
All inside one prompt, no separate requests.
Example in Action
Task: Evan is COO of a small digital agency (25 people). One of the senior designers has been blowing deadlines for the third month in a row. Clients are starting to complain. The designer is key to two big projects and has a mortgage and a toddler. Evan can't decide: fire them, move them to another role, or give them one last chance?
Prompt:
You are an analyst who helps people make tough workplace decisions.
Before giving advice, work through five mandatory sections strictly in order.
Do not move on to the next section until you have finished the previous one.
---
SECTION 1 — PROTAGONIST
Describe in the first person: who I am, what my role is,
what I know about this situation and what I don't know.
SECTION 2 — STAKEHOLDERS
List everyone this decision will affect.
For each: who they are and what exactly is at stake for them.
SECTION 3 — CONSEQUENCES
Take each possible option.
For each option × each stakeholder:
what happens at step 1 and at step 2?
SECTION 4 — UNCERTAINTY
What do I genuinely not know about each option?
Which assumptions could turn out to be wrong?
SECTION 5 — DECISION
Only after the four sections above:
which option and why, based on what you worked out above?
---
Situation: [describe your specific situation]
Result: The model walks through all five sections in order. The "Stakeholders" section will include not just Evan and the designer but the team, the clients and the projects. In "Consequences," each option unfolds several steps out for every party. In "Uncertainty," the model names what it doesn't know: the real reason for the missed deadlines, whether there's a personal crisis, how the team will react. Only then does the advice arrive, with concrete reasoning and flags for the conditions under which it might not work.
Why It Works
The LLM problem on hard questions. When you ask for advice, the model generates text in the same pattern as most advice on the internet: quick reasoning → confident recommendation. That's how most articles and posts in the training data are written. The "list everyone who gets hurt + admit uncertainty" pattern is much rarer. The model isn't "being lazy"; it's reproducing the most common format.
The LLM's strength. Models are excellent at following explicit structural instructions. Say "fill in exactly five sections in order" and it will. The prompt's structure becomes the rails generation runs on. And the "narrative story with characters and consequences" pattern is well represented in the training data: that's exactly how case studies, business cases and situation breakdowns are written.
How the method exploits this. NoT doesn't say "think harder"; it builds the steps into the structure. The model can't reach "Decision" without filling in "Stakeholders" and "Uncertainty." It's like a pre-flight checklist: the pilot can't skip an item because the form won't let them.
Control knobs: - Consequence depth: in "Consequences," ask for three steps instead of two to get a longer-range analysis - Number of options: put an explicit list in the setup so the model doesn't invent options on its own - Stakeholder specificity: ask it to name the actual people you know rather than categories ("the team") - Decision format: in section five, add a condition: "if assumption X turns out to be wrong, what changes in the decision?"
Prompt Template
You are [an analyst role suited to your task].
Before giving advice, work through five sections strictly in order.
Do not move on to the next section until you have finished the previous one.
---
SECTION 1 — PROTAGONIST
Describe in the first person: who I am, what my role is,
what I know about this situation and what I don't know.
SECTION 2 — STAKEHOLDERS
List everyone who will be affected by {decision}.
For each: who they are and what exactly is at stake for them.
SECTION 3 — CONSEQUENCES
For each option in {list_of_options}:
what happens to each stakeholder at step 1 and at step 2?
SECTION 4 — UNCERTAINTY
What don't I know about each option?
Which assumptions could turn out to be wrong?
SECTION 5 — DECISION
Only after the four sections above:
which option, why, and under what condition would the answer change?
---
Situation: {situation description}
Options: {list of decision options}
Placeholders:
- {decision}: the subject of the decision, e.g. "leaving the company," "raising prices," "launching a new product"
- {list_of_options}: concrete options, e.g. "fire / reassign / give one last chance"
- {situation description}: your specific situation; the more detail, the sharper the breakdown
🚀 Quick start: paste into the chat:
Here is the NoT template for working through hard decisions.
Adapt it to my task: [your situation].
Ask me questions to fill in the fields.
[paste the template above]
The LLM will ask about your options and the key people around the situation, because without those it can't fill in "Stakeholders" and "Consequences," which is where the method's value lives.
Why It Works: For the Skeptic
You might object: "I'll just write 'consider all sides' and get the same thing." The researchers tested exactly that. They ran an elaborate CoT prompt ("think in detail, from different angles, accounting for uncertainty") with the same token budget as NoT and found that binary failures did drop, but continuous stakeholder density and uncertainty acknowledgment stayed significantly higher with NoT. It's not about word count; it's about structure that literally won't let the model move on until each section is filled.
Limitations
⚠️ Overkill for simple questions: Running "which font is best for my slide deck" through NoT is a waste of tokens. The method shines where several people with different interests are involved.
⚠️ Responses get 5-7x longer: That's a feature, not a bug. If you need quick, short advice, NoT isn't the tool.
⚠️ Anthropic models still leave 20-25% of uncertainty unacknowledged: The prompt reduces uncertainty suppression, but for some models not to zero; that's a limit of the architecture, not the prompt.
⚠️ Not for factual questions: The method is about decisions with value conflicts, not "what is GDP" or "how do I write a Python function."
How They Tested It
The researchers took a set of 100 ethical dilemmas (DailyDilemmas), real everyday situations like "fire or don't fire" and "speak up or stay quiet," and ran them through four models from three vendors: OpenAI (gpt-5.4-nano), Anthropic (claude-haiku and claude-sonnet), and xAI (grok). They compared three conditions: the bare question, the standard "think step by step," and NoT.
They measured two concrete signals: how many distinct parties are named in the response (stakeholder count) and how many acknowledgments of uncertainty appear before the final conclusion. The logic is simple: if the model doesn't name people, it isn't accounting for them. If it doesn't hedge, it's more confident than it should be.
Interesting twist: to rule out a "just more text" effect, they ran a control experiment with the same token count but no structure. The result was decisive: length alone doesn't create quality. Structure matters.
The team also checked which NoT section drives which effect by removing them one at a time. It turned out each section contributes its own effect with no overlap: drop "Stakeholders" and the party count falls; drop "Uncertainty" and the hedges disappear. The prompt works like a surgical instrument, not a single monolith.
Original from the Paper
Algorithm 1 — Narration-of-thought (NoT): generation procedure
Build NoT system prompt π_NoT requesting five first-person sections:
(1) PROTAGONIST: name role and epistemic state
(2) STAKEHOLDERS: parties intersecting the decision
(3) CONSEQUENCES: each action ≥2 steps forward
(4) UNCERTAINTY: what remains genuinely unknown
(5) COMMITMENT: chosen action and narrative warrant
Generate trace:
t ← G(π_NoT ⊕ s; Θ)
// G = generator model, s = dilemma scenario, Θ = decoding params
Code metrics with judge J's rubric:
(sc, mh, us) ← J(t)
// stakeholder count, max causal hops, uncertainty score
Derive failure-mode tags (deterministic):
STAKEHOLDERCOLLAPSE ← sc ≤ 1
UNCERTAINTYSUPPRESSION ← us = 0
Context: This is the full procedure for a single NoT run. The authors fed each dilemma to a generator with the NoT system prompt, then used a separate judge model to code the metrics. For use in a chat you only need the "Build NoT system prompt" part; the metric-coding steps are handled by the model itself inside its answer.
Adaptations and Extrapolations
💡 Adaptation: negotiations and conflicts of interest
NoT works not just for personal decisions but for negotiation prep, too. Put the model in the other side's shoes and have it walk through all five sections from the counterparty's point of view.
You are my negotiating counterpart who wants to renegotiate the contract terms.
Work through five sections in the first person (as the counterpart):
SECTION 1 — WHO I AM
My role, what I know, what authority I have.
SECTION 2 — WHO ELSE IS AFFECTED
Who stands behind me: shareholders, team, clients,
whose interests I represent.
SECTION 3 — WHAT HAPPENS
If I accept the current terms: what happens
to me and the people behind me at step 1 and step 2?
If I refuse: same question.
SECTION 4 — WHAT I DON'T KNOW
Which facts about the other side are unknown to me?
What could change my position?
SECTION 5 — MY POSITION
What do I want to get, and why is it justified?
Negotiation situation: {description of the situation and current terms}
This gives you a map of the other side's motivation, complete with their stakeholders and blind spots. Handy before any high-stakes negotiation.
🔧 Technique: swap categories for names → sharper analysis
If in "Stakeholders" the model writes "the team" instead of "Jake, the team lead," add an explicit requirement to the prompt:
In the STAKEHOLDERS section, name specific people by name, role and personal stake. Do not use generalizations like "the team," "clients," or "the market."
Effect: When the stakeholders are concrete, the consequences in section three get concrete too. An abstract "team" produces an abstract "drop in morale." A concrete "Jake, who has been here 4 years" produces a concrete "loses the project he's spent a year on."
🔧 Technique: multi-party discussion (extended NoT)
For a decision where the parties have fundamentally different interests, run NoT from each party's perspective in separate requests, then ask a moderator model to synthesize.
[Request 1] Run NoT from the perspective of: Party A — {description}
[Request 2] Run NoT from the perspective of: Party B — {description}
[Request 3] Run NoT from the perspective of: Party C — {description}
[Request 4] Here are three positions. You are the moderator.
Find where the positions can be reconciled
and where the conflict is fundamental and can't be solved by compromise.
Propose an integrated solution that addresses
each party's key objections.
That's the multi-agent protocol from the paper, implemented by hand across a few chats without a single line of code.
Resources
Narration-of-Thought: Inference-Time Scaffolding for Defeasible Ethical Reasoning in Large Language Models
Patrick Cooper, Alvaro Velásquez
Department of Computer Science, University of Colorado Boulder
{patrick.cooper, alvaro.velasquez}@colorado.edu
Dataset used for testing: DailyDilemmas (Chiu et al., 2025)
Methodological source for the multi-agent part: Gottweis et al. (2025), Lu et al. (2024): multi-agent systems for scientific discovery
Basis for the CoT comparison: Wei et al. (2022), Kojima et al. (2022)