Dan Diggas

Engineer

I build systems that get out of the way.

Backend and AI infrastructure at Sophos by day. Local-first tools for security, ops, and music the rest of the time.

Writing

Notes on AI agents, security, and building tools that last.

·10 min read

My Agent Argues With Me Before It Updates My Worldview

Summaries pile up and thinking stays still. So I built a pipeline where videos become typed challenges against a beliefs file capped at seven entries, checked for novelty against a knowledge graph, and judged by exactly one person: me.

·9 min read

My AI Agent Waited for Me to Start It. Now One Part Runs While I Sleep.

I had memory, budgets, and guardrails, and I was still the one pressing go. Climbing from harness to loop turned out to be one timer, one snapshot file, and knowing which celebrated pattern to skip.

·5 min read

ShadowScout: Sending the Scout Before Another AI Tool Gets Adopted

A hackathon build for shadow AI approvals: Tavily searches vendor evidence, Gemini extracts claims, deterministic policy rules make the decision, and ClickHouse-shaped audit rows preserve the trail.

·5 min read

Recruiter Risk Triage: Separating Real Opportunities From Unsafe Outreach

A real LinkedIn recruiter message felt slightly off, so I checked the company, found the website did not resolve, and traced the role back to an expired job description. This is the local-first tool I built from that instinct.

·5 min read

Primitive Reps: The Way I Learn Hard Things

I do not learn hard technical skills by covering topics. I break them into small movements and repeat those movements across scenarios until the pattern becomes automatic.

·7 min read

I Gave My AI Agent a Memory. Then It Started Choking on It.

The follow-up to the memory-layer post. Persistent context worked too well: session start was burning 30-40K tokens before I typed a word. Four fixes — context is a budget, not a bucket.

·5 min read

Your Platform Is a Bottleneck With a Logo

A simple test for whether an internal platform is actually self-service, or just another queue developers have to wait in.

·5 min read

What Broke When I Tried to Use My Own Practice App

The Musician's Practice App is not public yet. This is a build note from getting it ready for early testing by using it like an actual musician, not a feature checklist.

·12 min read

The Platform Nobody Thinks About Anymore

Platform engineering only becomes visible when it breaks. This is the story of building reusable testing, compliance and production-gating infrastructure that multiple services could adopt without reinventing the same deployment safety work every time.

·8 min read

I Built a Memory Layer for My AI Agent

Stateless AI sessions waste engineering time. I built a context layer where sessions load relevant history, persist decisions, and traverse a knowledge graph instead of starting from zero.

·10 min read

Your Production System Has Logs. Your Career Probably Doesn’t.

Engineering work leaves traces everywhere: Jira, GitHub, Slack, incidents, notes. Career observability is about connecting them before performance review season turns you into an archaeologist.

·5 min read

I Built a RAG System to Solve a Real Problem I've Had for 15 Years

You put a specific keyboard on the rider, get flown out to the gig, and when you arrive it's something completely different. That's the scenario this project solves.

Projects

Practical AI workflow tools for music, security, and operations.

Autonomous compliance approval agent for shadow AI tools. Searches vendor evidence, maps it to company policy, produces scoped decisions, and monitors approved tools for drift.

PythonStreamlitTavilyGeminiClickHouse

Local-first dashboard for checking recruiter outreach across legitimacy, security risk, original JD clues, opportunity fit, and safe reply strategy.

PythonAgent GraphDNS/RDAPCompanies HouseLocal UI

Practice app for musicians who can already play. Timer, YouTube player, metronome, tuner, sheet music, AI recommendations.

DjangoNext.jsPostgreSQLRailway

AI Studio Agent

In progress

Automated stem loading for Ableton Live. The goal: send a message from your phone and open a prepared Ableton project later.

PythonMCPGmail APIAbleton

Threat Intel Daily Brief

In progress

Automated morning email with high-signal cybersecurity threat items from trusted sources. Built for engineers and analysts.

PythonLLMRSSSMTP