AI operations · Product owner

I built a self-hosted AI platform by directing AI coding agents

AI Systems Architect & Product Owner · independent project · 2026 to now

918commits across six Git repositories in seven weeks
~5,000automated tests run against every change
~198klines of Python across 525 files

Why I built it

I wanted AI tools that run on hardware I own: a dashboard, voice-note capture, my job search, backups and security checks, with the language models running locally. One rule shaped all of it. Nothing the AI does is allowed to slow the machine down while I'm using it for something else, and that includes gaming.

How I work with AI agents

I don't write production Python from scratch. I write the requirements and the acceptance tests, the agents write the code, and I run what they build, read the output and the errors, and decide what gets fixed. A few rules do most of the work:

How it fits together

Open any part to see what it does.

Capturenotes, photos, voice

Notes, links, photos and voice memos from my phone and laptop land in one inbox, are transcribed and sorted, and are queued safely if the main machine is off.

Dashboardone control surface

One web dashboard for every service: what is running, what needs a decision from me, and the switch that clears the machine for a game.

Model lockone AI job at a time

Every call to a language model goes through one machine-wide lock, so two jobs never fight for the graphics card, and the lock refuses work while a game is running.

Local modelsone 12 GB graphics card

Open-weight language models run locally (Ollama) and are loaded only when needed, so the card is free the rest of the time.

Job searchnine sources, my approval

Nine job-board sources, fit scoring, résumés tailored by a local model, fact checks on every line, and my approval before anything is sent.

Nightly operationsbackups and checks

Every night: encrypted backups, a survey of software updates, service health checks and a spoken morning briefing.

Security

Key-only SSH, access limited to a private network with explicit grants, protection against cross-site request forgery, and an automated security audit. Each of its checks is proven by planting the failure it is supposed to catch and watching it fire.

One example

Before I trusted the backups, I ran a full restore drill myself. The script rebuilt about 7,000 files from the encrypted backup in about four minutes, and the restored database passed its integrity check.

What I took from it

Working with AI agents is product ownership on a fast team. Most of my time went into defining what “done” meant, writing rules that held up when something went wrong, and checking results instead of trusting reports.

← All work