Simon Edwardsson trained a small language model to predict a terminal’s screen after each keypress. Its files, vim buffers and tmux panes exist as generated output, with no real shell underneath. The write-up follows the training decisions, failed shortcuts and tests of whether the model remembers what happened.

  • Teach recovery from actual mistakes. Recorded Docker sessions provide correct screen updates. Further training repairs errors made by the model itself, using only information it could already have seen.
  • Check memory separately from fluent output. Removing one layer from an earlier checkpoint barely changed next-token accuracy: 99.3% became 98.9%. Exact file readbacks collapsed from 64/64 to 0/64, even when supplied the correct history.
  • Generate rows together, then check them. Parallel screen updates make redraws faster, but rows can contradict one another. A verification pass checks the draft before accepting it.

The finished 208 MB browser model gets 80 of 106 shell commands right in the author’s tests. File appends and unfamiliar command combinations still break. This is a careful account of a limited experiment: apparently intact language skills can conceal a total loss of state tracking.

The 99-comment thread on Hacker News adds possible uses and related work.

What the thread adds

  • saagarjha — points to Anthropic’s reward-seeker evaluation as an example of simulated environments in alignment testing. That is a related application, not a claim that Anthropic uses WorldTUI.
  • Meleagris, with simedw replying — proposes a high-interaction honeypot, a decoy system intruders can explore. The author’s response flags the cost of scaling it; the thread supplies no deployment evidence.
  • sandGorgon — links Cyber-Zero as another project to compare. It is a reading lead, not independent validation of this model.

Handles are pseudonymous; HN publishes no per-comment scores. Its ranking supplied the sampled comments; this is a slice of the thread, not a consensus.