TypeScript strict patterns and best practices
Opinionated strict-TypeScript discipline — const object + extracted type instead of unions, flat interfaces, never any (unknown/generics/type guards), utility types, and import-type conventions
- What
- Opinionated strict-TypeScript discipline — const object + extracted type instead of unions, flat interfaces, never any (unknown/generics/type guards), utility types, and import-type conventions
- Cost
- Free
- Needs
- a TypeScript project the agent can read and refactor (ideally strict mode) — the skill is a pattern guide, not software to install
- Install
- Copy the installer prompt below into your Muse — your agent does the rest.
Curated by Skill Harbor — @gentleman-programming's strict TypeScript patterns skill: opinionated discipline for the agent writing TypeScript. Const object created first with `as const`, type extracted via `(typeof X)[keyof typeof X]` — direct union types forbidden; interfaces kept one level deep with nested objects promoted to dedicated interfaces; `any` never used (use `unknown` for truly unknown data, generics for flexible functions); the full utility-type kit (`Pick`, `Omit`, `Partial`, `Required`, `Readonly`, `Record`, `Extract`, `Exclude`, `NonNullable`, `ReturnType`, `Parameters`); type guards with `value is User` narrowing; and `import type` conventions. Every rule is shown as ✅ always / ❌ never with code. Honest caveats: methodology only — the agent needs a TypeScript project (ideally strict mode) to apply it to; license is MIT per the catalog (the file's frontmatter also mentions Apache-2.0). Skill Harbor never reviews the code, review it yourself before use. Discovered via skills.sh.
Version:
Install
Prerequisites: a TypeScript project the agent can read and refactor (ideally strict mode) — the skill is a pattern guide, not software to install Install "TypeScript strict patterns and best practices" for me. It gives my agent @gentleman-programming's strict TypeScript discipline: const object first with as const, type extracted from it (no direct union types), flat interfaces with nested objects as dedicated interfaces, never any (unknown/generics/type guards instead), the full utility-type kit (Pick, Omit, Partial, Required, Readonly, Record, Extract, Exclude, NonNullable, ReturnType, Parameters), and import type conventions — every rule shown as always/never with code. MIT-licensed. Repository: https://github.com/gentleman-programming/gentleman-skills/blob/main/curated/typescript/SKILL.md 1. Fetch the SKILL.md file (and any helper files) from the repository path into a temporary folder and summarize what it does in one or two sentences. 2. Safety check: review the SKILL.md for anything suspicious (unexpected network calls, shell commands, credential harvesting). This repo should contain zero secrets in code. Verify that holds here; STOP on any red flag and tell me. 3. Install it as a skill: copy SKILL.md and its helper files into the agent's skills directory, in a folder named "typescript". 4. Verify with no network calls: frontmatter valid, files in place. 5. Report what was installed, where, and what I still need to do myself (e.g. point the agent at my TypeScript project or file; nothing else — it's a pattern guide). GitHub is optional: if I have a GitHub account or the gh CLI, you may use it; otherwise public access is fine. Never require it unless it's in the prerequisites above. Rules: don't touch anything outside the temp folder and the install target. If anything looks off, stop and ask me.
Questions
How do I install a build?
Every product page includes a copy-paste install prompt. Paste it into your Muse and it sets the build up for you — no manual configuration.
Where does my money go?
Straight to the seller. Skill Harbor never processes payments: checkout happens on the seller’s own page, usually Stripe.
What does the ✓ next to a creator’s name mean?
It means we confirmed the identity of the person behind the listing. It says nothing about the code itself — always check a build before installing it.