Author: jbmurphy
-
An autonomous purple team that writes its own Azure Policy
A while back I worked a cloud purple-team assessment where the remediation was almost entirely Azure Policy (prevent) plus resource-change detection (detect), iterated against a resilience rubric: attack a technique, see whether it was blocked, alerted, or merely logged, write the control that would stop it, then re-attack to prove the fix. It works, but…
-
Setting up a local plugin marketplace for Claude Code
I run a lot of Claude Code sessions, including dispatched sessions that spin up in short-lived k3s pods. I wanted those pods to install their Claude Code plugins from a server I control on my own network, not from github.com. The model I had in mind is a local yum mirror or a Red Hat…
-
A policy gate that blocks non-compliant Terraform before it applies
A deploy-time gate that grades a whole Terraform change against one policy (OPA plus a language model) and blocks the apply unless every unit passes, using a throwaway workspace so a brand-new stack is still fully plannable.
-
Connecting Jenkins and its agents over Azure Relay
Running a Jenkins build agent in Azure that reaches a private on-LAN controller through an Azure Relay hybrid connection – no public Jenkins, no inbound firewall change, no VPN.
-
A subscription tripwire: detecting and auto-locking suspicious Azure changes
A keyless, no-public-inbound Azure Function that watches a whole subscription for suspicious control-plane changes and freezes the affected resource group within seconds.
-
Coming back to endpoint management: from SMS 2.0 to Autopilot
I started on SMS 2.0 when it was rumored for cancellation, did endpoint for years, then stepped away. I rebuilt a Windows 11 bare-metal install by hand to see how endpoint management is done now.
-
Azure Build Update Part 2
On June 3 through 5, Microsoft pushed about 40 Azure updates. Microsoft Foundry IQ went GA, Microsoft Discovery went GA, HorizonDB and DocumentDB kept extending, Azure Monitor kept closing the OpenTelemetry gap, and a cluster of agent-side updates landed that line up directly with the Agent Framework posts from June 1 and June 2. The…
-
The June 2, 2026 Azure Update Drop: What Shipped and Why It Matters
Microsoft pushed over a hundred Azure updates in one June 2 drop – heavy on AI agents and databases. Here’s the stuff actually worth your time.
-
Microsoft Agent Framework 1.0, part 2: a Jenkins-gated debate between agents
Part 2: three agents (velocity, caution, judge) run as a per-PR Kubernetes Job, post a verdict back to the PR, and exit 0/1/2 so Jenkins gates the deploy stage on the result.
-
Microsoft Agent Framework 1.0: three runnable Python examples
Three small Python examples for Microsoft Agent Framework 1.0: a hello-world agent against Azure OpenAI, an agent with a local Python tool, and an agent connected to a remote Streamable HTTP MCP server.
