> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gc.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get skills

> List or fetch skills.

<Info>
  **Tool** `get_skills` · **Behavior** Read-only
</Info>

List or fetch skills. Pass `id` to fetch one skill including its full `content`. Otherwise returns a page of skills you can access (those you created, org-visible, shared with you, and official ones) as summaries without `content`; narrow with `q` and page with `cursor`/`limit`. Always returns a `skills` array (empty when nothing matches) and a `next_cursor` (null on the last page).

## Input parameters

<ParamField body="id" type="string (uuid)">
  Fetch one skill by id, including its full `content`. Provide either `id` or a list query (`q`/`cursor`), not both.
</ParamField>

<ParamField body="q" type="string">
  Filter the accessible skills by a case-insensitive substring of name or description. Omit to list everything accessible.
</ParamField>

<ParamField body="cursor" type="string">
  Opaque pagination cursor from a previous response's `next_cursor`. Omit for the first page; repeat any filters (e.g. `q`) alongside it.
</ParamField>

<ParamField body="limit" type="integer">
  Max items to return (default 25, max 100). Defaults to `25`.
</ParamField>

## Response

<ResponseField name="skills" type="object[]">
  <Expandable title="properties">
    <ResponseField name="id" type="string (uuid)">
      Unique skill identifier
    </ResponseField>

    <ResponseField name="name" type="string">
      Skill name
    </ResponseField>

    <ResponseField name="description" type="string | null">
      Short description of what the skill does, or null if unset
    </ResponseField>

    <ResponseField name="content" type="string">
      The skill instructions: the prompt text the model receives when the skill runs
    </ResponseField>

    <ResponseField name="visibility" type="'private' | 'organization'">
      `private` (only the creator and users it has been explicitly shared with) or `organization` (visible to everyone in the org). Official skills report `organization`.
    </ResponseField>

    <ResponseField name="is_official" type="boolean">
      Whether this is an official GC AI skill. Official skills are read-only and cannot be edited or deleted via the API.
    </ResponseField>

    <ResponseField name="files" type="object[]">
      Files attached to the skill as reference context

      <Expandable title="properties">
        <ResponseField name="id" type="string (uuid)">
          Attached file identifier
        </ResponseField>

        <ResponseField name="name" type="string">
          Attached file name
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="created_at" type="string | null">
      ISO 8601 creation timestamp
    </ResponseField>

    <ResponseField name="updated_at" type="string | null">
      ISO 8601 last-updated timestamp
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="next_cursor" type="string | null" />
