Skills API
Reusable skills, uploaded as packages or installed from the registry.
List manageable skills
Answers GLOBAL skills read-only, the company’s COMPANY skills and, when `applicationId` is supplied and accessible, that application’s APPLICATION skills. Answers `404` when the skills feature flag is off at the requested scope, so the surface looks nonexistent outside the rollout.
Upload skill from ZIP
Accepts `multipart/form-data` with a ZIP `file`, a `scope` of COMPANY or APPLICATION, and an `applicationId` when scope is APPLICATION. Replaces any existing skill with the same name in the same scope.
Get skill
Only COMPANY and APPLICATION skills are readable here, GLOBAL skills answer `404`. The detail payload adds `instructions`, `gcsPath` and the file manifest on top of the `GET /api/v1/skills/` item shape.
Enable or disable skill
Only the `enabled` flag can be changed through this endpoint. Requires company-admin rights for COMPANY skills, and application-admin or company-admin rights for APPLICATION skills.
Delete skill
Deletes the skill row and its files in storage. File cleanup failures are logged but do not block the deletion. Requires the same admin rights as `PATCH /api/v1/skills/{id}/`.
Chat with skill builder (streaming)
Streams an AI SDK UI-message response. Accepts a chat payload `{ messages, data }` where `data` carries the draft file tree, name, description and authoring scope.
Install skills from registry
Downloads the GitHub repository behind `source` as a zipball, extracts every `SKILL.md` folder (optionally filtered by `skill`) and creates or updates the skills at the chosen scope, replacing same-name skills. Only github.com sources are supported. Use `GET /api/v1/skills/registry/search/` or `GET /api/v1/skills/registry/popular/` to find sources.
List popular skills
`limit` is clamped to 1..50 (default 12); invalid `sortBy` values fall back to `installs`.
Search skills registry
`limit` is clamped to 1..50 (default 10).