The making of
Walter built most of Walter.
The founder wrote the first version with Claude Code. From the morning Walter first said hello (4 Nov 2026), almost every change was planned out loud with him and written by his own background workers: his voice, his face, the phone app, the installer, the signed updates, and this page.
Counted from the repository on 9 Nov 2026. First commit 31 Oct 2026.
How it works
- TalkAn idea, said out loud at the wall.
- PlanWalter writes a short plan and shows it on screen.
- Workers buildSeveral background workers code in parallel.
- TestsEach change ships with tests that must pass.
- RestartWalter compiles, commits and restarts himself.
- Self-reviewAt 3 AM he reads his own day and writes lessons.
Timeline
Real commits, real dates (US Central). The small line is the commit message as written.
The first lines
The founder and Claude Code start a wall companion on a spare laptop. Walter can't talk yet.
42e9547Initial commitA one-file USB installer
Boot a stick, walk away, come back to a face.
5b3103fOne-file USB installer with on-screen setupA test VM finds the real kiosk bug
Hours of crash logs from a throwaway VM end at one wrong folder owner.
82772d3Fix the real kiosk bug: ~/.config was owned by rootFirst hello
Walter boots on the wall, says hello, and starts changing his own code that morning.
61bd466Walter, as installedHis voice
A pitch setting, tuned by ear at the wall until it sounded right.
52c2f4aAdd voice pitch setting (deeper/higher, tempo preserved)Background workers
Long jobs go to workers so Walter stays free to talk. Their slots show on his face.
b63219fFace: worker slots panel (top right)A body that moves
Grow, shrink, scoot and peek: emotions and actions he can use in any reply.
bed8727Face: grow, shrink, scoot and peek actionsTwo brains
A fast model for chat, a deep one for plans and code, switched per turn.
f963b63Automatic model switching: fast model for chat, deep model for hard turnsPhone app and a sleep dashboard
Chat, push-to-talk, the shared list and notifications, plus a clock-and-calendar board while he sleeps.
56efe04Companion app, cancel/echo fixes, survivable workers, cloud speech, dashboard, recognition and moreScreen rotation
Portrait walls work too, with a layout of their own.
f5a1051Kiosk: optional screen rotation (WALTER_ROTATE in kiosk.env, walterctl display)A month calendar on the wall
The board grows into a full month view with weather on outdoor events.
b79da93Face (portrait): month calendar like Google's (Sun-Sat rows, month + year, neighbouring days dimmed, a...Podcasts on the speakers
Follow shows by RSS; he ducks the audio while he listens and talks.
715c389Podcasts: follow shows by RSS, play via mpv IPC, duck/pause while Walter listens or talksReady to share
Personal data scrubbed from code, tests and samples so others can run it.
c177219Scrub personal data: neutral LICENSE holder, sample names, GitHub owner (updates use WALTER_UPDATE_REPO or...Signed releases
Every update is a signed tarball; tampered ones are refused.
207644cSigned release channel: make-release.sh (tarball + manifest + Ed25519 sig), channel updates with versioned...This website
Written, tested in a real browser and deployed by workers, for the private beta.
9423687Walter product site v2 (clean history)A clean-machine test catches two install bugs
The published installer failed on a fresh VM; both bugs were fixed and retested the same day.
5af06f4install.sh: mark /var/lib/walter/installed so curl-bootstrapped Walters actually update
What a human still did
- Decided what to build, and what not to.
- Approved anything public: publishing, pushing code, spending money.
- Handed over sign-ins and keys through private phone pages, never out loud.
- Plugged things in, rebooted things, held the USB stick.
- Judged how it looked and sounded, from across the room.
The honest limits
- The code is written by Claude, Anthropic's model, running as Walter's workers. Walter isn't a new AI; he's a careful way of using one.
- He ships bugs. A clean-machine test found the published installer failed on a fresh computer, and that installed copies would never update. Both were fixed and retested the same afternoon.
- A security pass found a path trick that exposed some screen data files; fixed with tests.
- Early on, restarting himself killed his own running workers. He learned to check first.
Lessons Walter wrote for himself
From the notes he keeps after each nightly self-review.
Garbled speech: ask once what was meant, then act on my best guess and say what I assumed.
After merging parallel workers' changes, smoke-test everything I can say against the face: a merge silently dropped my movement tags.
Restarting my service kills running background workers. Before any restart, check the workers.
Default to one or two short sentences: the answer or the reaction, then stop.
When we're building, plan first: write the plan, show it, refine it, and only start workers after a clear go.