4meta5

code-review-ts

0
0
# Install this skill:
npx skills add 4meta5/skills --skill "code-review-ts"

Install specific skill from multi-skill repository

# Description

TypeScript-specific code review guidelines focusing on type safety and TypeScript idioms

# SKILL.md


name: code-review-ts
description: TypeScript-specific code review guidelines focusing on type safety and TypeScript idioms
category: development
disable-model-invocation: false
user-invocable: true
allowed-tools: Read, Grep, Glob, Bash


TypeScript Code Review

Includes all guidelines from code-review skill, plus TypeScript-specific rules.

Prefer Strong Types; Avoid Type Inspection on Known Types

The reviewer MUST:
- Avoid runtime type inspection (typeof, instanceof) when the type is known or enforced by TypeScript.
- Restrict runtime checks to untyped inputs or boundary validation (e.g., API payloads).

Discouraged:

function labelCount(count: number) {
  if (typeof count === "number") return `${count} items`;
  return "n/a";
}

Avoid any and unknown When Possible

The reviewer MUST:
- Reject any unless it is a last-resort boundary with clear justification.
- Require immediate narrowing of unknown with explicit type guards.

The reviewer SHOULD:
- Prefer generics, satisfies, and well-scoped interfaces over any.

Type Casting Must Be Justified

The reviewer MUST:
- Require a comment or invariant when using as, non-null assertions (!), or unsafe casts.
- Prefer satisfies or type guards before asserting a type.

Acceptable with proof:

const payload = parse(input) as Payload; // validated by parse schema

Additional TypeScript Guidelines

The reviewer SHOULD:
- Encourage use of strict TypeScript compiler options
- Prefer readonly for immutable data
- Use discriminated unions over type assertions
- Prefer unknown over any for external data
- Use template literal types where appropriate

# Supported AI Coding Agents

This skill is compatible with the SKILL.md standard and works with all major AI coding agents:

Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.