Skills

A skill is a packaged set of instructions — defined by a SKILL.md file — that can be attached to a model request. Skills let you build reusable personas, workflows, or domain-specific assistants without repeating system prompts.

Skills are versioned. You can update a skill without breaking existing integrations that pin to an older version.


Create a skill

$curl -X POST http://localhost:8080/v1/skills \
> -F 'display_title=Legal Reviewer' \
> -F 'collection=my-org' \
> -F 'skill_md=# Legal Reviewer\n\nYou are a legal document reviewer. Always flag missing clauses and ambiguous language.'

Key fields:

FieldDescription
display_titleHuman-readable name
collectionScope — usually an org or workspace identifier
skill_mdInline SKILL.md content
loadinglazy (default) or eager — when instructions are injected

List skills

$curl "http://localhost:8080/v1/skills?collection=my-org"

Get a skill

$curl "http://localhost:8080/v1/skills/skill_01abc...?collection=my-org"

Update

Skills are immutable once created. Add a new version instead of editing:

$curl -X POST http://localhost:8080/v1/skills/skill_01abc.../versions \
> -H "Content-Type: application/json" \
> -d '{
> "skill_md": "# Legal Reviewer v2\n\nUpdated instructions..."
> }'

List versions:

$curl http://localhost:8080/v1/skills/skill_01abc.../versions

Delete a skill

$curl -X DELETE "http://localhost:8080/v1/skills/skill_01abc...?collection=my-org"

Read-only skills (source anthropic or zylon) cannot be deleted.