[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CYG84TJ77XXECJ512CE1HD":3,"skill-same:01M6CYG84TJ77XXECJ512CE1HD":117},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":40,"linkOnly":41,"markdownContent":42,"markdownBody":43,"frontMatter":44,"refName":45,"commitSha":46,"skillDirectory":47,"forksCount":48,"repositoryHtmlUrl":49,"repositoryHomepageUrl":6,"ownerHtmlUrl":50,"ownerBlogUrl":51,"ownerDescription":6,"updatedAt":52,"install":53,"resources":66},"01M6CYG84TJ77XXECJ512CE1HD","validate-skill-docs",null,"Use after modifying plugin skills, docs\u002Fskills\u002F pages, or site\u002Fsrc\u002Fdata\u002Fskills-meta.ts. Validates content consistency between SKILL.md files and their documentation surfaces: skills-meta.ts field accuracy, connection validity, doc template compliance, and flag documentation.","rnagrodzki\u002Fsdlc-marketplace","rnagrodzki","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F303481?v=4","01M6CYFWQK3A8WR9W324Z5Q5DR","Rafal Nagrodzki","01M6CYFWVKS23ECZCP9R7DTQVN",0,"MIT","https:\u002F\u002Fgithub.com\u002Frnagrodzki\u002Fsdlc-marketplace\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fvalidate-skill-docs\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39],"docs","validate","validate skill docs","documentation","plugin","content","compliance","data","Meta","doc","src","template","site","use","files","surfaces","2026-11-10 10:12:30",false,"---\nname: validate-skill-docs\ndescription: \"Use after modifying plugin skills, docs\u002Fskills\u002F pages, or site\u002Fsrc\u002Fdata\u002Fskills-meta.ts. Validates content consistency between SKILL.md files and their documentation surfaces: skills-meta.ts field accuracy, connection validity, doc template compliance, and flag documentation.\"\n---\n\n# Validate Skill Docs\n\nAfter modifying skill workflows, flags, or documentation surfaces, run this validation\nto catch content drift between SKILL.md files and their docs\u002Fskills-meta.ts\u002FREADME representations.\n\n## When to Use\n\nInvoke this skill when you have modified any of:\n\n- `plugins\u002Fsdlc-utilities\u002Fskills\u002F*\u002FSKILL.md` (workflow steps or flags changed)\n- `docs\u002Fskills\u002F*.md` (documentation content)\n- `site\u002Fsrc\u002Fdata\u002Fskills-meta.ts` (metadata entries)\n\n## Step 1 — Run the Validation Script\n\n```bash\nnode .claude\u002Fskills\u002Fvalidate-skill-docs\u002Fcheck-docs-consistency.js\n```\n\nIf the script exits 0: all checks pass — proceed.\n\nIf the script exits 1: fix each issue before finishing the task (see Step 2).\n\nIf the script exits 2: run from the repository root or pass `--project-root \u003Cpath>`.\n\n## Step 2 — Fix Issues Found\n\nFor each finding, apply the appropriate fix:\n\n### `user-invocable-match` (error)\n\nThe `userInvocable` boolean in skills-meta.ts does not match the `user-invocable` frontmatter\nvalue in the skill's SKILL.md. Update one to match the other — the SKILL.md frontmatter is\nthe source of truth.\n\n### `connections-valid` (error)\n\nA `connections[].to` value in skills-meta.ts references a slug that does not exist in the\nskillsMeta array. Fix the typo or add the missing skill entry.\n\n### `doc-template-sections` (warning)\n\nA `docs\u002Fskills\u002F\u003Cname>.md` file is missing one or more required sections from the doc template.\nAdd the missing sections using `docs\u002Fskill-doc-template.md` as the reference.\n\nRequired sections: Overview, Usage, Examples, Prerequisites, What It Creates or Modifies,\nRelated Skills. The Flags section is optional.\n\n### `doc-flags-present` (warning)\n\nA skill has `--` flags in its `argument-hint` but the corresponding `docs\u002Fskills\u002F\u003Cname>.md`\nFlags table does not mention any of them. Add the missing flags to the Flags table.\n\n## Step 3 — Re-run Validation\n\nAfter fixing all issues:\n\n```bash\nnode .claude\u002Fskills\u002Fvalidate-skill-docs\u002Fcheck-docs-consistency.js\n```\n\nConfirm exit 0 before marking work complete.\n","# Validate Skill Docs\n\nAfter modifying skill workflows, flags, or documentation surfaces, run this validation\nto catch content drift between SKILL.md files and their docs\u002Fskills-meta.ts\u002FREADME representations.\n\n## When to Use\n\nInvoke this skill when you have modified any of:\n\n- `plugins\u002Fsdlc-utilities\u002Fskills\u002F*\u002FSKILL.md` (workflow steps or flags changed)\n- `docs\u002Fskills\u002F*.md` (documentation content)\n- `site\u002Fsrc\u002Fdata\u002Fskills-meta.ts` (metadata entries)\n\n## Step 1 — Run the Validation Script\n\n```bash\nnode .claude\u002Fskills\u002Fvalidate-skill-docs\u002Fcheck-docs-consistency.js\n```\n\nIf the script exits 0: all checks pass — proceed.\n\nIf the script exits 1: fix each issue before finishing the task (see Step 2).\n\nIf the script exits 2: run from the repository root or pass `--project-root \u003Cpath>`.\n\n## Step 2 — Fix Issues Found\n\nFor each finding, apply the appropriate fix:\n\n### `user-invocable-match` (error)\n\nThe `userInvocable` boolean in skills-meta.ts does not match the `user-invocable` frontmatter\nvalue in the skill's SKILL.md. Update one to match the other — the SKILL.md frontmatter is\nthe source of truth.\n\n### `connections-valid` (error)\n\nA `connections[].to` value in skills-meta.ts references a slug that does not exist in the\nskillsMeta array. Fix the typo or add the missing skill entry.\n\n### `doc-template-sections` (warning)\n\nA `docs\u002Fskills\u002F\u003Cname>.md` file is missing one or more required sections from the doc template.\nAdd the missing sections using `docs\u002Fskill-doc-template.md` as the reference.\n\nRequired sections: Overview, Usage, Examples, Prerequisites, What It Creates or Modifies,\nRelated Skills. The Flags section is optional.\n\n### `doc-flags-present` (warning)\n\nA skill has `--` flags in its `argument-hint` but the corresponding `docs\u002Fskills\u002F\u003Cname>.md`\nFlags table does not mention any of them. Add the missing flags to the Flags table.\n\n## Step 3 — Re-run Validation\n\nAfter fixing all issues:\n\n```bash\nnode .claude\u002Fskills\u002Fvalidate-skill-docs\u002Fcheck-docs-consistency.js\n```\n\nConfirm exit 0 before marking work complete.\n",{"name":5,"description":7},"main","3480d74fa3b8cb64fff5c365fbeb6e00d2708e53",".claude\u002Fskills\u002Fvalidate-skill-docs",6,"https:\u002F\u002Fgithub.com\u002Frnagrodzki\u002Fsdlc-marketplace","https:\u002F\u002Fgithub.com\u002Frnagrodzki","http:\u002F\u002Fnagrodzki.net","2026-09-05 21:47:31",{"source":8,"skillName":5,"commands":54,"prompt":64,"zipAvailable":65},[55,58,61],{"tool":56,"command":57},"npx","npx skills add rnagrodzki\u002Fsdlc-marketplace --skill validate-skill-docs",{"tool":59,"command":60},"bunx","bunx skills add rnagrodzki\u002Fsdlc-marketplace --skill validate-skill-docs",{"tool":62,"command":63},"pnpm","pnpm dlx skills add rnagrodzki\u002Fsdlc-marketplace --skill validate-skill-docs","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Frnagrodzki\u002Fsdlc-marketplace\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fvalidate-skill-docs\u002FSKILL.md",true,[67,73,79,83,87,93,97,101,105,109,113],{"path":68,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":71,"sourceHtmlUrl":72},"agents\u002Fopenai.yaml","REFERENCE","参考文档",308,"https:\u002F\u002Fgithub.com\u002Fendman100\u002Fskill-router-nexus\u002Fblob\u002Fmain\u002FVideo-Generation\u002Feditorial-collage-motion\u002Fagents\u002Fopenai.yaml",{"path":74,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":77,"sourceHtmlUrl":78},"assets\u002Ftemplates\u002Fassembly-plan-bands.json","ASSET","资产文件",629,"https:\u002F\u002Fgithub.com\u002Fendman100\u002Fskill-router-nexus\u002Fblob\u002Fmain\u002FVideo-Generation\u002Feditorial-collage-motion\u002Fassets\u002Ftemplates\u002Fassembly-plan-bands.json",{"path":80,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":81,"sourceHtmlUrl":82},"assets\u002Ftemplates\u002Fassembly-plan.json",1033,"https:\u002F\u002Fgithub.com\u002Fendman100\u002Fskill-router-nexus\u002Fblob\u002Fmain\u002FVideo-Generation\u002Feditorial-collage-motion\u002Fassets\u002Ftemplates\u002Fassembly-plan.json",{"path":84,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":85,"sourceHtmlUrl":86},"assets\u002Ftemplates\u002Fcollage-spec.json",1756,"https:\u002F\u002Fgithub.com\u002Fendman100\u002Fskill-router-nexus\u002Fblob\u002Fmain\u002FVideo-Generation\u002Feditorial-collage-motion\u002Fassets\u002Ftemplates\u002Fcollage-spec.json",{"path":88,"resourceType":89,"resourceTypeDesc":90,"sizeBytes":91,"sourceHtmlUrl":92},"check-docs-consistency.js","SCRIPT","脚本",12466,"https:\u002F\u002Fgithub.com\u002Frnagrodzki\u002Fsdlc-marketplace\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fvalidate-skill-docs\u002Fcheck-docs-consistency.js",{"path":94,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":95,"sourceHtmlUrl":96},"references\u002Fprovider-boundaries.md",1996,"https:\u002F\u002Fgithub.com\u002Fendman100\u002Fskill-router-nexus\u002Fblob\u002Fmain\u002FVideo-Generation\u002Feditorial-collage-motion\u002Freferences\u002Fprovider-boundaries.md",{"path":98,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":99,"sourceHtmlUrl":100},"references\u002Fqc-and-provenance.md",1488,"https:\u002F\u002Fgithub.com\u002Fendman100\u002Fskill-router-nexus\u002Fblob\u002Fmain\u002FVideo-Generation\u002Feditorial-collage-motion\u002Freferences\u002Fqc-and-provenance.md",{"path":102,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":103,"sourceHtmlUrl":104},"references\u002Fschemas.md",2809,"https:\u002F\u002Fgithub.com\u002Fendman100\u002Fskill-router-nexus\u002Fblob\u002Fmain\u002FVideo-Generation\u002Feditorial-collage-motion\u002Freferences\u002Fschemas.md",{"path":106,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":107,"sourceHtmlUrl":108},"references\u002Fvisual-contract.md",3122,"https:\u002F\u002Fgithub.com\u002Fendman100\u002Fskill-router-nexus\u002Fblob\u002Fmain\u002FVideo-Generation\u002Feditorial-collage-motion\u002Freferences\u002Fvisual-contract.md",{"path":110,"resourceType":89,"resourceTypeDesc":90,"sizeBytes":111,"sourceHtmlUrl":112},"scripts\u002Frender_assembly.py",8842,"https:\u002F\u002Fgithub.com\u002Fendman100\u002Fskill-router-nexus\u002Fblob\u002Fmain\u002FVideo-Generation\u002Feditorial-collage-motion\u002Fscripts\u002Frender_assembly.py",{"path":114,"resourceType":89,"resourceTypeDesc":90,"sizeBytes":115,"sourceHtmlUrl":116},"scripts\u002Fvalidate_collage.py",10878,"https:\u002F\u002Fgithub.com\u002Fendman100\u002Fskill-router-nexus\u002Fblob\u002Fmain\u002FVideo-Generation\u002Feditorial-collage-motion\u002Fscripts\u002Fvalidate_collage.py",[118,132,139,149,158,173],{"skillNo":119,"name":120,"nameZh":6,"description":121,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":122,"categories":123,"keywords":125,"publishedAt":40},"01M6CYJDSW8MAAJAM62G7ZPRVB","example-skill","Test fixture — passing case for script-resolution-version rule.","https:\u002F\u002Fgithub.com\u002Frnagrodzki\u002Fsdlc-marketplace\u002Fblob\u002Fmain\u002Ftests\u002Fpromptfoo\u002Ffixtures-fs\u002Fresolution-validator-cases\u002Fgood-project\u002Fplugins\u002Fsdlc-utilities\u002Fskills\u002Fexample-skill\u002FSKILL.md",[124],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[126,127,128,129,130,131],"example skill","example","fixture","test","version","resolution",{"skillNo":133,"name":120,"nameZh":6,"description":134,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":135,"categories":136,"keywords":138,"publishedAt":40},"01M6CYJCBDNB7S40VZ1B0TEFE1","Test fixture — failing case for script-resolution-version rule.","https:\u002F\u002Fgithub.com\u002Frnagrodzki\u002Fsdlc-marketplace\u002Fblob\u002Fmain\u002Ftests\u002Fpromptfoo\u002Ffixtures-fs\u002Fresolution-validator-cases\u002Fbad-project\u002Fplugins\u002Fsdlc-utilities\u002Fskills\u002Fexample-skill\u002FSKILL.md",[137],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[127,126,129,130,128,131],{"skillNo":140,"name":120,"nameZh":6,"description":141,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":142,"categories":143,"keywords":145,"publishedAt":40},"01M6CYJARTK87CH0T6EJ7ZQCZV","Test fixture — passing case for the orchestrator-await-barrier rule (#487). Marks a fan-out dispatch as await-barrier-required and states the guard.","https:\u002F\u002Fgithub.com\u002Frnagrodzki\u002Fsdlc-marketplace\u002Fblob\u002Fmain\u002Ftests\u002Fpromptfoo\u002Ffixtures-fs\u002Forchestrator-await-barrier-cases\u002Fgood-project\u002Fplugins\u002Fsdlc-utilities\u002Fskills\u002Fexample-skill\u002FSKILL.md",[144],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[126,127,146,147,148,128,129],"guard","orchestrator","dispatch",{"skillNo":150,"name":120,"nameZh":6,"description":151,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":152,"categories":153,"keywords":155,"publishedAt":40},"01M6CYJ8T4G8CQDWGZKGW1THNZ","Test fixture — failing case for the orchestrator-await-barrier rule (#487). Marks a fan-out dispatch as await-barrier-required but never states the guard.","https:\u002F\u002Fgithub.com\u002Frnagrodzki\u002Fsdlc-marketplace\u002Fblob\u002Fmain\u002Ftests\u002Fpromptfoo\u002Ffixtures-fs\u002Forchestrator-await-barrier-cases\u002Fbad-project\u002Fplugins\u002Fsdlc-utilities\u002Fskills\u002Fexample-skill\u002FSKILL.md",[154],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[127,126,129,146,147,156,148,157,128],"never","but",{"skillNo":159,"name":160,"nameZh":6,"description":161,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":162,"categories":163,"keywords":164,"publishedAt":40},"01M6CYJ78NG35A6BGVDG3DTDV8","pr-sdlc","Creates or updates GitHub pull requests with auto-generated 8-section descriptions.","https:\u002F\u002Fgithub.com\u002Frnagrodzki\u002Fsdlc-marketplace\u002Fblob\u002Fmain\u002Ftests\u002Fpromptfoo\u002Ffixtures-fs\u002Fhealthy-marketplace\u002Fplugins\u002Fsdlc-utilities\u002Fskills\u002Fpr-sdlc\u002FSKILL.md",[],[165,166,167,168,169,170,171,172],"pr sdlc","sdlc","pr","auto","github","pull requests","pull","generated",{"skillNo":174,"name":120,"nameZh":6,"description":175,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":176,"categories":177,"keywords":179,"publishedAt":40},"01M6CYJ5W0AYJTBNDN0W4K6AJZ","Fixture skill for validate-cost-tiers drift tests.","https:\u002F\u002Fgithub.com\u002Frnagrodzki\u002Fsdlc-marketplace\u002Fblob\u002Fmain\u002Ftests\u002Fpromptfoo\u002Ffixtures-fs\u002Fcost-tiers-drift\u002Fskills\u002Fexample-skill\u002FSKILL.md",[178],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[126,127,25,180,181,182,128],"cost","fixture skill","drift"]