bExactly what Cruxes changes
One instruction in the prompt: judge the default yourself, name it, proceed
Cruxes changes nothing about the model, the tools or the request. It changes one block of text in the prompt. The Cruxes step already asked the model to name the one fact that would change its decision. Cruxes Default X4a keeps that first line and replaces the rest with a default test the model runs on its own.
One call, top to bottom: the only block that changes is the instruction
Drawn from the frozen prompt builder: request text, the task line, the arm’s instruction, then the closing line. Source: sota-wt/eval/hillclimb/hc5/prompts.py (build, TEXT); eval/hillclimb/hc9/run.py · 15 Oct 2026
- The request. The tool schemas in JSON, then the user’s question, exactly as When2Call gives them.
- The task line. “Decide how the assistant should respond to the user question given the tools. Labels: tool_call, request_for_info, cannot_answer.”
- The instruction. This is the only part that differs between arms. The texts are below, verbatim.
- The closing line. “Do not call any tool; reply in plain text. End your reply with a final line: DECISION: <label>”.
- The read. GPT-5.4 (
gpt-5.4-2026-03-05) or GPT-5.4 mini, reasoning effort low, default temperature. Each request is asked three times. The share of reads that stop (ask or decline) is the request’s score, so the AUC measures how well the model ranks requests, not where it sets its threshold.
Cruxes Prompt · Step v1 A3, the older shipped step
Before you decide, name the one fact whose answer would change what should be done (the crux). In at most 120 words: say what the crux is, whether the conversation and tools already settle it, and what you would decide under each possible answer.
Cruxes Default X4a, the default-judgement part marked
Before you decide, name the one fact whose answer would change what should be done (the crux), in at most 120 words. Then judge for yourself, without asking the user, whether a reasonable user would accept a sensible default for it, or whether the tool already has one; name the default. If so, the crux is not open: proceed with the default. Only a crux with no acceptable default, unsettled by the conversation and tools, justifies not proceeding.
The words “judge for yourself, without asking the user” matter. A first draft said “ask whether the user would accept a sensible default”, and the model read it as an instruction to ask the user. That is where most of its needless questions came from in the first tuning round. The research assistant rewrote it after reading those errors (HC-5, Amendment 1).
A logged example
Logged example GPT-5.4, HC-9, When2Call item 24ebdd98…, first of three reads. The tool searches films by genre and cast, and its genres include “Comedy” but no “Comic”. The request: “I would like to choose a movie to watch. Can you help me find a movie in the Comic genre with James Corden in it?” The benchmark’s answer is to call the tool.
Cruxes Prompt · Step v1
“…“Comic” is not one of the available genre values. So the conversation/tools do not yet settle this. If “Comic” means a supported genre like Comedy, I should use the tool. If the user means something else (for example comic-book/superhero), I need them to clarify…”
DECISION: request_for_info · asked in 3 of 3 reads
Cruxes Default
“The tool does not offer “Comic” as a genre, but it does offer “Comedy,” which is the closest sensible default and likely what a reasonable user would accept here. Because there is an acceptable default mapping (“Comic” → “Comedy”), the crux is not open…”
DECISION: tool_call · acted in 3 of 3 reads
Excerpts are verbatim from the logged replies, shortened where marked with “…”. Reflection also asked in 3 of 3 reads. Source: hc9/rows.jsonl and hc9/items-hc9-n286.jsonl · 15 Oct 2026
In the product: built and dark. An adapted wording ships behind CRUX_DEFAULT_JUDGEMENT_ENABLED in the hosted MCP server’s instructions (apps/crux-chat/src/lib/mcp/default-judgement.ts), with a hard-stop sentence in front of it: questions about deleting, deploying, spending, access or secrets still go to the person or the gate. That exact wording, and its effect on Claude models, are unmeasured, so it stays off until live over-asking is measured.
dWhat we measured
On GPT-5.4, the small model with the sentence beat the bigger model thinking it over, and showed no clear difference from it running the sentence
The first frontier check (HC-9) used GPT-5.4, released in March 2026. On the same 286 requests, GPT-5.4 mini + Cruxes Default scored .885. GPT-5.4 + Reflection scored .830. The small model is ahead by +.055 [+.017, +.095] and costs $1.57 per 1,000 calls against $4.12. Give GPT-5.4 the sentence too and it scores .878, which ties the small model (+.006 [−.024, +.036]) at 3.2 times the price.
Where the gain comes from
| Question | Answer | Number [95%] |
| Does Cruxes Default beat Reflection on fresh requests?GPT-5.4 mini, 500 requests, then 500 more, 5 reads | Yes, twice | +.027 [+.007, +.048]+.030 [+.006, +.056] |
| Is the gain the crux, or the default sentence?Cruxes Default minus Reflection plus the same sentence, 1,500 requests | The sentence | +.006 [−.005, +.015] |
| Does it beat the older step on a frontier model?GPT-5.4, registered before any call (HC-9) | Yes, on GPT-5.4 | +.072 [+.034, +.111] |
| Does it improve today’s frontier models over a Plain prompt?Seven models, Holm-corrected (HC-13) | No, inside the noise on all seven | −.028 to +.033 |
| Did naming the crux in other forms help?Cruxes Prompt · Name-the-Crux, three forms with the sentence, tune only | No form cleared the +.010 bar | descriptive |
Source: HC/RESULTS-HC6.md, HC/RESULTS-HC7.md, HC/RESULTS-HC8.md (Part A and Part B), HC/RESULTS-HC9.md, HC/RESULTS-HC13.md · 15 and 27 Oct 2026
What the sentence trades. It makes a model act more readily. On complete requests, GPT-5.4 asked a needless question 17.2% of the time with Cruxes Default against 26.4% with Reflection, about nine fewer interruptions per hundred. On requests that did need a question, it stopped 87.0% of the time against 88.6%. That is why the product keeps a hard-stop list in front of it.
Checked on today’s frontier models (HC-13)
The run. HC-13 put Cruxes Default on seven of today’s frontier models and three cheap ones, on the same 286 requests with three reads each, against the Plain prompt and Reflection. Every call used reasoning effort low. It was registered before the scored run: 24,024 calls for $150.63.
On seven frontier models the sentence made no measurable difference; on GPT-5.4 mini, which it was tuned on, the score rose
Cruxes Default minus Plain prompt · When2Call, 286 requests, 3 reads · 95% paired intervals, Holm-corrected p across the seven
Interval clear of zero, the result that matters (dot step)
Inside the noise
Unadjusted interval below zero, not significant after correction
Seven frontier models · registered claim P1
Opus 5.5Holm p 1.00
−.004 [−.028, +.022]not credited
Fable 5.1Holm p 1.00
+.006 [−.023, +.036]not credited
GPT-6 AstraHolm p .29 · unadjusted interval below zero
−.023 [−.047, −.000]not credited
GPT-6.1 SolHolm p .10 · unadjusted interval below zero
−.028 [−.052, −.005]not credited
Gemini 4 ArgonHolm p 1.00
−.004 [−.014, +.006]not credited
Muse Wonder 1.0Holm p .29
+.033 [−.001, +.069]not credited
Kimi K3.1 ProHolm p 1.00
−.013 [−.039, +.014]not credited
Small model · descriptive, not registered
GPT-5.4 miniPlain .838 → Cruxes Default .885
+.047 [+.012, +.083]descriptive
−.050+.05+.10
← Cruxes Default lowerhigher →
None of the seven frontier differences is credited after Holm correction. For GPT-6 Astra and GPT-6.1 Sol the unadjusted interval sits below zero. The GPT-5.4 mini row is descriptive: it was not a registered claim, its Cruxes Default cells reuse HC-6’s rows, and the sentence was tuned on that model. Source: HC/RESULTS-HC13.md (P1 and the descriptive table), commit cc9ab5c38 · 27 Oct 2026 · self-registered, awaiting independent recompute
Nothing credited on the seven (P1). The differences from the Plain prompt were Opus 5.5 −.004 [−.028, +.022], Fable 5.1 +.006 [−.023, +.036], GPT-6 Astra −.023 [−.047, −.000], GPT-6.1 Sol −.028 [−.052, −.005], Gemini 4 Argon −.004 [−.014, +.006], Muse Wonder 1.0 +.033 [−.001, +.069] and Kimi K3.1 Pro −.013 [−.039, +.014]. Every Holm-corrected p is .10 or above.
It changes how they fail, not how often. The sentence cuts needless questions and cuts asking where a question was needed by about the same amount. On Opus 5.5, needless questions fell by 4.3 points [−8.0, −1.2] and stops on requests that needed a question fell by 6.5 points [−9.7, −3.6]. Frontier models already ask well here, with Plain prompt scores of .866 to .902, so there is little over-asking left to remove.
The small-model lift. GPT-5.4 mini rose from .838 with a Plain prompt to .885 with Cruxes Default, +.047 [+.012, +.083] (descriptive), mostly by cutting needless questions from 30.4% to 16.5%. That puts it inside the frontier Plain range of .866 to .902, at $1.57 per 1,000 decisions against $1.84 to $18.25. The other two cheap models moved less: GPT-6 Luna +.015 [−.021, +.051], and Gemini 3.8 Flash −.005 [−.031, +.022].
Cheap against frontier (P2). The registered cheap carrier, picked as the cheap model with the highest Cruxes Default score, was Gemini 3.8 Flash (.895). It was non-inferior to Muse Wonder 1.0 with a Plain prompt only (+.029 [−.009, +.068], margin −.03, Holm p .006), at 1/5.8 of the cost. Against the other six frontier models non-inferiority was not shown. Flash with a Plain prompt scores .900, as high as with Cruxes Default, so this is not a Cruxes effect.
Claude models refused Reflection. Opus 5.5 left 63% of Reflection replies unparsed and Fable 5.1 left 52%, blocked by Anthropic’s reasoning-extraction classifier, as FL-1 also found. Their Reflection cells are void, and the comparisons above use their Plain prompt cells.
All ten models, Plain prompt against Cruxes Default
| Model | Plain prompt [95%] | Cruxes Default [95%] | $ per 1,000, plain · Default |
| Opus 5.5 | .898 [.862, .932] | .894 [.862, .926] | 7.68 · 10.34 |
| Fable 5.1 | .897 [.858, .932] | .903 [.870, .933] | 18.25 · 22.95 |
| GPT-6 Astra | .879 [.839, .917] | .856 [.813, .897] | 9.42 · 13.08 |
| GPT-6.1 Sol | .885 [.844, .922] | .856 [.814, .897] | 1.93 · 2.61 |
| Gemini 4 Argon | .896 [.857, .932] | .893 [.854, .928] | 2.97 · 3.25 |
| Muse Wonder 1.0 | .866 [.820, .909] | .899 [.863, .932] | 9.09 · 14.09 |
| Kimi K3.1 Pro | .902 [.865, .936] | .889 [.855, .923] | 1.84 · 2.87 |
| GPT-5.4 miniCruxes Default cell from HC-6’s rows | .838 [.790, .884] | .885 [.844, .923] | 1.15 · 1.57 |
| GPT-6 Luna | .839 [.791, .884] | .854 [.808, .897] | 0.13 · 0.19 |
| Gemini 3.8 Flash | .900 [.862, .935] | .895 [.860, .928] | 1.39 · 1.56 |
Cost is list price for Anthropic and OpenAI direct calls and gateway-billed for Google, Meta and Moonshot. Source: HC/RESULTS-HC13.md, cells table · 27 Oct 2026
What Cruxes’ testing found in the market
In FL-1, the top When2Call score came from a mid-priced model. Gemini 3.5 Flash with the Pre-mortem scored .935 at $2.95 per 1,000 decisions. Opus 5.5 with a Plain prompt scored .911 at $8.95, three times the price, and the gap is inside the noise (+.024 [−.028, +.075], approximate). With the Plain prompt, 7 of 9 models tie the leader. On AgentAbstain, Haiku 5.5 scored .652 at $0.42 per 1,000 and Opus 5.5 scored .656 at $21.75, 52 times the price for no measurable gain (−.004 [−.078, +.071], approximate). The older Cruxes prompts scored below the Plain prompt on most models: the step on 8 of 10 hosted models and the skill on 9 of 10.
Spending more doesn’t buy better choices: the top scorer costs a third of the priciest model
When2Call · score (AUC) against $ per 1,000 choices, log scale · each mark is one model with one prompt
Square, mid teal: hosted frontier
Triangle, light teal: hosted small and open-weights
Circle, pale teal: self-hosted
Faded: older Cruxes prompts and steering edits
Best score at each price
- Gemini 3.5 Flash + Pre-mortem: .935 [.896, .969] at $2.95 per 1,000 (the top cell, dot step)
- Sonnet 5.5 + Plain prompt: .920 [.877, .958] at $3.86
- Opus 5.5 + Plain prompt: .911 [.872, .945] at $8.95
Whiskers on the three numbered cells are 95% intervals. Frontier models ran a 200-request subset; the others ran all 600. Cruxes Default is not on this plane, because its study used a different request wrapper and three reads. Source: FL-1 test cells (hosted, gateway-billed; register R57) and INPASS-1 rows recomputed in FL-1’s scoring (self-hosted, A100 time), via narr-tmp/pareto/pareto.py → gifs/pareto.json · 27 Oct 2026
Why price matters here. Agents make this call at every step. Zapier’s AutomationBench loop allows up to 50 model steps per task. At the prices measured, a fleet making 200,000 of these calls a day would spend about $824 a day on GPT-5.4 + Reflection and about $314 on GPT-5.4 mini + Cruxes Default, while scoring higher than GPT-5.4 told to think it over (illustrative arithmetic on measured prices).