Skip to content
Development
Command

/husky

Run comprehensive CI checks and fix issues until repository is in working state

From plugin
claude-code-templates
30k200 skills200 agents200 commands2 MCP
Install
$ npx -y skills add davila7/claude-code-templates --agent claude-code

How it fires

How this command gets triggered: by you, by Claude, or both.

  • Fires itselfClaude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/husky

Context preview

What this command does when you run it.

Run comprehensive CI checks and fix issues until repository is in working state

Command definition

husky.md
allowed-tools: Bash, Read
argument-hint: [--skip-install] | [--only-lint] | [--skip-tests]
description: Run comprehensive CI checks and fix issues until repository is in working state

Husky CI Pre-commit Checks

Run comprehensive CI checks and fix issues: $ARGUMENTS

Current Repository State

  • Git status: !`git status --porcelain`
  • Package manager: !`which pnpm npm yarn | head -1`
  • Current branch: !`git branch --show-current`
  • Package.json: @package.json
  • Environment file: @.env (if exists)

Task

Verify repository is in working state and fix issues. All commands run from repo root.

CI Check Protocol

Step 0: Environment Setup

  • Update dependencies: `pnpm i` (unless --skip-install)
  • Source environment: `.env` file if exists

Step 1: Linting

  • Check linter passes: `pnpm lint`
  • Fix formatting issues automatically when possible

Step 2: TypeScript & Build

  • Run comprehensive build checks:
  pnpm nx run-many --targets=build:types,build:dist,build:app,generate:docs,dev:run,typecheck
  • If specific command fails, debug that command individually
  • Fix TypeScript errors and build issues

Step 3: Test Coverage

  • Source `.env` file first if exists
  • Run test coverage: `pnpm nx run-many --target=test:coverage`
  • **NEVER** run normal test command (times out)
  • Run individual packages one by one for easier debugging
  • For snapshot test failures: explain thesis before updating snapshots

Step 4: Package Validation

  • Sort package.json: `pnpm run sort-package-json`
  • Lint packages: `pnpm nx run-many --targets=lint:package,lint:deps`

Step 5: Double Check

  • If fixes made in any step, re-run all preceding checks
  • Ensure no regression introduced

Step 6: Staging

  • Check status: `git status`
  • Add files: `git add`
  • **EXCLUDE**: Git submodules in `lib/*` folders
  • **DO NOT COMMIT**: Only stage files

Error Handling Protocol

1. Diagnosis

  • Explain why command broke with complete analysis
  • Cite source code and logs supporting thesis
  • Add console logs if needed for confirmation
  • Ask for help if insufficient context

2. Fix Implementation

  • Propose specific fix with full explanation
  • Explain why fix will work
  • If fix fails, return to Step 1

3. Impact Analysis

  • Consider if same bug exists elsewhere
  • Search codebase for similar patterns
  • Fix related issues proactively

4. Cleanup

  • Remove all added console.logs after fixing
  • Run `pnpm run lint` to format files
  • Ask user before staging changes
  • Suggest commit message (don't commit)

Development Notes

File Organization

  • Functions/types like `createTevmNode` are in:
  • Implementation: `createTevmNode.js`
  • Types: `TevmNode.ts`
  • Tests: `createTevmNode.spec.ts`

Tool-Specific Tips

pnpm i

  • If fails, abort unless simple syntax error (missing comma)

pnpm lint (Biome)

  • Lints entire codebase
  • Auto-fixes most formatting issues

TypeScript Builds

  • Look for types in node_modules if not obvious
  • For tevm packages, check monorepo structure
  • Consult documentation if multiple failures

Test Execution

  • Use Vite test runner
  • Run packages individually for debugging
  • Add console logs to test assumptions
  • Explain snapshot changes before updating

Success Criteria

Print checklist at end with ✅ for passed steps:

  • ✅ Dependencies updated
  • ✅ Linting passed
  • ✅ TypeScript/Build passed
  • ✅ Tests passed
  • ✅ Package validation passed
  • ✅ Files staged (no commits made)

Safety Guidelines

  • **Fix errors proactively** - TypeScript/tests will catch regressions
  • **Never commit** - Only stage changes
  • **One step at a time** - Don't proceed until current step passes
  • **Ask permission** before staging if fixes were made
Read more
Ships withclaude-code-templates

Ready-to-use configurations for Anthropic's Claude Code. A comprehensive collection of AI agents, custom commands, settings, hooks, external integrations (MCPs), and project templates to enhance your development workflow.

Get the whole plugin, auto-invoked
Stats
30,155
Stars
18
Views
3,377
Forks
Active
Maintenance
Python
Language
MIT
License
1h ago
Last commit
1y ago
Created

Repo: davila7/claude-code-templates