Codex skills for TypeScript
These skills cover the type system and the libraries built on it: strict-mode rollouts, compiler errors, generics, .d.ts files, Zod schemas, tRPC and the typed ORMs. With them, Codex fixes types by narrowing and honest annotations instead of any, @ts-ignore or double casts, and checks published package types with attw and publint before release.
Start with these 3
- TypeScript Type Errors Decode the error, fix the cause, skip the any Codex reads the compiler's elaboration chain from the bottom, probes the real types involved, and decides whether the value, the annotation, the library or the config is at fault before editing. It shrinks stubborn errors to a minimal repro, consults a bundled catalog of error codes for assignability, overload, module resolution and declaration emit failures, and refuses any, double casts and ts-ignore as fixes.
- TypeScript React Types Props that reject misuse and never need a cast Codex types React components from the platform instead of hand-written attribute lists, using ComponentProps, React 19 ref props and precise event handler aliases. It models invalid prop combinations as discriminated unions, writes generic lists and polymorphic as components whose types infer at the call site, guards context without non-null assertions, and locks the API with type tests.
- TypeScript Strict Mode Strict on, without a thousand non-null assertions Codex measures error counts per strict flag, picks a rollout that fits the codebase (all at once, flag by flag, or a strict tsconfig whose include list only grows), and fixes errors by narrowing, honest types and real defaults rather than any or non-null assertions. It reports suppression counts before and after, and flags any fix that changes runtime behavior.
38 more TypeScript skills
-
TypeScript Generics
Types callers never have to spell out -
TypeScript Declaration Files
Types that match the runtime and resolve everywhere -
React Hook Form + Zod
One schema, typed fields, errors on the right input -
tRPC APIs
End-to-end types without leaking data or auth -
Codex SDK Automation
Drive Codex from TypeScript with real guardrails -
Drizzle ORM
TypeScript schema in, reviewed SQL migrations out -
SST v3 Apps
TypeScript infrastructure with links, not hardcoded ARNs -
ESLint Setup
Flat config that lints the files you think it does -
Temporal Workflows
Durable flows that replay cleanly after every deploy -
Playwright E2E
Role locators, one login, a trace for every flake -
MCP Server Builder
Tools an agent picks right the first time -
TanStack Router
URLs, search params and loaders that type-check -
Express 5 API
Express services with one error path and typed input -
Hono Edge API
One typed Hono app for Workers, Bun, Deno and Node -
Input Validation
Parse untrusted data once, at the edge -
Kysely Query Builder
SQL you would write by hand, checked by tsc -
OpenAI Structured Outputs
Typed JSON from the model, every time -
Vercel AI SDK
Streaming chat and tools that match your ai version -
Pulumi IaC
Typed infrastructure code with no surprise replaces -
AWS CDK
Infrastructure code that never replaces your database -
Property-Based Testing
State the rule, let the library hunt the counterexample -
OpenAPI Client Generation
Typed clients from the spec, regenerated in one command -
Node CLI Tool Building
Node CLIs that run from npx and never hang in CI -
Error Handling Patterns
Typed errors, one boundary, nothing swallowed -
Prisma ORM
Reviewed migrations, lean queries, Prisma 7 ready -
OpenAI Responses API
Typed output items, deliberate state, clean streams -
Next.js Server Actions
Treat every action as a public POST endpoint -
Vue 3 Composition API
Script setup components that never lose reactivity -
Svelte 5 Runes
Derive state, reserve effects for the outside world -
SolidJS
Run components once, update only what changed -
Angular Signals
Computed over effects, ready for zoneless -
Fastify API
Schema-first Fastify with deliberate encapsulation -
NestJS Modules
Clean module graphs and DI that tests can swap -
Bun Runtime
Adopt Bun without surprise Node fallbacks -
Deno 2 Apps
Scoped permissions instead of -A everywhere -
Jest Testing
Mocks that reset, timers that advance, Jest that exits -
Vitest Testing
Hoisted mocks, named projects, real-browser tests -
viem and wagmi
Typed contract calls that simulate before they sign
General skills with TypeScript guidance
Not built around TypeScript, but they include steps or tools for it. Not part of the install-all command.
-
Dead Code Removal
Delete unused code with evidence, not hope -
Naming Conventions
Names a reader can predict without opening the file -
Pre-commit Hooks
Hooks that fix staged files in seconds, not minutes -
Biome Setup
Swap ESLint and Prettier for Biome, knowing what you lose -
Codemods
Change 500 files with code you can rerun -
Monorepo Tooling
Cache hits you can trust, CI that builds only what changed -
Astro Sites
Static by default, islands only where they earn it -
Node ESM Migration
From require to import without breaking consumers -
Supabase Backend
Migrations, RLS and auth checks that hold up -
OpenAI Agents SDK
Few agents, bounded runs, guardrails that block -
Structured Extraction
JSON from messy text, with evidence and per-field scores -
Unit Testing Patterns
Tests that survive refactors and fail for one reason
Every TypeScript skill in one command
Installs these 41 into ~/.agents/skills/. Add --project after -- to install into the current repository instead.
The installer is a 104-line POSIX shell script. It fetches the skills you name from codexskills.dev and unpacks each into its own folder in your skills directory. No sudo, no telemetry, and every skill page shows the full SKILL.md first. Read install.sh
curl -fsSL codexskills.dev/install.sh | sh -s -- typescript-type-errors typescript-react-types typescript-strict-mode typescript-generics typescript-declaration-files react-hook-form-zod trpc-apis codex-sdk-automation drizzle-orm sst-apps eslint-setup temporal-workflows playwright-e2e mcp-server-builder tanstack-router express-api hono-edge-api input-validation kysely-query-builder openai-structured-outputs vercel-ai-sdk pulumi-iac aws-cdk property-based-testing openapi-client-generation cli-tool-building error-handling-patterns prisma-orm openai-responses-api nextjs-server-actions vue-3-composition svelte-5-runes solidjs angular-signals fastify-api nestjs-modules bun-runtime deno-apps jest-testing vitest-testing viem-wagmi TypeScript FAQ
Is there a Codex skill for turning on TypeScript strict mode in an existing codebase?
Yes. TypeScript Strict Mode measures error counts per strict flag and picks a rollout: all at once, flag by flag, or a tsconfig.strict.json ratchet over migrated files that CI also runs. It fixes strictNullChecks, noImplicitAny, strictPropertyInitialization and noUncheckedIndexedAccess errors by narrowing and real defaults rather than any or non-null assertions, and it covers upgrades to TypeScript 6 or 7, where strict became the default.
Will Codex silence TypeScript errors with as any or @ts-ignore?
Not with TypeScript Type Errors installed. It reads the compiler's elaboration chain from the bottom, shrinks stubborn errors to a minimal repro, and resolves codes such as TS2322, TS2345, TS2769 and TS2589 without any, @ts-ignore or as unknown as casts. When a suppression is truly unavoidable, it prefers @ts-expect-error with a reason over @ts-ignore.
Can Codex fix the types of an npm package I publish?
TypeScript Declaration Files writes hand-written .d.ts files, module augmentation for Express, Vue or environment variables, and generated declarations with declaration maps. For published libraries it orders types first in every exports condition, ships .d.cts beside CommonJS builds, and checks the packed tarball with attw --pack and publint.
How do I install all 41 TypeScript skills at once?
Pass every name to the installer in one command: curl -fsSL https://codexskills.dev/install.sh | sh -s -- typescript-type-errors typescript-react-types typescript-strict-mode typescript-generics typescript-declaration-files react-hook-form-zod trpc-apis codex-sdk-automation drizzle-orm sst-apps eslint-setup temporal-workflows playwright-e2e mcp-server-builder tanstack-router express-api hono-edge-api input-validation kysely-query-builder openai-structured-outputs vercel-ai-sdk pulumi-iac aws-cdk property-based-testing openapi-client-generation cli-tool-building error-handling-patterns prisma-orm openai-responses-api nextjs-server-actions vue-3-composition svelte-5-runes solidjs angular-signals fastify-api nestjs-modules bun-runtime deno-apps jest-testing vitest-testing viem-wagmi. Add --project right after -- to put them in the current repository's .agents/skills/ so your team gets them too.
Which TypeScript skill should I try first?
TypeScript Type Errors is the closest fit for most TypeScript work. Mention it with $typescript-type-errors in a prompt to load it on purpose; after that, Codex picks it up on its own whenever a task matches.