Skip to content

Latest commit

 

History

History
75 lines (43 loc) · 4.72 KB

File metadata and controls

75 lines (43 loc) · 4.72 KB

Gauntlet Loop — Prompt Builder

Versão em português deste README →

One page, no dependencies, no build step. You fill in the goal and the bar; it assembles the prompt and checks it against the rules the technique treats as fatal.

▶ Open the tool · Interface em português


What the Gauntlet Loop is

A prompt pattern where the agent splits the goal into pieces, and for each piece runs a builder and a separate critic with fresh context. The critic puts the result next to a real reference, labels stripped, and says which one is better. If ours does not win, it goes back to the builder. The loop ends only when the work wins the blind comparison — never on a round count.

The technique is Matt Shumer's. He wrote the original prompt while building Claude of Duty.

Why a tool

Five blocks of the prompt are canonical text that never changes. Only two fields are yours: the goal and the bar. Hand-assembling that every time invites mistakes — and this technique's mistakes are specific and repetitive.

So the page does two things:

It assembles. Pure concatenation, no model in the loop. Same input, same output, byte for byte.

It checks. A linter runs on every keystroke against the failures the documentation lists as fatal:

Check Why
Bar is named, not a category A vague bar is the most common failure. The critic invents the comparison and approves everything.
Bar is fetchable If the agent cannot open the reference, it hallucinates side B.
No round count The exit is winning the comparison. "Stop after 3 rounds" ships half-finished work.
Length around 120–180 words Too much instruction is one fewer decision the agent makes.
No bulleted lists The prompt is running prose.
No stack imposed Architecture is the agent's call, absent a real requirement.

The vague-wording list is bilingual: it catches award-winning and premiado, best-in-class and líder de mercado.

Language

The interface exists in English and Portuguese. It picks by browser language, and the link at the top switches. To force one, use ?lang=en or ?lang=pt — so you can share a link already in the right language.

The generated prompt is always in English, either way. That is deliberate: these are the exact sentences the technique depends on, and translating them means leaving the canonical text. Only the surrounding interface changes.

Your own fields can be in any language. The one case where it matters is when the deliverable is text — then say explicitly which language it should come out in, or the agent follows the English of the prompt itself.

How to use it

Open index.html. No install, no server, no build.

  1. Pick the kind of deliverable — this sets how the critic inspects (open in a browser, run the benchmark, read end to end).
  2. Write the goal.
  3. Set the bar. It has to be named, fetchable and comparable. There are clickable suggestions per deliverable type.
  4. Copy and paste into a fresh agent session.

Optional fields (pieces, measurable half, tools, cost ceiling) stay out of the prompt when blank — on purpose.

The Copy button locks while any blocker stands.

About the 120–180 word band

The documentation says "around 120 to 180 words", and its own example runs 183. So the linter treats the band as a target, not a cutoff: inside passes, 100–200 is a soft warning, beyond that a firm one. Never a blocker.

About the "bar is fetchable" check

It is a heuristic. The page looks for a URL or a proper noun; it does not open the reference to confirm it exists. A bar with a proper noun but no link produces a warning, not an approval. Treat it as a reminder.

Credits and licence

The Gauntlet Loop technique is Matt Shumer's.

The prompt template text embedded in this page derives from the SKILL.md of robonuggets/gauntlet-loop by Jay E (RoboNuggets), licensed under CC BY 4.0. Changes made: the critic sentences were shortened and per-medium variants were added; the rest of the canonical wording is preserved.

The code of this page (HTML, CSS and JavaScript) is original and is under MIT.

Related reading: Anthropic — Building Effective Agents, which describes the evaluator-optimizer pattern the loop rests on.