tessl install https://github.com/softaworks/agent-toolkit --skill openapi-to-typescriptgithub.com/softaworks/agent-toolkit
Converts OpenAPI 3.0 JSON/YAML to TypeScript interfaces and type guards. This skill should be used when the user asks to generate types from OpenAPI, convert schema to TS, create API interfaces, or generate TypeScript types from an API specification.
Average Score
82%
Content
65%
Description
100%
Generated
Validations
Total score
14/16| Criteria | Score |
|---|---|
skill_md_line_count SKILL.md line count is 345 (<= 500) | |
frontmatter_valid YAML frontmatter is valid | |
name_field 'name' field is valid: 'openapi-to-typescript' | |
description_field 'description' field is valid (250 chars) | |
description_voice 'description' uses third person voice | |
description_trigger_hint Description includes an explicit trigger hint | |
compatibility_field 'compatibility' field not present (optional) | |
allowed_tools_field 'allowed-tools' field not present (optional) | |
metadata_version 'metadata' field is not a dictionary | |
metadata_field 'metadata' field not present (optional) | |
license_field 'license' field is missing | |
frontmatter_unknown_keys No unknown frontmatter keys found | |
body_present SKILL.md body is present | |
body_examples Examples detected (code fence or 'Example' wording) | |
body_output_format Output/return/format terms detected | |
body_steps Step-by-step structure detected (ordered list) |
Content
Suggestions 3
Total score
9/12| Dimension | Score |
|---|---|
conciseness The skill is reasonably efficient but includes some redundancy - the 'When to Use' section duplicates the description, and some explanations (like basic type mappings) could be more condensed since Claude knows TypeScript and OpenAPI basics. | 2/3 |
actionability Excellent actionability with complete, executable TypeScript code examples, specific type mapping tables, a full input/output example, and concrete naming conventions. The generated code is copy-paste ready. | 3/3 |
workflow_clarity The 7-step workflow is clearly sequenced, but lacks explicit validation checkpoints beyond the initial OpenAPI validation. No feedback loop for handling partial failures or verification that generated TypeScript compiles correctly. | 2/3 |
progressive_disclosure Content is well-organized with clear sections and tables, but this is a long monolithic file (~200 lines) that could benefit from splitting detailed examples or the complete example into separate reference files. | 2/3 |
Suggestions
Add a validation step after generation: 'Run `tsc --noEmit types/api.ts` to verify the output compiles'
Remove the 'When to Use' section as it duplicates the YAML description
Consider moving the complete example to a separate EXAMPLES.md file and linking to it
Overall Assessment
This is a solid, highly actionable skill with excellent concrete examples and clear type mappings. The main weaknesses are its length (could be more concise by trimming redundant sections) and the lack of validation checkpoints in the workflow for verifying the generated TypeScript output compiles correctly.
Description
Total score
12/12| Dimension | Score |
|---|---|
specificity Lists multiple specific concrete actions: 'Converts OpenAPI 3.0 JSON/YAML to TypeScript interfaces and type guards' - specifies the input format (OpenAPI 3.0 JSON/YAML) and multiple outputs (interfaces AND type guards). | 3/3 |
completeness Clearly answers both what ('Converts OpenAPI 3.0 JSON/YAML to TypeScript interfaces and type guards') AND when ('This skill should be used when the user asks to...') with explicit trigger scenarios. | 3/3 |
trigger_term_quality Includes natural keywords users would say: 'generate types from OpenAPI', 'convert schema to TS', 'create API interfaces', 'generate TypeScript types from an API specification' - covers common variations and natural phrasing. | 3/3 |
distinctiveness_conflict_risk Very specific niche combining OpenAPI + TypeScript conversion - unlikely to conflict with general code generation or other document processing skills due to the specific technology pairing. | 3/3 |
Overall Assessment
This is a well-crafted skill description that excels across all dimensions. It uses third person voice, specifies concrete inputs and outputs, includes natural trigger terms users would actually say, and explicitly states when to use the skill. The combination of OpenAPI and TypeScript creates a distinct, non-conflicting niche.