CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

typescript-advanced-types

Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications. Use when implementing complex type logic, creating reusable type utilities, or ensuring compile-time type safety in TypeScript projects.

59

Quality

74%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./templates/plate-template/.agents/skills/typescript-advanced-types/SKILL.md

The canonical home for this skill is typescript-advanced-types in wshobson/agents

SKILL.md
Quality
Evals
Security

Quality

Content

53%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a well-organized, code-dense TypeScript type-system reference with a properly signaled one-level-deep reference file, but much of it re-teaches concepts Claude already knows (basic generics, built-in utility types, string manipulation helpers), and it presents a topic catalog with no task-oriented workflow. Examples are concrete and executable with only minor correctness gaps from shadowing built-in type names.

Suggestions

Trim or move the sections re-teaching known basics (Basic Generic Function, Multiple Type Parameters, the built-in utility type catalog, Uppercase/Lowercase/Capitalize string manipulation) into references/details.md or delete them, keeping only the genuinely non-obvious patterns in SKILL.md.

Add task-oriented workflow guidance — e.g., a short 'When to apply which pattern' decision list or an ordered approach for designing a type-safe API client or form validation — so the content sequences an actual process instead of cataloging topics.

Fix the example gaps: avoid redeclaring built-ins (ReturnType, Partial, Readonly) by renaming, deduplicate identifiers like PartialUser, and make referenced keys (e.g., User.email) exist in the shown interfaces.

DimensionReasoningScore

Conciseness

Several sections teach concepts Claude already knows — a basic identity-function generic example, a catalog of built-in utility types ("Partial<T> - Make all properties optional", "Record<K, T> - Create object type..."), and Uppercase/Lowercase string manipulation — which is noticeably verbose for a skill. It is not the padded-prose extreme of anchor 1 since the body is code-dense and reference-styled, but the unnecessary-explanation anchor at 2 fits.

2 / 5

Actionability

Examples are real, executable TypeScript with expected resulting types in comments (e.g., the Path<T> template-literal builder, PickByType, AssertEqual). Minor gaps: examples shadow built-in names (ReturnType, Partial, Readonly) and reuse identifiers across sections (PartialUser is declared twice), so combined code would not compile; Pick<User, "name" | "email"> references keys not shown in the User interface.

4 / 5

Workflow Clarity

The body is a topical catalog (Core Concepts 1-5, Best Practices, Pitfalls, Performance) rather than a sequenced process — there is no operational workflow, no task-oriented ordering, and no checkpoints, only the pointer to references/details.md. It is not a destructive or batch skill so the hard cap does not apply, but the absence of any sequence keeps it at the anchor-3 level rather than 4.

3 / 5

Progressive Disclosure

Scored against the actual bundle (SKILL.md plus references/details.md): the pointer "Detailed sections (starting with '## Advanced Patterns') live in references/details.md. Read that file when the navigation summary above is insufficient" is clearly signaled, states when to read it, and the file verified to exist and begin with '## Advanced Patterns'. Structure is one level deep with good section headers; the minor gap is that core-concept tutorial content inlined in SKILL.md could itself be slimmed, matching the good-structure anchor at 4.

4 / 5

Total

13

/

20

Passed

Description

83%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: it names a clear niche, enumerates the concrete feature areas, and includes an explicit 'Use when' clause with concrete triggers. The only weaknesses are mildly generic action verbs and a few missing trigger synonyms (e.g., type inference, type guards).

DimensionReasoningScore

Specificity

Names the domain and enumerates several concrete capability areas ("generics, conditional types, mapped types, template literals, and utility types"), but the action verbs ("Master", "implementing", "creating", "ensuring") are somewhat generic, leaving minor gaps versus the comprehensive-action anchor at 5.

4 / 5

Completeness

Explicitly answers both what ("Master TypeScript's advanced type system including...") and when ("Use when implementing complex type logic, creating reusable type utilities, or ensuring compile-time type safety in TypeScript projects") with concrete trigger phrases, exactly matching the top anchor.

5 / 5

Trigger Term Quality

Natural terms a user would say — "generics", "conditional types", "mapped types", "type-safe", "TypeScript" — are present, but common variations like "type inference", "infer", or "type guards" are missing, matching the good-coverage-with-gaps anchor.

4 / 5

Distinctiveness Conflict Risk

"TypeScript's advanced type system" is a clear niche with distinct triggers, but the broad clause "ensuring compile-time type safety in TypeScript projects" creates minor overlap risk with a general TypeScript skill, so it fits the mostly-distinct anchor rather than 5.

4 / 5

Total

17

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

udecode/plate

Path

templates/plate-template/.agents/skills/typescript-advanced-types/SKILL.md

Reviewed

Table of Contents

Is this your skill?

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.