--- title: Hep.gg AI Skills (LLM) description: A registry of Claude-compatible agent skills served as raw markdown at skills.hep.gg. Fetch public skills, reach your private skills via a capability URL, or save a skill with the import endpoint. --- # Hep.gg AI Skills A registry for Claude-compatible skills. A skill is a SKILL.md (frontmatter: name + when-to-use description, plus a markdown body) and optional supporting files. Everything is served as bare text/markdown (no HTML) so an agent can fetch a URL straight into its context. Base URL: https://skills.hep.gg Auth: none for public skills. Private/unlisted skills are reached through a per-user capability URL that embeds an access key (the key in the URL is the credential). Get or rotate the key in the dashboard under AI > Skills > Access URL. The import endpoint also uses the access key. Access requires AI access on the account (app_access(ai)). Creating, editing, and sharing skills is open to all AI users (free and premium). The global public directory listing is the one Hep.gg Prime perk (see below). ## Read endpoints (all GET, return markdown or a raw supporting file) ### GET / Global public directory: every public skill whose owner currently holds Hep.gg Prime, newest first. A non-Prime owner's skills do not appear here. ### GET /:username One user's public skill catalog (markdown index). Only public skills resolve here; unlisted and private skills 404 on the /:username paths. ### GET /:username/:slug Raw SKILL.md for one public skill (frontmatter + body). ### GET /:username/:slug/:filename A public skill's supporting file (reference, example, or script). ### GET /me/:accessKey Your full catalog including public, unlisted, and private skills. Paste this URL into an agent's context (for example ~/.claude/CLAUDE.md) so every session can read your private skills. ### GET /me/:accessKey/:slug Raw SKILL.md for one of your skills (private-capable). ### GET /me/:accessKey/:slug/:filename A supporting file for one of your skills (private-capable). Notes: - Public responses are cached ~60s; edits propagate within about a minute. - An unknown username/slug, or an invalid/rotated access key, returns 404 with a short not-found markdown body (it never discloses that a key is wrong). ## Write endpoint (the only write on skills.hep.gg) ### POST /me/:accessKey/import Create or save a skill to the owner of the access key. Content-Type: application/json. Body: name string required. Human name of the skill. description string required. The when-to-use sentence an agent reads to decide whether to invoke the skill. content string required. The SKILL.md body WITHOUT frontmatter (name + description are assembled into frontmatter for you). slug string optional. URL slug (lowercase a-z0-9-). Auto-derived from name if omitted. A collision returns 409. visibility string optional, default "private". One of private | unlisted | public. Pass public to publish. files array optional. Supporting files [{ filename, content }]. Each filename must be a safe relative name; per-skill count and per-file size limits apply. Example: curl -X POST https://skills.hep.gg/me/YOUR_ACCESS_KEY/import \ -H "Content-Type: application/json" \ -d '{ "name": "Deploy a Next.js app", "description": "Use when deploying a Next.js app to Vercel or Cloudflare Pages.", "content": "# Deploy a Next.js app\n\n1. ...", "visibility": "private" }' Success: { "ok": true, "data": { "id": ..., "slug": "...", "visibility": "private", "url": "...", "publicUrl": "...", "editUrl": "...", "files": [...] } } Errors ({ "ok": false, "error": "..." }): 401 invalid or missing access key. 409 slug collision (a skill with that slug already exists).