Three new subscriber surfaces went live on hammerstein.ai this morning: a kriegsspiel umpire, a matrix-game referee, and a hosted chat. The shape of how the kriegsspiel surface got built is worth writing down because it changed how I think about what the framework is doing.
The partnership.
Two weeks ago Marshall Neal agreed to play expert partner for an experiment. Marshall wrote the SCKA Advanced rules and umpires for the SoCal Kriegsspiel Association. The deal: I’d build a single-chat surface that injected his verbatim rulebook into the Hammerstein system prompt; he’d run dogfood turns through it for a week; we’d decide afterward whether the engine could do his job.
Iteration cycle.
It couldn’t do his job, at first. The first version truncated mid-resolution on complex multi-unit turns. We bumped max_tokens from 3000 to 8000 and added a truncation banner. The output format drifted on the third dogfood batch. We tightened the prompt’s “UMPIRE / REPORT — RED / REPORT — BLUE” section structure into a strict format. Marshall flagged what felt wrong; I adjusted prompt or gating; we re-ran the same scenario.
The signal.
While Marshall was dogfooding, the engine surfaced two rule gaps in his own published rulebook. Both were small. The SCKA Advanced text leaves discretion to the umpire in places but doesn’t always say so explicitly, and Hammerstein, doing its job, asked where the rule lived. Marshall took the gaps as feedback, revised the ruleset to v1.1b, and sent the updated PDF this morning with a note that the product was good enough to ship.
I want to be careful about what this means. Marshall caught the gaps. He wrote the rules. What Hammerstein did was ask the right questions.
The verification-gate discipline that makes Hammerstein refuse stupid-industrious plans is the same discipline that flags rules-text ambiguities when it tries to apply them.
That’s the load-bearing behavior. It works because the prompt won’t let the model collapse a gap into a plausible-sounding ruling; it surfaces the gap instead.
Matrix.
The matrix-game surface is the same shape applied to Chris Engle’s Classical Matrix Game. Engle publishes the canonical rules and the philosophy free at his matrix-games site; his host-of-the-game directive (“your job is to give the players a good time, not beat them”) goes into Hammerstein’s prompt as a constraint. The referee rates argument strength against Engle’s table, tracks prep chains so a setup argument upgrades the strength of a dependent big argument on later turns, and emits Engle’s word-based status updates without injecting numerical modifiers.
Vertical slice, same pattern as kriegspiel. Separate endpoint. No shared umpire-engine abstraction yet because the system prompts diverge enough that a shared layer would be premature.
Chat & caveats.
The hosted chat surface is the generic version. Stateful Hammerstein conversations for plans that aren’t wargames. Same model, same framework, same anti-deskilling posture. A $0.25 per-conversation length cap and a verbatim system-prompt-hash check guard against deploy-drift mid-stream.
Free trial caps apply across the surfaces: 25 wargamer turns/day, 5 umpire turns/day on kriegspiel + matrix, 25 rules-Q&A questions/day. Subscribers get monthly turn caps across surfaces (Basic, Regular, and Lifetime tiers; see current pricing). The same token in the welcome email unlocks all four surfaces. Manage or cancel via the new account page at hammerstein.ai/account.
System prompt, four rulebooks in plain text, Sonnet 4.6 via OpenRouter. The discipline holds because the prompt is strict. If that signal stops landing in your dogfood, the surface isn’t worth the sub.
Framework + system prompt at github.com/lerugray/hammerstein. Subscriber surfaces on hammerstein.ai. Marshall Neal’s SCKA Advanced ruleset bundled v1.1b as of 2026-05-21; he cleared the partnership story for publication. Subscribe at hammerstein.ai.