CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

config

How to author a kubb.config.ts and pick the right @kubb/plugin-* packages when generating TypeScript from an OpenAPI/Swagger spec. Use whenever setting up Kubb, adding a generator, or debugging codegen output.

Quality

87%

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

SKILL.md
Quality
Evals
Security

Quality

Content

82%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 tight, highly actionable overview: a complete config example, a need-to-plugin mapping table, and a validated workflow, with detail properly deferred to installed types and official docs. The main improvements are trimming the redundant self-description sections and adding an explicit fix-and-retry loop around validation/typecheck failures.

Suggestions

Remove or merge the 'What It Does' section and opening paragraph into 'When to Use' — they restate the frontmatter description and cost tokens without adding guidance.

Add an explicit feedback loop to the workflow, e.g., 'If validate fails, fix the spec and re-run kubb validate before generating' and 'If typecheck fails on generated output, re-run kubb generate --verbose' — the skill itself warns generation is destructive with output.clean, so recovery steps should be spelled out.

Consider moving the 12-row plugin table and the common-combinations list into a references file (e.g., references/plugins.md), keeping only the rule for reading each plugin's kubb-extension.json inline.

DimensionReasoningScore

Conciseness

The body is dense and assumes Claude's competence ("Rules that matter", "Generation is destructive when output.clean is true"), with only minor over-explanation — the opening paragraph and "What It Does" section restate the skill's purpose already conveyed by the frontmatter and "When to Use". This matches anchor 4's "minor instances that could be trimmed" rather than anchor 5's every-token-earns-its-place.

4 / 5

Actionability

Fully executable guidance: a copy-paste-ready defineConfig example, a table mapping each need to package and import name, CLI commands with specific flags (--input/--output/--plugins, --verbose, --watch), and a concrete directive to read the installed plugin's Options type and docs page. This matches anchor 5's copy-paste-ready coverage of common cases.

5 / 5

Workflow Clarity

The workflow is a clear sequence (validate → init → generate → typecheck) with an explicit upfront validation step ("Validate the spec with kubb validate <spec> before anything else") and destructive-output warnings, so the destructive-operation cap does not apply. However, no explicit fix-and-retry feedback loop after validate or typecheck failures, matching anchor 4 rather than anchor 5.

4 / 5

Progressive Disclosure

Sections are well organized (When to Use, Shape of a config, Available generator plugins, Workflow, Related Skills) and plugin-option detail is correctly deferred one level deep to kubb.dev docs and installed type declarations with clear signals. The inlined 12-row plugin table is borderline reference material and no bundle files exist to further split content, matching anchor 4's "good structure, minor organization gaps".

4 / 5

Total

17

/

20

Passed

Description

87%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 states concrete capabilities in third person, explicitly separates what from when, and carries tool-specific trigger terms that make mis-triggering unlikely. Only minor gaps in action and keyword coverage keep specificity and trigger terms at 4.

DimensionReasoningScore

Specificity

Names concrete actions — "author a kubb.config.ts", "pick the right @kubb/plugin-* packages", "generating TypeScript from an OpenAPI/Swagger spec" — with minor gaps in coverage (e.g., validation and the MCP server workflow are not mentioned). It lists several specific actions rather than only 1-2, placing it above the anchor-3 example and below anchor 5's comprehensive coverage.

4 / 5

Completeness

Explicitly answers both what ("How to author a kubb.config.ts and pick the right @kubb/plugin-* packages when generating TypeScript from an OpenAPI/Swagger spec") and when ("Use whenever setting up Kubb, adding a generator, or debugging codegen output") with concrete trigger phrases, matching the anchor-5 example.

5 / 5

Trigger Term Quality

Natural phrases users would say are present — "setting up Kubb", "adding a generator", "debugging codegen output" — plus synonyms ("OpenAPI/Swagger spec", "codegen"). A few natural terms are missing (e.g., REST clients, mocks/hooks, file extensions), matching anchor 4 rather than anchor 5's comprehensive synonym coverage.

4 / 5

Distinctiveness Conflict Risk

Tool-specific triggers ("kubb.config.ts", "@kubb/plugin-*", "Kubb") define a clear niche with minimal conflict risk against generic TypeScript or OpenAPI skills, matching anchor 5.

5 / 5

Total

18

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 1 suspicious

Warning

Total

15

/

16

Passed

Repository

kubb-labs/kubb

Path

tools/claude/skills/config/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.