SpyBara
Go Premium

cli/resources/skills/index.md 2026-05-05 23:00 UTC to 2026-05-07 21:57 UTC

922 added, 0 removed.

2026
Wed 27 06:42 Fri 22 06:33 Wed 20 06:35 Tue 19 06:34 Mon 18 22:01 Mon 11 18:00 Thu 7 21:57 Tue 5 23:00 Sat 2 05:57

Skills

Create a new skill.

$ openai skills create

post /skills

Create a new skill.

Parameters

  • --files: optional array of string or string

    Skill files to upload (directory upload) or a single zip file.

Returns

  • skill: object { id, created_at, default_version, 4 more }

    • id: string

      Unique identifier for the skill.

    • created_at: number

      Unix timestamp (seconds) for when the skill was created.

    • default_version: string

      Default version for the skill.

    • description: string

      Description of the skill.

    • latest_version: string

      Latest version for the skill.

    • name: string

      Name of the skill.

    • object: "skill"

      The object type, which is skill.

Example

openai skills create \
  --api-key 'My API Key'

Response

{
  "id": "id",
  "created_at": 0,
  "default_version": "default_version",
  "description": "description",
  "latest_version": "latest_version",
  "name": "name",
  "object": "skill"
}

List all skills for the current project.

$ openai skills list

get /skills

List all skills for the current project.

Parameters

  • --after: optional string

    Identifier for the last item from the previous pagination request

  • --limit: optional number

    Number of items to retrieve

  • --order: optional "asc" or "desc"

    Sort order of results by timestamp. Use asc for ascending order or desc for descending order.

Returns

  • skill_list: object { data, first_id, has_more, 2 more }

    • data: array of Skill

      A list of items

      • id: string

        Unique identifier for the skill.

      • created_at: number

        Unix timestamp (seconds) for when the skill was created.

      • default_version: string

        Default version for the skill.

      • description: string

        Description of the skill.

      • latest_version: string

        Latest version for the skill.

      • name: string

        Name of the skill.

      • object: "skill"

        The object type, which is skill.

    • first_id: string

      The ID of the first item in the list.

    • has_more: boolean

      Whether there are more items available.

    • last_id: string

      The ID of the last item in the list.

    • object: "list"

      The type of object returned, must be list.

Example

openai skills list \
  --api-key 'My API Key'

Response

{
  "data": [
    {
      "id": "id",
      "created_at": 0,
      "default_version": "default_version",
      "description": "description",
      "latest_version": "latest_version",
      "name": "name",
      "object": "skill"
    }
  ],
  "first_id": "first_id",
  "has_more": true,
  "last_id": "last_id",
  "object": "list"
}

Get a skill by its ID.

$ openai skills retrieve

get /skills/{skill_id}

Get a skill by its ID.

Parameters

  • --skill-id: string

    The identifier of the skill to retrieve.

Returns

  • skill: object { id, created_at, default_version, 4 more }

    • id: string

      Unique identifier for the skill.

    • created_at: number

      Unix timestamp (seconds) for when the skill was created.

    • default_version: string

      Default version for the skill.

    • description: string

      Description of the skill.

    • latest_version: string

      Latest version for the skill.

    • name: string

      Name of the skill.

    • object: "skill"

      The object type, which is skill.

Example

openai skills retrieve \
  --api-key 'My API Key' \
  --skill-id skill_123

Response

{
  "id": "id",
  "created_at": 0,
  "default_version": "default_version",
  "description": "description",
  "latest_version": "latest_version",
  "name": "name",
  "object": "skill"
}

Update the default version pointer for a skill.

$ openai skills update

post /skills/{skill_id}

Update the default version pointer for a skill.

Parameters

  • --skill-id: string

    The identifier of the skill.

  • --default-version: string

    The skill version number to set as default.

Returns

  • skill: object { id, created_at, default_version, 4 more }

    • id: string

      Unique identifier for the skill.

    • created_at: number

      Unix timestamp (seconds) for when the skill was created.

    • default_version: string

      Default version for the skill.

    • description: string

      Description of the skill.

    • latest_version: string

      Latest version for the skill.

    • name: string

      Name of the skill.

    • object: "skill"

      The object type, which is skill.

Example

openai skills update \
  --api-key 'My API Key' \
  --skill-id skill_123 \
  --default-version default_version

Response

{
  "id": "id",
  "created_at": 0,
  "default_version": "default_version",
  "description": "description",
  "latest_version": "latest_version",
  "name": "name",
  "object": "skill"
}

Delete a skill by its ID.

$ openai skills delete

delete /skills/{skill_id}

Delete a skill by its ID.

Parameters

  • --skill-id: string

    The identifier of the skill to delete.

Returns

  • deleted_skill: object { id, deleted, object }

    • id: string

    • deleted: boolean

    • object: "skill.deleted"

Example

openai skills delete \
  --api-key 'My API Key' \
  --skill-id skill_123

Response

{
  "id": "id",
  "deleted": true,
  "object": "skill.deleted"
}

Domain Types

Deleted Skill

  • deleted_skill: object { id, deleted, object }

    • id: string

    • deleted: boolean

    • object: "skill.deleted"

Skill

  • skill: object { id, created_at, default_version, 4 more }

    • id: string

      Unique identifier for the skill.

    • created_at: number

      Unix timestamp (seconds) for when the skill was created.

    • default_version: string

      Default version for the skill.

    • description: string

      Description of the skill.

    • latest_version: string

      Latest version for the skill.

    • name: string

      Name of the skill.

    • object: "skill"

      The object type, which is skill.

Skill List

  • skill_list: object { data, first_id, has_more, 2 more }

    • data: array of Skill

      A list of items

      • id: string

        Unique identifier for the skill.

      • created_at: number

        Unix timestamp (seconds) for when the skill was created.

      • default_version: string

        Default version for the skill.

      • description: string

        Description of the skill.

      • latest_version: string

        Latest version for the skill.

      • name: string

        Name of the skill.

      • object: "skill"

        The object type, which is skill.

    • first_id: string

      The ID of the first item in the list.

    • has_more: boolean

      Whether there are more items available.

    • last_id: string

      The ID of the last item in the list.

    • object: "list"

      The type of object returned, must be list.

Content

Download a skill zip bundle by its ID.

$ openai skills:content retrieve

get /skills/{skill_id}/content

Download a skill zip bundle by its ID.

Parameters

  • --skill-id: string

    The identifier of the skill to download.

Returns

  • unnamed_schema_4: file path

Example

openai skills:content retrieve \
  --api-key 'My API Key' \
  --skill-id skill_123

Versions

Create a new immutable skill version.

$ openai skills:versions create

post /skills/{skill_id}/versions

Create a new immutable skill version.

Parameters

  • --skill-id: string

    The identifier of the skill to version.

  • --default: optional boolean

    Whether to set this version as the default.

  • --files: optional array of string or string

    Skill files to upload (directory upload) or a single zip file.

Returns

  • skill_version: object { id, created_at, description, 4 more }

    • id: string

      Unique identifier for the skill version.

    • created_at: number

      Unix timestamp (seconds) for when the version was created.

    • description: string

      Description of the skill version.

    • name: string

      Name of the skill version.

    • object: "skill.version"

      The object type, which is skill.version.

    • skill_id: string

      Identifier of the skill for this version.

    • version: string

      Version number for this skill.

Example

openai skills:versions create \
  --api-key 'My API Key' \
  --skill-id skill_123

Response

{
  "id": "id",
  "created_at": 0,
  "description": "description",
  "name": "name",
  "object": "skill.version",
  "skill_id": "skill_id",
  "version": "version"
}

List skill versions for a skill.

$ openai skills:versions list

get /skills/{skill_id}/versions

List skill versions for a skill.

Parameters

  • --skill-id: string

    The identifier of the skill.

  • --after: optional string

    The skill version ID to start after.

  • --limit: optional number

    Number of versions to retrieve.

  • --order: optional "asc" or "desc"

    Sort order of results by version number.

Returns

  • skill_version_list: object { data, first_id, has_more, 2 more }

    • data: array of SkillVersion

      A list of items

      • id: string

        Unique identifier for the skill version.

      • created_at: number

        Unix timestamp (seconds) for when the version was created.

      • description: string

        Description of the skill version.

      • name: string

        Name of the skill version.

      • object: "skill.version"

        The object type, which is skill.version.

      • skill_id: string

        Identifier of the skill for this version.

      • version: string

        Version number for this skill.

    • first_id: string

      The ID of the first item in the list.

    • has_more: boolean

      Whether there are more items available.

    • last_id: string

      The ID of the last item in the list.

    • object: "list"

      The type of object returned, must be list.

Example

openai skills:versions list \
  --api-key 'My API Key' \
  --skill-id skill_123

Response

{
  "data": [
    {
      "id": "id",
      "created_at": 0,
      "description": "description",
      "name": "name",
      "object": "skill.version",
      "skill_id": "skill_id",
      "version": "version"
    }
  ],
  "first_id": "first_id",
  "has_more": true,
  "last_id": "last_id",
  "object": "list"
}

Get a specific skill version.

$ openai skills:versions retrieve

get /skills/{skill_id}/versions/{version}

Get a specific skill version.

Parameters

  • --skill-id: string

    The identifier of the skill.

  • --version: string

    The version number to retrieve.

Returns

  • skill_version: object { id, created_at, description, 4 more }

    • id: string

      Unique identifier for the skill version.

    • created_at: number

      Unix timestamp (seconds) for when the version was created.

    • description: string

      Description of the skill version.

    • name: string

      Name of the skill version.

    • object: "skill.version"

      The object type, which is skill.version.

    • skill_id: string

      Identifier of the skill for this version.

    • version: string

      Version number for this skill.

Example

openai skills:versions retrieve \
  --api-key 'My API Key' \
  --skill-id skill_123 \
  --version version

Response

{
  "id": "id",
  "created_at": 0,
  "description": "description",
  "name": "name",
  "object": "skill.version",
  "skill_id": "skill_id",
  "version": "version"
}

Delete a skill version.

$ openai skills:versions delete

delete /skills/{skill_id}/versions/{version}

Delete a skill version.

Parameters

  • --skill-id: string

    The identifier of the skill.

  • --version: string

    The skill version number.

Returns

  • deleted_skill_version: object { id, deleted, object, version }

    • id: string

    • deleted: boolean

    • object: "skill.version.deleted"

    • version: string

      The deleted skill version.

Example

openai skills:versions delete \
  --api-key 'My API Key' \
  --skill-id skill_123 \
  --version version

Response

{
  "id": "id",
  "deleted": true,
  "object": "skill.version.deleted",
  "version": "version"
}

Domain Types

Deleted Skill Version

  • deleted_skill_version: object { id, deleted, object, version }

    • id: string

    • deleted: boolean

    • object: "skill.version.deleted"

    • version: string

      The deleted skill version.

Skill Version

  • skill_version: object { id, created_at, description, 4 more }

    • id: string

      Unique identifier for the skill version.

    • created_at: number

      Unix timestamp (seconds) for when the version was created.

    • description: string

      Description of the skill version.

    • name: string

      Name of the skill version.

    • object: "skill.version"

      The object type, which is skill.version.

    • skill_id: string

      Identifier of the skill for this version.

    • version: string

      Version number for this skill.

Skill Version List

  • skill_version_list: object { data, first_id, has_more, 2 more }

    • data: array of SkillVersion

      A list of items

      • id: string

        Unique identifier for the skill version.

      • created_at: number

        Unix timestamp (seconds) for when the version was created.

      • description: string

        Description of the skill version.

      • name: string

        Name of the skill version.

      • object: "skill.version"

        The object type, which is skill.version.

      • skill_id: string

        Identifier of the skill for this version.

      • version: string

        Version number for this skill.

    • first_id: string

      The ID of the first item in the list.

    • has_more: boolean

      Whether there are more items available.

    • last_id: string

      The ID of the last item in the list.

    • object: "list"

      The type of object returned, must be list.

Content

Download a skill version zip bundle.

$ openai skills:versions:content retrieve

get /skills/{skill_id}/versions/{version}/content

Download a skill version zip bundle.

Parameters

  • --skill-id: string

    The identifier of the skill.

  • --version: string

    The skill version number.

Returns

  • unnamed_schema_5: file path

Example

openai skills:versions:content retrieve \
  --api-key 'My API Key' \
  --skill-id skill_123 \
  --version version