senior m365 developer · agent infrastructure builder

Ship it.
Prove it.
Or kill it.

I build commercial Microsoft 365 products for regulated enterprises at Content Formula — increasingly through AI agents — and the open-source infrastructure that makes working with agents safer: Works With Agents and Bastion Gateway.

In practice: I can hand an agent a project's ticket queue and it works it end to end — investigation, fix, tests, a QA handover with full context, and the pull request. I keep the harnesses thin, because models improve faster than scaffolding deserves to live.

status: shipping

In production

Lightspeed365

proof ↗

SharePoint intranet product — 30+ SPFx web parts, templates, Teams integration. G2 5.0. Deployed at Womble Bond Dickinson, K.Hovnanian, Severn Trent, LEK, Baringa.

Xoralia

proof ↗

Policy compliance automation on Microsoft 365 — attestation, audit trails, Copilot-verified policy layer. G2 Momentum Leader. Used by Oxford University, LifeArc, Killik & Co, ClientEarth.

Bastion Gateway

origin story ↗

An open-source firewall for AI agents — domain allowlists, secret redaction, signed audit logs. Born from a near-miss, written up in public.

Works With Agents

proof ↗

Open-source specifications for agent interoperability — how autonomous agents hand off work, prove identity, and stay accountable.

status: killed

Concluded experiments

Most profiles hide these. I think they're the credentials: each one was killed on purpose, in public, and paid out a lesson. A concluded experiment beats a maintained zombie.

The agent coding benchmark

last entry ↗

300+ models tested across cloud and local. Retired when the results started expiring faster than they published — the models outgrew the scaffolding.

survived: the testing habit · the archived dataset · the autopsy

The weekend SPFx agent harness

autopsy ↗

Killed on the whiteboard, where bad ideas are cheap. "Is anyone looking for this?" — nobody was.

survived: the rule — ask that question every time you're about to maintain something

FixMap

no autopsy yet

A nightly-regenerated map of AI-classified open-source issues. Nobody asked for opinions on their backlog — least of all maintainers.

survived: humility about unrequested infrastructure

config

How I work

rule_01 · thin harnesses What needed prepared skills and custom scripts a year ago is a single prompt today. As the models improve, the scaffolding should shrink — I build for that, and delete accordingly.
rule_02 · verification gates An agent saying "done" is a claim, not a fact. Work ships through gates a human can trust: tests, QA handovers with full context, signed audit trails.
rule_03 · kill decisions Failure is a learning step. I experiment in public and kill what stops earning its keep — every pivot has taught me more than the plan it replaced.
record

The day job

Senior Microsoft 365 Developer — Content Formula

2020 → present · cardiff, remote · full history on linkedin ↗

  • Core product engineer on Lightspeed365 and Xoralia — two commercial SaaS products on Microsoft 365, sold to regulated enterprises worldwide.
  • Led AI adoption across products and team — every product I touch is AI-onboarded, with an agent-executed delivery loop: ticket queue → fix → tests → QA handover → PR.
  • Full lifecycle delivery in regulated environments — FCA/SMCR, CQC/ISO 27001, education, public sector.
  • Contributor to the SharePoint Framework, PnP CLI, and Microsoft documentation.
log

Autopsies & field notes

A Billion-Token Lesson: Because You Can Doesn't Mean You Should Killing scaffolding before it's built — the cheapest lesson available.
I Put a Firewall in Front of My AI Agents The near-miss that became Bastion Gateway.
How to Onboard an Existing Project with AI Tools A live team onboarding — real codebase, real bug fixes, written up.
open

Get in touch

hello@workswithagents.com

Agent-executed delivery and AI adoption for M365 teams · agent security and interoperability · SharePoint intranet and communication platform builds · Power Platform strategy and governance.