TypeScript strict mode with eslint and jest
40
40%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/typescript/SKILL.mdQuality
Discovery
22%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This description is essentially a list of technology keywords with no verbs, actions, or trigger guidance. It fails to communicate what the skill does or when Claude should select it, making it very difficult to distinguish from other TypeScript-related skills in a large skill library.
Suggestions
Add concrete action verbs describing what the skill does, e.g., 'Configures TypeScript strict mode, sets up eslint rules, and scaffolds jest test suites.'
Add an explicit 'Use when...' clause with trigger terms, e.g., 'Use when the user asks to set up TypeScript with strict type checking, configure linting, or add unit testing with Jest.'
Include common keyword variations users might say, such as 'linting', 'unit tests', 'type checking', 'tsconfig', '.ts files', 'test configuration'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | The description lists technologies (TypeScript, eslint, jest) but does not describe any concrete actions. There are no verbs indicating what the skill does—it reads more like a tag list than a capability description. | 1 / 3 |
Completeness | There is no explanation of what the skill does nor any 'Use when...' clause or equivalent trigger guidance. Both the 'what' and 'when' are missing or extremely weak. | 1 / 3 |
Trigger Term Quality | It includes some natural keywords a user might mention ('TypeScript', 'eslint', 'jest', 'strict mode'), but lacks common variations or broader terms like 'linting', 'testing', 'type checking', or 'unit tests'. | 2 / 3 |
Distinctiveness Conflict Risk | The combination of TypeScript strict mode, eslint, and jest provides some specificity, but without describing concrete actions it could easily overlap with any TypeScript development, linting, or testing skill. | 2 / 3 |
Total | 6 / 12 Passed |
Implementation
57%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill provides highly actionable, concrete configurations and code examples for a TypeScript project setup, which is its main strength. However, it reads more like a project template/boilerplate dump than a focused skill — it covers too many topics (CI, pre-commit hooks, type patterns, anti-patterns) in a single file without clear navigation or progressive disclosure. The content would benefit from being trimmed to essentials and splitting detailed configurations into referenced files.
Suggestions
Split GitHub Actions, pre-commit hooks, and type patterns into separate referenced files (e.g., CI.md, HOOKS.md, PATTERNS.md) and keep SKILL.md as a concise overview with links.
Add a clear workflow section at the top: 'When creating/modifying TypeScript files: 1. Write code → 2. Run typecheck → 3. Run lint → 4. Run tests → 5. Only commit when all pass'.
Remove boilerplate that Claude can generate on demand (e.g., full GitHub Actions YAML, Husky installation commands) and focus on project-specific conventions and constraints.
Trim the tsconfig.json to only non-default or surprising options, since Claude knows standard strict-mode settings.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill includes useful configuration and code examples, but is somewhat verbose for what it covers. The project structure, GitHub Actions workflow, and pre-commit hooks sections are largely boilerplate that Claude already knows how to generate. The explanatory sentence 'This runs on every commit:' with its numbered list is unnecessary padding. | 2 / 3 |
Actionability | The skill provides fully executable, copy-paste ready configurations and code examples throughout — tsconfig.json, eslint.config.js, package.json scripts, Jest tests, GitHub Actions YAML, and Husky setup commands are all concrete and complete. | 3 / 3 |
Workflow Clarity | While individual tool configurations are clear, there's no explicit workflow for setting up a new project or validating an existing one. The pre-commit hooks section implies a sequence but there's no overarching 'when writing TypeScript code, do X then Y then Z' workflow with validation checkpoints for the development process itself. | 2 / 3 |
Progressive Disclosure | Everything is in a single monolithic file with no references to supporting documents. The content spans tsconfig, eslint, jest, GitHub Actions, husky, type patterns, and anti-patterns — several of these (especially GitHub Actions, pre-commit hooks) could be split into separate reference files. No bundle files exist to support this. | 1 / 3 |
Total | 8 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
65efb33
Table of Contents
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.