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

# List modes

> Every mode. Only modes whose `available_invocations` includes `api` accept runs.



## OpenAPI

````yaml /api/platform/v1/openapi-kapso-agent.yaml get /kapso-agent/modes
openapi: 3.1.0
info:
  title: Kapso Agent API
  version: 0.1.0
  description: >
    Trigger runs in built-in modes with the API trigger enabled or custom modes
    with the `api` surface enabled.

    Inspect sessions, control run lifecycles, and handle approvals
    programmatically.
servers:
  - url: https://api.kapso.ai/platform/v1
    description: Production
security:
  - ApiKeyAuth: []
tags:
  - name: Agent Modes
    description: Discover the agent modes and which ones accept API runs
  - name: Agent Sessions
    description: List API sessions and inspect their runs
  - name: Agent Runs
    description: Create, poll, and control Kapso Agent runs
paths:
  /kapso-agent/modes:
    get:
      tags:
        - Agent Modes
      summary: List modes
      description: >-
        Every mode. Only modes whose `available_invocations` includes `api`
        accept runs.
      operationId: listAgentModes
      responses:
        '200':
          description: Modes
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Mode'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    Mode:
      type: object
      properties:
        mode:
          type: string
          description: Mode slug used to trigger runs
          examples:
            - api
        kind:
          type: string
          enum:
            - builtin
            - custom
        enabled:
          type: boolean
        archived:
          type: boolean
        name:
          type: string
        label:
          type: string
        description:
          type: string
        dispatch_paused:
          type: boolean
        capabilities:
          type: array
          items:
            type: string
        capability_assignments:
          type: array
          items:
            type: object
        provider_model_id:
          type:
            - string
            - 'null'
        model:
          type:
            - string
            - 'null'
          examples:
            - gpt-5.5
        reasoning_effort:
          type:
            - string
            - 'null'
          examples:
            - medium
        available_invocations:
          type: array
          description: Surfaces where the mode can be invoked
          items:
            type: string
            enum:
              - ui
              - api
              - slack
        instructions:
          type:
            - string
            - 'null'
          description: Custom modes only
        sandbox_enabled:
          type: boolean
          description: Custom modes only
        sandbox_execution:
          type:
            - string
            - 'null'
          description: Custom modes only
        sandbox_setup_command:
          type:
            - string
            - 'null'
          description: Custom modes only
        sandbox_network_mode:
          type:
            - string
            - 'null'
          description: Custom modes only
        sandbox_allowed_outbound_hosts:
          type:
            - array
            - 'null'
          items:
            type: string
          description: Custom modes only
        approval_policy:
          type:
            - object
            - 'null'
          description: Custom modes only
    ErrorResponse:
      type: object
      required:
        - error
      properties:
        error:
          type: string
          description: Human-readable error message
  responses:
    Unauthorized:
      description: Missing or invalid API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key

````