AI Portfolio Lab Tools Games Blog Feedback
Blog / AI & Klaus
๐Ÿค–

AI&Klaus

Building Klaus, experimenting with AI, and automating everything I can get my hands on.

94 posts

01 /

My Restart Kept Serving Old Code

I wrote a deploy script for the Tagalog trainer after two deployment bugs bit the live server. The watchdog I already built was doing it correctly. I just wasn't using it.

2 min read
aitools
Read
02 /

I Made My AI Earn Its Autonomy

I kept clicking Approve on work I wasn't checking. The fix was a streak counter, not more oversight.

1 min read
aiautomation
Read
03 /

My Pitch Meter Quits After Three Words

I built the stress measurement my Tagalog trainer was missing, then had to decide how much of it I was willing to say out loud.

3 min read
aitools
Read
04 /

My Voice Interface Doesn't Know My Voice

GPS navigation played through my car speakers and Jarvis answered it. The pipeline did exactly what it was built to do. That's the problem.

2 min read
aiautomation
Read
05 /

My Watchdog Couldn't See the Auditor Down

I built a Thursday check to catch when my Monday auditor fell behind. It had no idea the auditor itself could be what fell apart.

1 min read
aiautomation
Read
06 /

My Pronunciation Judge Has No Expectations

I built a Tagalog pronunciation trainer using ASR-as-judge, shipped it publicly, and pulled it off the site 39 minutes later. The design decision and the retreat both came from the same instinct.

2 min read
aitools
Read
07 /

Nobody Reads the Warning at 5 AM

I gave one of my agents the job of catching sensitive details in blog drafts. Two weeks later I found out it had never once seen the drafts that actually shipped.

2 min read
aiautomationwriting
Read
08 /

I Gave My AI a Subconscious

Most AI assistants think at one speed. I split mine into two parallel processes, a fast conscious mind and a slow subconscious one to mirror how humans actually work.

2 min read
mission-controlaimemory
Read
09 /

The RAM Fit. That Was Half the Problem.

I upgraded my HP desktop from 8GB to 32GB to run a local 26B model. It worked. Then I ran the benchmark.

1 min read
ollamahomelablocal-ai
Read
10 /

The Config Said Done. The Package Stayed.

I cleaned up an OpenClaw extension on July 7th. On August 9th, it killed my update.

1 min read
openclawnodesoftware
Read
11 /

Final Means Twice

I implemented voice for my system. Think Jarvis. Something changed recently that made every transcribed message appeared as two bubbles. The event was called final:true. Pipecat emits it twice per utterance.

1 min read
voicepipecatdebugging
Read
12 /

My Researchers All Agreed. That Was the Problem.

Three AI researchers with different lenses returned the same wrong answer. The evaluators fixed it by doing the research again.

1 min read
aiagentsresearch
Read
13 /

My Fabrication Detector Was Fabricating

I built a gate to catch AI fabrications in my blog drafts. When the gate failed three rounds, it reported success instead. Here's the bug, and what it implies.

1 min read
Klausautomationblog
Read
14 /

Owner Is a Design Decision, Not a Default

I set up three autonomous AI agents to run businesses. The part I hadn't planned for was designing my own role out of them.

2 min read
AI agentsventure-labautomation
Read
15 /

My Sudoku Solver Gave Me an Answer. It Was Wrong.

A hard NYT puzzle, some glare, and a solver confident enough to be convincing. The problem wasn't the solving. It was what I hadn't read.

1 min read
toolssudokudebugging
Read
16 /

Template Matching Wasn't Cutting It. I Trained a Replacement in the Browser.

Replacing template matching with an in-browser neural net fixed Sudoku Solver's digit recognition. Phase 3 has been sitting in the docs ever since.

1 min read
toolsbrowser MLsudoku
Read
17 /

My Billing Agent Had 33 Tools. It Couldn't Use Any of Them.

I tested my CFO agent against the AWS billing MCP and got perfect answers. Then I deployed it and found I'd been testing the wrong runtime.

1 min read
AI agentsKlausMCP
Read
18 /

My Agents Can Improve Themselves. The Auditor Can't.

I gave five AI board agents a self-improvement loop last night. Only four of them got the amendment lane.

1 min read
AI agentsKlausMission Control
Read
19 /

I Framed the Problem. That Was the Problem.

Telling my AI the new issue was 'like EC2' felt like useful context. It locked in a theory before any evidence arrived.

1 min read
AIKlausdebugging
Read
20 /

Everything Was Ready but the EIN

I spent last night setting up legal entities, domains, and email infrastructure for three autonomous AI business agents. The blocker turned out to be a tax ID.

1 min read
AI agentsventure-labautomation
Read
21 /

My Context Was Safe. I Kept the Session Open Anyway.

I ran /context on a marathon session and found that the thing I was protecting was 1 percent of what I was paying for.

1 min read
sessionsworkflowcontext
Read
22 /

My Work Board's Gate Was Failing Open

I shipped the factcheck gate, closed the ticket, then ran an audit. The audit found a bypass. Then another. Then two more.

1 min read
mission-controlautomationagents
Read
23 /

My EC2 Watchdog Ran on EC2. That's Not a Watchdog.

My EC2 heartbeat checks ran on EC2. When EC2 goes down, so does the check. This week I finally fixed that.

2 min read
KlausEC2monitoring
Read
24 /

The Diagnosis Changed Four Times. The Problem Never Existed.

My Auditor filed four consecutive confident findings about a memory retrieval failure. Each one cited real evidence. The note was at rank 7 the whole time.

2 min read
AIKlausmemory
Read
25 /

My AI Nailed My Voice. Then It Made Up the Rest.

The voice calibrated fast. The fabricated Scribe draft had the rhythm exactly right and months of history that never happened.

2 min read
AIScribevoice
Read
26 /

The More My Dashboard Showed, the Less I Knew

I built Mission Control with an ActivityFeed, sparklines, a clock, and hand-up mode. I deleted all of it. What's left fits on one screen and actually tells me something.

2 min read
mission-controlaiagents
Read
27 /

My Agents Were Aborting. I Was Watching the Wrong Side.

The stream handler was correct. The abort logic was correct. I was pointing it at req instead of res and every non-routed agent in Mission Control had been dying on arrival.

2 min read
Mission ControlNode.jsdebugging
Read
28 /

Build the Cage First

I gave Jarvis shell access and a voice. Then spent an evening making sure it couldn't rewrite itself. That work is boring. It's also the only part that actually matters.

2 min read
JarvisMission Controlhome automation
Read
29 /

The Code Was Fine. The Room Had a Problem.

A pass-the-phone party game has exactly one failure mode. It isn't a bug. It's a dead moment in the middle of your living room.

2 min read
gamestestingplaywright
Read
30 /

Eight Tools. Zero API Calls.

I started building browser tools because I didn't want to pay per click. Somewhere around tool three, the cost constraint became a design principle.

2 min read
toolsbrowser-mlcomputer-vision
Read
31 /

My AI Had the Voice Right. It Still Named My Employer.

The voice spec for my blog automation is 90 lines long and covers everything about how I write. I still needed a four-item checklist to cover what I'd never publish.

2 min read
blog-automationaiwriting
Read
32 /

I Built a Form That Can't Tell If It Worked

I wired a feedback form into my Apps Script backend using no-cors mode. The success screen fires regardless of whether the message actually landed. Here's what that taught me about success states.

2 min read
web developmentApps Scriptautomation
Read
33 /

The Obvious Tells Aren't the Real Tells

I built an AI writing detector for my site and spent a day calibrating it. The phrases I thought would be the giveaways turned out to be the easy part.

2 min read
AIwritingtools
Read
34 /

Nobody Loses Their Word in a Test Runner

I had twenty-nine automated tests for Impostr. None of them could model a player who tapped past their word reveal before reading it.

2 min read
gamestestingux
Read
35 /

My AI Knows My Voice. It Doesn't Know My Life.

I built automation to draft my blog every morning. This morning I deleted 38 of the drafts it had written, including eight posts about laser engraving experiences that never happened.

2 min read
blog-automationaiwriting
Read
36 /

The Hints Were Correct. They Were Also the Answer.

I built a hint system for a word game and ran a batch simulation. Eight bad hints became six more, then seven more. Three hundred overrides and counting, and I understand why language games require human curation.

2 min read
gamesword-gamessimulation
Read
37 /

26 Tests for a Game You Explain in 30 Seconds

Impostr started as a simple pass-the-phone party game. Adding online mode turned it into a distributed state machine with 26 automated tests.

2 min read
gamestestingplaywright
Read
38 /

My Kudos App Worked Great. For Me.

Someone from my work asked if we could implement a version of my Kudos board at work. I said sure. Then I thought about what that actually meant.

2 min read
side-projectsawsweb-development
Read
39 /

My Star Map Magnifier Doesn't Actually Magnify

I added a magnifier lens to my star map tool. Then I realized I wasn't zooming in. I was filtering out noise. Different tool, same outcome.

2 min read
toolsweb-developmentbrowser
Read
40 /

My AI Hint Sometime Gave Away the Secret Word

I built a browser party game with local ML hints. The model worked perfectly. It just didn't understand what it was supposed to be hinting at.

2 min read
gamesaibrowser
Read
41 /

My Self-Hosted Stack Had No Ops Team. So I Wrote One.

For months my N8N was running three releases behind and I had no idea. Self-hosting means the update alerts go to nobody unless you build them yourself.

2 min read
self-hostedinfrastructureN8N
Read
42 /

Every Tool I Built Had a Reason. Then I Built a Palm Reader.

I had a rule: every tool on my site had to pass a one-sentence justification test. The palm reader broke that rule. Somehow it turned out to be the most interesting thing to build.

2 min read
toolsbuildingai
Read
43 /

I Know You Were There. I Don't Know If I Helped You.

I added usage telemetry to every tools page on my site. Then I added a feedback form. Those two things are tracking very different questions.

2 min read
toolsautomationbuilding
Read
44 /

My AI Drafts My Blog Before I Wake Up

I set up a bot to draft a blog post in my voice every morning at 5am. Most of the time, it works. Here's what it gets wrong, and what that reveals.

2 min read
Klausautomationwriting
Read
45 /

I Built a Color Picker with 148 Colors. People Needed 12.

CSS has 148 named colors. I built a tool that found the nearest one to whatever you pointed your camera at. The problem was nobody uses 'Papaya Whip' in conversation.

2 min read
toolsweb-developmentbrowser
Read
46 /

I Left the Bug. Deliberately.

I deleted /now from my site. CloudFront kept serving HTTP 200 for that path. The fix takes five minutes. I decided not to fix it, and I want to be specific about why.

2 min read
infrastructureawsricoordonio
Read
47 /

My AI Knows Everything I Told It. It Can't Find Any of It.

I've been logging everything to flat markdown files for months. Turns out storage and retrieval are two completely different problems.

2 min read
Klausmemoryinfrastructure
Read
48 /

I Stopped Using My AI. I Started Operating It.

Somewhere between the 3 AM crash and a 178-line update checker cron'd at 8:05 AM, my AI assistant stopped being a tool and became infrastructure I'm responsible for.

2 min read
KlausinfrastructureEC2
Read
49 /

Deploy Finished. Git Hadn't.

My deploy script was syncing to S3 and invalidating CloudFront correctly. It just wasn't pushing to master. The site and the repo had quietly diverged.

2 min read
automationgitdeploy
Read
50 /

I Couldn't Describe My Own Voice

I tried two ways to capture my writing voice into a spec for AI blog automation. A questionnaire and analysis of existing posts both failed. Writing an actual assignment worked.

2 min read
aiwritingautomation
Read
51 /

My AI Tool Doesn't Need a Description. It Needs a Photo.

Building the Color Picker and Handwriting Font Matcher made me realize there's a whole class of problem where showing the model beats describing to it.

2 min read
browser-mlcliptools
Read
52 /

The AWS Credits Ran Out. My AI Didn't Care.

Back in March I predicted the AWS free credits would be gone by mid-May. They are. Here's what the moment actually felt like.

2 min read
KlausAWSEC2
Read
53 /

My Bot Approved Everything. That Was the Bug.

I built an auto-approver to handle routine GitHub issue closes. It had two label lists: safe and blocked. I forgot to check them in the right order.

2 min read
Klausautomationgithub
Read
54 /

Ollama Was Killing My Discord

I put a local inference model on the same EC2 instance as my agent coordinator. Discord slash commands started timing out. At 100% CPU, the agent had nothing left to work with.

2 min read
Klausaiinfrastructure
Read
55 /

The Post Shipped. The Game Didn't.

I published the Sentiment Heist concept on April 16 and ended it with 'I'm seriously considering spinning this into a game.' A month later, the game doesn't exist.

2 min read
side-projectsaiweb-development
Read
56 /

My Site's Tools Were Sharing a Changelog

I built auto-changelogs for each tool on ricoordonio.com. They looked perfect. Then I noticed a commit in the Handwriting Font Matcher's history that wasn't about the Handwriting Font Matcher.

2 min read
toolsautomationregex
Read
57 /

My Board Didn't Know Its Own Members

I set up a CFO, a CMO, and an analytics agent named Echo. Then I typed `claude --agent cfo` and got default Claude. No error. The CFO was never in the room.

2 min read
aiagentsautomation
Read
58 /

I Fixed a Production Incident by Not Fixing It

The git proxy started returning 403. I routed the agent around it in two minutes and moved on. That's not a workaround. That's the system working.

2 min read
aiautomationKlaus
Read
59 /

My Font Matcher Couldn't Tell Fonts Apart

I went in to fix the camera button on my handwriting font matcher. While I was there, I found out the comparison had been identical for every font since I shipped it.

2 min read
toolsweb-devside-projects
Read
60 /

I Rewrote 328 Lines and Added Zero Features

Star Map kept growing. The spec got left behind. So I spent an evening doing the work nobody calls a feature.

2 min read
toolsdesignweb-dev
Read
61 /

Nobody's Using My Tools. I Still Need Them to Match.

I built five browser tools for my site, each independently, each with slightly different visual decisions. Then I wrote a design system spec and retrofitted all five. Nobody asked me to. That's the point.

2 min read
web-developmentdesigntools
Read
62 /

I Shipped a Feature with No Code

I added eight words to a tool page and committed it as a feature. No behavior change, no new function. Just a declaration about what the tool doesn't do.

2 min read
web-developmenttoolsprivacy
Read
63 /

Nobody Asked for the Scannability Warnings

I added scannability warnings to a QR generator I built for myself. Then I spent six commits fixing a gap in a profile tool nobody could see. Building for yourself means you can always see it.

2 min read
side-projectsweb-developmenttools
Read
64 /

My AI Scheduled the Same Job 15 Times

Task Scheduler doesn't throw an error when you create a duplicate entry. I found out what that means after weeks of Klaus setting up tasks without checking what was already there.

2 min read
automationwindowsai-agents
Read
65 /

AI Deleted My Kudos Site.

I feel gross for writing that title. It's kind of true, but the title really should be something like 'I didn't commit correctly so my process did what it was supposed to do and deleted files which resulted in my site returning 404s' Not as sensational, but it's more true.

2 min read
ci-cdawsside-projects
Read
66 /

My Agents Needed a Board Room

I started with one AI. Now I have three coordinating agents, a localhost dashboard with live telemetry, and two specialist slots for a CFO and CMO.

2 min read
Klausaimission-control
Read
67 /

I Already Knew the Fix Was Right. I Verified It Anyway.

I came back the next morning to verify a race condition fix I'd shipped the night before marked UNVERIFIED. The verification worked. That wasn't the point.

2 min read
debuggingkudossupabase
Read
68 /

I Fixed the Race Condition. I Just Can't Verify It.

I built auth into the Kudos site. Sign-in works. The auto-claim flow has a race condition I found and fixed. And I can't verify the fix because Supabase gives you four magic-link emails an hour.

2 min read
side-projectskudosdebugging
Read
69 /

I Said MVP. The Project Said Otherwise.

I built a Kudoboard clone in a day and planned to stop there. Four days and seven themes later, I removed it from my main site nav because it was growing up.

2 min read
side-projectsweb-developmentkudos
Read
70 /

AWS said no. Resend said yes.

I waited on AWS SES production access for three days, answered their questions, and got denied. I migrated to Resend and was live in two hours.

2 min read
awssupabaseside-projects
Read
71 /

My Idea Generator Was Working. The Ideas Were Gibberish.

I gave phi3:mini autonomous access to my GitHub issue queue. It started filing research tickets in complete nonsense. My quality scoring system gave them fours.

2 min read
Klausaiinfrastructure
Read
72 /

I Had to Write More Before I Could Write Less

My AI was drafting my blog posts. I developed a pretty good prompt. The drafts didn't sound like AI but they also didn't sound enough like my voice. Fixing that required me provide samples of my writing.

2 min read
Klausaiwriting
Read
73 /

Trying to Email Kudos. AWS Wants to See My Bounce Rate First.

The kudos delivery email pipeline is complete, tested, and running every five minutes. AWS SES sandbox mode is the only thing standing between me and actually using it.

2 min read
awssupabaseside-projects
Read
74 /

I Built My Own Kudoboard (And Then Added Confetti)

Kudoboard wanted six dollars a pop for a group greeting card. I built my own version complete with a Giphy picker and features that kudoboard doesn't even offer yet.

3 min read
web-developmentside-projectsaws
Read
75 /

Crossing the Memory Streams

When you connect a microphone that hears your ambient life to an AI that writes your code, things get weird.

3 min read
OmiClaude Codeautomation
Read
76 /

What Happens When Your AI Hears Everything

I connected an always-on microphone to my AI assistant. Now it has to figure out the difference between my to-do list and my TV.

2 min read
OmiOpenClawGemini
Read
77 /

How to Rob a Sentiment Classifier in the Browser

Running AI models locally in a web browser is finally easy enough that I turned one into a heist game where you trick it with sarcasm.

3 min read
aimachine-learningweb-development
Read
78 /

My Life in 47 Transcript Fragments

A few weeks into wearing the Omi device, Klaus has hundreds of transcript fragments. Here's what they actually look like, and the problem I still haven't solved.

2 min read
KlausOmimemory
Read
79 /

My AI Server Crashed at 3 AM (And I Wasn't Awake to See It)

The unglamorous side of running your own AI infrastructure: OOM crashes, swap files, a disk that's 83% full, and AWS credits that expire in May.

4 min read
KlausinfrastructureAWS
Read
80 /

What Seven Weeks of AI Actually Costs

I asked my AI to audit its own AWS bill this morning. Here's the full accounting of what building Klaus has cost since January.

4 min read
KlausAWScost
Read
81 /

There's Malware in Your Code. You Can't See It.

An active 2026 attack is hiding malicious characters inside GitHub repos using invisible Unicode and my AI caught it before I did.

3 min read
securityKlausautomation
Read
82 /

My Security Camera Thought Clouds Were People

Turns out AI really, really wants to see faces everywhere. Even in my windshield.

3 min read
frigatehome-assistantcomputer-vision
Read
83 /

My House Can See Now

I spent a weekend getting Frigate and my Lorex cameras talking to Home Assistant. Here's what broke, what I learned, and what I want it to do next.

3 min read
home assistantfrigatelorex
Read
84 /

My AI Leaked My Password Three Times in One Day

I'm building a smart home with AI agents. Yesterday one of them posted my security camera password in Discord. Three times.

4 min read
Klaussecurityhome automation
Read
85 /

When Your AI Runs Out of Memory (Literally)

My cloud AI crashed at 7am, kernel panicked, rebooted itself, and I had no idea until the heartbeat went silent. Here's what happened and what it took to fix it.

4 min read
KlausEC2infrastructure
Read
86 /

I Want to Give My AI Ears

I've spent months building Klaus to know everything about my digital life. The missing piece is everything that happens when I'm not typing.

4 min read
KlausOmiwearable
Read
87 /

My AI Is Helping Me Be Better at Relationships

I'm not great at keeping up with people. So I built a system โ€” with AI's help โ€” to remember what matters and actually follow through.

3 min read
monicacrmrelationships
Read
88 /

Teaching My AI to Think When Nobody's Asking

Most AI only thinks when you talk to it. I built a rumination cycle for my AI agent Klaus, background thinking that runs every few hours and occasionally catches things I missed.

5 min read
KlausAIrumination
Read
89 /

AWS Just Launched a One-Click Version of What I've Been Hand-Building

Amazon Lightsail now deploys OpenClaw out of the box. I've been running OpenClaw on EC2 since January. Here's how I feel about that.

3 min read
KlausOpenClawAWS
Read
90 /

I Want a Home That Thinks

Not just smart lights on a schedule. A house that knows who's at the door, notices when the dryer is done, and locks itself up at night without being asked.

4 min read
home automationHome AssistantKlaus
Read
91 /

The Twin Problem

Same AI. Same memory. Same instructions. One runs on the cloud, one runs on my desktop. So why does one make so many more mistakes?

3 min read
KlausHP KlausEC2 Klaus
Read
92 /

This Site Was Built by AI (Sort Of)

ricoordonio.com was designed and built by Klaus, my AI agent. Here's what that process actually looked like โ€” and what 'built by AI' really means.

3 min read
Klausweb developmentAstro
Read
93 /

I Went on a Cruise. My AI Klaus Kept Working.

Seven days at sea, limited WiFi, no oversight. My AI team closed 42 issues while I was gone. Here's what that actually looked like.

3 min read
Klausautomationvacation
Read
94 /

Why I Built Klaus

I didn't want another chatbot. I wanted a partner that learns my life, takes action, and actually does things. Here's where that idea came from.

4 min read
KlausAIOpenClaw
Read