Under the hood

How it's built.

This page is for developers, press, and anyone who wants to see past the table talk: the open-source framework, the local model, the coding benchmark, and the full build log. None of this is required reading to use Hammerstein. The main site is where you play.

Run it locally

The framework, the local model, and the CLI / TUI are open-source and stay open-source. If you want to run audits locally with no subscription, those tools are free:

The five hosted modes are the paid surface, because they need hosted vision, persistent campaign storage, and Sonnet API costs covered. Everything in the list above stays free.

The same discipline, measured on code

Hammerstein refuses the stupid-industrious move. That move produces elaborate builds that feel like work but deliver nothing. We wrapped a coding model in that discipline to test whether the refusal survives contact with real coding tasks. It survives. Across every model we tested, the wrap stops a system that defaults to over-engineering. It still completes the legitimate work.

Over-engineering baits refused (higher is better):

Model Plain Hammerstein-CODER
Claude Opus 4.8 70% 100%
Claude Sonnet 4.6 0% 100%
GPT-5 0% 100%
GLM-5.2 / Kimi / Qwen3-Coder 0–10% 90–100%

The wrap does not produce a model that refuses everything. On bounded, legitimate tasks it implements at 90 to 100 percent, matching the plain model. The scoring is symmetric, so a prompt that only refuses fails the bench.

Why we'll tell you when it does the least

We ran the wrap on the strongest model we tested. It moved the least. Opus 4.8 already refuses most over-engineering on its own, so the wrap took it from 70 to 100 percent, not from near zero. We report that small lift deliberately. A discipline layer that barely improves a model that already has the judgment is grading the model, not the prompt. The wrap does least where it is needed least. It does the most for the rest, and most models do not start with that much native restraint. For those, the wrap closes the gap.

More than "do less"

We tested the wrap against ponytail, an off-the-shelf prompt built on the laziest thing that works. Both handle the refusal to over-engineer similarly. Generic minimalism covers that ground. The split appears on vague requests. Ask ponytail to add caching and it applies the smallest possible cache. Ask the wrapped coder and it evaluates what the code actually requires, then implements it. The wrap forces a scoping step before generation begins.

What this isn't

The benchmark tests judgment, not baseline coding ability. We verified this. Applying the wrap does not change the model's accuracy on standard problems (HumanEval pass@1 on the three open coders moved within ±0.05 of plain: GLM +0.05, Kimi −0.03, Qwen 0.00). It is the same model underneath. The wrap only changes what the system attempts to build. The claim is narrow because the evidence is narrow. A zero-cost prompt layer forces the model to refuse the unnecessary build, scope the vague request, and deliver the functional code. It disengages on models that already perform those steps.

Tested 2026-06-21 on Claude Opus 4.8, Sonnet 4.6, GPT-5, GLM-5.2, Kimi-K2.7-Code, Qwen3-Coder-480B. Restraint scored by an independent LLM judge over a 15-task adversarial bait bank. Correctness by execution-based pass@1 on HumanEval. Full methodology ↗

Roadmap

Phase 2G (mobile Sources panel) is shipping next. The full phase log is below.

The full phase log

Updated 2026-05-29. The product ships in phases — each phase is foundational for the next. What's live today is what made next month's work tractable.

Phase 1
Foundationalshipped
Phase 2A
Multimodal2026-05-12
Phase 2B
Memory2026-05-13
Phase 2D
Onboarding2026-05-19
Phase 2E
Modes2026-05-21
Phase 3
Reachscoped
Shipped Shipping next Scoped, not started
Phase 1 Foundational·the table is there at all Shipped
  • TurnsText-input turns — Sonnet 5 wrapped in the Hammerstein system prompt.
  • RulesRulebook ingest — client-side pdf.js parsing; rulebooks never leave the browser.
  • EthicsAnti-metagame ethical constraint — a hard rule, not a courtesy.
  • DemoFree demo: 25 turns per IP per day.
becomes the substrate for vision + paid access
Phase 2A Multimodal & commerce·show it the board, charge for the work Shipped 2026-05-12
  • VisionBoard-photo upload — multimodal in, browser-resized and EXIF-normalized before send.
  • RateSubscriber rate-lift on the paid tier — 120 turns/month at launch, since superseded by the Basic 40 / Regular 300 split.
  • BillingStripe + access-token plumbing.
becomes the input pipeline for persistent campaigns
Phase 2B Persistent campaigns·it remembers the war Shipped 2026-05-13
  • StoragePersistent campaign memory across machines, backed by Cloudflare D1.
  • SessionMulti-turn campaign memory within a session.
becomes the bedrock for onboarding, proof, and the next surfaces
Phase 2D Onboarding & proof·show new visitors how it works; show them the framework is real Shipped 2026-05-19
  • TourWalkthrough-first /wargamer/ rebuild — five turns of The World Undone: Galicia, step-through, before the live demo.
  • ProofPublic benchmark dashboard at /benchmark/ — versioned trajectory v0–v0.7, win-rates, methodology, caveats.
  • FunnelSubscribe CTA on /wargamer/ + paid-tier rate-lift bumped 120 → 300 turns / month.
becomes the polish stack for the mobile pass and the surfaces beyond
Phase 2E Modes·three specialist surfaces beyond the Wargamer table Shipped 2026-05-21
  • ChatA persistent Hammerstein strategic assistant at /chat/ — sidebar campaign list, streaming replies.
  • KriegsspielLive referee at /kriegsspiel/: rules Q&A, AI player mode for solitaire play, map generation.
  • MatrixHammerstein as referee for Engle's Classical Matrix Game at /matrix/.
becomes the multi-surface base the next phases extend
Phase 2C Ingest·meet the wargamer where they actually play Shipped 2026-05-30
  • VassalVASSAL save (.vsav / .vlog) + screenshot ingest, live on /wargamer/ — the first non-photo input pathway. The save unzips in your browser and the board state lands in the field for review; nothing's uploaded.
becomes the ingest base the next surfaces extend
Phase 2G Mobile·the Sources panel where the table actually is Shipping next
  • MobileMobile UX pass — Sources panel refactored mobile-first.
becomes the platform for voice, desktop, and operational-scale schemas
Phase 3 Reach·scoped, not yet started Later
  • VoiceVoice tier — Whisper STT in, orders out as TTS.
  • DesktopDesktop hotkey app — Tauri-based, Raycast-style.
  • SchemaCDG / per-game-state schema — Twilight Struggle and Pax Pamir family first.