| name | auto-type-checking |
| description | Run TypeScript type checking after file edits and immediately flag type errors before moving on. Uses Cursor hooks for automatic enforcement. |
| user-invocable | true |
Auto Type Checking
Catch type errors immediately after every edit instead of discovering them at build time.
Manual Workflow
After editing a TypeScript file, run:
npx tsc --noEmit 2>&1 | head -30
If errors appear, fix them before moving on.
Automated with Cursor Hooks
Add to .cursor/hooks.json to run automatically after every file edit:
{
"hooks": [
{
"event": "afterFileEdit",
"script": "check-types.sh",
"pattern": "**/*.{ts,tsx}"
}
]
}
Create .cursor/hooks/check-types.sh:
#!/bin/bash
npx tsc --noEmit --pretty 2>&1 | head -20
exit 0
chmod +x .cursor/hooks/check-types.sh
What to Check
When type errors appear:
- Missing imports:
Cannot find name 'X' → add the import
- Type mismatches:
Type 'string' is not assignable to type 'number' → fix the type or the value
- Missing properties:
Property 'x' does not exist on type 'Y' → add the property to the interface or fix the access
- Null safety:
Object is possibly 'null' → add null check or optional chaining
- Generic constraints:
Type 'X' does not satisfy the constraint 'Y' → fix the generic parameter
Tips
- Use
--noEmit to type-check without producing output files
- For large projects,
tsc can be slow — consider --incremental or running only on changed files
- If using path aliases, ensure
tsconfig.json paths are configured correctly
- For monorepos, run
tsc from the package root, not the workspace root
- Pair with
grinding-until-pass for a full "fix until clean" loop