2.2 KiB
name, description
| name | description |
|---|---|
| setup-pre-commit | Set up Husky pre-commit hooks with lint-staged (Prettier), type checking, and tests in the current repo. Use when user wants to add pre-commit hooks, set up Husky, configure lint-staged, or add commit-time formatting/typechecking/testing. |
Setup Pre-Commit Hooks
Extend the repository's existing commit checks with the requested coverage. Inspect package locations, packageManager, lockfiles (including bun.lock and bun.lockb), scripts, hook configuration, formatter configuration, and lint-staged rules before changing anything.
In this repository the JavaScript package is under frontend/, while .husky/pre-commit and .lintstagedrc.mjs live at the root. There is no root package to initialize. Preserve the existing backend Java formatter rule.
Configure
- Reuse installed Husky, lint-staged, and formatter tooling. Install only missing dependencies needed for the requested checks, in the owning package with its configured package manager.
- Merge existing
preparescripts and hook commands; do not run an initializer over working configuration or replace unrelated checks. - Extend the existing lint-staged configuration rather than creating a competing file. Keep staged-file tasks scoped to their inputs and preserve language-specific commands.
- Reuse the existing formatter configuration. Create defaults only when no applicable configuration exists.
- For requested type checks or tests, call existing package scripts from the correct directory. Use their non-watch mode and retain failing exit statuses. Report missing scripts rather than inventing commands.
- Keep installation and execution compatible with the installed Husky version; inspect its local documentation if needed.
Verify
Check the resulting paths, configuration syntax, and executable hook permissions. Run the requested commands on task-owned changes or an isolated fixture. Do not run a rewriting staged-file check over unrelated user changes merely as a smoke test.
Review the scoped diff. Commit only if the user requested it, staging just the hook-setup files and preserving unrelated staged work. Otherwise hand off the verified changes. Report which checks ran and any tooling or permission limitation.