Skip to main content
CryptoFlex// chris johnson
ShippingSubscribe
NO. 96CRYPTOFLEX / ENGINEERING LABUPDATED OCT 16, 2026
Personal blog · Field notes

Build in public.
Break things
on purpose.

I'm a security engineer and build with AI agents on my own time. This is where I write it all down: the security reviews, the home-lab SOC, the agent workflows, and the bugs that got past all of them.

Chris Johnson

Chris Johnson
Security Engineer · Builder

Now buildingRebuilding my OpenClaw agent on Lettaas of Oct 16, 2026
Next dispatchEvery Monday Subscribe
Portfolio

Things I've shipped.

What I built this year, from a home SOC to the AI setup behind all of it. More on the portfolio page.

02 / 06

Security reviews of this site

Two rounds so far. In round two, five security agents and an advocate for my priorities had to agree before anything shipped. They caught a blog draft that could have run code on the server. It's fixed, deployed, and checked in CI on every push.

Dark editorial cover for Security Review: Round Two, with a safe frontmatter fence labelled Data, Renders Fine beside a dangerous one labelled Code, Would Execute, above a row of six chips naming the review team.
AppSecOWASPMulti-agent
03 / 06

Ledgerly

A local-first personal finance app. Bank exports land in one SQLite file on my machine, and the chat answers questions by querying that database through MCP tools, using the Claude CLI I already had.

Dark teal cover graphic titled Ledgerly, Part 1, Local-First Personal Finance, with four panels for Import, Dashboard, Chat, and Reports.
Next.jsSQLiteMCP
04 / 06

Cramdex

An MIT-licensed study app for open-book GIAC exams: a page-accurate book reader, full-text search that cites book and page, quiz decks, and grounded Q&A over your own course PDFs.

FastAPIReactSQLite FTS5
05 / 06

Custom UniFi MCP

A lazy-loading MCP server for UniFi Network, Protect, and Access, packaged as a Claude Code plugin. Built in three days, then maintained in the open with issues, releases, and semver.

PythonFastMCPUniFi
06 / 06

My Claude Code setup

The open-source harness behind everything above: memory that survives sessions, specialist agents, hooks, and multi-agent workflows for writing, reviewing, and shipping.

Claude CodeMCPHooks
Playable Builds

Play something I built.

Two retro rebuilds, live in the browser. No installs, no accounts. Just hit Play.

third-conflict.exe

>

Build fleets. Wage war. Rule the galaxy.

7 Unit Types
14 Random Events
5 Difficulty Levels
cann-cann.exe

>

Aim. Fire. Adjust. Now online: send a friend the invite link.

12 Weapons
7 Biomes
Online Multiplayer

About the author

Everything I know about securing software has an expiration date.

Chris Johnson, in Building With AI, Defending Against It

My day job is cybersecurity defense operations: detection, response, and resilience. The road here was unusual, and every stop left a fingerprint on how I build:

  1. Military intelligence Analyst, Iraq & Afghanistan
  2. Chem/bio defense Pentagon & US Capitol
  3. IT operations Service desk to developer
  4. Security & cloud engineering Controls & infrastructure
  5. Cyber defense operations Now

This blog is where I build in public. Most posts are postmortems of projects I'm still wrestling with, from security reviews of my own code to a home-lab SOC and the agent workflows behind all of it. They're written from inside the build, not from the tidy other side.

I also take on a small number of security and infrastructure engagements through CryptoFlex LLC. See services More about me

Subscribe

Field notes, every Monday.

One email each Monday with what I published that week. No tracking pixels, no growth hacks, and an unsubscribe link in every issue.

Navigation

Blog Posts

↑↓ navigate↵ openesc close