Skip to main content

Architecture

skills/ is the source of truth​

Every skill lives at skills/<name>/, containing:

  • SKILL.md — name + description frontmatter (the description drives triggering and should start with "Use when...") followed by the playbook.
  • metadata.json — version, organization, abstract (a catalog-facing summary), category (a slug from bin/lib/categories.json) and sourceCategory.
  • catalog-entry.json — the upstream catalog record the skill was imported from (display name, tags, previews).
  • references/, previews/, deck/ — supporting material, rendered slide previews and a sample deck.

.claude-plugin/marketplace.json lists every skill path and bundles them into one installable plugin, deck. It is generated: node bin/generate-marketplace.mjs --prefix deck.

The repo is private; the plugin marketplace (push to main) is the main distribution channel. The verify workflow runs on every pull request and push to main.

This docs site​

website/ is a Docusaurus site. The /skills page comes from the @cogs/skills-site plugin, which reads skills/*/metadata.json and bin/lib/categories.json at build time and writes a download .zip per skill (SKILL.md, references and metadata; previews/ and deck/ are left out to keep the site small).

Deployment​

The site is deployed by hand with the vercel-deploy GitHub Actions workflow (gh workflow run vercel-deploy -f environment=preview). The Vercel project deck-skills-docs is connected to this repository with Root Directory website/, but its automatic git deployments are disabled, so a push never deploys. Deployment Protection is off.