You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
webjs-blog-write mandates two verifications that run serially in the main session. The de-duplication check reads every existing post under blog/ before writing. The dogfood verification (step 3, L94) scaffolds a real app, boots it on Node AND Bun for runtime-sensitive claims, and probes every factual claim with curl or a browser before a feature post ships. The boots and probes are independent processes and the claim list is independent checks, yet the skill implies one serial pass, which in practice makes the mandatory verification feel expensive enough to shortcut, and an unverified claim shipping is the exact failure the step exists to prevent.
Design / approach
Two amendments to .claude/skills/webjs-blog-write/SKILL.md:
The de-dup check fans out as a single read-only Explore agent over blog/ returning per-post topic summaries (one agent, since the corpus is small; the win is keeping the main context clean, not parallelism).
Step 3's dogfood verification runs its independent parts as one batch of background Bash tasks: the Node boot and the Bun boot in parallel, and the per-claim probes against whichever boot they need, with EVERY task's result collected before the post is declared verified. A claim that needs a browser probe stays in the main session (the browser MCP is not shareable across background tasks).
Implementation notes (for the implementing agent)
Where to edit: .claude/skills/webjs-blog-write/SKILL.md, the de-dup convention (grep "de-duplication check against every existing post" in the frontmatter description and its body section) and step 3 (grep "verify every factual claim by dogfooding", L94).
Landmine: the skill's prose rules (no em-dashes, no internal issue/PR numbers in posts) apply to the POSTS, while invariant 11 applies to the skill's own prose; keep the two rule sets distinct when editing near them.
Landmine: mirror to ~/.claude/skills/webjs-blog-write/SKILL.md in the same change, diff -q afterwards.
Tests / docs: node --test test/hooks/route-skills.test.mjs still passes; no other surface.
Acceptance criteria
The de-dup sweep is delegated to a read-only Explore agent returning per-post summaries
Step 3 boots Node and Bun as parallel background tasks and runs claim probes against them, collecting every result before the post is called verified
Browser-dependent probes are explicitly kept in the main session
Problem
webjs-blog-writemandates two verifications that run serially in the main session. The de-duplication check reads every existing post underblog/before writing. The dogfood verification (step 3, L94) scaffolds a real app, boots it on Node AND Bun for runtime-sensitive claims, and probes every factual claim with curl or a browser before a feature post ships. The boots and probes are independent processes and the claim list is independent checks, yet the skill implies one serial pass, which in practice makes the mandatory verification feel expensive enough to shortcut, and an unverified claim shipping is the exact failure the step exists to prevent.Design / approach
Two amendments to
.claude/skills/webjs-blog-write/SKILL.md:Exploreagent overblog/returning per-post topic summaries (one agent, since the corpus is small; the win is keeping the main context clean, not parallelism).Implementation notes (for the implementing agent)
.claude/skills/webjs-blog-write/SKILL.md, the de-dup convention (grep "de-duplication check against every existing post" in the frontmatter description and its body section) and step 3 (grep "verify every factual claim by dogfooding", L94).~/.claude/skills/webjs-blog-write/SKILL.mdin the same change,diff -qafterwards.node --test test/hooks/route-skills.test.mjsstill passes; no other surface.Acceptance criteria
diff -q)