Agent Skills: Clean TypeScript

Write clean, efficient TypeScript code that follows common best practices

UncategorizedID: academind/ai-config/clean-typescript

Install this agent skill to your local

pnpm dlx add-skill https://github.com/academind/ai-config/tree/HEAD/skills/clean-typescript

Skill Files

Browse the full folder contents for clean-typescript.

Download Skill

Loading file tree…

skills/clean-typescript/SKILL.md

Skill Metadata

Name
clean-typescript
Description
Write clean, efficient TypeScript code that follows common best practices

Clean TypeScript

We use TypeScript as a correctness and clarity tool, not as ceremony. Types should reduce bugs and cognitive load.

Type Philosophy

  • PREFER explicit, readable types over clever or overly generic ones
  • AVOID any and unsafe type assertions
  • Use unknown instead of any when necessary
  • Let TypeScript infer types when inference is clear and stable

Types & Interfaces

  • PREFER type aliases for most use cases
  • Use interface primarily for public, extendable object shapes
  • Keep types small, composable, and well-named

Functions & APIs

  • PREFER explicit return types for public functions
  • Avoid function overloads unless they meaningfully improve the API
  • Keep function signatures simple and predictable

Nullability & Safety

  • Handle null and undefined explicitly
  • DO NOT rely on non-null assertions (!) except as a last resort
  • Prefer narrowing via control flow and guards

Enums & Constants

  • AVOID enum
  • PREFER union types or as const objects
  • Keep runtime output predictable and minimal

Error Handling

  • Type errors and error states explicitly
  • Prefer result objects or typed errors over throwing where appropriate
  • Do not hide failure modes behind broad types

General Principles

  • Types should explain intent
  • If a type is hard to understand, it’s probably wrong
  • Favor maintainability over theoretical completeness