Claude Code reads this file automatically when working in this repo.
- The source of truth is
skills/catalog.json. Add a skill there first, then create the directory. - After editing the catalog, run
make syncto regenerate the Claude / Codex / Gemini manifests. Runmake validatebefore pushing. make packagebuilds per-skill zips intodist/(gitignored) for web-upload hosts such as Claude.ai and Gemini Enterprise. Don't commit zips; thereleaseworkflow builds them and cuts a date-tagged GitHub Release automatically on every merge tomasterthat touchesskills/.SKILL.mdshould be small (~5KB max). Move depth toreferences/*.mdand link from SKILL.md.- Frontmatter must include
name,description,license. Thenamemust match the directory.
Direct them to the official docs at docs.carto.com/carto-for-agents/agent-skills. The Claude Code plugin ID is carto-skills@carto-agent-skills.
Utility skills cannot have dependencies. Platform skills may depend only on utility skills. Use-case skills may depend on utility and platform skills. If you find yourself wanting one utility skill to import another, that signals the content belongs in a platform skill instead.
make validate # all checks
cd scripts && python3 validate_skills.py # just the skills check
python3 tests/validate_snippets.py # just snippet lintingSnippet validation needs pip install pyyaml sqlglot — both ship in CI but a fresh local checkout may need them installed.