<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Programming the Loop — Architecture</title><description>Notes and experiments on how systems fit together, mostly from my own hobby projects.</description><link>https://programmingtheloop.com/</link><language>en-GB</language><item><title>Do You Actually Need an Agent?</title><link>https://programmingtheloop.com/architecture/do-you-need-an-agent/</link><guid isPermaLink="true">https://programmingtheloop.com/architecture/do-you-need-an-agent/</guid><description>Same shop, same tools, four architectures, 4,480 runs. Simple and branching emails were handled at or near 100% without an agent. One model call coped with unexpected requests too. The agent won when something failed mid-way (74% against 42–50%), though two of those cases are simple fixes I left out of the fixed code. It cost about the same as the others, and with a cheap model it refunded a timed-out refund twice in 16 of 20 runs.</description><pubDate>Fri, 30 Oct 2026 23:30:00 GMT</pubDate></item><item><title>Closing the Gaps in My AI Agent&apos;s Identity Setup</title><link>https://programmingtheloop.com/architecture/agent-identity-hardening/</link><guid isPermaLink="true">https://programmingtheloop.com/architecture/agent-identity-hardening/</guid><description>A private key instead of a client secret closed the stolen-credential takeover; a confirmation the service insists on, given on the approver&apos;s phone, stopped the £4,800 invoice every time; agent capability checks, claimant details and a locked tool server closed three more gaps. A £900 claim with no receipt and a fake pre-approval was still approved in 4 of 5 runs.</description><pubDate>Fri, 30 Oct 2026 14:00:00 GMT</pubDate></item><item><title>Who Did That? Giving AI Agents a Proper Identity</title><link>https://programmingtheloop.com/architecture/agent-identity/</link><guid isPermaLink="true">https://programmingtheloop.com/architecture/agent-identity/</guid><description>Four common ways to give an AI agent access to company systems, tested with a local Keycloak and planted requests. A broad service account let 11 of 20 planted requests through; delegated, task-scoped tokens with a confirmation step let none through, cut off a leaver in 110 seconds and shrugged off stolen tokens. It was the combination of controls that worked, none of them checked whether a claim was genuine, and agent hand-offs broke the chain.</description><pubDate>Fri, 30 Oct 2026 10:45:00 GMT</pubDate></item><item><title>Agent Friction Loop: Getting Coding Agents to Tell Me What Slowed Them Down</title><link>https://programmingtheloop.com/architecture/agent-friction-loop/</link><guid isPermaLink="true">https://programmingtheloop.com/architecture/agent-friction-loop/</guid><description>Coding agents leave a one-line note when a repo slows them down, git hooks record it, and a weekly report shows the gaps worth fixing.</description><pubDate>Sun, 25 Oct 2026 12:15:00 GMT</pubDate></item><item><title>WebMCP: Why I&apos;m Interested in Agents Sharing the Browser</title><link>https://programmingtheloop.com/architecture/webmcp-sharing-the-browser/</link><guid isPermaLink="true">https://programmingtheloop.com/architecture/webmcp-sharing-the-browser/</guid><description>Notes from building with WebMCP: humans and agents sharing the same browser state.</description><pubDate>Sat, 24 Oct 2026 11:09:00 GMT</pubDate></item></channel></rss>