在当前仓库设置 Husky pre-commit hooks,集成 lint-staged (Prettier)、类型检查和测试。适用于用户想添加 pre-commit hooks、设置 Husky、配置 lint-staged,或在提交时运行格式化、类型检查和测试时。
80
100%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
检查 package-lock.json (npm)、pnpm-lock.yaml (pnpm)、yarn.lock (yarn)、bun.lockb (bun)。使用存在的那个。不清楚时默认 npm。
作为 devDependencies 安装:
husky lint-staged prettiernpx husky init这会创建 .husky/ dir,并向 package.json 添加 prepare: "husky"。
.husky/pre-commit写入这个文件(Husky v9+ 不需要 shebang):
npx lint-staged
npm run typecheck
npm run testAdapt:把 npm 替换为检测到的 package manager。如果 repo 的 package.json 没有 typecheck 或 test script,就省略对应行并告知用户。
.lintstagedrc{
"*": "prettier --ignore-unknown --write"
}.prettierrc (if missing)只有没有 Prettier config 时才创建。使用这些 defaults:
{
"useTabs": false,
"tabWidth": 2,
"printWidth": 80,
"singleQuote": false,
"trailingComma": "es5",
"semi": true,
"arrowParens": "always"
}.husky/pre-commit 存在且可执行.lintstagedrc 存在prepare script 是 "husky"npx lint-staged 验证可用Stage 所有 changed/created files,并用 message 提交:Add pre-commit hooks (husky + lint-staged + prettier)
这会经过新的 pre-commit hooks,是一个不错的 smoke test。
prettier --ignore-unknown 会跳过 Prettier 无法 parse 的 files(images 等)f2b2464
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.