Agent Skills
The Agent Skills operations of the Hub REST API (9 operations).
bearerAuthAuthorizationBearer <API key>Pod API key (Bearer) issued via /api/hub/setup/agent or pod admin tooling. Browser/web clients may use the X-Session-Token header instead. See GET /api/hub/auth/status to introspect the calling key.
topic?stringq?stringtag?stringworkspaceId?stringuuidsystem?string'true' to list only seeded system/* instruction skills
limit?stringoffset?stringSkills
application/json- response
skills*array<>total*numbercurl -X GET 'https://pod.example.com/api/hub/agent-skills/list'{ "skills": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "slug": "string", "name": "string", "description": "string", "topics": [ "string" ], "body": "string", "source": "string", "author": "string", "version": "string", "tags": [ "string" ], "teachesTools": [ "string" ], "skillGroup": "string", "alwaysOn": true, "createdAt": "string", "updatedAt": "string", "match": { "terms": [ "string" ], "fields": [ "string" ] } } ], "total": 0}bearerAuthAuthorizationBearer <API key>Pod API key (Bearer) issued via /api/hub/setup/agent or pod admin tooling. Browser/web clients may use the X-Session-Token header instead. See GET /api/hub/auth/status to introspect the calling key.
slug*string1 <= lengthworkspaceId?stringuuidSkill
application/json- response
id*stringuuidslug*stringname*stringdescription*string|nulltopics*array<string>body*string|nullsource*string|nullauthor*string|nullversion*string|nulltags*array<string>teachesTools*array<string>skillGroup*string|nullalwaysOn*booleancreatedAt*stringupdatedAt*stringmatch?curl -X GET 'https://pod.example.com/api/hub/agent-skills/get?slug=string'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "slug": "string", "name": "string", "description": "string", "topics": [ "string" ], "body": "string", "source": "string", "author": "string", "version": "string", "tags": [ "string" ], "teachesTools": [ "string" ], "skillGroup": "string", "alwaysOn": true, "createdAt": "string", "updatedAt": "string", "match": { "terms": [ "string" ], "fields": [ "string" ] }}bearerAuthAuthorizationBearer <API key>Pod API key (Bearer) issued via /api/hub/setup/agent or pod admin tooling. Browser/web clients may use the X-Session-Token header instead. See GET /api/hub/auth/status to introspect the calling key.
application/json- body
slug*string1 <= length <= 100name*string1 <= length <= 200description?stringlength <= 500topics?array<string>body*string1 <= lengthsource?stringauthor?stringversion?stringtags?array<string>Created skill
application/json- response
id*stringuuidslug*stringname*stringdescription*string|nulltopics*array<string>body*string|nullsource*string|nullauthor*string|nullversion*string|nulltags*array<string>teachesTools*array<string>skillGroup*string|nullalwaysOn*booleancreatedAt*stringupdatedAt*stringmatch?curl -X POST 'https://pod.example.com/api/hub/agent-skills/create' \ -H 'Content-Type: application/json' \ -d '{ "slug": "string", "name": "string", "body": "string"}'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "slug": "string", "name": "string", "description": "string", "topics": [ "string" ], "body": "string", "source": "string", "author": "string", "version": "string", "tags": [ "string" ], "teachesTools": [ "string" ], "skillGroup": "string", "alwaysOn": true, "createdAt": "string", "updatedAt": "string", "match": { "terms": [ "string" ], "fields": [ "string" ] }}bearerAuthAuthorizationBearer <API key>Pod API key (Bearer) issued via /api/hub/setup/agent or pod admin tooling. Browser/web clients may use the X-Session-Token header instead. See GET /api/hub/auth/status to introspect the calling key.
slug*string1 <= lengthapplication/json- body
name?string1 <= length <= 200description?stringlength <= 500body?string1 <= lengthUpdated skill
application/json- response
id*stringuuidslug*stringname*stringdescription*string|nulltopics*array<string>body*string|nullsource*string|nullauthor*string|nullversion*string|nulltags*array<string>teachesTools*array<string>skillGroup*string|nullalwaysOn*booleancreatedAt*stringupdatedAt*stringmatch?curl -X PATCH 'https://pod.example.com/api/hub/agent-skills/update?slug=string' \ -H 'Content-Type: application/json' \ -d '{}'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "slug": "string", "name": "string", "description": "string", "topics": [ "string" ], "body": "string", "source": "string", "author": "string", "version": "string", "tags": [ "string" ], "teachesTools": [ "string" ], "skillGroup": "string", "alwaysOn": true, "createdAt": "string", "updatedAt": "string", "match": { "terms": [ "string" ], "fields": [ "string" ] }}bearerAuthAuthorizationBearer <API key>Pod API key (Bearer) issued via /api/hub/setup/agent or pod admin tooling. Browser/web clients may use the X-Session-Token header instead. See GET /api/hub/auth/status to introspect the calling key.
id*stringuuidDeleted
curl -X DELETE 'https://pod.example.com/api/hub/agent-skills/delete?id=497f6eca-6276-4993-bfeb-53cbbbba6f08'bearerAuthAuthorizationBearer <API key>Pod API key (Bearer) issued via /api/hub/setup/agent or pod admin tooling. Browser/web clients may use the X-Session-Token header instead. See GET /api/hub/auth/status to introspect the calling key.
userId?stringworkspaceId?stringstatus?string"active""inactive""error""all"approved?string"true""false"Executable skills
application/json- response
[index: integer]?curl -X GET 'https://pod.example.com/api/hub/agent-skills/executable'[ { "id": "string", "name": "string", "description": "string", "code": "string", "body": "string", "parameters": { "property1": null, "property2": null }, "category": "action", "status": "active", "approved": true, "workspaceId": "string", "createdAt": "string", "updatedAt": "string", "property1": null, "property2": null }]bearerAuthAuthorizationBearer <API key>Pod API key (Bearer) issued via /api/hub/setup/agent or pod admin tooling. Browser/web clients may use the X-Session-Token header instead. See GET /api/hub/auth/status to introspect the calling key.
application/json- body
userId*stringname*stringdescription?stringcode*stringparameters?category?SkillCategory"action""context""utility""custom"workspaceId?stringCreated executable skill
application/json- response
id*stringname*stringdescription?string|nullcode?stringbody*string|nullparameters?category?SkillCategory"action""context""utility""custom"status?string"active""inactive""error"approved?booleanworkspaceId?string|nullcreatedAt?string|updatedAt?string|[key: string]?unknowncurl -X POST 'https://pod.example.com/api/hub/agent-skills/executable' \ -H 'Content-Type: application/json' \ -d '{ "userId": "string", "name": "string", "code": "string"}'{ "id": "string", "name": "string", "description": "string", "code": "string", "body": "string", "parameters": { "property1": null, "property2": null }, "category": "action", "status": "active", "approved": true, "workspaceId": "string", "createdAt": "string", "updatedAt": "string", "property1": null, "property2": null}bearerAuthAuthorizationBearer <API key>Pod API key (Bearer) issued via /api/hub/setup/agent or pod admin tooling. Browser/web clients may use the X-Session-Token header instead. See GET /api/hub/auth/status to introspect the calling key.
id*stringuserId?stringExecutable skill
application/json- response
id*stringname*stringdescription?string|nullcode?stringbody*string|nullparameters?category?SkillCategory"action""context""utility""custom"status?string"active""inactive""error"approved?booleanworkspaceId?string|nullcreatedAt?string|updatedAt?string|[key: string]?unknowncurl -X GET 'https://pod.example.com/api/hub/agent-skills/executable/string'{ "id": "string", "name": "string", "description": "string", "code": "string", "body": "string", "parameters": { "property1": null, "property2": null }, "category": "action", "status": "active", "approved": true, "workspaceId": "string", "createdAt": "string", "updatedAt": "string", "property1": null, "property2": null}bearerAuthAuthorizationBearer <API key>Pod API key (Bearer) issued via /api/hub/setup/agent or pod admin tooling. Browser/web clients may use the X-Session-Token header instead. See GET /api/hub/auth/status to introspect the calling key.
application/json- body
userId*string1 <= lengthskill*documents?array<>[]Imported skill + documents
application/json- response
skill*documents*array<>curl -X POST 'https://pod.example.com/api/hub/agent-skills/import' \ -H 'Content-Type: application/json' \ -d '{ "userId": "string", "skill": { "name": "string", "slug": "string" }}'{ "skill": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "slug": "string", "name": "string", "description": "string", "topics": [ "string" ], "body": "string", "source": "string", "author": "string", "version": "string", "tags": [ "string" ], "teachesTools": [ "string" ], "skillGroup": "string", "alwaysOn": true, "createdAt": "string", "updatedAt": "string", "match": { "terms": [ "string" ], "fields": [ "string" ] } }, "documents": [ { "id": "string", "title": "string" } ]}