312 School Blog 312 Research Blog

I built an AI coworker on Tuesday. I'm rebuilding him on Thursday.

On Tuesday I spent most of the day setting up an AI coworker at 312 School. His name is Sheldon. By Thursday evening I'd decided to tear most of it down and rebuild it on something else.

Marsel Shaibekov Apr 16, 2026 312 School
AI-generated summary of the full post. Covers the key decisions and why they were made — skip to the full post for the complete narrative with diagrams and technical detail.

We created an AI coworker named Sheldon — not a bot, but a real entity in our systems with his own email, GitHub, Slack, 1Password, and a Mac mini to live on. We chose OpenClaw as the runtime because it went viral (163k GitHub stars), felt like a real presence, and stores everything as markdown files you can read and edit.

Sheldon's entire identity — role, personality, operating rules, team directory, memory — lives as markdown files on the Mac mini, synced to a GitHub repo every five minutes. The sync captures any local changes as a PR, then resets the workspace to whatever main says. The repo is the single source of truth.

We told Sheldon to update his identity file. The sync reverted the change (we hadn't merged the PR yet). But Sheldon's running session still acted on the expanded role — the file said one thing, his behavior said another. Restarts didn't fix it. The nightly reset didn't fix it. The file was one input among many, and it wasn't winning.

OpenClaw loads everything into the prompt on every call. After a few weeks of use, context hits 100k+ tokens and older instructions get drowned by recent noise. Someone at Meta Superintelligence Labs had OpenClaw start deleting their emails despite an explicit "do not act on them" rule — the instruction was still in context, it just stopped landing. The rule didn't fail because it was removed. It failed because it got buried.

Every agent framework we looked at wanted to own Sheldon's identity inside itself. What we actually wanted: a stateless runtime that reads identity from the repo, acts, writes back, and shuts down. That's Claude Managed Agents — like Lambda instead of EC2. The repo stays. The OpenClaw files stay. The runtime becomes swappable.

New stack: Managed Agents as Sheldon's brain, Slack Bolt as the always-on listener, Claude Cowork for heavy tasks, and the same repo underneath. A nightly job will have Sheldon save memories via PR — the team reviews and approves any identity or memory changes before they land. Human in the loop on who Sheldon thinks he is.