Typescript tooling
Skill ComeOnOliver/skillshub/skills/HoangNguyen0403/agent-skills-standard/typescript-tooling
🧠The right skill, one API call. AI agent skills registry with token-efficient skill resolution. 5,000+ skills from 500+ top repos.
npx -y skills add ComeOnOliver/skillshub --skill typescript-toolingAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Development tools, linting, and build config for TypeScript. Use when configuring ESLint, Prettier, Jest, Vitest, tsconfig, or any TS build tooling. (triggers: tsconfig.json, .eslintrc.*, jest.config.*, package.json, eslint, prettier, jest, vitest, build, compile, lint)
SKILL.md
3.1 KB, as published. Nobody here has run it
TypeScript Tooling
Priority: P1 (OPERATIONAL)
Essential tooling for TypeScript development and maintenance.
Implementation Guidelines
- Compiler: Use
tscfor CI builds;esbuildorts-nodefor development. - Linting: Enforce
ESLintwith@typescript-eslint/recommended. Enablestrict type checking. - Formatting: Mandate
Prettiervialint-stagedand.prettierrc. - Testing: Use
Vitest(orJest) for unit/integration testing. Target> 80%line coverage. - Builds: Use
tsup(for library bundling) orVite(for web applications). - TypeScript Config: Ensure
tsconfig.jsonhasstrict: true,noImplicitAny: true, andesModuleInterop: true. - CI/CD: Always run
tsc --noEmitexplicitly in the build pipeline to catch type errors. - Error Supression: Favor
@ts-expect-errorover@ts-ignorefor documented edge-cases.
ESLint Configuration
Strict Mode Requirement
CRITICAL: Every file in the project, including tests (.spec.ts), must adhere to strict type-checked rules. NEVER turn off @typescript-eslint/no-explicit-any or no-unsafe-* rules.
Common Linting Issues & Solutions
Request Object Typing
Problem: Using any for Express request objects or creating duplicate inline interfaces.
Solution: Use the centralized interfaces in src/common/interfaces/request.interface.ts.
import { RequestWithUser } from 'src/common/interfaces/request.interface';
Unused Parameters
Problem: Function parameters marked as unused by linter.
Solution: Prefix the parameter with an underscore (e.g., _data) or remove it. NEVER use eslint-disable.
Test Mock Typing
Problem: Jest mocks triggering unsafe type warnings when expect.any() or custom mocks are used.
Solution: Cast the mock or expectation using as unknown as TargetType.
mockRepo.save.mockResolvedValue(result as unknown as User);
Configuration
// tsconfig.json
{
"compilerOptions": {
"strict": true,
"noImplicitReturns": true,
"noUnusedLocals": true
}
}
Verification Workflow (Mandatory)
After editing any .ts / .tsx file:
- Call
getDiagnostics(typescript-lsp MCP tool) — surfaces type errors in real time. - Run
tsc --noEmitin CI — catches project-wide errors LSP may miss. - Run
eslint --fix— auto-fix formatting and lint violations.
getDiagnostics is the fastest feedback loop. Use it before every commit on modified files.
LSP Exploration: Use getHover to inspect inferred types inline. Use getReferences before renaming any symbol to verify all call sites.
References
See references/REFERENCE.md for CI config, test setup, and advanced ESLint rules.