This document captures how CLI registry commands resolve data from the GitHub repository:
Both commands read:
GET https://raw.githubusercontent.com/bergside/awesome-design-skills/main/skills/index.json
Expected shape:
{
"paper": {
"slug": "paper",
"name": "Paper",
"skillPath": "skills/paper/SKILL.md",
"designPath": "skills/paper/DESIGN.md"
}
}designPath is optional. If omitted, CLI infers it from skillPath by replacing SKILL.md with DESIGN.md.
The CLI maps each index entry to:
name-> display nameslug-> selection and pull keypreviewUrl-> repository page (/tree/main/skills/<slug>)hasSkillMd->truewhenskillPathis non-emptyhasDesignMd->truewhendesignPathis non-empty, or when inferred fromskillPath
For pull <slug> --format skill:
- Validate slug format locally.
- Read
skills/index.json. - Resolve
index[slug].skillPath. - Fetch markdown from raw GitHub URL:
GET https://raw.githubusercontent.com/bergside/awesome-design-skills/main/<skillPath>
For pull <slug> --format design:
- Validate slug format locally.
- Read
skills/index.json. - Resolve
index[slug].designPath(or infer fromskillPathwhen omitted). - Fetch markdown from raw GitHub URL:
GET https://raw.githubusercontent.com/bergside/awesome-design-skills/main/<designPath>
On success, response is markdown text (text/markdown or plain text accepted).
Common failure reasons surfaced by CLI:
not_found(missing slug in index or missing markdown file)- invalid index JSON/shape
- network/unreachable raw GitHub URLs