{
  "@context": "https://schema.org",
  "@id": "https://aggr.aymericbeaumet.com/items/simonwillison-net/2026-10-13-quoting-geoffrey-huntley/#webpage",
  "@type": [
    "WebPage",
    "ArchiveComponent"
  ],
  "articleBody": "> If the agent isn't using my diagnostics library, I could introspect and update AGENTS.md, but there's still a delta, and it'll drift. Instead, I write a pre-commit hook that checks the git diff for direct calls to observability modules that bypass my diagnostics module. Boom: fail the commit, inject a prompt telling the agent to use the diagnostics library. All of a sudden it's ten out of ten.\n\n— [Geoffrey Huntley](https://ghuntley.com/agency/), nobody should type code by hand anymore. here's what's left.\n\nPosted [13th October 2026](https://simonwillison.net/2026/Oct/13/) at 1:32 pm\n\n## Recent articles\n\n- [Hello Python 3.15, goodbye 3.10, and now I can use 3.11](https://simonwillison.net/2026/Oct/12/python-3-15/) - 12th October 2026\n- [A new feature for my blog, built using my voice](https://simonwillison.net/2026/Oct/9/built-using-my-voice/) - 9th October 2026\n- [Claude Haiku 5.5](https://simonwillison.net/2026/Oct/7/claude-haiku-5-5/) - 7th October 2026\n- [We're going to need default hard budget caps on pretty much everything](https://simonwillison.net/2026/Oct/3/default-hard-budget-caps/) - 3rd October 2026\n\nThis is a **quotation** collected by Simon Willison, posted on [13th October 2026](https://simonwillison.net/2026/Oct/13/).\n\n[git 58](https://simonwillison.net/tags/git/) [ai 2,285](https://simonwillison.net/tags/ai/) [generative-ai 2,027](https://simonwillison.net/tags/generative-ai/) [llms 1,993](https://simonwillison.net/tags/llms/) [coding-agents 259](https://simonwillison.net/tags/coding-agents/) [geoffrey-huntley 4](https://simonwillison.net/tags/geoffrey-huntley/) [agentic-engineering 67](https://simonwillison.net/tags/agentic-engineering/)\n",
  "authors": [],
  "captured_at": "2026-10-13T18:08:43.541012300+00:00",
  "category": "programming",
  "content_html": "<blockquote>\n<p>If the agent isn't using my diagnostics library, I could introspect and update AGENTS.md, but there's still a delta, and it'll drift. Instead, I write a pre-commit hook that checks the git diff for direct calls to observability modules that bypass my diagnostics module. Boom: fail the commit, inject a prompt telling the agent to use the diagnostics library. All of a sudden it's ten out of ten.</p>\n</blockquote>\n<p>— <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://ghuntley.com/agency/\">Geoffrey Huntley</a>, nobody should type code by hand anymore. here's what's left.</p>\n<p>Posted <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://simonwillison.net/2026/Oct/13/\">13th October 2026</a> at 1:32 pm</p>\n<h2>Recent articles</h2>\n<ul>\n<li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://simonwillison.net/2026/Oct/12/python-3-15/\">Hello Python 3.15, goodbye 3.10, and now I can use 3.11</a> - 12th October 2026</li>\n<li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://simonwillison.net/2026/Oct/9/built-using-my-voice/\">A new feature for my blog, built using my voice</a> - 9th October 2026</li>\n<li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://simonwillison.net/2026/Oct/7/claude-haiku-5-5/\">Claude Haiku 5.5</a> - 7th October 2026</li>\n<li><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://simonwillison.net/2026/Oct/3/default-hard-budget-caps/\">We're going to need default hard budget caps on pretty much everything</a> - 3rd October 2026</li>\n</ul>\n<p>This is a <strong>quotation</strong> collected by Simon Willison, posted on <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://simonwillison.net/2026/Oct/13/\">13th October 2026</a>.</p>\n<p><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://simonwillison.net/tags/git/\">git 58</a> <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://simonwillison.net/tags/ai/\">ai 2,285</a> <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://simonwillison.net/tags/generative-ai/\">generative-ai 2,027</a> <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://simonwillison.net/tags/llms/\">llms 1,993</a> <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://simonwillison.net/tags/coding-agents/\">coding-agents 259</a> <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://simonwillison.net/tags/geoffrey-huntley/\">geoffrey-huntley 4</a> <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://simonwillison.net/tags/agentic-engineering/\">agentic-engineering 67</a></p>\n",
  "content_markdown": "> If the agent isn't using my diagnostics library, I could introspect and update AGENTS.md, but there's still a delta, and it'll drift. Instead, I write a pre-commit hook that checks the git diff for direct calls to observability modules that bypass my diagnostics module. Boom: fail the commit, inject a prompt telling the agent to use the diagnostics library. All of a sudden it's ten out of ten.\n\n— [Geoffrey Huntley](https://ghuntley.com/agency/), nobody should type code by hand anymore. here's what's left.\n\nPosted [13th October 2026](https://simonwillison.net/2026/Oct/13/) at 1:32 pm\n\n## Recent articles\n\n- [Hello Python 3.15, goodbye 3.10, and now I can use 3.11](https://simonwillison.net/2026/Oct/12/python-3-15/) - 12th October 2026\n- [A new feature for my blog, built using my voice](https://simonwillison.net/2026/Oct/9/built-using-my-voice/) - 9th October 2026\n- [Claude Haiku 5.5](https://simonwillison.net/2026/Oct/7/claude-haiku-5-5/) - 7th October 2026\n- [We're going to need default hard budget caps on pretty much everything](https://simonwillison.net/2026/Oct/3/default-hard-budget-caps/) - 3rd October 2026\n\nThis is a **quotation** collected by Simon Willison, posted on [13th October 2026](https://simonwillison.net/2026/Oct/13/).\n\n[git 58](https://simonwillison.net/tags/git/) [ai 2,285](https://simonwillison.net/tags/ai/) [generative-ai 2,027](https://simonwillison.net/tags/generative-ai/) [llms 1,993](https://simonwillison.net/tags/llms/) [coding-agents 259](https://simonwillison.net/tags/coding-agents/) [geoffrey-huntley 4](https://simonwillison.net/tags/geoffrey-huntley/) [agentic-engineering 67](https://simonwillison.net/tags/agentic-engineering/)\n",
  "dateCreated": "2026-10-13T18:08:43.541012300+00:00",
  "date_created": "2026-10-13T13:32:00+00:00",
  "date_modified": "2026-10-13T13:32:00+00:00",
  "date_published": "2026-10-13T13:32:00+00:00",
  "description": "If the agent isn't using my diagnostics library, I could introspect and update AGENTS.md, but there's still a delta, and it'll drift. Instead, I write a pre-commit hook that checks the git diff for direct calls to observability modules…",
  "external_url": "https://simonwillison.net/2026/Oct/13/geoffrey-huntley/",
  "git": {
    "commit": "ebb0941c5c06a2ab2377342d607535262a3e969e",
    "path": "items/simonwillison-net/2026/10/2026-10-13-quoting-geoffrey-huntley.md",
    "permalink": "https://github.com/aymericbeaumet/aggr-instance/blob/ebb0941c5c06a2ab2377342d607535262a3e969e/items/simonwillison-net/2026/10/2026-10-13-quoting-geoffrey-huntley.md"
  },
  "id": "urn:aggr:item:903c3c9c66f0e63683b77c2cb42d0fed3d8db61d",
  "isBasedOn": {
    "@id": "https://simonwillison.net/2026/Oct/13/geoffrey-huntley/"
  },
  "mainEntity": {
    "@id": "https://simonwillison.net/2026/Oct/13/geoffrey-huntley/",
    "@type": "CreativeWork",
    "archivedAt": {
      "@id": "https://aggr.aymericbeaumet.com/items/simonwillison-net/2026-10-13-quoting-geoffrey-huntley/#webpage"
    },
    "dateModified": "2026-10-13T13:32:00+00:00",
    "datePublished": "2026-10-13T13:32:00+00:00",
    "headline": "Quoting Geoffrey Huntley",
    "timeRequired": "PT1M",
    "url": "https://simonwillison.net/2026/Oct/13/geoffrey-huntley/",
    "wordCount": 170
  },
  "name": "Archived snapshot: Quoting Geoffrey Huntley",
  "preview": null,
  "reading_minutes": 1,
  "replicated_at": null,
  "source": "simonwillison-net",
  "source_name": "Simon Willison's Weblog",
  "summary": "If the agent isn't using my diagnostics library, I could introspect and update AGENTS.md, but there's still a delta, and it'll drift. Instead, I write a pre-commit hook that checks the git diff for direct calls to observability modules that bypass my diagnostics module. Boom: fail the commit, inject a prompt telling the agent to use the diagnostics library. All of a sudden it's ten out of ten. — Geoffrey Huntley, nobody should type code by hand anymore. here's what's left. Tags: coding-agents, generative-ai, git, agentic-engineering, ai, geoffrey-huntley, llms",
  "tags": [
    "agentic-engineering",
    "ai",
    "coding-agents",
    "generative-ai",
    "geoffrey-huntley",
    "git",
    "llms"
  ],
  "temporalCoverage": "2026-10-13T18:08:43.541012300+00:00",
  "title": "Quoting Geoffrey Huntley",
  "url": "https://aggr.aymericbeaumet.com/items/simonwillison-net/2026-10-13-quoting-geoffrey-huntley/",
  "word_count": 170
}