<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Agent Cookbooks</title><description>Practitioner blog about Claude Code: hooks, subagents, MCP, skills, CLAUDE.md. Every post ships with the JSON, the timings, and the failure modes from real use.</description><link>https://agentcookbooks.com/</link><language>en</language><lastBuildDate>Wed, 03 Jun 2026 00:00:00 GMT</lastBuildDate><atom:link href="https://agentcookbooks.com/rss.xml" rel="self" type="application/rss+xml"/><item><title>&quot;Give concrete detail&quot; made the LLM invent it</title><link>https://agentcookbooks.com/blog/ai-hallucinated-concrete-detail/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/ai-hallucinated-concrete-detail/</guid><description>A give-concrete-detail brand-voice line made a content pipeline invent unverifiable specifics. Fix: a context constraint, a [FILL] channel, a banned list.</description><pubDate>Wed, 03 Jun 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>agent-reliability</category><category>context-engineering</category></item><item><title>18 pre-commit rules that block the commit, not the launch</title><link>https://agentcookbooks.com/blog/compliance-as-precommit-rules/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/compliance-as-precommit-rules/</guid><description>Eighteen pre-commit rules encode GDPR, consumer-protection, and thin-content checks as compliance-as-code — ~150ms per commit, blocking commits, not launch.</description><pubDate>Wed, 03 Jun 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>hooks</category><category>compliance</category></item><item><title>Five specialist subagents, delegated by description</title><link>https://agentcookbooks.com/blog/custom-subagents-autonomous-delegation/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/custom-subagents-autonomous-delegation/</guid><description>Five domain-scoped .claude/agents/ subagents, each with its own restricted tool list and per-agent pre-commit skip-list, delegated by description not by name.</description><pubDate>Wed, 03 Jun 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>subagents</category><category>agents</category></item><item><title>MarkItDown read the 19MB PDF WebFetch wouldn&apos;t</title><link>https://agentcookbooks.com/blog/markitdown-19mb-pdf-webfetch-limit/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/markitdown-19mb-pdf-webfetch-limit/</guid><description>WebFetch caps fetches at 10MB, so a 19.5MB system-card PDF stayed unread. MarkItDown converted it in 66s — and recovered the number we couldn&apos;t verify.</description><pubDate>Sun, 31 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>documentation</category><category>context-engineering</category></item><item><title>ASR + an LLM corrupted my agent&apos;s memory twice in 6 weeks</title><link>https://agentcookbooks.com/blog/asr-llm-double-failure-agent-memory/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/asr-llm-double-failure-agent-memory/</guid><description>Each layer was fine alone. Stacked, ASR and an LLM classifier wrote a grammatically valid false fact the agent stated on every call. The audit that catches it.</description><pubDate>Fri, 29 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>agents</category></item><item><title>Cloudflare Pages serves stale HTML after every deploy</title><link>https://agentcookbooks.com/blog/cloudflare-pages-purge-cache-after-deploy/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/cloudflare-pages-purge-cache-after-deploy/</guid><description>A Cache Rule makes Cloudflare Pages edge-cache HTML, so your next deploy stays invisible at the canonical URLs for up to 24h — until you purge.</description><pubDate>Fri, 29 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>deployment</category></item><item><title>Crawled – currently not indexed isn&apos;t always a bug</title><link>https://agentcookbooks.com/blog/gsc-crawled-not-indexed-noindex-alternates/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/gsc-crawled-not-indexed-noindex-alternates/</guid><description>22 URLs hit Search Console&apos;s &apos;Crawled – currently not indexed&apos; — all noindex&apos;d markdown alternates. When that bucket is your noindex working, not a defect.</description><pubDate>Fri, 29 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>seo</category></item><item><title>Four Notion API gotchas the docs don&apos;t mention</title><link>https://agentcookbooks.com/blog/notion-api-four-production-gotchas/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/notion-api-four-production-gotchas/</guid><description>A Notion sync layer that read clean in the docs broke four ways in prod: UTF-16 rich_text limits, appending template enums, orphan writes, and a schema split.</description><pubDate>Fri, 29 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>api</category></item><item><title>We fact-checked the Opus 4.8 launch with Opus 4.8</title><link>https://agentcookbooks.com/blog/opus-4-8-dynamic-workflows-fact-check/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/opus-4-8-dynamic-workflows-fact-check/</guid><description>We run Opus 4.8 with Ultracode (xhigh + Dynamic Workflows), so we aimed it at the launch claims: 15 agents, ~1.1M tokens, 3 of 32 claims refuted.</description><pubDate>Fri, 29 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>subagents</category><category>cost-management</category></item><item><title>Astro sitemap doesn&apos;t filter noindex pages by default</title><link>https://agentcookbooks.com/blog/astro-sitemap-doesnt-filter-noindex-pages/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/astro-sitemap-doesnt-filter-noindex-pages/</guid><description>24 noindex topic pages plus /404/ were leaking into sitemap-0.xml. The filter callback that drops them, and the .mjs-can&apos;t-import-.ts gotcha.</description><pubDate>Tue, 26 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>seo</category></item><item><title>Cloudflare Pages won&apos;t edge-cache HTML without a Cache Rule</title><link>https://agentcookbooks.com/blog/cloudflare-pages-html-cache-the-missing-rule/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/cloudflare-pages-html-cache-the-missing-rule/</guid><description>The _headers Cache-Control directive worked for /_astro/ assets but not HTML. The Cache Rule that fixed it, the UI gotcha, curl MISS-then-HIT.</description><pubDate>Tue, 26 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>deployment</category></item><item><title>ElevenLabs Conversational AI: four 200 OK gotchas</title><link>https://agentcookbooks.com/blog/elevenlabs-conversational-ai-four-200-ok-footguns/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/elevenlabs-conversational-ai-four-200-ok-footguns/</guid><description>Four ElevenLabs Conversational AI gotchas that return 200 OK with wrong behavior: workspace-scoped keys, hidden override toggles, dual webhook auth, test gates.</description><pubDate>Tue, 26 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>deployment</category></item><item><title>Astro slot=head drops silently from nested components</title><link>https://agentcookbooks.com/blog/astro-jsonld-slot-head-nested-drop/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/astro-jsonld-slot-head-nested-drop/</guid><description>Moved BreadcrumbList JSON-LD into a nested Astro component&apos;s slot=head. It vanished. Search Console: 0 items. The undocumented Astro slot rule.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>seo</category></item><item><title>GCP budgets don&apos;t cap spend — Pub/Sub is the only hard-stop</title><link>https://agentcookbooks.com/blog/gcp-budget-doesnt-cap-pubsub-killswitch/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/gcp-budget-doesnt-cap-pubsub-killswitch/</guid><description>GCP budgets are alert-only. Pub/Sub → Cloud Function → updateBillingInfo is the real kill-switch — plus the Gen 2 logger gotcha that ate an afternoon.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>deployment</category><category>cost-management</category></item><item><title>WeasyPrint to Playwright PDF: five footguns</title><link>https://agentcookbooks.com/blog/playwright-pdf-replace-weasyprint-five-footguns/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/playwright-pdf-replace-weasyprint-five-footguns/</guid><description>Migrating five PDF formats off WeasyPrint to Playwright + Chromium worked — after the asyncio deadlock, the systemd sandbox, and the per-user browser cache.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>deployment</category></item><item><title>A Claude Code plugin&apos;s manifest is 12 lines</title><link>https://agentcookbooks.com/blog/claude-code-plugin-anatomy/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/claude-code-plugin-anatomy/</guid><description>What ships in a Claude Code plugin: 12-line marketplace.json, 12-line plugin.json, no enumeration. Discovery is directory-based.</description><pubDate>Sun, 24 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>skills</category><category>cookbook</category><category>codebase-analysis</category></item><item><title>Six Cloudflare Pages build failures before _headers</title><link>https://agentcookbooks.com/blog/cloudflare-pages-six-failures-before-headers/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/cloudflare-pages-six-failures-before-headers/</guid><description>First Astro 6 deploy to Cloudflare Pages: 6 failed builds, 2 rollbacks, 8 commits, 8 hours. The ordered list of fails the docs scatter across six pages.</description><pubDate>Sun, 24 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>deployment</category></item><item><title>SessionStart: systemMessage vs additionalContext</title><link>https://agentcookbooks.com/blog/claude-code-sessionstart-systemmessage-vs-additionalcontext/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/claude-code-sessionstart-systemmessage-vs-additionalcontext/</guid><description>Wrote a SessionStart hook to surface open work. systemMessage shows it in the UI; additionalContext injects it into model context.</description><pubDate>Sat, 23 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>hooks</category></item><item><title>Cloudflare email-protection breaks screen readers</title><link>https://agentcookbooks.com/blog/cloudflare-email-protection-screen-reader-trap/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/cloudflare-email-protection-screen-reader-trap/</guid><description>A11y audit on the live homepage caught a Cloudflare edge-side trick that source-code audits can&apos;t see: the footer email link reads &apos;email protected&apos; aloud.</description><pubDate>Sat, 23 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>a11y</category></item><item><title>Fewer permission prompts: 15 sessions, one allowlist line</title><link>https://agentcookbooks.com/blog/fewer-permission-prompts-scanned-15-sessions-one-allowlist-line/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/fewer-permission-prompts-scanned-15-sessions-one-allowlist-line/</guid><description>Scanned 15 Claude Code session transcripts for prompts to allowlist. ~50 commands extracted, one strict survivor. The auto-allow list is broader than expected.</description><pubDate>Thu, 21 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>harness</category></item><item><title>Pytrends keyword research: 429 ceiling at 12 queries</title><link>https://agentcookbooks.com/blog/pytrends-keyword-research-12-queries-before-429/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/pytrends-keyword-research-12-queries-before-429/</guid><description>Google Trends keyword research with pytrends: the urllib3 method_whitelist trap, a 429 on the 13th query, and two findings that flipped the plan.</description><pubDate>Thu, 21 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>seo</category></item><item><title>Scheduled remote agents can&apos;t see gitignored files</title><link>https://agentcookbooks.com/blog/scheduled-remote-agents-cant-see-gitignored-files/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/scheduled-remote-agents-cant-see-gitignored-files/</guid><description>Three /schedule routines proposed, two created, one declined. The recurring sweep would have read a gitignored folder — the remote agent can&apos;t see those.</description><pubDate>Thu, 21 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>automation</category></item><item><title>Customer research on a pre-launch blog, no assets</title><link>https://agentcookbooks.com/blog/customer-research-on-a-pre-launch-blog/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/customer-research-on-a-pre-launch-blog/</guid><description>Ran /customer-research with no customer assets and no G2 reviews. Mode 1 and Mode 2 both partly failed; the confidence-levels guardrail saved the run.</description><pubDate>Mon, 18 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>marketing</category><category>strategy</category><category>research</category></item><item><title>/seo-schema validates JSON-LD well. It won&apos;t extend it.</title><link>https://agentcookbooks.com/blog/seo-schema-validates-but-wont-extend/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/seo-schema-validates-but-wont-extend/</guid><description>Ran /seo-schema against a site that already emits five schema types. It validates cleanly, won&apos;t help you add the next one — and that&apos;s a tell.</description><pubDate>Mon, 18 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>seo</category></item><item><title>E-E-A-T audit: anonymity policy caps Authority at 5/10</title><link>https://agentcookbooks.com/blog/eeat-audit-anonymity-policy-as-authority-ceiling/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/eeat-audit-anonymity-policy-as-authority-ceiling/</guid><description>E-E-A-T audit, 197 skills + 20 blog posts on anonymous wiki. Authority caps at ~5/10 by policy. Experience-on-display is the real defect — three fixes shipped.</description><pubDate>Sun, 17 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>audit</category><category>seo</category></item><item><title>20 broken links: three upstream repos restructured at once</title><link>https://agentcookbooks.com/blog/twenty-broken-links-three-upstream-restructures/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/twenty-broken-links-three-upstream-restructures/</guid><description>Site-wide link audit on a static Astro wiki: 12,753 hrefs across 311 pages, 20 broken externals. Root cause: three upstream repos restructured the same week.</description><pubDate>Sun, 17 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>audit</category><category>seo</category></item><item><title>Competitor-profiling named one I didn&apos;t know existed</title><link>https://agentcookbooks.com/blog/competitor-profiling-named-a-competitor-i-didnt-know-existed/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/competitor-profiling-named-a-competitor-i-didnt-know-existed/</guid><description>A profiling skill sized for Firecrawl + DataForSEO, run without either. The discoverability step it skipped is where the actual finding landed.</description><pubDate>Tue, 12 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>skills</category><category>positioning</category></item><item><title>One dispatch, 160 files classified, the rubric was the bug</title><link>https://agentcookbooks.com/blog/one-dispatch-160-files-classified-the-rubric-was-the-bug/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/one-dispatch-160-files-classified-the-rubric-was-the-bug/</guid><description>Dispatched an Explore agent to classify 160 wiki entries. The rubric the agent invented mapped to a phrase that appears in 142 of those files.</description><pubDate>Tue, 12 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>skills</category><category>subagents</category></item><item><title>Verification caught half the audit claims weren&apos;t greppable</title><link>https://agentcookbooks.com/blog/verification-half-the-audit-claims-werent-greppable/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/verification-half-the-audit-claims-werent-greppable/</guid><description>Ran evidence-before-assertion on a four-claim audit. Two passed grep. The other two were the agent&apos;s content read, accepted on trust.</description><pubDate>Tue, 12 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>skills</category><category>evals</category></item><item><title>From breadth to depth: pausing wiki imports at 12 sources</title><link>https://agentcookbooks.com/blog/breadth-to-depth-pausing-wiki-imports-at-12-sources/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/breadth-to-depth-pausing-wiki-imports-at-12-sources/</guid><description>Wiki at 160 skills: 14 firsthand, 9 visibly TODO, 137 still-generic. Pausing new imports. Two moves earn more leverage: real engagements and cookbook posts.</description><pubDate>Sat, 09 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>skills</category><category>editorial</category></item><item><title>Week one on Cloudflare Pages: 449 visitors, 5.99% cached</title><link>https://agentcookbooks.com/blog/cloudflare-pages-html-cache-week-one-449-visitors/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/cloudflare-pages-html-cache-week-one-449-visitors/</guid><description>First seven days post-domain-attach: 449 visitors, 8.7 requests per visit, 5.99% cache rate. GPTBot spiked +3,763%. Three hypotheses, one already confirmed.</description><pubDate>Sat, 09 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>deployment</category><category>analytics</category></item><item><title>142 over-long meta descriptions, one 6-line fix</title><link>https://agentcookbooks.com/blog/meta-description-sprawl-one-helper-fixes-142-pages/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/meta-description-sprawl-one-helper-fixes-142-pages/</guid><description>An n=8 sample flagged one over-long meta description on this Astro wiki. The full 153-skill sweep showed 142. One helper in Base.astro fixed all of them.</description><pubDate>Sat, 09 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>seo</category><category>astro</category></item><item><title>Two destructive git ops: a parallel-session .gitignore trap</title><link>https://agentcookbooks.com/blog/parallel-session-gitignore-trap-two-destructive-ops/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/parallel-session-gitignore-trap-two-destructive-ops/</guid><description>My .gitignore cache was stale, so I read 20 vendored skill files as pollution. Ran git rm --cached, then reverted. Two commits that shouldn&apos;t exist.</description><pubDate>Sat, 09 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>workflows</category><category>git</category></item><item><title>Six personas in parallel, three findings with receipts</title><link>https://agentcookbooks.com/blog/six-personas-in-parallel-three-findings-emulated-not-installed/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/six-personas-in-parallel-three-findings-emulated-not-installed/</guid><description>Six agency-agent personas dispatched as general-purpose subagents — emulated, not installed. Three findings: a frontmatter gap, a schema gap, three a11y gaps.</description><pubDate>Sat, 09 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>skills</category><category>agents</category></item><item><title>Four SEO skills on one homepage: only Sweep 4 found the gap</title><link>https://agentcookbooks.com/blog/four-seo-skills-only-sweep-4-found-the-gap/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/four-seo-skills-only-sweep-4-found-the-gap/</guid><description>Four skills on the same live homepage. Three SEO rubrics returned clean scores. Only copy-editing&apos;s Sweep 4 caught the claim-vs-proof colocation gap.</description><pubDate>Mon, 04 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>skills</category><category>seo</category></item><item><title>skill-security-auditor isn&apos;t a website audit tool</title><link>https://agentcookbooks.com/blog/skill-security-auditor-not-a-website-tool/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/skill-security-auditor-not-a-website-tool/</guid><description>A 30-second negative-fit receipt: the skill name reads like website security, but the actual scope is scanning skill code before install. Lesson included.</description><pubDate>Mon, 04 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>skills</category><category>skill-development</category><category>security</category></item><item><title>Claude Code CRO on a content blog with no funnel</title><link>https://agentcookbooks.com/blog/claude-code-cro-content-blog/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/claude-code-cro-content-blog/</guid><description>Ran /page-cro on a content blog with no signup, no funnel. 4 of 7 framework dimensions applied. The convergence with /copy-editing was the lesson.</description><pubDate>Sat, 02 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>skills</category><category>cro</category></item><item><title>A static-site CSP that doesn&apos;t break Pagefind</title><link>https://agentcookbooks.com/blog/cloudflare-pages-csp-pagefind/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/cloudflare-pages-csp-pagefind/</guid><description>The Content-Security-Policy on a static Astro blog with Pagefind search — the two directives nobody documents and what &apos;unsafe-inline&apos; actually costs you.</description><pubDate>Sat, 02 May 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>security</category><category>deployment</category></item><item><title>Claude Code hook: Haiku 4.5 judges every content edit</title><link>https://agentcookbooks.com/blog/claude-code-content-judge-hook/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/claude-code-content-judge-hook/</guid><description>A PostToolUse hook that sends every content edit to Haiku 4.5 for an editorial-bar verdict. The config, the rubric, and the prompt-caching floor.</description><pubDate>Thu, 30 Apr 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>hooks</category><category>cookbook</category></item><item><title>Claude Code hook: validate frontmatter on every Edit</title><link>https://agentcookbooks.com/blog/claude-code-frontmatter-guard-hook/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/claude-code-frontmatter-guard-hook/</guid><description>A PostToolUse hook validating blog and skill frontmatter against the same zod shape Astro uses at build. Real config, two live blocks captured.</description><pubDate>Thu, 30 Apr 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>hooks</category><category>cookbook</category></item><item><title>Cloudflare&apos;s AI Audit silently rewrites your robots.txt</title><link>https://agentcookbooks.com/blog/cloudflare-ai-audit-robots-txt-trap/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/cloudflare-ai-audit-robots-txt-trap/</guid><description>Cloudflare&apos;s AI Audit feature edge-injects Disallow rules into robots.txt — silently overriding the file you committed. What it blocks, what slips through.</description><pubDate>Thu, 30 Apr 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>seo</category></item><item><title>Claude Code harness setup: 3 skills, 30 minutes</title><link>https://agentcookbooks.com/blog/claude-code-harness-setup-sprint/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/claude-code-harness-setup-sprint/</guid><description>15 transcripts scanned, 1 permission survivor, 5 misplaced allow rules found, 2 remote agents scheduled: what three harness skills found in 30 minutes.</description><pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>hooks</category><category>skill-development</category></item><item><title>Claude Code PostToolUse hook: log every skill activation</title><link>https://agentcookbooks.com/blog/claude-code-skill-activation-hook/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/claude-code-skill-activation-hook/</guid><description>A PostToolUse hook on the Skill tool: appends a stub to receipts-drafts/. The config, the Node script, and the watcher quirk that took a restart.</description><pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>hooks</category><category>cookbook</category></item><item><title>/copy-editing vs /humanizer: only one made edits</title><link>https://agentcookbooks.com/blog/copy-editing-vs-humanizer/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/copy-editing-vs-humanizer/</guid><description>Two skills on the same 65-line technical post: copy-editing made 4 edits, humanizer made 0. The negative result and the decision rule it produces.</description><pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>skills</category><category>copywriting</category><category>humanizing</category></item><item><title>Three SEO skills on pre-launch Astro: what each caught</title><link>https://agentcookbooks.com/blog/three-seo-skills-pre-launch-audit/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/three-seo-skills-pre-launch-audit/</guid><description>Three SEO skills, one pre-launch Astro site, no live URL: title fixed in 3 minutes, full-site scored at 82/100, content E-E-A-T at 65/100.</description><pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>skills</category><category>seo</category></item><item><title>Claude Code hooks: a starter recipe with real config</title><link>https://agentcookbooks.com/blog/claude-code-hooks-cookbook/</link><guid isPermaLink="true">https://agentcookbooks.com/blog/claude-code-hooks-cookbook/</guid><description>One Claude Code hook, the actual JSON, what it blocks, and the two failure modes I hit. The full cookbook ships after 12 hooks in production.</description><pubDate>Tue, 28 Apr 2026 00:00:00 GMT</pubDate><category>claude-code</category><category>hooks</category><category>cookbook</category></item></channel></rss>