> ## Documentation Index
> Fetch the complete documentation index at: https://test-8862363a-tembo-docs-commit-attribution-preference.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Create an agent

> Create an agent from instructions, a template, or another agent. sourceAgentId cannot be combined with other fields. Template creation accepts only templateName, name, and triggers; creation from scratch requires name.



## OpenAPI

````yaml https://api.tembo.io/public-api/openapi/public post /v1/agents
openapi: 3.1.0
info:
  title: Tembo Public API
  description: >-
    Manage agents, sessions, repositories, and organization resources with the
    Tembo API.
  version: 1.0.0
servers:
  - url: https://api.tembo.io
    description: Tembo API
  - url: https://{deployment-origin}/api/public-api
    description: Self-hosted Tembo
    variables:
      deployment-origin:
        default: tembo.example.com
        description: Hostname of your self-hosted Tembo deployment
security: []
paths:
  /v1/agents:
    post:
      tags:
        - Agents
      summary: Create an agent
      description: >-
        Create an agent from instructions, a template, or another agent.
        sourceAgentId cannot be combined with other fields. Template creation
        accepts only templateName, name, and triggers; creation from scratch
        requires name.
      operationId: createAgent
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 200
                instructions:
                  $ref: '#/components/schemas/TipTapDocument'
                  description: >-
                    Instructions for the agent as a rich-text document. Mentions
                    can reference integrations used by the agent.
                mcpServers:
                  type: array
                  items:
                    type: string
                    minLength: 1
                    maxLength: 200
                  maxItems: 100
                agent:
                  type: string
                  minLength: 1
                  maxLength: 200
                agentOptions:
                  $ref: '#/components/schemas/AgentOptionsInput'
                sandboxSize:
                  type:
                    - string
                    - 'null'
                  enum:
                    - nano
                    - micro
                    - small
                    - medium
                    - large
                    - xl
                    - xxl
                    - ultra
                    - null
                projectId:
                  anyOf:
                    - type: string
                      format: uuid
                    - type: string
                      const: tembo
                    - type: 'null'
                artifactType:
                  type:
                    - string
                    - 'null'
                  enum:
                    - PullRequest
                    - ToolCall
                    - Plan
                    - Response
                    - File
                    - Service
                    - Source
                    - null
                autoDetectRepositories:
                  type: boolean
                repositoryIds:
                  type: array
                  items:
                    type: string
                    format: uuid
                  maxItems: 250
                triggers:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        minLength: 1
                        maxLength: 200
                      integrationType:
                        type: string
                        minLength: 1
                        maxLength: 100
                      integrationId:
                        type: string
                        format: uuid
                      filters:
                        $ref: '#/components/schemas/TriggerFilters'
                    required:
                      - name
                    additionalProperties: false
                  maxItems: 50
                schedules:
                  type: array
                  items:
                    type: object
                    properties:
                      cron:
                        type: string
                        minLength: 1
                        maxLength: 500
                    required:
                      - cron
                    additionalProperties: false
                  maxItems: 50
                templateName:
                  type: string
                  enum:
                    - addTestCoverage
                    - addTestCoverageFromJira
                    - autoAgentsMdMaintainer
                    - autoDocsMaintainer
                    - commitOfTheDay
                    - customerHealthMonitoringAgent
                    - deadCodeCleanup
                    - dependencySweepAgent
                    - autoFixCi
                    - autoFixSentryError
                    - dailySlackChangelog
                    - duplicateTicketDetector
                    - fixBugsReportedInSlack
                    - enrichGithubIssue
                    - enrichJiraIssue
                    - enrichLinearIssue
                    - hubspotCallTaskCoach
                    - hubspotEmailTaskDrafter
                    - hubspotTicketToLinearBug
                    - prDescription
                    - prReview
                    - pagePerformanceReport
                    - prioritizeSentry
                    - productFaqAgent
                    - productFinanceAgent
                    - queryPerformanceReport
                    - securityFixFromJira
                    - securityScan
                    - skillProgressionMap
                    - slackChannelListener
                    - slopCop
                    - staleCodeComments
                    - stalePullRequestNotifier
                    - summarizeChangesDaily
                    - triageNewJiraBug
                sourceAgentId:
                  type: string
                  format: uuid
              additionalProperties: false
      responses:
        '201':
          description: Create an agent
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    format: uuid
                  name:
                    type: string
                  key:
                    type:
                      - string
                      - 'null'
                  sandboxSize:
                    type:
                      - string
                      - 'null'
                    enum:
                      - nano
                      - micro
                      - small
                      - medium
                      - large
                      - xl
                      - xxl
                      - ultra
                      - null
                  projectId:
                    type:
                      - string
                      - 'null'
                  templateId:
                    type:
                      - string
                      - 'null'
                  script:
                    type:
                      - string
                      - 'null'
                  artifactType:
                    type:
                      - string
                      - 'null'
                    enum:
                      - PullRequest
                      - ToolCall
                      - Plan
                      - Response
                      - File
                      - Service
                      - Source
                      - null
                  autoDetectRepositories:
                    type: boolean
                    default: true
                  createdAt:
                    type: string
                    format: date-time
                  updatedAt:
                    type: string
                    format: date-time
                  archivedAt:
                    type:
                      - string
                      - 'null'
                    format: date-time
                  enabledAt:
                    type:
                      - string
                      - 'null'
                    format: date-time
                  organizationId:
                    type:
                      - string
                      - 'null'
                    minLength: 1
                    maxLength: 255
                  organizationName:
                    type:
                      - string
                      - 'null'
                  createdBy:
                    type:
                      - string
                      - 'null'
                  instructions:
                    oneOf:
                      - $ref: '#/components/schemas/TipTapDocument'
                        description: >-
                          Instructions for the agent as a rich-text document.
                          Mentions can reference integrations used by the agent.
                      - type: 'null'
                  agent:
                    type:
                      - string
                      - 'null'
                    description: >-
                      Runtime and model selection key; not the ID of an agent
                      resource.
                  agentOptions:
                    $ref: '#/components/schemas/AgentOptionsInput'
                  mcpServers:
                    type: array
                    items:
                      type: string
                      minLength: 1
                      maxLength: 200
                    maxItems: 100
                    description: >-
                      Selected MCP server identifiers, including built-in server
                      keys.
                  userState:
                    oneOf:
                      - $ref: '#/components/schemas/AgentState'
                      - type: 'null'
                  codeRepositories:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          format: uuid
                        name:
                          type: string
                        owner:
                          type:
                            - string
                            - 'null'
                        integrationId:
                          type: string
                          format: uuid
                        integrationType:
                          type: string
                      required:
                        - id
                        - name
                        - owner
                        - integrationId
                        - integrationType
                      additionalProperties: false
                    maxItems: 250
                  lastRun:
                    type:
                      - object
                      - 'null'
                    properties:
                      id:
                        type: string
                        format: uuid
                      sessionId:
                        type:
                          - string
                          - 'null'
                      status:
                        type: string
                      createdAt:
                        type: string
                        format: date-time
                      updatedAt:
                        type: string
                        format: date-time
                      durationMs:
                        type: integer
                        description: Measured duration of the agent run in milliseconds.
                      errorMessage:
                        type:
                          - string
                          - 'null'
                    required:
                      - id
                      - sessionId
                      - status
                      - createdAt
                      - updatedAt
                      - durationMs
                      - errorMessage
                    additionalProperties: false
                  runCount:
                    type: integer
                    minimum: 0
                  scheduleCount:
                    type: integer
                    minimum: 0
                  triggerCount:
                    type: integer
                    minimum: 0
                  hasPausedSchedule:
                    type: boolean
                  hasPausedTrigger:
                    type: boolean
                  integrationIds:
                    type: array
                    items:
                      type: string
                      format: uuid
                  integrationTypes:
                    type: array
                    items:
                      type: string
                required:
                  - id
                  - name
                  - key
                  - sandboxSize
                  - projectId
                  - templateId
                  - script
                  - artifactType
                  - autoDetectRepositories
                  - createdAt
                  - updatedAt
                  - archivedAt
                  - enabledAt
                  - organizationId
                  - organizationName
                  - createdBy
                  - instructions
                  - agent
                  - agentOptions
                  - mcpServers
                  - userState
                  - codeRepositories
                  - lastRun
                  - runCount
                  - scheduleCount
                  - triggerCount
                  - hasPausedSchedule
                  - hasPausedTrigger
                  - integrationIds
                  - integrationTypes
                additionalProperties: false
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                additionalProperties: false
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                additionalProperties: false
        '409':
          description: Resource conflict
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                additionalProperties: false
        '500':
          description: Agent operation failed
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                additionalProperties: false
      security:
        - apiKey: []
components:
  schemas:
    TipTapDocument:
      anyOf:
        - $ref: '#/components/schemas/TipTapNode'
        - $ref: '#/components/schemas/CustomDocument'
      description: >-
        Rich-text document containing text, formatting, images, and mentions. A
        document typically has a "doc" root with nested content nodes.
      example:
        type: doc
        content:
          - type: paragraph
            content:
              - type: text
                text: Hello
    AgentOptionsInput:
      anyOf:
        - type: object
          properties:
            reasoningLevel:
              type: string
              minLength: 1
              maxLength: 100
            mode:
              type: string
              enum:
                - normal
                - planning
            speed:
              type: string
              enum:
                - normal
                - fast
            goal:
              type: object
              properties:
                enabled:
                  type: boolean
                objective:
                  type: string
                  maxLength: 100000
              additionalProperties: false
          additionalProperties: true
        - $ref: '#/components/schemas/RuntimeAgentOptions'
      description: >-
        Execution settings for the selected agent runtime, including
        provider-specific options.
    TriggerFilters:
      anyOf:
        - allOf:
            - $ref: '#/components/schemas/AtlassianIssueAddedToBoardFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/AtlassianIssueAssignedToUserFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/AtlassianIssueCreatedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/AtlassianIssueLabelAddedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/AtlassianIssueStatusChangedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/AtlassianIssueUpdatedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/BitbucketPullRequestOpenedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GithubCreateFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GithubIssueClosedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GithubIssueCommentCreatedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GithubIssueOpenedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GithubPullRequestClosedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GithubPullRequestMergedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GithubPullRequestOpenedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GithubPullRequestReadyForReviewFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GithubReleasePublishedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GithubPullRequestSynchronizeFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GithubTemboPullRequestOpenedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GithubWorkflowRunFailedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GitlabBotMergeRequestCommentFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GitlabIssueClosedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GitlabIssueOpenedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GitlabMergeRequestClosedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GitlabMergeRequestMergedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GitlabMergeRequestOpenedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GitlabMergeRequestUpdatedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GitlabPipelineFailedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/GitlabRefCreatedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/LinearIssueCreateFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/LinearIssueLabelAddedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/LinearIssueStatusChangedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/LinearIssueUpdatedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/SentryIssueCreatedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/SlackMessageReactionAddedFilters'
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/SlackMessageSentInChannelFilters'
          additionalProperties: {}
        - type: object
          properties:
            spaces:
              type: array
              items:
                type: string
              description: >-
                Only trigger if the page is in a space with one of these names
                or IDs
            titleContains:
              type: array
              items:
                type: string
              description: Only trigger if the page title contains one of these substrings
          additionalProperties: {}
        - type: object
          properties:
            spaces:
              type: array
              items:
                type: string
              description: >-
                Only trigger if the page is in a space with one of these names
                or IDs
            titleContains:
              type: array
              items:
                type: string
              description: Only trigger if the page title contains one of these substrings
            previousSpaces:
              type: array
              items:
                type: string
              description: >-
                Only trigger if the page was moved from a space with one of
                these names or IDs
          additionalProperties: {}
        - type: object
          properties:
            spaces:
              type: array
              items:
                type: string
              description: >-
                Only trigger if the page is in a space with one of these names
                or IDs
            titleContains:
              type: array
              items:
                type: string
              description: Only trigger if the page title contains one of these substrings
            locations:
              type: array
              items:
                type: string
                enum:
                  - footer
                  - inline
              description: Only trigger for footer comments, inline comments, or both
          additionalProperties: {}
        - type: object
          properties:
            spaces:
              type: array
              items:
                type: string
              description: >-
                Only trigger if the page is in a space with one of these names
                or IDs
            titleContains:
              type: array
              items:
                type: string
              description: Only trigger if the page title contains one of these substrings
            labels:
              type: array
              items:
                type: string
              description: Only trigger if the added label has one of these values
            commentContains:
              type: array
              items:
                type: string
              description: Only trigger if the comment contains one of these substrings
          additionalProperties: {}
        - type: object
          properties:
            spaces:
              type: array
              items:
                type: string
              description: >-
                Only trigger if the page is in a space with one of these names
                or IDs
            titleContains:
              type: array
              items:
                type: string
              description: Only trigger if the page title contains one of these substrings
            labels:
              type: array
              items:
                type: string
              description: Only trigger if the removed label has one of these values
            commentContains:
              type: array
              items:
                type: string
              description: Only trigger if the comment contains one of these substrings
          additionalProperties: {}
        - allOf:
            - $ref: '#/components/schemas/EmptyTriggerFilters'
          additionalProperties: {}
      description: >-
        Conditions that determine whether the selected integration event starts
        the agent. Available fields depend on the integration and event type.
    AgentState:
      type: object
      additionalProperties: {}
      description: >-
        User-defined state keyed by name. Values may be any JSON value,
        including nested objects and arrays. No application-specific keys are
        required.
    TipTapNode:
      anyOf:
        - oneOf:
            - type: object
              properties:
                text:
                  type: string
                  maxLength: 1000000
                marks:
                  type: array
                  items:
                    anyOf:
                      - $ref: '#/components/schemas/TipTapLinkMark'
                      - $ref: '#/components/schemas/TipTapMark'
                  maxItems: 1000
                type:
                  type: string
                  const: image
                attrs:
                  $ref: '#/components/schemas/TipTapImageAttributes'
                content:
                  type: array
                  items:
                    $ref: '#/components/schemas/TipTapNode'
                  maxItems: 10000
              required:
                - type
              additionalProperties: {}
            - type: object
              properties:
                text:
                  type: string
                  maxLength: 1000000
                marks:
                  type: array
                  items:
                    anyOf:
                      - $ref: '#/components/schemas/TipTapLinkMark'
                      - $ref: '#/components/schemas/TipTapMark'
                  maxItems: 1000
                type:
                  type: string
                  const: mention
                attrs:
                  $ref: '#/components/schemas/TipTapMentionAttributes'
                content:
                  type: array
                  items:
                    $ref: '#/components/schemas/TipTapNode'
                  maxItems: 10000
              required:
                - type
              additionalProperties: {}
            - type: object
              properties:
                text:
                  type: string
                  maxLength: 1000000
                marks:
                  type: array
                  items:
                    anyOf:
                      - $ref: '#/components/schemas/TipTapLinkMark'
                      - $ref: '#/components/schemas/TipTapMark'
                  maxItems: 1000
                type:
                  type: string
                  const: heading
                attrs:
                  type: object
                  properties:
                    level:
                      type: integer
                      minimum: 1
                      maximum: 6
                  additionalProperties: {}
                content:
                  type: array
                  items:
                    $ref: '#/components/schemas/TipTapNode'
                  maxItems: 10000
              required:
                - type
              additionalProperties: {}
            - type: object
              properties:
                text:
                  type: string
                  maxLength: 1000000
                marks:
                  type: array
                  items:
                    anyOf:
                      - $ref: '#/components/schemas/TipTapLinkMark'
                      - $ref: '#/components/schemas/TipTapMark'
                  maxItems: 1000
                type:
                  type: string
                  const: orderedList
                attrs:
                  type: object
                  properties:
                    start:
                      type: integer
                    type:
                      type:
                        - string
                        - 'null'
                  additionalProperties: {}
                content:
                  type: array
                  items:
                    $ref: '#/components/schemas/TipTapNode'
                  maxItems: 10000
              required:
                - type
              additionalProperties: {}
            - type: object
              properties:
                text:
                  type: string
                  maxLength: 1000000
                marks:
                  type: array
                  items:
                    anyOf:
                      - $ref: '#/components/schemas/TipTapLinkMark'
                      - $ref: '#/components/schemas/TipTapMark'
                  maxItems: 1000
                type:
                  type: string
                  const: taskItem
                attrs:
                  type: object
                  properties:
                    checked:
                      type: boolean
                  additionalProperties: {}
                content:
                  type: array
                  items:
                    $ref: '#/components/schemas/TipTapNode'
                  maxItems: 10000
              required:
                - type
              additionalProperties: {}
            - type: object
              properties:
                text:
                  type: string
                  maxLength: 1000000
                marks:
                  type: array
                  items:
                    anyOf:
                      - $ref: '#/components/schemas/TipTapLinkMark'
                      - $ref: '#/components/schemas/TipTapMark'
                  maxItems: 1000
                type:
                  type: string
                  const: codeBlock
                attrs:
                  type: object
                  properties:
                    language:
                      type:
                        - string
                        - 'null'
                  additionalProperties: {}
                content:
                  type: array
                  items:
                    $ref: '#/components/schemas/TipTapNode'
                  maxItems: 10000
              required:
                - type
              additionalProperties: {}
        - $ref: '#/components/schemas/TipTapContentNode'
    CustomDocument:
      type: object
      additionalProperties: {}
      description: Rich-text content with custom document properties and node attributes.
    RuntimeAgentOptions:
      type: object
      additionalProperties: {}
      description: Runtime-specific execution settings and provider extensions.
    AtlassianIssueAddedToBoardFilters:
      type: object
      properties:
        projects:
          type: array
          items:
            type: string
          description: Only trigger if the issue is in one of the specified projects
        boards:
          type: array
          items:
            type: string
          description: Only trigger if the issue is on one of the specified boards
        statuses:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the issue was moved to one of the specified statuses
            (board columns)
        assignedTo:
          type: array
          items:
            type: string
          description: Only trigger if the issue is assigned to one of the specified users
        labels:
          type: array
          items:
            type: string
          description: Only trigger if the issue has at least one of the specified labels
        includeNewIssues:
          type: boolean
          description: Also trigger for newly created issues (not just status changes)
    AtlassianIssueAssignedToUserFilters:
      type: object
      properties:
        projects:
          type: array
          items:
            type: string
          description: Only trigger if the issue is in one of the specified projects
        assignedTo:
          type: array
          items:
            type: string
          description: Only trigger if the issue is assigned to one of the specified users
        labels:
          type: array
          items:
            type: string
          description: Only trigger if the issue has at least one of the specified labels
        includeNewIssues:
          type: boolean
          description: Also trigger for newly created issues that are already assigned
    AtlassianIssueCreatedFilters:
      type: object
      properties:
        projects:
          type: array
          items:
            type: string
          description: Only trigger if the issue is in one of the specified projects
        issueTypes:
          type: array
          items:
            type: string
          description: >-
            Only trigger for the specified issue types, such as Story, Bug, or
            Sub-task.
        assignedTo:
          type: array
          items:
            type: string
          description: Only trigger if the issue is assigned to one of the specified users
        labels:
          type: array
          items:
            type: string
          description: Only trigger if the issue has at least one of the specified labels
    AtlassianIssueLabelAddedFilters:
      type: object
      properties:
        labels:
          type: array
          items:
            type: string
          description: Only trigger if one of the specified labels was added
    AtlassianIssueStatusChangedFilters:
      type: object
      properties:
        projects:
          type: array
          items:
            type: string
          description: Only trigger if the issue is in one of the specified projects
        statuses:
          type: array
          items:
            type: string
          description: Only trigger if the issue was moved to one of the specified statuses
        previousStatuses:
          type: array
          items:
            type: string
          description: >-
            Only trigger when the issue changes from one of the specified
            previous statuses.
        issueTypes:
          type: array
          items:
            type: string
          description: >-
            Only trigger for the specified issue types, such as Story, Bug, or
            Sub-task.
        assignedTo:
          type: array
          items:
            type: string
          description: Only trigger if the issue is assigned to one of the specified users
        labels:
          type: array
          items:
            type: string
          description: Only trigger if the issue has at least one of the specified labels
    AtlassianIssueUpdatedFilters:
      type: object
      properties:
        projects:
          type: array
          items:
            type: string
          description: Only trigger if the issue is in one of the specified projects
        issueTypes:
          type: array
          items:
            type: string
          description: >-
            Only trigger for the specified issue types, such as Story, Bug, or
            Sub-task.
        assignedTo:
          type: array
          items:
            type: string
          description: Only trigger if the issue is assigned to one of the specified users
        labels:
          type: array
          items:
            type: string
          description: Only trigger if the issue has at least one of the specified labels
    BitbucketPullRequestOpenedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the pull request is in one of the repositories
        openedBy:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the pull request was opened by one of the specified
            users
        temboPrs:
          type: boolean
          description: Enable agent for Tembo-created pull requests (disabled by default)
    GithubCreateFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
        refType:
          type: array
          items:
            type: string
            enum:
              - branch
              - tag
          description: 'Only trigger for the specified Git reference type: branch or tag.'
        branchNames:
          type: array
          items:
            type: string
        tagNames:
          type: array
          items:
            type: string
    GithubIssueClosedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the issue is in one of the repositories
        openedBy:
          type: array
          items:
            type: string
          description: Only trigger if the issue was opened by one of the specified users
        temboIssues:
          type: boolean
          description: Enable agent for Tembo-created issues (disabled by default)
    GithubIssueCommentCreatedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the comment is in one of the repositories
        commentedBy:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the comment was created by one of the specified
            users
        commentOn:
          type: array
          items:
            type: string
            enum:
              - issues
              - pull_requests
          description: Trigger on comments on issues, pull requests, or both
        messageContains:
          type: array
          items:
            type: string
          description: Only trigger if the comment contains one of these substrings
    GithubIssueOpenedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the issue is in one of the repositories
        openedBy:
          type: array
          items:
            type: string
          description: Only trigger if the issue was opened by one of the specified users
        temboIssues:
          type: boolean
          description: Enable agent for Tembo-created issues (disabled by default)
    GithubPullRequestClosedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the pull request is in one of the repositories
        openedBy:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the pull request was opened by one of the specified
            users
        temboPrs:
          type: boolean
          description: Enable agent for Tembo-created pull requests (disabled by default)
    GithubPullRequestMergedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the pull request is in one of the repositories
        mergedBy:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the pull request was merged by one of the specified
            users
        temboPrs:
          type: boolean
          description: Enable agent for Tembo-created pull requests (disabled by default)
    GithubPullRequestOpenedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the pull request is in one of the repositories
        labels:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the pull request has at least one of the specified
            labels
        openedBy:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the pull request was opened by one of the specified
            users
        branches:
          type: array
          items:
            type: string
          description: Only trigger if the pull request targets one of these branches
        draftPrs:
          type: boolean
          description: Trigger also for draft pull requests (disabled by default)
        temboPrs:
          type: boolean
          description: Enable agent for Tembo-created pull requests (disabled by default)
    GithubPullRequestReadyForReviewFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the pull request is in one of the repositories
        openedBy:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the pull request was opened by one of the specified
            users
        temboPrs:
          type: boolean
          description: Enable agent for Tembo-created pull requests (disabled by default)
    GithubReleasePublishedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the release is in one of the repositories
    GithubPullRequestSynchronizeFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the pull request is in one of the repositories
        pushedBy:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the commits were pushed by one of the specified
            users
        draftPrs:
          type: boolean
          description: Trigger even if the pull request is a draft
        temboPrs:
          type: boolean
          description: Enable agent for Tembo-created pull requests (disabled by default)
    GithubTemboPullRequestOpenedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the pull request is in one of the repositories
        draftPrs:
          type: boolean
          description: Also trigger for draft pull requests
    GithubWorkflowRunFailedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the workflow run is in one of the repositories
        workflowNames:
          type: array
          items:
            type: string
          description: Only trigger for specific workflow names
        branches:
          type: array
          items:
            type: string
          description: Only trigger for specific branches
    GitlabBotMergeRequestCommentFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the comment is in one of the repositories
        botUsernames:
          type: array
          items:
            type: string
          description: Only trigger if the comment is from one of these bot usernames
    GitlabIssueClosedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the issue is in one of the repositories
        closedBy:
          type: array
          items:
            type: string
          description: Only trigger if the issue was closed by one of the specified users
        temboIssues:
          type: boolean
          description: Enable agent for Tembo-created issues (disabled by default)
    GitlabIssueOpenedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the issue is in one of the repositories
        openedBy:
          type: array
          items:
            type: string
          description: Only trigger if the issue was opened by one of the specified users
        temboIssues:
          type: boolean
          description: Enable agent for Tembo-created issues (disabled by default)
    GitlabMergeRequestClosedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the merge request is in one of the repositories
        closedBy:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the merge request was closed by one of the specified
            users
        temboMrs:
          type: boolean
          description: Enable agent for Tembo-created merge requests (disabled by default)
    GitlabMergeRequestMergedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the merge request is in one of the repositories
        mergedBy:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the merge request was merged by one of the specified
            users
        temboMrs:
          type: boolean
          description: Enable agent for Tembo-created merge requests (disabled by default)
    GitlabMergeRequestOpenedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the merge request is in one of the repositories
        draftMrs:
          type: boolean
          description: >-
            Include draft merge requests. Drafts are excluded when omitted or
            false.
        temboMrs:
          type: boolean
          description: Enable agent for Tembo-created merge requests (disabled by default)
    GitlabMergeRequestUpdatedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the merge request is in one of the repositories
        pushedBy:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the commits were pushed by one of the specified
            users
        draftMrs:
          type: boolean
          description: >-
            Include draft merge requests. Drafts are excluded when omitted or
            false.
        temboMrs:
          type: boolean
          description: Enable agent for Tembo-created merge requests (disabled by default)
    GitlabPipelineFailedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
          description: Only trigger if the pipeline is in one of the repositories
        branches:
          type: array
          items:
            type: string
          description: Only trigger for specific branches
    GitlabRefCreatedFilters:
      type: object
      properties:
        repositories:
          type: array
          items:
            type: string
        refType:
          type: array
          items:
            type: string
            enum:
              - branch
              - tag
          description: 'Only trigger for the specified Git reference type: branch or tag.'
        branchNames:
          type: array
          items:
            type: string
        tagNames:
          type: array
          items:
            type: string
    LinearIssueCreateFilters:
      type: object
      properties:
        teams:
          type: array
          items:
            type: string
          description: Only trigger if the issue belongs to one of the specified teams
        states:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the issue state type matches one of the specified
            types
        openedBy:
          type: array
          items:
            type: string
          description: Only trigger if the issue was opened by one of the specified users
        assignedTo:
          type: array
          items:
            type: string
          description: Only trigger if the issue is assigned to one of the specified users
        labels:
          type: array
          items:
            type: string
          description: Only trigger if the issue has at least one of the specified labels
        temboIssues:
          type: boolean
          description: Enable agent for Tembo-created issues (disabled by default)
    LinearIssueLabelAddedFilters:
      type: object
      properties:
        teams:
          type: array
          items:
            type: string
          description: Only trigger if the issue belongs to one of the specified teams
        assignedTo:
          type: array
          items:
            type: string
          description: Only trigger if the issue is assigned to one of the specified users
        labels:
          type: array
          items:
            type: string
          description: Only trigger if one of the specified labels was added to the issue
    LinearIssueStatusChangedFilters:
      type: object
      properties:
        teams:
          type: array
          items:
            type: string
          description: Only trigger if the issue belongs to one of the specified teams
        statuses:
          type: array
          items:
            type: string
          description: Only trigger if the issue was moved to one of the specified statuses
        previousStatuses:
          type: array
          items:
            type: string
          description: >-
            Only trigger when the issue changes from one of the specified
            previous statuses.
        assignedTo:
          type: array
          items:
            type: string
          description: Only trigger if the issue is assigned to one of the specified users
        labels:
          type: array
          items:
            type: string
          description: Only trigger if the issue has at least one of the specified labels
    LinearIssueUpdatedFilters:
      type: object
      properties:
        teams:
          type: array
          items:
            type: string
          description: Only trigger if the issue belongs to one of the specified teams
        states:
          type: array
          items:
            type: string
          description: >-
            Only trigger if the issue state type matches one of the specified
            types
        assignedTo:
          type: array
          items:
            type: string
          description: Only trigger if the issue is assigned to one of the specified users
        labels:
          type: array
          items:
            type: string
          description: Only trigger if the issue has at least one of the specified labels
        temboIssues:
          type: boolean
          description: Enable agent for Tembo-updated issues (disabled by default)
    SentryIssueCreatedFilters:
      type: object
      properties:
        priorities:
          type: array
          items:
            type: string
            enum:
              - high
              - medium
              - low
          description: Only trigger if the issue has one of the specified priorities
        projectSlugs:
          type: array
          items:
            type: string
          description: Only trigger if the issue is in one of the specified projects
    SlackMessageReactionAddedFilters:
      type: object
      properties:
        emojis:
          type: array
          items:
            type: string
          description: Only trigger if one of these emoji reactions is added
        channels:
          type: array
          items:
            type: string
          description: Only trigger if the reaction is added in one of these channels
        users:
          type: array
          items:
            type: string
          description: Only trigger if the reaction is added by one of these user names
    SlackMessageSentInChannelFilters:
      type: object
      properties:
        channels:
          type: array
          items:
            type: string
          description: Only trigger if the message is sent in one of the channels
        users:
          type: array
          items:
            type: string
          description: Only trigger if the message was sent by one of these user names
        messageContains:
          type: array
          items:
            type: string
          description: Only trigger if the message contains one of these substrings
    EmptyTriggerFilters:
      type: object
    TipTapLinkMark:
      type: object
      properties:
        type:
          type: string
          const: link
        attrs:
          type: object
          properties:
            href:
              type:
                - string
                - 'null'
            target:
              type:
                - string
                - 'null'
            rel:
              type:
                - string
                - 'null'
            class:
              type:
                - string
                - 'null'
            title:
              type:
                - string
                - 'null'
          additionalProperties: {}
      required:
        - type
      additionalProperties: {}
    TipTapMark:
      type: object
      properties:
        type:
          type: string
          minLength: 1
          maxLength: 100
          not:
            enum:
              - link
        attrs:
          $ref: '#/components/schemas/TipTapExtensionAttributes'
      required:
        - type
      additionalProperties: {}
    TipTapImageAttributes:
      type: object
      properties:
        src:
          type:
            - string
            - 'null'
        alt:
          type:
            - string
            - 'null'
        title:
          type:
            - string
            - 'null'
        width:
          type:
            - string
            - 'null'
        data-uploading:
          type:
            - string
            - 'null'
        data-placeholder-id:
          type:
            - string
            - 'null'
        upload-progress:
          type:
            - string
            - 'null'
      additionalProperties: {}
    TipTapMentionAttributes:
      type: object
      properties:
        id:
          type:
            - string
            - 'null'
        label:
          type:
            - string
            - 'null'
        type:
          type:
            - string
            - 'null'
        mentionSuggestionChar:
          type:
            - string
            - 'null'
        metadata:
          type:
            - object
            - 'null'
          properties:
            integrationType:
              type: string
            codeRepositoryId:
              type: string
            isHeader:
              type: boolean
            argumentHint:
              type: string
            commandName:
              type: string
            source:
              type: string
          additionalProperties: {}
      additionalProperties: {}
    TipTapContentNode:
      type: object
      properties:
        text:
          type: string
          maxLength: 1000000
        marks:
          type: array
          items:
            anyOf:
              - $ref: '#/components/schemas/TipTapLinkMark'
              - $ref: '#/components/schemas/TipTapMark'
          maxItems: 1000
        type:
          type: string
          minLength: 1
          maxLength: 100
          not:
            enum:
              - image
              - mention
              - heading
              - orderedList
              - taskItem
              - codeBlock
        attrs:
          $ref: '#/components/schemas/TipTapExtensionAttributes'
        content:
          type: array
          items:
            $ref: '#/components/schemas/TipTapNode'
          maxItems: 10000
      additionalProperties: {}
    TipTapExtensionAttributes:
      type: object
      additionalProperties: {}
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer

````