Things I've designed and shipped.
Each write-up focuses on the reasoning — the problem, the architecture, what was actually measured, and what the thing honestly is not.
Agent Egress Proxy — a fail-closed perimeter for outbound AI traffic
Every request an agent sends to a model vendor is redacted, metered and logged before a single byte leaves the machine.
Grit — a policy gateway for MCP tool calls
A tool with no declared policy is denied, never defaulted. Every path is resolved before it is checked. Anything that may write is snapshotted first.
ADLC — adversarial verification judged by the filesystem, not the agent
Generate hostile variants of a tool call, snapshot before and after, and judge the diff against a declared expectation. Never read what the tool said happened.
PreviewProof: see your link the way the internet sees it
Paste a URL and see the Google, X, LinkedIn, Slack and WhatsApp previews it really produces, fetched the way the bots do, with a fix for each problem.
Agent OS — the control plane that decides whether an agent may act
Not an agent. The thing that decides whether one may act, which runtime runs it, what it may spend, and when it must stop and ask a human.
News Brief
My own rebuild of Google's spoken news briefing: short bulletins I choose, stitched on Google Cloud into one brief that skips what I've already played.
This site — a self-hosted portfolio with a real pipeline
Next.js, GSAP, a WebGL aurora and route changes that never wait on an animation — built accessibility-first and deployed on the same Coolify box as everything else.
Also building
Smaller tools, mostly built for my own work with Claude Code and other agentic coding assistants. No case studies below — just what each one is and where the code lives.
Codebase-Intelligence MCP Server
Hybrid retrieval for Claude Code: keyword search fused with vector similarity via Reciprocal Rank Fusion, reindexed incrementally from the git history.
Semantic Code-Search MCP Server
Extended an open-source Rust MCP server with the resources, prompts, progress and cancellation surfaces it was missing — roughly doubling the codebase.
Jank-Detection MCP Server
Watches web animations like a human tester and flags jank, stuttering and visual artefacts using AI vision.
MCP Orchestration & Tooling
An orchestration platform for running multiple MCP servers together, plus a persistent Java language-server daemon that gives Claude Code instant reconnects instead of a cold restart per session.
OpenAI-Compatible API Proxy
Adapts the Augment Code SDK behind an OpenAI-compatible API, containerised and deployed.