<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://blog.abuthahirksm.uk/</loc>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts</loc>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories</loc>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-tool-that-changed-under-you-supply-chain-risk-in-agent-tooling</loc>
    <lastmod>2026-08-25T18:42:55.617Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/how-many-eval-cases-do-you-actually-need</loc>
    <lastmod>2026-08-25T17:43:11.712Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/one-query-is-rarely-enough-iterative-retrieval-for-agents</loc>
    <lastmod>2026-08-25T18:25:51.641Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/what-id-tell-a-team-starting-their-first-agent-project</loc>
    <lastmod>2026-08-25T18:28:48.579Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/should-agents-talk-in-prose-or-in-schemas</loc>
    <lastmod>2026-08-25T17:08:38.745Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/computer-use-when-the-agent-drives-a-whole-desktop</loc>
    <lastmod>2026-08-25T18:25:50.133Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/designing-the-first-turn-what-happens-before-any-tool-call</loc>
    <lastmod>2026-08-25T17:07:41.011Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/why-turn-20-costs-more-than-turn-2</loc>
    <lastmod>2026-08-25T18:28:43.108Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/running-agents-on-a-schedule-what-changes-without-a-user</loc>
    <lastmod>2026-08-25T18:25:03.663Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/tracing-standards-for-agents-what-fits-and-whats-missing</loc>
    <lastmod>2026-08-25T18:29:30.285Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-qa-agent-that-wrote-tests-that-always-passed</loc>
    <lastmod>2026-08-25T17:05:23.966Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/content-boundaries-what-your-agent-should-refuse-and-how-to-test-it</loc>
    <lastmod>2026-08-25T17:04:56.277Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/eval-cases-where-the-right-answer-is-i-dont-know</loc>
    <lastmod>2026-08-25T17:04:25.786Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/who-owns-the-agent-the-team-structure-question</loc>
    <lastmod>2026-08-25T18:29:30.291Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/how-many-agents-is-too-many</loc>
    <lastmod>2026-08-25T18:25:07.546Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/retry-semantics-which-tools-are-safe-to-call-twice</loc>
    <lastmod>2026-08-25T18:38:19.479Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/progressive-disclosure-give-the-agent-tools-as-it-needs-them</loc>
    <lastmod>2026-08-25T18:27:46.521Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/your-first-agent-build-the-smallest-useful-one</loc>
    <lastmod>2026-08-25T17:01:53.005Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/graceful-degradation-when-the-model-provider-is-down</loc>
    <lastmod>2026-08-25T18:28:31.323Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/request-worker-or-durable-execution-hosting-models-for-agents</loc>
    <lastmod>2026-08-25T18:23:32.953Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-sales-research-agent-and-the-problem-of-stale-facts</loc>
    <lastmod>2026-08-25T17:00:10.611Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/least-privilege-for-agent-credentials</loc>
    <lastmod>2026-08-25T16:59:41.806Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/red-teaming-your-own-agent-a-practical-injection-suite</loc>
    <lastmod>2026-08-25T18:25:50.117Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/when-memory-makes-an-agent-worse</loc>
    <lastmod>2026-08-25T18:24:42.067Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/shared-tool-access-when-two-agents-touch-the-same-resource</loc>
    <lastmod>2026-08-25T18:22:33.810Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/designing-tools-for-agents-vs-designing-apis-for-developers</loc>
    <lastmod>2026-08-25T18:25:03.235Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/getting-an-agent-to-say-how-sure-it-is</loc>
    <lastmod>2026-08-25T16:57:06.029Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/few-shot-examples-when-they-help-an-agent-and-when-they-hurt</loc>
    <lastmod>2026-08-25T16:56:39.770Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/latency-budgets-for-agents-where-the-seconds-actually-go</loc>
    <lastmod>2026-08-25T18:28:32.144Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/local-models-for-agent-work-where-they-actually-fit</loc>
    <lastmod>2026-08-25T18:26:02.613Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-documentation-agent-that-actually-kept-docs-in-sync</loc>
    <lastmod>2026-08-25T16:54:53.999Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/audit-logs-that-survive-an-incident</loc>
    <lastmod>2026-08-25T18:28:36.408Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/bisecting-a-bad-run-finding-the-change-that-broke-it</loc>
    <lastmod>2026-08-25T18:29:32.947Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/pricing-an-agent-product-when-your-costs-are-variable</loc>
    <lastmod>2026-08-25T18:25:07.201Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/delegating-to-a-human-as-if-they-were-an-agent</loc>
    <lastmod>2026-08-25T16:52:43.487Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-file-system-as-a-tool-underrated-agent-infrastructure</loc>
    <lastmod>2026-08-25T16:52:17.132Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/state-machines-for-agents-in-regulated-flows</loc>
    <lastmod>2026-08-25T18:26:03.220Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/tool-calls-or-structured-output-two-mechanisms-two-jobs</loc>
    <lastmod>2026-08-25T16:51:19.842Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/give-the-agent-a-scratchpad-external-working-memory</loc>
    <lastmod>2026-08-25T18:24:41.417Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/multi-tenancy-for-agent-products-the-boundaries-that-must-hold</loc>
    <lastmod>2026-08-25T18:30:50.330Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/treating-prompts-like-code-versioning-review-and-rollback</loc>
    <lastmod>2026-08-25T18:24:55.609Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-migration-agent-4-000-files-and-what-made-it-tractable</loc>
    <lastmod>2026-08-25T18:28:48.765Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/data-exfiltration-paths-you-forgot-your-agent-had</loc>
    <lastmod>2026-08-25T18:24:55.632Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/testing-multi-agent-systems-without-losing-your-mind</loc>
    <lastmod>2026-08-25T18:22:32.640Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/deadlock-livelock-and-the-agent-that-waits-forever</loc>
    <lastmod>2026-08-25T18:28:43.589Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/oauth-for-agents-acting-on-behalf-of-a-user</loc>
    <lastmod>2026-08-25T16:46:57.113Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-verifier-in-the-loop-designing-an-oracle-your-agent-can-iterate-against</loc>
    <lastmod>2026-08-25T16:46:27.559Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/what-a-system-prompt-should-and-shouldnt-contain</loc>
    <lastmod>2026-08-25T16:45:57.486Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/where-agents-dont-belong-yet</loc>
    <lastmod>2026-08-25T16:45:14.688Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/queueing-and-backpressure-for-agent-workloads</loc>
    <lastmod>2026-08-25T18:22:16.684Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/observability-for-agents-what-to-log-beyond-the-trace</loc>
    <lastmod>2026-08-25T18:27:47.157Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-code-review-agent-that-commented-on-everything</loc>
    <lastmod>2026-08-25T16:43:48.754Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/sandboxing-code-execution-what-a-run-code-tool-actually-needs</loc>
    <lastmod>2026-08-25T16:43:18.724Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/canary-releases-for-prompt-changes</loc>
    <lastmod>2026-08-25T18:27:46.525Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/chunking-for-agents-is-not-chunking-for-search</loc>
    <lastmod>2026-08-25T16:42:03.092Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/agents-that-wait-callbacks-webhooks-and-long-running-tools</loc>
    <lastmod>2026-08-25T18:34:53.142Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/fan-out-fan-in-parallelism-inside-a-single-agent</loc>
    <lastmod>2026-08-25T18:28:07.200Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/why-two-identical-runs-give-different-answers</loc>
    <lastmod>2026-08-25T16:40:32.199Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/when-the-worker-needs-to-ask-the-supervisor-a-question</loc>
    <lastmod>2026-08-25T16:39:46.067Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/migrating-model-versions-without-breaking-your-agent</loc>
    <lastmod>2026-08-25T16:39:16.465Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/model-routing-using-the-cheap-model-for-the-cheap-steps</loc>
    <lastmod>2026-08-25T18:36:22.076Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-data-cleaning-agent-and-the-column-it-silently-dropped</loc>
    <lastmod>2026-08-25T16:38:18.735Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/designing-a-kill-switch-that-works-mid-run</loc>
    <lastmod>2026-08-25T16:37:48.981Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/building-an-eval-set-from-production-traces</loc>
    <lastmod>2026-08-25T18:25:07.215Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/run-session-or-global-scoping-agent-memory-correctly</loc>
    <lastmod>2026-08-25T16:36:33.021Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/mcp-what-a-standard-tool-protocol-changes-and-what-it-doesnt</loc>
    <lastmod>2026-08-25T18:25:03.227Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-escalation-path-is-part-of-the-design</loc>
    <lastmod>2026-08-25T16:35:34.861Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/format-tool-output-for-a-model-not-for-a-log-file</loc>
    <lastmod>2026-08-25T16:35:06.277Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-demo-to-production-gap-is-an-evaluation-gap</loc>
    <lastmod>2026-08-25T16:34:16.161Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/cost-attribution-finding-which-feature-is-eating-your-token-budget</loc>
    <lastmod>2026-08-25T18:01:20.421Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/vector-database-or-postgres-choosing-storage-for-agent-memory</loc>
    <lastmod>2026-08-25T16:33:19.119Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-on-call-agent-what-it-should-and-shouldnt-touch-during-an-incident</loc>
    <lastmod>2026-08-25T16:32:50.284Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/specialist-agents-or-specialist-prompts-the-cheaper-half-of-multi-agent</loc>
    <lastmod>2026-08-25T16:32:17.463Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/indirect-prompt-injection-when-the-tool-result-is-the-attack</loc>
    <lastmod>2026-08-25T16:31:33.704Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/where-you-put-things-in-the-context-changes-the-answer</loc>
    <lastmod>2026-08-25T18:34:53.318Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-agent-that-read-page-1-of-40-pagination-in-tool-design</loc>
    <lastmod>2026-08-25T18:30:50.321Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/designing-for-resumability-agents-that-survive-a-restart</loc>
    <lastmod>2026-08-25T16:30:07.496Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/chatbot-workflow-or-agent-pick-the-simplest-thing-that-works</loc>
    <lastmod>2026-08-25T18:31:24.289Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/flaky-agents-separating-model-nondeterminism-from-your-bugs</loc>
    <lastmod>2026-08-25T16:28:22.806Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/debate-or-vote-getting-real-value-from-multiple-model-opinions</loc>
    <lastmod>2026-08-25T16:27:54.621Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/what-breaks-first-when-you-give-an-agent-a-browser</loc>
    <lastmod>2026-08-25T18:26:02.456Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/one-prompt-per-job-beats-one-prompt-for-all-the-router-pattern</loc>
    <lastmod>2026-08-25T16:26:53.561Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/reading-your-first-agent-trace-wrong-tool-wrong-argument-or-wrong-plan</loc>
    <lastmod>2026-08-25T16:26:30.708Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/rate-limits-are-an-agent-design-constraint-not-an-ops-problem</loc>
    <lastmod>2026-08-25T18:03:28.011Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-skill-agents-erode-fastest-reading-unfamiliar-code</loc>
    <lastmod>2026-08-25T16:25:12.261Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/build-or-buy-the-eval-harness-what-each-choice-locks-in</loc>
    <lastmod>2026-08-25T16:24:40.491Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-research-agent-that-cited-the-wrong-page</loc>
    <lastmod>2026-08-25T16:24:10.061Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/where-to-put-the-approval-human-in-the-loop-is-a-design-not-a-checkbox</loc>
    <lastmod>2026-08-25T16:23:40.373Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-llm-judge-that-agreed-with-everything</loc>
    <lastmod>2026-08-25T18:30:43.376Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/what-belongs-in-long-term-memory-and-whats-just-transcript</loc>
    <lastmod>2026-08-25T16:22:19.718Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/one-search-tool-or-five-getting-tool-granularity-right</loc>
    <lastmod>2026-08-25T16:21:50.056Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-planner-that-plans-too-much-when-upfront-decomposition-hurts</loc>
    <lastmod>2026-08-25T18:28:31.314Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/prompt-tool-or-code-where-each-piece-of-logic-belongs</loc>
    <lastmod>2026-08-25T16:20:52.635Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/streaming-an-agents-progress-without-lying-about-it</loc>
    <lastmod>2026-08-25T18:03:17.292Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/chain-blackboard-or-broadcast-three-ways-agents-share-state</loc>
    <lastmod>2026-08-25T16:19:13.268Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/agent-adoption-stalls-at-trust-not-capability</loc>
    <lastmod>2026-08-25T16:18:46.402Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/framework-or-plain-loop-four-questions-that-actually-decide-it</loc>
    <lastmod>2026-08-25T18:24:42.604Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-read-only-agent-that-wasnt-auditing-what-your-tools-can-actually-reach</loc>
    <lastmod>2026-08-25T16:17:47.102Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-triage-agent-that-should-have-been-a-filter</loc>
    <lastmod>2026-08-25T16:16:47.984Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/assert-on-the-trajectory-not-the-answer</loc>
    <lastmod>2026-08-25T16:16:12.506Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/trim-summarize-or-retrieve-three-ways-to-survive-a-long-agent-run</loc>
    <lastmod>2026-08-25T16:15:54.445Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/reflection-loops-are-not-free-when-self-critique-makes-the-output-worse</loc>
    <lastmod>2026-08-25T16:15:14.348Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/why-your-agent-stops-too-early-the-missing-termination-signal</loc>
    <lastmod>2026-08-25T18:28:05.610Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/your-tool-description-is-a-prompt-rewriting-schemas-the-model-can-actually-follo</loc>
    <lastmod>2026-08-25T17:24:24.549Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-retry-storm-your-dashboard-cant-see-when-agent-failures-multiply-instead-of</loc>
    <lastmod>2026-08-25T16:41:28.464Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-supervisor-that-became-a-bottleneck-when-not-to-add-a-second-agent</loc>
    <lastmod>2026-08-25T15:21:15.447Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/the-confused-deputy-in-your-agent-when-the-tool-trusts-the-model-too-much</loc>
    <lastmod>2026-08-25T15:18:10.107Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/your-agent-isnt-thinking-its-looping-read-one-turn-of-the-trace-2</loc>
    <lastmod>2026-08-25T15:15:12.659Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/why-your-agent-forgets-step-2-by-step-7-and-four-ways-to-keep-the-thread</loc>
    <lastmod>2026-08-25T04:08:41.858Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/ai-agents-are-changing-how-work-gets-done-what-you-need-to-know</loc>
    <lastmod>2026-08-25T13:11:22.905Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/posts/ai-is-changing-how-we-work</loc>
    <lastmod>2026-08-25T04:10:06.919Z</lastmod>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories/engineering</loc>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories/notes</loc>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories/memory-context</loc>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories/agent-basics</loc>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories/design-patterns</loc>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories/tools-connections</loc>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories/working-together</loc>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories/testing-reliability</loc>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories/safety-guardrails</loc>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories/running-in-production</loc>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories/tools-of-the-trade</loc>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories/real-world-agents</loc>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/categories/big-picture</loc>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/AI</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/AI%20Agents</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/Artificial%20Intelligence</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/Automation</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/Future%20of%20AI</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/Future%20of%20Work</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/Generative%20AI</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/LLM</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/Machine%20Learning</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/Productivity</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/Software%20Engineering</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/Technology</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/adoption</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/advanced</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/agent-design</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/agent-sdk</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/ai-agents</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/automation</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/beginner</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/browser-agents</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/case-study</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/coding-agents</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/comparison</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/context-window</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/debugging</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/deep-dive</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/deployment</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/devops</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/evaluation</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/failure-analysis</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/frameworks</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/function-calling</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/future-of-work</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/guardrails</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/handoffs</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/human-in-the-loop</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/intermediate</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/latency</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/llm</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/mcp</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/memory</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/monitoring</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/multi-agent</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/observability</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/orchestration</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/permissions</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/planning</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/prompt-injection</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/rag</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/reasoning</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/reliability</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/research-agents</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/scaling</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/security</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/strategy</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/support-agents</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/testing</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/token-cost</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/tool-use</loc>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://blog.abuthahirksm.uk/tags/tutorial</loc>
    <priority>0.3</priority>
  </url>
</urlset>