<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Thoughts | Gavin Erasmus</title>
    <link>https://gavinerasmus.com/thoughts</link>
    <atom:link href="https://gavinerasmus.com/thoughts/rss.xml" rel="self" type="application/rss+xml" />
    <description>Notes on applying AI agents to real business processes.</description>
    <language>en-gb</language>
    <lastBuildDate>Sat, 24 Oct 2026 00:00:00 GMT</lastBuildDate>
    <item>
      <title>Harness engineering for a fleet: how I run Claude, Codex and pi across a dozen repos</title>
      <link>https://gavinerasmus.com/thoughts/harness-engineering-for-a-fleet</link>
      <guid isPermaLink="true">https://gavinerasmus.com/thoughts/harness-engineering-for-a-fleet</guid>
      <pubDate>Sat, 24 Oct 2026 00:00:00 GMT</pubDate>
      <dc:creator>Gavin Erasmus</dc:creator>
      <description>A harness is everything around the model: the instructions it reads, the tools it may call, the memory that survives a context reset, the checks that decide whether a run passed, and the gates that stop it doing what the rules forbid. On a normal day here there are ten to fifteen agent panes open across six or seven repos, three providers and several accounts. This is the setup as it stands on 24 October 2026, and every rule in it has a receipt.</description>
      <category>harness engineering</category>
      <category>AI agents</category>
      <category>Claude Code</category>
      <category>Codex</category>
      <category>pi</category>
      <category>agent fleet</category>
      <category>PreToolUse hooks</category>
      <category>multi-agent coordination</category>
      <category>agent memory</category>
    </item>
    <item>
      <title>AI Basics: An Interactive Primer</title>
      <link>https://gavinerasmus.com/thoughts/ai-basics</link>
      <guid isPermaLink="true">https://gavinerasmus.com/thoughts/ai-basics</guid>
      <pubDate>Fri, 23 Oct 2026 00:00:00 GMT</pubDate>
      <dc:creator>Gavin Erasmus</dc:creator>
      <description>A single interactive page that explains how AI systems work and how they are put to use. Each of eleven ideas, from language models and tokens to agents and guardrails, comes with a small demonstration you can operate yourself. The primer opens in any browser and runs offline once it has been downloaded.</description>
      <category>AI basics</category>
      <category>interactive primer</category>
      <category>large language models</category>
      <category>tokens</category>
      <category>context engineering</category>
      <category>tool calling</category>
      <category>MCP</category>
      <category>AI agents</category>
      <category>embeddings</category>
      <category>guardrails</category>
    </item>
    <item>
      <title>Applying The Decision Model to long-running agent workflows</title>
      <link>https://gavinerasmus.com/thoughts/decision-models-for-agent-workflows</link>
      <guid isPermaLink="true">https://gavinerasmus.com/thoughts/decision-models-for-agent-workflows</guid>
      <pubDate>Fri, 23 Oct 2026 00:00:00 GMT</pubDate>
      <dc:creator>Gavin Erasmus</dc:creator>
      <description>Large language models do not apply the same rule in the same way on every run, and in long-running agent workflows the inconsistency compounds. The approach described here removes business decisions from the prompt and models them with The Decision Model (TDM), a method published by Barbara von Halle and Larry Goldberg in 2009. Rule families apply the business rules in code, a typed decision model answers only the narrow questions that need judgement and abstains when uncertain, and the LLM acts only within the conclusion.</description>
      <category>The Decision Model</category>
      <category>TDM</category>
      <category>decision modelling</category>
      <category>AI agents</category>
      <category>agentic workflows</category>
      <category>determinism</category>
      <category>rule families</category>
      <category>DMN</category>
      <category>Jev</category>
      <category>LLM</category>
    </item>
  </channel>
</rss>
