NewsAgg
liveAn always-on AI-news aggregator: 42 feeds in, local models ranking what matters, cross-source disagreement surfaced as a trust signal. The flagship case study: architecture, prompts, failures, verification, and measured results.
A small always-on box runs a fleet of coding agents across my repositories, day and night. I steer; they build. Every project is documented honestly: one gets a full case study so far (setup, decisions, failures, evidence), the rest get short overviews labeled as such, and source goes up where it's safe to publish: 0 of the 9 projects here so far, a count computed from the site's own data at build time. When something stays private, I say what was withheld and why.
projects
An always-on AI-news aggregator: 42 feeds in, local models ranking what matters, cross-source disagreement surfaced as a trust signal. The flagship case study: architecture, prompts, failures, verification, and measured results.
A self-hosted media server for the family's home movies: auto-organizes the library, transcodes on the fly, and streams to any browser. Kept off the public internet on purpose.
A personal FLAC library, searchable and playable from a browser: full quality, no transcoding, no exceptions.
Three planners for irrigation, climate, and home energy, each dry-run by default with actuation behind two separate human confirmations, plus a read-only monitor over the solar hardware that was never given a way to write.
All projects, including what's in flight →
method
Every project sits on top of one idea: a self-improving loop whose only job is to hand back more time than it costs to run. Read the essay →
That claim is worth exactly as much as its evidence, so the evidence gets its own page. /stats carries the counters, the method for measuring time reclaimed (baseline minus steering, review, maintenance, and incident recovery), and a plainly marked empty row where the measured result will go. The method is published; the number is not, and saying so is the point. See the scoreboard →
writing
Three times, in three different files, I parked a decision with the same condition: don't tune this by hand, let the track record decide. The track record has five columns, and the one I kept naming has never held anything but zero.
I pressed pause on a fleet of coding agents seven times in two minutes and the fleet kept running. The button had been reporting exactly what was wrong on every single tap, in a failure message I built to hold on screen for six seconds so that it could not be missed.
Last week I raised an alert to a round figure I invented, unrelated to anything that volume has ever done, to find out whether the weekly peak would still land just underneath it. Friday came.
Everything above runs on a deliberately short stack. The hardware, the software, and the full Claude Code setup (skills, subagents, hooks, plugins, MCP servers; borrow what's reusable) live at /uses.