Skip to content

Create Skill

POST /skills
FieldTypeNotes
slugstringrequired—
descriptionstringrequiredmin length 1
instructionsstringrequiredmin length 1
reference_docsReferenceDoc[]optional—
scopeworkspace | organization | platform | nulloptional—
owner_agent_idstring (uuid) | nulloptional—
owner_user_idstring (uuid) | nulloptional—
curation_statepending | reviewed | promoted | superseded | retiredoptionalDefault "reviewed".
originhuman | agent | import | derivedoptionalDefault "human".
is_activebooleanoptionalDefault true.
StatusDescriptionBody
201Successful ResponseSkillView
422Validation ErrorHTTPValidationError

The body shows the fields the schema always carries. Which combination is legal is a service rule the schema cannot express, so read the description above before copying this.

Terminal window
curl -X POST https://your-deployment.example.com/skills \
-H "Authorization: Bearer $COBRE_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"slug": "string",
"description": "string",
"instructions": "string"
}'
FieldTypeNotes
idstring (uuid)required—
scopeworkspace | organization | platformrequired—
organization_idstring (uuid) | nullrequired, nullable—
workspace_idstring (uuid) | nullrequired, nullable—
owner_agent_idstring (uuid) | nullrequired, nullable—
owner_user_idstring (uuid) | nullrequired, nullable—
slugstringrequired—
descriptionstringrequired—
instructionsstringrequired—
reference_docsReferenceDoc[]required—
versionintegerrequired—
curation_statepending | reviewed | promoted | superseded | retiredrequired—
originhuman | agent | import | derivedrequired—
use_countintegerrequired—
last_used_atstring (date-time) | nullrequired, nullable—
is_activebooleanrequired—
created_atstring (date-time)required—
updated_atstring (date-time)required—