Claude Code Plugins

Community-maintained marketplace

Feedback

add-strict-checks

@akulkarni/0perator
1
0

Enable stricter TypeScript and linting checks to catch bugs early, especially useful when iterating with AI assistance.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name add-strict-checks
description Enable stricter TypeScript and linting checks to catch bugs early, especially useful when iterating with AI assistance.

Add Strict Checks

Goal: Enable stricter TypeScript compiler options and linting to catch bugs that standard TypeScript misses.


Task 1: Add Stricter Compiler Options

Add these additional strict options to tsconfig.json under compilerOptions:

{
  "compilerOptions": {
    // ... existing options ...

    "noImplicitReturns": true,
    "noFallthroughCasesInSwitch": true,
    "noImplicitOverride": true,
    "forceConsistentCasingInFileNames": true,
    "exactOptionalPropertyTypes": true,
    "useUnknownInCatchVariables": true
  }
}

Task 2: Add Check Script

Add a check script to package.json:

{
  "scripts": {
    "typecheck:app": "tsc --noEmit -p tsconfig.check.json",
    "typecheck:tests": "tsc --noEmit -p tsconfig.test.json",
    "check": "biome check . && npm run typecheck:app && npm run typecheck:tests"
  }
}

Task 3: Fix All Issues

Run npm run check:write && npm run check in a loop, fixing issues until it passes.

IMPORTANT: NEVER disable any checks:

  • NEVER disable any biome checks,
  • NEVER edit tsconfig.json to remove or disable a check
  • NEVER edit tsconfig.check.json to remove or disable a check
  • NEVER edit package.json to remove a check from a script

NEVER disable checks, even temporarily for any reason (including for easier work with third-party libraries)

Instead, fix the code to not violate the check.


Task 4: Update CLAUDE.md

Update the "Before Committing" section to include npm run check:

npm test && npm run check

If tests aren't set up yet, just use:

npm run check

Task 5: Commit

Ask the user if they want to commit the changes.


Task 6: Offer Further Hardening

Ask the user: "Would you like to add backend testing as well? This sets up integration tests with an isolated test database."

If yes, follow the add-backend-testing skill.