一键导入
check
Run the full code quality pipeline (TypeScript + Biome + Knip), fix all issues, and clean up comments in changed code.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Run the full code quality pipeline (TypeScript + Biome + Knip), fix all issues, and clean up comments in changed code.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Create an End-to-End (E2E) test for a REST controller or GraphQL resolver using Fastify injection.
Add a new BullMQ job queue to the project — processor, producer injection, module registration, Bull Board integration, and unit tests.
Write unit tests for an existing NestJS service, resolver, or controller in the project following its Vitest + NestJS Testing conventions.
Create a git commit with all unstaged changes. Use this skill whenever the user asks to commit, make a commit, save changes to git, or says something like "commit this", "commit all changes". Always runs npm run check before committing and fixes any errors found.
Use this workflow to implement ANY new feature following Test-Driven Development strictly.
Guide through a full Prisma schema change workflow — edit schema, create migration, regenerate client, update affected services.
| name | check |
| description | Run the full code quality pipeline (TypeScript + Biome + Knip), fix all issues, and clean up comments in changed code. |
This skill is the central entry point for fixing any CI/CD or pre-commit hook failures. Invoke this skill whenever a build or validation step fails.
The user wants to verify and fix all code quality issues in the project.
npm run check runs three tools in parallel via run-p:
tsc --noEmit — TypeScript type checkingbiome check --write — Linting + formatting with auto-fixknip --production — Unused exports, files, and dependenciesPre-commit hook (lefthook) runs the same pipeline automatically on every commit.
npm run check
To run tools individually for targeted diagnosis:
npm run ts:check # TypeScript only
npm run lint:fix # Biome with auto-fix
npm run knip # Knip unused code analysis
Missing type on Prisma-generated code:
src/@generated/prisma, run npm run db:gen first — the client may be staledeclare keyword on GraphQL InputType fields:
The project uses declare to re-declare Zod DTO fields with GraphQL decorators (see profile-update.input.ts):
@InputType()
export class MyInput extends MyZodDto {
@Field(() => String, { nullable: true })
declare myField?: string;
}
See the /add-graphql-type skill for full details on integrating Zod with GraphQL InputTypes.
Import path errors:
@/ alias for internal imports (maps to src/)../../ paths that cross module boundariesBiome auto-fixes most issues with --write. Common remaining issues:
_ (e.g. _unusedParam) or remove themany: use unknown and narrow the type, or add // biome-ignore lint/suspicious/noExplicitAny: <reason>Knip flags exports that are not imported anywhere in production code (--production excludes test files).
Common false positives to investigate:
*.module.ts — these ARE used via app.module.ts imports array@ObjectType() / @InputType() — used by NestJS reflection at runtimeWhen Knip flags something legitimately unused:
@Injectable, @Resolver, @Controller, @ObjectType, @InputType, or @Module just because Knip flagged them. If one of these is flagged, it usually means you forgot to register it in its parent *.module.ts or app.module.ts. Fix the DI wiring instead of deleting the code. Delete code ONLY if it is a truly obsolete helper function or dead logic.After fixing tool errors, review all changed/created code for comment quality:
// call the function), outdated TODOsnpm run check and capture the full outputnpm run check until cleanCRITICAL: Do not enter an infinite loop of fixing. If you attempt to fix a check error and the EXACT SAME error persists after 3 attempts, STOP.