{"id":"c7b8e7b4-e059-4abb-834c-d1b6188c3fde","shortId":"bkamXq","kind":"skill","title":"OpenAPI Specification Validator","tagline":"Validates and lints OpenAPI 3.x specifications using swagger-parser, spectral, and openapi-typescript. Generates type-safe client SDKs and detects breaking API changes via oasdiff.","description":"# OpenAPI Specification Validator\n\nValidates and lints OpenAPI 3.x specifications using swagger-parser, spectral, and openapi-typescript. Generates type-safe client SDKs and detects breaking API changes via oasdiff.\n\n## Prerequisites\n\nswagger-parser, @stoplight/spectral, openapi-typescript, oasdiff, Redocly CLI\n\n## Installation\n\nUse the upstream install or setup path that matches your environment:\n- npm install @apidevtools/swagger-parser\n- git clone https://github.com/APIDevTools/swagger-parser.git\n- npm install\n- npm test\n\nRequirements and caveats from upstream:\n- **[Tested](https://github.com/APIDevTools/swagger-parser/actions)** in Node.js and all modern web browsers on Mac, Windows, and Linux\n- When using Swagger Parser in Node.js apps, you'll probably want to use **CommonJS** syntax:\n- const SwaggerParser = require(\"@apidevtools/swagger-parser\");\n\nBasic usage or getting-started notes:\n- ## Example\n- Or use async/await or [Promise](http://javascriptplayground.com/blog/2015/02/promises/) syntax instead. The following example is the same as above:\n- bash\n\n- Source: https://github.com/APIDevTools/swagger-parser\n- Extracted from upstream docs: https://raw.githubusercontent.com/APIDevTools/swagger-parser/HEAD/README.md\n\n## Documentation\n\n- https://apidevtools.com/swagger-parser/docs/\n\n## Source\n\n- [Agent Skill Exchange](https://agentskillexchange.com/skills/openapi-specification-validator-agent/)","tags":["openapi","specification","validator","agent","skills","agentskillexchange","agent-skills","ai-agents","ai-tools","awesome-list","claude-code","codex"],"capabilities":["skill","source-agentskillexchange","skill-openapi-specification-validator-agent","topic-agent-skills","topic-ai-agents","topic-ai-tools","topic-awesome-list","topic-claude-code","topic-codex","topic-cursor","topic-llm","topic-mcp","topic-npx-skills","topic-openclaw","topic-skills-catalog"],"categories":["skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/agentskillexchange/skills/openapi-specification-validator-agent","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add agentskillexchange/skills","source_repo":"https://github.com/agentskillexchange/skills","install_from":"skills.sh"}},"qualityScore":"0.454","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 8 github stars · SKILL.md body (1,419 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:11:33.879Z","embedding":null,"createdAt":"2026-05-18T13:18:07.084Z","updatedAt":"2026-05-18T19:11:33.879Z","lastSeenAt":"2026-05-18T19:11:33.879Z","tsv":"'/apidevtools/swagger-parser':170 '/apidevtools/swagger-parser.git':95 '/apidevtools/swagger-parser/actions)**':108 '/apidevtools/swagger-parser/head/readme.md':177 '/blog/2015/02/promises/)':155 '/skills/openapi-specification-validator-agent/)':188 '/swagger-parser/docs/':181 '3':8,40 'agent':183 'agentskillexchange.com':187 'agentskillexchange.com/skills/openapi-specification-validator-agent/)':186 'api':29,61 'apidevtools.com':180 'apidevtools.com/swagger-parser/docs/':179 'apidevtools/swagger-parser':90,139 'app':127 'async/await':150 'bash':166 'basic':140 'break':28,60 'browser':115 'caveat':102 'chang':30,62 'cli':75 'client':24,56 'clone':92 'commonj':134 'const':136 'detect':27,59 'doc':174 'document':178 'environ':87 'exampl':147,160 'exchang':185 'extract':171 'follow':159 'generat':20,52 'get':144 'getting-start':143 'git':91 'github.com':94,107,169 'github.com/apidevtools/swagger-parser':168 'github.com/apidevtools/swagger-parser.git':93 'github.com/apidevtools/swagger-parser/actions)**':106 'instal':76,80,89,97 'instead':157 'javascriptplayground.com':154 'javascriptplayground.com/blog/2015/02/promises/)':153 'lint':6,38 'linux':120 'll':129 'mac':117 'match':85 'modern':113 'node.js':110,126 'note':146 'npm':88,96,98 'oasdiff':32,64,73 'openapi':1,7,18,33,39,50,71 'openapi-typescript':17,49,70 'parser':14,46,68,124 'path':83 'prerequisit':65 'probabl':130 'promis':152 'raw.githubusercontent.com':176 'raw.githubusercontent.com/apidevtools/swagger-parser/head/readme.md':175 'redoc':74 'requir':100,138 'safe':23,55 'sdks':25,57 'setup':82 'skill':184 'skill-openapi-specification-validator-agent' 'sourc':167,182 'source-agentskillexchange' 'specif':2,10,34,42 'spectral':15,47 'start':145 'stoplight/spectral':69 'swagger':13,45,67,123 'swagger-pars':12,44,66 'swaggerpars':137 'syntax':135,156 'test':99,105 'topic-agent-skills' 'topic-ai-agents' 'topic-ai-tools' 'topic-awesome-list' 'topic-claude-code' 'topic-codex' 'topic-cursor' 'topic-llm' 'topic-mcp' 'topic-npx-skills' 'topic-openclaw' 'topic-skills-catalog' 'type':22,54 'type-saf':21,53 'typescript':19,51,72 'upstream':79,104,173 'usag':141 'use':11,43,77,122,133,149 'valid':3,4,35,36 'via':31,63 'want':131 'web':114 'window':118 'x':9,41","prices":[{"id":"c18d7bd7-9a21-4a8d-a9ad-43b7a5ee4cb7","listingId":"c7b8e7b4-e059-4abb-834c-d1b6188c3fde","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"agentskillexchange","category":"skills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:18:07.084Z"}],"sources":[{"listingId":"c7b8e7b4-e059-4abb-834c-d1b6188c3fde","source":"github","sourceId":"agentskillexchange/skills/openapi-specification-validator-agent","sourceUrl":"https://github.com/agentskillexchange/skills/tree/main/skills/openapi-specification-validator-agent","isPrimary":false,"firstSeenAt":"2026-05-18T13:18:07.084Z","lastSeenAt":"2026-05-18T19:11:33.879Z"}],"details":{"listingId":"c7b8e7b4-e059-4abb-834c-d1b6188c3fde","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"agentskillexchange","slug":"openapi-specification-validator-agent","github":{"repo":"agentskillexchange/skills","stars":8,"topics":["agent-skills","ai-agents","ai-tools","awesome-list","claude-code","codex","cursor","llm","mcp","npx-skills","openclaw","skills-catalog"],"license":"mit","html_url":"https://github.com/agentskillexchange/skills","pushed_at":"2026-05-18T19:02:17Z","description":"The open catalog of AI agent skills — 2,000+ security-scanned skills for Claude Code, Cursor, Codex, and more.","skill_md_sha":"c9557ba75f984d5c870fcae0c0e6473c4499ce17","skill_md_path":"skills/openapi-specification-validator-agent/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/agentskillexchange/skills/tree/main/skills/openapi-specification-validator-agent"},"layout":"multi","source":"github","category":"skills","frontmatter":{"name":"OpenAPI Specification Validator","description":"Validates and lints OpenAPI 3.x specifications using swagger-parser, spectral, and openapi-typescript. Generates type-safe client SDKs and detects breaking API changes via oasdiff."},"skills_sh_url":"https://skills.sh/agentskillexchange/skills/openapi-specification-validator-agent"},"updatedAt":"2026-05-18T19:11:33.879Z"}}