Stats
Actions
Tags
From anti-vibe-coding
Runs quality, security, and session management hooks across the Claude Code lifecycle. Validates bash commands before execution, checks for secrets and destructive DB migrations after file edits, and generates handoff docs on stop. Executes shell scripts and Python tools.
5 events · 15 hooks
Safety signals detected in this hook configuration
Where this hook configuration is defined
Defined in hooks/hooks.json
Event handlers and matchers — expand Raw Configuration for the full JSON
node -e "try{require(process.env.CLAUDE_PLUGIN_ROOT+'/hooks/stop-reflector.cjs')}catch(e){process.exit(0)}"5msWrite|Editnode -e "try{require(process.env.CLAUDE_PLUGIN_ROOT+'/hooks/tdd-gate.cjs')}catch(e){process.exit(0)}"10msWrite|Editnode -e "try{require(process.env.CLAUDE_PLUGIN_ROOT+'/hooks/prompt-guard.cjs')}catch(e){process.exit(0)}"5msBashnode -e "try{require(process.env.CLAUDE_PLUGIN_ROOT+'/hooks/pre-tool-use-destructive-guard.cjs')}catch(e){process.exit(0)}"5msBashnode -e "const input=process.env.CLAUDE_TOOL_INPUT||'';if(!input.includes('git commit')){process.exit(0)}const{execSync}=require('child_process');try{execSync('bun run test',{timeout:60000,stdio:'pipe'});execSync('bun run lint',{timeout:30000,stdio:'pipe'})}catch(e){process.stderr.write('[PRE-COMMIT] Testes ou lint falharam. Corrija antes de commitar: '+e.message.slice(0,200));process.exit(2)}"90msBashnode -e "try{require(process.env.CLAUDE_PLUGIN_ROOT+'/hooks/grepping-names.cjs')}catch(e){process.exit(0)}"15msWrite|Edit|MultiEditnode -e "try{const h=require(process.env.CLAUDE_PLUGIN_ROOT+'/hooks/state-md-hook.cjs');const input=JSON.parse(process.env.CLAUDE_HOOK_INPUT||'{}');h.handle(input).then(r=>{if(r&&r.error)process.stderr.write('[state-md-hook] '+r.error)}).catch(()=>{})}catch(e){}"15msWrite|Edit|MultiEditnode -e "try{const h=require(process.env.CLAUDE_PLUGIN_ROOT+'/hooks/sync-agents-to-claude.cjs');const input=JSON.parse(process.env.CLAUDE_HOOK_INPUT||'{}');h.handle(input).then(r=>{if(r&&r.error)process.stderr.write('[sync-agents-to-claude] '+r.error)}).catch(()=>{})}catch(e){}"5msWrite|Editnode -e "const f=process.env.CLAUDE_FILE_PATH||'';const ext=['.ts','.tsx','.js','.jsx','.json','.css'];if(!ext.some(e=>f.endsWith(e))){process.exit(0)}const{execSync}=require('child_process');try{execSync('bunx biome check --write '+JSON.stringify(f),{timeout:10000,stdio:'pipe'})}catch(e){process.exit(0)}"15msWrite|Editnode -e "try{require(process.env.CLAUDE_PLUGIN_ROOT+'/hooks/file-size-guard.cjs')}catch(e){process.exit(0)}"10ms*node -e "try{require(process.env.CLAUDE_PLUGIN_ROOT+'/hooks/context-monitor.cjs')}catch(e){process.exit(0)}"5msnode -e "try{const h=require(process.env.CLAUDE_PLUGIN_ROOT+'/hooks/version-check.cjs');h(JSON.parse(process.env.CLAUDE_HOOK_CONTEXT||'{}')).then(r=>{if(r&&r.message)console.log(r.message)})}catch(e){}"5msprintf '[ANTI_VIBE_CODING v7.5.0 - SKILL & WORKFLOW ADVISOR ATIVO]\n\nINSTRUCAO PERMANENTE para esta sessao:\nPara QUALQUER pedido de implementacao (nao perguntas simples), voce DEVE:\n1. Identificar o dominio da tarefa\n2. Recomendar a skill apropriada com comando exato\n3. Perguntar ao usuario se deseja invocar a skill antes de prosseguir\n\nSkills disponiveis:\n- /anti-vibe-coding:consultant - Fase Zero: decisoes complexas, incerteza, multiplos dominios\n- /anti-vibe-coding:react-patterns - React/Next.js: hooks, state, data fetching, performance\n- /anti-vibe-coding:security - Seguranca: auth, crypto, JWT, CORS, XSS\n- /anti-vibe-coding:system-design - System Design: cache, scaling, CAP, replicacao, filas/mensageria (queue, broker, exactly-once, idempotencia), SQL internals (index, EXPLAIN, ACID, particao), resiliencia (load shedding, shuffle sharding, deadline, distributed challenges)\n- /anti-vibe-coding:infrastructure - Infra & Deploy: DNS/SSL, hosting, Docker, CI/CD, blue-green, health checks, Route 53 routing\n- /anti-vibe-coding:api-design - API: endpoints, N+1, DTOs, idempotencia, webhooks\n- /anti-vibe-coding:architecture - Arquitetura: SOLID, patterns, monolito vs micro\n- /anti-vibe-coding:design-patterns - Qualidade: code smells, error handling, refactoring\n- /anti-vibe-coding:defensive-patterns - Padroes defensivos: rate limit, circuit breaker, timeout, retry, fallback, bulkhead, health check, load shedding\n- /anti-vibe-coding:tdd-workflow - TDD: implementacao test-first\n- /anti-vibe-coding:lessons-learned - Registrar licoes de erros\n- /anti-vibe-coding:decision-registry - Registrar decisoes arquiteturais\n- /anti-vibe-coding:anti-vibe-review - Review pos-implementacao\n- /anti-vibe-coding:enhance-prompt - Otimizar prompts de execucao automatizada\n- /anti-vibe-coding:learn - Aprendizado adaptativo: entender conceitos antes ou depois de codar\n- /anti-vibe-coding:qa-visual - QA Visual: verificacao no browser com Playwright MCP\n- /anti-vibe-coding:grill-me - Entrevista implacavel pre-implementacao\n- /anti-vibe-coding:design-twice - Exploracao paralela de solucoes divergentes\n- /anti-vibe-coding:write-prd - Especificacao interativa de features\n- /anti-vibe-coding:plan-feature - Plano de execucao com vertical slices\n- /anti-vibe-coding:execute-plan - Execucao wave-based com subagentes\n- /anti-vibe-coding:verify-work - Verificacao pos-execucao com auditoria\n- /anti-vibe-coding:quick-plan - Planejamento leve inline (3-7 passos)\n\nComportamento ao detectar skill relevante:\n- SEMPRE pergunte ao usuario antes de invocar: Deseja que eu invoque /skill-name?\n- Se o usuario disser sim, invoque com a tool Skill\n- Se o usuario disser nao ou prosseguir, continue sem invocar\n\nQuando NAO sugerir skill:\n- Perguntas explicativas (o que e, como funciona, por que)\n- Fixes triviais (typo, rename, formatacao)\n- Leitura/exploracao de codigo\n- Usuario ja invocou uma skill (/)\n- Usuario disse: prosseguir, sem skill, skip\n\nTabela Akita — Limites do Agente:\nFaz BEM (delegar ao agente):\n- Boilerplate e scaffolding\n- Testes (estrutura e cobertura)\n- Refactoring mecanico (rename, extract, inline)\n- Pesquisa contextual (docs, exemplos, alternativas)\n- Consistencia de padroes no codebase\nFaz MAL (escalar para skill especializada):\n- Decisoes de arquitetura → use /anti-vibe-coding:consultant ou /anti-vibe-coding:architecture\n- Conhecimento de dominio do negocio → pergunte ao dev\n- Opiniao/preferencia pessoal → nao assuma, pergunte\n- Seguranca proativa (auth, crypto, secrets) → use /anti-vibe-coding:security\n- Priorizacao de features → nao e sua decisao\nQuando detectar pedido nos dominios Faz MAL: sinalize o risco e sugira a skill antes de prosseguir.\n\nWorkflows dinamicos (escala — dezenas a centenas de agentes coordenados):\n- Para varredura do codebase inteiro, migracao de centenas de arquivos ou pesquisa cross-checada, SUGIRA rodar como dynamic workflow.\n- SEMPRE pergunte antes; workflows consomem substancialmente mais tokens.\n- NUNCA lance a tool Workflow automaticamente — o humano opta incluindo a palavra workflow no pedido.\n- Detalhe e fronteira (workflow vs subagente vs skill): docs/WORKFLOWS.md.\n'node -e "try{require(process.env.CLAUDE_PLUGIN_ROOT+'/hooks/user-prompt-gate.cjs')}catch(e){process.exit(0)}"10msnode -e "try{require(process.env.CLAUDE_PLUGIN_ROOT+'/hooks/pre-mutation-gate.cjs')}catch(e){process.exit(0)}"10ms12plugins reuse this hooks config
First indexed Feb 9, 2026
Showing the 6 earliest of 12 plugins
npx claudepluginhub luyzkk/anti-vibe-coding --plugin anti-vibe-coding