Skillet
Browse
⌘K
Log inJoin
docs
  • What is Skillet?
  • Skills & kits
  • Install
  • Add skills
  • Approve updates
  • Publish a skill
  • Teams
  • Safety
  • Privacy
  • FAQ
  • API
  • CLI
  • MCP
  • Scanner
  • Skill.md
  • Versioning
  • Skills
  • Discovery
  • People
  • Kits
  • Registry
  • What is Skillet?
  • Skills & kits
  • Install
  • Add skills
  • Approve updates
  • Publish a skill
  • Teams
  • Safety
  • Privacy
  • FAQ
  • API
  • CLI
  • MCP
  • Scanner
  • Skill.md
  • Versioning
  • Skills
  • Discovery
  • People
  • Kits
  • Registry

Discovery API

Cross-catalog search and browse feeds.


Base URL: https://skillet.md/api/v1

Auth, errors, caching, pagination, and rate limits are in the API overview. Every endpoint here is also described in /openapi.json.

Endpoints

  • GET /search — Search skills, kits, and people
  • GET /discover/feed — Read the public activity feed

GET /search

One query across every public object type. This is the right first call for "is there already a skill for X" — it ranks skills, kits, authors, and teams together.

Auth — none. This endpoint is anonymous. A bearer token with the read scope also works.

Operation ID — search

ParameterDescription
q string · query · requiredThe search query. An empty query returns no results.
types string · query · optionalComma-separated object types to include. Defaults to all of skills,kits,people.
limit integer · query · optionalMaximum results per type.
bash
curl -s "https://skillet.md/api/v1/search?q=code%20review"

Returns ranked results grouped by type.

json
{
  "skills": [
    {
      "author": "shadcn",
      "slug": "shadcn",
      "skill_id": "shadcn:shadcn",
      "description": "Manages shadcn components and projects: adding, searching, fixing, and composing UI.",
      "visibility": "public",
      "latest_hash": "sha256:c57e3cc8688fe5f0956c8e91ee02d1ee97fb5b0e8115e2d6ca6447c1ade69686",
      "version": 3,
      "version_label": "1.2.0",
      "install_count": 412,
      "created_at": 1787163766,
      "category": "frontend",
      "signatureStatus": "verified",
      "scanStatus": "clean",
      "moderationStatus": "none",
      "deprecated": false,
      "used_by": [
        "gtm"
      ],
      "used_by_count": 12
    }
  ],
  "kits": [
    {
      "id": "…",
      "owner": "…",
      "slug": "…",
      "name": "…",
      "description": "…",
      "skill_count": 0,
      "subscriber_count": 0,
      "category": "…"
    }
  ],
  "people": [
    {
      "handle": "…",
      "name": "…",
      "avatar_url": "https://skillet.md/…"
    }
  ]
}
StatusMeaning
400The request was malformed (bad parameter, missing field).
404No such resource, or it is not readable by this caller.
429Rate limited. Retry after the window in Retry-After.

GET /discover/feed

Registry-wide public activity — publishes, new kits, new profiles — newest first. Poll it to track what changed since a previous read.

Auth — none. This endpoint is anonymous. A bearer token with the read scope also works.

Operation ID — listActivity

ParameterDescription
limit integer · query · optionalPage size. Clamped server-side to 1-100.
offset integer · query · optionalZero-based offset into the result set.
bash
curl -s "https://skillet.md/api/v1/discover/feed"

Returns a page of public activity events.

json
{
  "events": [
    {
      "kind": "…",
      "actor": "…",
      "skill_id": "…",
      "kit_id": "…",
      "created_at": 0
    }
  ]
}
StatusMeaning
400The request was malformed (bad parameter, missing field).
404No such resource, or it is not readable by this caller.
429Rate limited. Retry after the window in Retry-After.
SkillsPeople

On this page

  • Endpoints
  • GET /search
  • GET /discover/feed
Skilletseasoned to taste
Get appStatsBlogDocs
    Star0