{"slug": "i-built-guardrails-for-claude-code-after-it-told-me-a-fix-worked-when-it-didn-t", "title": "I built guardrails for Claude Code after it told me a fix \"worked\" when it didn't", "summary": "A developer released the Claude Code Guardrails Pack, a free MIT-licensed set of hooks and skills designed to stop agentic coding tools like Claude Code, Cursor, and Windsurf from claiming work is complete without verification. The pack includes an unlazy skill, a handoff skill, a safe_git_guard.py script that blocks destructive git commands on dirty trees, and a pre-commit secret scanner, each shipping with the exact command used to verify it. A $14 Pro version adds a secret-scanning hook, a per-session tool-call budget guard, and pre-PR and subagent fan-out skills.", "body_md": "Just shipped this after getting burned one too many times: **Claude Code Guardrails Pack** — free hooks and skills that stop an AI coding agent from claiming work is done when it never actually checked.\n\nYou've probably hit this if you use Claude Code (or Cursor, Windsurf, any agentic coding tool) for real work:\n\nThis is the single most-reported frustration with agentic coding tools right now, and I couldn't find a paid tool that addressed it directly — so I built the free version first.\n\n`unlazy` skill`handoff` skill`safe_git_guard.py`` checkout --`, `reset --hard`, `clean -f`) when the tree is dirty` pre-commit-secret-scan.sh`\nMIT licensed: [https://github.com/kuvosu-coder/claude-code-guardrails-lite](https://github.com/kuvosu-coder/claude-code-guardrails-lite)\n\nEvery piece ships with the exact command used to verify it — including two real bugs the verification process caught before ship (a Windows interpreter-detection issue), documented in the open in the repo's `VERIFICATION.md` instead of quietly fixed and hidden. That's the whole philosophy: no claim without a real check behind it.\n\nIf the free pack's useful, there's a $14 Pro pack with a secret-scanning *Claude Code* hook, a per-session tool-call budget guard, and two skills (a real pre-PR checklist, and a framework for when subagent fan-out actually helps vs. burns context): [https://kuvosu.gumroad.com/l/claudecodeguardrails](https://kuvosu.gumroad.com/l/claudecodeguardrails)\n\nIf you try it and something doesn't work as documented, tell me the exact command and output — that's the standard I'm holding this to, so \"doesn't work\" isn't actionable but \"ran X, expected Y, got Z\" gets fixed fast. Stars/feedback on the repo appreciated if it's useful to you.", "url": "https://wpnews.pro/news/i-built-guardrails-for-claude-code-after-it-told-me-a-fix-worked-when-it-didn-t", "canonical_source": "https://dev.to/kuvosuco/i-built-guardrails-for-claude-code-after-it-told-me-a-fix-worked-when-it-didnt-2a32", "published_at": "2026-09-17 04:32:19+00:00", "updated_at": "2026-09-17 04:52:56.771315+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "developer-tools", "ai-products"], "entities": ["Claude Code", "Cursor", "Windsurf", "GitHub", "Gumroad"], "alternates": {"html": "https://wpnews.pro/news/i-built-guardrails-for-claude-code-after-it-told-me-a-fix-worked-when-it-didn-t", "markdown": "https://wpnews.pro/news/i-built-guardrails-for-claude-code-after-it-told-me-a-fix-worked-when-it-didn-t.md", "text": "https://wpnews.pro/news/i-built-guardrails-for-claude-code-after-it-told-me-a-fix-worked-when-it-didn-t.txt", "jsonld": "https://wpnews.pro/news/i-built-guardrails-for-claude-code-after-it-told-me-a-fix-worked-when-it-didn-t.jsonld"}}