subaud
When I stumble upon an unsolved or undocumented problem and solve it, I like to document it here.
Skills Instead of Setup Docs
My now-playing kiosk has a long install document, and it's a long document. Three hundred and ninety-three lines, eight sequential phases, six environment variables that each gate a different optional install path, and a fifty-line section on a particular display whose touch input lives on a separate USB
Monitoring with Claude Code
Most of the now-playing kiosk was built with my autopilot workflow, which I've written about before. I describe a feature, it gets planned, built, and reviewed, and it ships. For most of the project that's the whole story. But the kiosk's job is to
Feature Workflow Updates: Driving Features on Autopilot and More
Three patch releases in one evening — how using my own plugin on a real project surfaced a confusing schema field, an internally inconsistent verdict, and the case for state as a first-class concept.
Fallow and Skylos: Static-Analysis Gates for AI-Generated Code
How I wired fallow and skylos into a side project's pre-commit hooks and Claude Code session, then drove the kiosk frontend from a 90A to 100A health score using parallel subagents in git worktrees.
Trying to Trick Claude About Urgency
A few days ago I wrote about what happens when you tell Claude a task is urgent — the agent silently introduces correctness bugs and self-reports as confident as ever. The closing section proposed a sharper question: if the bugs are framing-driven rather than caused by any real time pressure (of
Claude Code in a Crunch
I've been working with Claude Code long enough that the laughably bad time estimates have become background noise. Claude thinks a 90-second task takes 30 minutes. I ask it to plan a sprint that I know we can do in a few days and it thinks it will
Teaching Claude to Do Woodworking
One of the best parts about Claude Code is that the "code" in the name is misnomer. The fact is that it can be used for a wide variety of things. I wanted to use it to help with some woodworking projects. But part of the problem was
Moving the Reviewer to GitHub
Things move fast. I recently wrote about using the adversarial models with my feature-workflow plugin a few weeks ago — ripping out the internal self-review skill and replacing it with external reviewers. Different model, read-only, posting structured critiques on the PR. The core insight was that a different model catches things
Adversarial Coding — Using Competing Models as Code Reviewers
Three months ago I wrote about a feature-workflow plugin that added structure to how I work with Claude Code. Capture ideas, plan them, implement them, ship them. The structure helped — I stopped losing track of what I was building mid-session and started actually finishing things. But the review step was