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

# Refresh Message



## OpenAPI

````yaml post /v1/conversations/{conversation_id}/messages/{message_id}/refresh
openapi: 3.1.0
info:
  title: Noxus Backend
  description: >-
    Backend API for the Noxus Platform. More information can be found at
    https://docs.noxus.ai
  version: 1.1.0
servers: []
security: []
paths:
  /v1/conversations/{conversation_id}/messages/{message_id}/refresh:
    post:
      tags:
        - V1 - Conversations
      summary: Refresh Message
      operationId: refresh_message
      parameters:
        - name: conversation_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Conversation Id
        - name: message_id
          in: path
          required: true
          schema:
            type: string
            title: Message Id
        - name: assistant_id
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: uuid
              - type: 'null'
            title: Assistant Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SdkConversationWithMessages'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - APIKeyHeader: []
components:
  schemas:
    SdkConversationWithMessages:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        user_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: User Id
        api_key_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Api Key Id
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        created_at:
          type: string
          format: date-time
          title: Created At
        last_updated_at:
          type: string
          format: date-time
          title: Last Updated At
        etag:
          anyOf:
            - type: string
            - type: 'null'
          title: Etag
        settings:
          $ref: '#/components/schemas/CoWorkerSettings-Output'
        assistant_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Assistant Id
        status:
          $ref: '#/components/schemas/RunStatus'
        manual:
          type: boolean
          title: Manual
          default: false
        preview:
          type: boolean
          title: Preview
          default: false
        assistant_version_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Assistant Version Id
        chat_transport:
          anyOf:
            - type: string
            - type: 'null'
          title: Chat Transport
        channel_ref:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Channel Ref
        deployment_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Deployment Id
        public_access_token:
          anyOf:
            - type: string
            - type: 'null'
          title: Public Access Token
        todos:
          items:
            additionalProperties: true
            type: object
          type: array
          title: Todos
          default: []
        is_locked:
          type: boolean
          title: Is Locked
          default: false
        lock_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Lock Message
        messages:
          items:
            $ref: '#/components/schemas/Message'
          type: array
          title: Messages
        vercel_messages:
          items:
            $ref: '#/components/schemas/UIMessage'
          type: array
          title: Vercel Messages
          default: []
      type: object
      required:
        - id
        - user_id
        - api_key_id
        - name
        - created_at
        - last_updated_at
        - etag
        - settings
        - status
        - messages
      title: SdkConversationWithMessages
      description: >-
        ConversationWithMessages for the public SDK — strips TipTap from
        settings.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    CoWorkerSettings-Output:
      properties:
        pii_banner:
          type: string
          title: Pii Banner
          description: Information about PII anonymization
          default: ''
          accordion: Safety
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            style: info
            type: banner
          tab: Model
          tool_mode: hidden
          visible: false
        pii_info:
          type: string
          title: Pii Info
          description: Information about PII anonymization
          default: ''
          accordion: Safety
          display:
            col_span: 10
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            small_text: Choose which PII types to anonymize.
            title: PII Anonymization Settings
            type: ui_text_display
          tab: Model
          tool_mode: hidden
          visible: false
        pii_lock:
          type: boolean
          title: Pii Lock
          description: Information about the guardrails
          default: false
          accordion: Safety
          display:
            col_align: start
            col_justify: end
            col_span: 2
            icon: Unlock
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            toggledIcon: Lock
            tooltip: Lock PII settings so they cannot be changed
            type: toggle_button
          tab: Model
          tool_mode: hidden
          visible: false
        pii_anonimization:
          items:
            additionalProperties:
              type: string
            type: object
          type: array
          title: Pii Anonimization
          description: Preferred anonymization method for PII values.
          default:
            - value: PERSON
              label: Name
            - value: EMAIL_ADDRESS
              label: Email
            - value: PHONE_NUMBER
              label: Phone Number
            - value: CREDIT_CARD
              label: Credit Card
          accordion: Safety
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Anonymize PII
            needs_confirmation: false
            show_optional_label: false
            type: multi_select
            values:
              - label: Person
                value: PERSON
              - label: Email Address
                value: EMAIL_ADDRESS
              - label: Phone Number
                value: PHONE_NUMBER
              - label: Credit Card
                value: CREDIT_CARD
              - label: Cryptocurrency
                value: CRYPTO
              - label: IP Address
                value: IP_ADDRESS
              - label: Date Time
                value: DATE_TIME
              - label: NRP
                value: NRP
              - label: Location
                value: LOCATION
              - label: Medical License
                value: MEDICAL_LICENSE
              - label: URL
                value: URL
              - label: IBAN Code
                value: IBAN_CODE
          rules:
            - config_source: pii_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
          visible: false
        divider1:
          type: string
          title: Divider1
          default: ''
          accordion: Safety
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_line: true
            show_optional_label: false
            spacing: 0
            type: divider
          tab: Model
          tool_mode: hidden
          visible: false
        guardrail_info:
          type: string
          title: Guardrail Info
          description: Information about the guardrails
          default: ''
          accordion: Safety
          display:
            col_span: 10
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            small_text: >-
              Set the strictness level of guardrails to ensure the AI model's
              behavior and responses remain safe and appropriate — from 'Off'
              (no protection) to 'High' (maximum protection).
            title: Guardrails
            type: ui_text_display
          tab: Model
          tool_mode: hidden
        guardrail_lock:
          type: boolean
          title: Guardrail Lock
          description: Locks the guardrails settings.
          default: false
          accordion: Safety
          display:
            col_align: start
            col_justify: end
            col_span: 2
            icon: Unlock
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            toggledIcon: Lock
            tooltip: Lock guardrails settings so they cannot be changed
            type: toggle_button
          tab: Model
          tool_mode: hidden
          visible: false
        guardrail_latency_banner:
          type: string
          title: Guardrail Latency Banner
          description: ''
          default: ''
          accordion: Safety
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: >-
              Each enabled guardrail makes its own LLM call before the model can
              reply. Expect noticeably slower responses while any of these are
              on.
            needs_confirmation: false
            show_optional_label: false
            style: warning
            title: Guardrails add response latency
            type: banner
          rules:
            - conds:
                - config_source: violence_and_hate
                  type: visible_if_not
                  value: 'Off'
                - config_source: sexual_content
                  type: visible_if_not
                  value: 'Off'
                - config_source: guns_and_weapons
                  type: visible_if_not
                  value: 'Off'
                - config_source: suicide
                  type: visible_if_not
                  value: 'Off'
                - config_source: crime
                  type: visible_if_not
                  value: 'Off'
                - config_source: toxicity
                  type: visible_if_not
                  value: 'Off'
                - config_source: bias
                  type: visible_if_not
                  value: 'Off'
                - config_source: profanity
                  type: visible_if_not
                  value: 'Off'
                - config_source: jailbreak
                  type: visible_if
                  value: true
                - config_source: prompt_injection
                  type: visible_if
                  value: true
              mode: or
              type: visible_if_group
          tab: Model
          tool_mode: hidden
        violence_and_hate:
          $ref: '#/components/schemas/GuardrailValue'
          default:
            value: 'Off'
            context: ''
          accordion: Safety
          display:
            accordion_label: Additional context
            col_span: 12
            context_placeholder: >-
              E.g. This is a news agency — reporting on conflict zones is
              expected and should not be flagged.
            is_disabled: false
            is_subconfig: false
            label: Violence and Hate
            needs_confirmation: false
            off_value: 'Off'
            show_optional_label: false
            type: guardrail_card
            values:
              - 'Off'
              - Low
              - Medium
              - High
          rules:
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        sexual_content:
          $ref: '#/components/schemas/GuardrailValue'
          default:
            value: 'Off'
            context: ''
          accordion: Safety
          display:
            accordion_label: Additional context
            col_span: 12
            context_placeholder: >-
              E.g. This is an airline booking system — mentions of children
              traveling are normal and should not be flagged.
            is_disabled: false
            is_subconfig: false
            label: Sexual Content
            needs_confirmation: false
            off_value: 'Off'
            show_optional_label: false
            type: guardrail_card
            values:
              - 'Off'
              - Low
              - Medium
              - High
          rules:
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        guns_and_weapons:
          $ref: '#/components/schemas/GuardrailValue'
          default:
            value: 'Off'
            context: ''
          accordion: Safety
          display:
            accordion_label: Additional context
            col_span: 12
            context_placeholder: >-
              E.g. This is a sporting goods store — discussion of hunting
              equipment is expected.
            is_disabled: false
            is_subconfig: false
            label: Guns and Illegal Weapons
            needs_confirmation: false
            off_value: 'Off'
            show_optional_label: false
            type: guardrail_card
            values:
              - 'Off'
              - Low
              - Medium
              - High
          rules:
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        suicide:
          $ref: '#/components/schemas/GuardrailValue'
          default:
            value: 'Off'
            context: ''
          accordion: Safety
          display:
            accordion_label: Additional context
            col_span: 12
            context_placeholder: >-
              E.g. This is a mental health support platform — discussing
              symptoms is expected and should not be blocked.
            is_disabled: false
            is_subconfig: false
            label: Suicide and Self-Harm
            needs_confirmation: false
            off_value: 'Off'
            show_optional_label: false
            type: guardrail_card
            values:
              - 'Off'
              - Low
              - Medium
              - High
          rules:
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        crime:
          $ref: '#/components/schemas/GuardrailValue'
          default:
            value: 'Off'
            context: ''
          accordion: Safety
          display:
            accordion_label: Additional context
            col_span: 12
            context_placeholder: >-
              E.g. This is a legal firm assistant — discussing criminal cases
              and charges is part of normal operation.
            is_disabled: false
            is_subconfig: false
            label: Crime and Criminal Planning
            needs_confirmation: false
            off_value: 'Off'
            show_optional_label: false
            type: guardrail_card
            values:
              - 'Off'
              - Low
              - Medium
              - High
          rules:
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        toxicity:
          $ref: '#/components/schemas/GuardrailValue'
          default:
            value: 'Off'
            context: ''
          accordion: Safety
          display:
            accordion_label: Additional context
            col_span: 12
            context_placeholder: >-
              E.g. This is a gaming community moderator — competitive banter and
              trash talk is normal.
            is_disabled: false
            is_subconfig: false
            label: Toxicity
            needs_confirmation: false
            off_value: 'Off'
            show_optional_label: false
            type: guardrail_card
            values:
              - 'Off'
              - Low
              - Medium
              - High
          rules:
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        bias:
          $ref: '#/components/schemas/GuardrailValue'
          default:
            value: 'Off'
            context: ''
          accordion: Safety
          display:
            accordion_label: Additional context
            col_span: 12
            context_placeholder: >-
              E.g. This assistant serves a diversity and inclusion team —
              discussing demographic differences is expected.
            is_disabled: false
            is_subconfig: false
            label: Bias
            needs_confirmation: false
            off_value: 'Off'
            show_optional_label: false
            type: guardrail_card
            values:
              - 'Off'
              - Low
              - Medium
              - High
          rules:
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        profanity:
          $ref: '#/components/schemas/GuardrailValue'
          default:
            value: 'Off'
            context: ''
          accordion: Safety
          display:
            accordion_label: Additional context
            col_span: 12
            context_placeholder: >-
              E.g. This is a content moderation tool — quoting flagged content
              for review is expected.
            is_disabled: false
            is_subconfig: false
            label: Profanity
            needs_confirmation: false
            off_value: 'Off'
            show_optional_label: false
            type: guardrail_card
            values:
              - 'Off'
              - Low
              - Medium
              - High
          rules:
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        guardrails_scan_output:
          type: boolean
          title: Guardrails Scan Output
          description: >-
            Scan the model's response with the same semantic guardrails applied
            to input. Catches sensitive content sourced from Knowledge Base
            documents or tools that the input scan cannot see.
          default: false
          accordion: Safety
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Scan responses (output guardrails)
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          rules:
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        guardrails_output_mode:
          type: string
          enum:
            - post_stream
            - pre_stream
          title: Guardrails Output Mode
          description: >-
            How output guardrails are enforced. 'post_stream' streams the
            response in real-time and warns/clears after the fact. 'pre_stream'
            buffers the full response, validates it against guardrails, and only
            emits it if it passes.
          default: post_stream
          accordion: Safety
          display:
            col_span: 12
            icons: false
            is_clearable: false
            is_disabled: false
            is_horizontal: false
            is_searchable: true
            is_subconfig: false
            label: Output guardrail mode
            needs_confirmation: false
            show_optional_label: false
            type: select
            values:
              - label: Post-stream (warn after response)
                value: post_stream
              - label: Pre-stream (validate before showing)
                value: pre_stream
          rules:
            - config_source: guardrail_lock
              type: disabled_if
              value: true
            - config_source: guardrails_scan_output
              type: visible_if
              value: true
          tab: Model
          tool_mode: hidden
        divider2:
          type: string
          title: Divider2
          default: ''
          accordion: Safety
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_line: true
            show_optional_label: false
            spacing: 0
            type: divider
          tab: Model
          tool_mode: hidden
        guardrail_action:
          anyOf:
            - additionalProperties:
                type: string
              type: object
            - type: string
          title: Guardrail Action
          description: Choose the action to take when a guardrail is triggered.
          default:
            value: fail
            label: Fail/block run
          accordion: Safety
          display:
            col_span: 12
            icons: false
            is_clearable: false
            is_disabled: false
            is_horizontal: false
            is_searchable: true
            is_subconfig: false
            label: Guardrail action
            needs_confirmation: false
            show_optional_label: false
            type: select
            values:
              - label: Fail/block run
                value: fail
              - label: Flag with warning but proceed
                value: flag
          rules:
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
          visible: false
        guardrail_action_replace:
          type: string
          title: Guardrail Action Replace
          default: ''
          accordion: Safety
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Replace with
            needs_confirmation: false
            number_of_lines: 1
            placeholder: E.g. <REDACTED>
            show_optional_label: false
            show_refresh: false
            type: text
          rules:
            - config_source: guardrail_action
              type: visible_if
              value: replace
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
          visible: false
        guardrail_action_human:
          type: string
          title: Guardrail Action Human
          default: ''
          accordion: Safety
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: true
            label: Human task template
            needs_confirmation: false
            number_of_lines: 1
            placeholder: E.g. <REDACTED>
            show_optional_label: false
            show_refresh: false
            type: text
          rules:
            - config_source: guardrail_action
              type: visible_if
              value: human
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
          visible: false
        block_after_violations:
          type: integer
          title: Block After Violations
          description: >-
            Block the chat after this many turns with guardrail violations. Set
            to 0 to never block (per-turn warnings still surface).
          default: 0
          accordion: Safety
          display:
            col_span: 12
            hide_number: false
            is_disabled: false
            is_subconfig: false
            label: Block chat after N violations
            max: 20
            min: 0
            needs_confirmation: false
            show_optional_label: false
            step: 1
            tooltip: >-
              Once a conversation accumulates this many turns with any guardrail
              violation (flag or fail mode), the chat input locks. Set to 0 to
              disable.
            type: number_slider
          rules:
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        block_message:
          type: string
          title: Block Message
          description: Message shown to the user when the chat is locked.
          default: >-
            This conversation has been locked due to repeated safety violations.
            Please start a new conversation.
          accordion: Safety
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: true
            label: Block message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: >-
              This conversation has been locked due to repeated safety
              violations.
            show_optional_label: false
            show_refresh: false
            type: text
          rules:
            - config_source: block_after_violations
              type: visible_if_not
              value: 0
            - config_source: guardrail_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        divider3:
          type: string
          title: Divider3
          default: ''
          accordion: Safety
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_line: true
            show_optional_label: false
            spacing: 0
            type: divider
          tab: Model
          tool_mode: hidden
          visible: false
        prompt_defense:
          type: string
          title: Prompt Defense
          default: ''
          accordion: Safety
          display:
            col_span: 10
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            small_text: >-
              Configurations to ensure the model behaves as expected and is
              protected against attacks, like jailbreak or prompt injection.
            title: Prompt Defense
            type: ui_text_display
          tab: Model
          tool_mode: hidden
        prompt_lock:
          type: boolean
          title: Prompt Lock
          description: Locks the prompt defense settings
          default: false
          accordion: Safety
          display:
            col_align: start
            col_justify: end
            col_span: 2
            icon: Unlock
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            toggledIcon: Lock
            tooltip: Lock prompt settings so they cannot be changed
            type: toggle_button
          tab: Model
          tool_mode: hidden
          visible: false
        jailbreak:
          type: boolean
          title: Jailbreak
          description: >-
            Prevents attempts to manipulate or "jailbreak" the model into
            ignoring safety rules or system instructions (e.g., prompts like
            "ignore previous instructions").
          default: false
          accordion: Safety
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Jailbreak
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          rules:
            - config_source: prompt_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        prompt_injection:
          type: boolean
          title: Prompt Injection
          description: >-
            Detects and blocks strategies where users attempt to get around
            restrictions indirectly (e.g., asking the model to 'pretend' or
            speak as a fictional character to evade policies).
          default: false
          accordion: Safety
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Prompt Injection
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          rules:
            - config_source: prompt_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        context_leak:
          type: boolean
          title: Context Leak
          description: >-
            Prevents the model from unintentionally revealing internal context,
            instructions, or system messages that are not meant to be shared
            with the user.
          default: false
          accordion: Safety
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Context Leak
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          rules:
            - config_source: prompt_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
          visible: false
        auto_model_pick:
          type: boolean
          title: Auto Model Pick
          description: AI selects the optimal model for performance, cost savings or length
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Smart model selection
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Model
          tool_mode: hidden
          visible: false
        auto_model_preference:
          type: string
          title: Auto Model Preference
          default: cost
          display:
            can_wrap: true
            col_span: 12
            endpoint: /models/llms
            is_disabled: false
            is_multi: false
            is_subconfig: true
            needs_confirmation: false
            show_optional_label: false
            type: select_chips
            values:
              - custom_fields:
                  icon: gauge
                label: Performance
                value: performance
              - custom_fields:
                  icon: dollar
                label: Cost
                value: cost
              - custom_fields:
                  icon: text
                label: Length
                value: length
          optional: true
          tab: Model
          tool_mode: hidden
          visible: false
        model:
          items:
            type: string
          type: array
          title: Model
          description: Model configuration
          default:
            - preset:cost
          display:
            col_span: 12
            default_preset: cost
            endpoint: /models/llms
            hide_disabled_models: true
            is_disabled: false
            is_subconfig: true
            label: Choose from our recommended models
            layout: side_by_side
            model_type: text
            needs_confirmation: false
            show_inline_presets: true
            show_optional_label: false
            show_presets: false
            type: model_select
          optional: true
          tab: Model
          tool_mode: hidden
        parameter_preset:
          type: string
          enum:
            - default
            - creative
            - precise
            - custom
          title: Parameter Preset
          description: >-
            Controls randomness, diversity, and repetition of the model's
            output.
          default: default
          accordion: Model Parameters
          display:
            button_size: sm
            button_variant: outline
            col_span: 12
            is_disabled: false
            is_horizontal: true
            is_subconfig: false
            label: Model parameters preset
            needs_confirmation: false
            show_optional_label: false
            type: menu_select
            values:
              - description: Provider-recommended settings for general use
                icon: settings2
                label: Default
                value: default
              - description: Higher randomness for diverse, imaginative outputs
                icon: sparkles
                label: Creative
                value: creative
              - description: Deterministic and focused for factual tasks
                icon: target
                label: Precise
                value: precise
              - description: Fine-tune each parameter manually
                icon: sliders-horizontal
                label: Custom
                value: custom
          rules:
            - target_fields:
                - temperature
                - top_p
                - top_k
                - presence_penalty
                - frequency_penalty
              type: sets_field_values
              value_map:
                creative:
                  frequency_penalty: 0.3
                  presence_penalty: 0.3
                  temperature: 0.7
                  top_k: 40
                  top_p: 0.95
                custom: {}
                default: {}
                precise:
                  frequency_penalty: 0
                  presence_penalty: 0
                  temperature: 0
                  top_k: 5
                  top_p: 0.1
          tab: Model
          tool_mode: hidden
        intro:
          type: string
          title: Intro
          default: ''
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            text: >-
              Fine-tune the selected model's behavior with advanced controls.
              Not all of the settings apply to all models.
            type: ui_text_display
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        basic_params_section:
          type: string
          title: Basic Params Section
          default: ''
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            text: >-
              Control the model's output length, randomness, and response time
              limits.
            title: Basic parameters
            type: ui_text_display
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        max_tokens:
          type: integer
          title: Max Tokens
          description: The maximum number of tokens per request
          default: 64000
          accordion: Model Parameters
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Max tokens
            max: 128000
            min: 0
            needs_confirmation: false
            show_optional_label: false
            step: 100
            type: number_slider
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        temperature:
          type: number
          title: Temperature
          description: The temperature of the model
          default: 0.7
          accordion: Model Parameters
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Temperature
            max: 1
            min: 0
            needs_confirmation: false
            show_optional_label: false
            step: 0.01
            type: number_slider
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        top_p:
          type: number
          title: Top P
          description: The top P of the model
          default: 1
          accordion: Model Parameters
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Top P
            max: 1
            min: 0.01
            needs_confirmation: false
            show_optional_label: false
            step: 0.01
            type: number_slider
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        top_k:
          type: integer
          title: Top K
          description: The top K of the model
          default: 40
          accordion: Model Parameters
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Top K
            max: 100
            min: 1
            needs_confirmation: false
            show_optional_label: false
            step: 1
            type: number_slider
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        timeout:
          type: number
          title: Timeout
          description: The base timeout of the model
          default: 120
          accordion: Model Parameters
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Timeout
            max: 600
            min: 1
            needs_confirmation: false
            show_optional_label: false
            step: 1
            type: number_slider
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        divider_7:
          type: string
          title: Divider 7
          default: ''
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_line: true
            show_optional_label: false
            spacing: 0
            type: divider
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        penalty_section:
          type: string
          title: Penalty Section
          default: ''
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            text: >-
              Adjust penalties and stop sequences to control the model's
              generation.
            title: Generation control
            type: ui_text_display
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        presence_penalty:
          type: number
          title: Presence Penalty
          description: The presence penalty of the model
          default: 0.3
          accordion: Model Parameters
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Presence penalty
            max: 2
            min: -2
            needs_confirmation: false
            show_optional_label: false
            step: 0.1
            type: number_slider
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        frequency_penalty:
          type: number
          title: Frequency Penalty
          description: The frequency penalty of the model
          default: 0.6
          accordion: Model Parameters
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Frequency penalty
            max: 2
            min: -2
            needs_confirmation: false
            show_optional_label: false
            step: 0.1
            type: number_slider
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        stop_sequences:
          items:
            type: string
          type: array
          title: Stop Sequences
          description: >-
            The model will stop generating text when it encounters any of these
            stop sequences
          default: []
          accordion: Model Parameters
          display:
            chips_are_closable: false
            col_span: 12
            hide_toolbar: false
            is_disabled: false
            is_subconfig: false
            label: Stop sequences
            needs_confirmation: false
            show_optional_label: false
            type: chips_list_text
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        divider_8:
          type: string
          title: Divider 8
          default: ''
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_line: true
            show_optional_label: false
            spacing: 0
            type: divider
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        reasoning_section:
          type: string
          title: Reasoning Section
          default: ''
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            text: >-
              Configure the model's reasoning capabilities and computational
              effort level.
            title: Model reasoning
            type: ui_text_display
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        enable_reasoning:
          type: boolean
          title: Enable Reasoning
          description: Whether to enable reasoning
          default: true
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enable reasoning
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        reasoning_effort:
          type: string
          title: Reasoning Effort
          description: The reasoning effort of the model
          default: Low
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_horizontal: false
            is_subconfig: false
            label: Reasoning effort
            needs_confirmation: false
            show_optional_label: false
            type: enum_slider
            values:
              - low
              - medium
              - high
          rules:
            - conds:
                - config_source: parameter_preset
                  type: visible_if
                  value: custom
                - config_source: enable_reasoning
                  type: visible_if
                  value: true
              mode: and
              type: visible_if_group
          tab: Model
          tool_mode: hidden
        divider:
          type: string
          title: Divider
          default: ''
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_line: true
            show_optional_label: false
            spacing: 0
            type: divider
          rules:
            - config_source: parameter_preset
              type: visible_if
              value: custom
          tab: Model
          tool_mode: hidden
        reliability_section:
          type: string
          title: Reliability Section
          default: ''
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            text: >-
              Configure retry behavior and fallback options for improved
              reliability.
            title: Reliability
            type: ui_text_display
          tab: Model
          tool_mode: hidden
        max_retries_per_model:
          type: integer
          title: Max Retries Per Model
          description: The maximum number of retries per model
          default: 3
          accordion: Model Parameters
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Max retries
            max: 5
            min: 0
            needs_confirmation: false
            show_optional_label: false
            step: 1
            type: number_slider
          tab: Model
          tool_mode: hidden
        retry_on_status_codes:
          items:
            type: integer
          type: array
          title: Retry On Status Codes
          description: The status codes to retry on
          default:
            - 429
            - 500
            - 502
            - 503
            - 504
          accordion: Model Parameters
          display:
            chips_are_closable: false
            col_span: 12
            hide_toolbar: false
            is_disabled: false
            is_subconfig: false
            label: Retry on status codes
            needs_confirmation: false
            show_optional_label: false
            type: chips_list_text
          tab: Model
          tool_mode: hidden
        datacenter_fallback:
          type: boolean
          title: Datacenter Fallback
          description: >-
            Whether to fallback to a different datacenter of the same model if
            the current one is down
          default: true
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Datacenter fallback
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Model
          tool_mode: hidden
        exclude_user_identity_from_prompt:
          type: boolean
          title: Exclude User Identity From Prompt
          description: >-
            Omit the user's name from the system prompt. Keeps the cached
            instruction prefix identical across users so it can be reused, and
            avoids sending user identity to the model.
          default: false
          accordion: Advanced
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Exclude user identity from prompt
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Prompt
          tool_mode: hidden
        enable_prompt_caching:
          type: boolean
          title: Enable Prompt Caching
          description: >-
            Cache the stable instruction prefix at the model provider to cut
            input cost and latency on repeated turns. Disable to send every
            request uncached.
          default: true
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Prompt caching
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Model
          tool_mode: hidden
        protect_instructions_in_preview:
          type: boolean
          title: Protect Instructions In Preview
          description: >-
            Deployed conversations always keep the agent's system instructions,
            persona, tools, and configuration confidential. Turn this on to also
            protect them in the preview/dev page — otherwise the safeguard is
            dropped there so builders can inspect the agent they are
            configuring.
          default: false
          accordion: Safety
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Protect instructions in preview
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          rules:
            - config_source: prompt_lock
              type: disabled_if
              value: true
          tab: Model
          tool_mode: hidden
        agentflow_enabled:
          type: boolean
          title: Agentflow Enabled
          description: Whether to enable chat flow
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enable chat flow
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        usage_limits_section:
          type: string
          title: Usage Limits Section
          default: ''
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            text: Set limits on resource usage to control costs and prevent overuse.
            title: Agent usage limits
            tooltip: Applies to each conversation.
            type: ui_text_display
          tab: Model
          tool_mode: hidden
        usage_limits_maximum_request:
          type: integer
          title: Usage Limits Maximum Request
          description: The maximum number of requests
          default: 1000
          accordion: Model Parameters
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Total Max Requests
            max: 10000
            min: 0
            needs_confirmation: false
            show_optional_label: false
            step: 50
            tooltip: Applies to each conversation.
            type: number_slider
          tab: Model
          tool_mode: hidden
        usage_limits_maximum_tokens:
          type: integer
          title: Usage Limits Maximum Tokens
          description: The maximum number of tokens
          default: 2000000
          accordion: Model Parameters
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Total max tokens
            max: 2000000
            min: 100
            needs_confirmation: false
            show_optional_label: false
            step: 500
            tooltip: Applies to each conversation.
            type: number_slider
          tab: Model
          tool_mode: hidden
        usage_limits_max_messages:
          type: integer
          title: Usage Limits Max Messages
          description: The maximum number of messages
          default: 100
          accordion: Model Parameters
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Total max messages
            max: 1000
            min: 0
            needs_confirmation: false
            show_optional_label: false
            step: 10
            tooltip: Applies to each conversation.
            type: number_slider
          tab: Model
          tool_mode: hidden
        usage_limits_agent_timeout:
          type: integer
          title: Usage Limits Agent Timeout
          description: The maximum number of seconds the agent can run for
          default: 120
          accordion: Model Parameters
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Agent timeout
            max: 600
            min: 0
            needs_confirmation: false
            show_optional_label: false
            step: 1
            tooltip: Applies to each message.
            type: number_slider
          tab: Model
          tool_mode: hidden
        divider_11:
          type: string
          title: Divider 11
          default: ''
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_line: true
            show_optional_label: false
            spacing: 0
            type: divider
          tab: Model
          tool_mode: hidden
        compaction_enabled:
          type: boolean
          title: Compaction Enabled
          description: >-
            Automatically summarize old messages when context limit is
            approached.
          default: true
          accordion: Compaction Settings
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Conversation compaction
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Model
          tool_mode: hidden
        compaction_strategy:
          type: string
          title: Compaction Strategy
          description: How to compact conversation history when it grows too long.
          default: auto
          accordion: Compaction Settings
          display:
            col_span: 12
            icons: false
            is_clearable: false
            is_disabled: false
            is_horizontal: false
            is_searchable: false
            is_subconfig: false
            label: Compaction strategy
            needs_confirmation: false
            show_optional_label: false
            type: select
            values:
              - label: Auto (prefer provider-native)
                value: auto
              - label: Provider-native only
                value: provider
              - label: LLM summarization
                value: summarization
          rules:
            - config_source: compaction_enabled
              type: visible_if
              value: true
          tab: Model
          tool_mode: hidden
        compaction_threshold:
          type: number
          title: Compaction Threshold
          description: Fraction of context window that triggers compaction (0.01–0.95).
          default: 0.75
          accordion: Compaction Settings
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Compaction threshold
            max: 0.95
            min: 0.01
            needs_confirmation: false
            show_optional_label: false
            step: 0.01
            tooltip: >-
              When token usage reaches this fraction of the context window,
              older messages are summarized.
            type: number_slider
          rules:
            - conds:
                - config_source: compaction_enabled
                  type: visible_if
                  value: true
                - conds:
                    - config_source: compaction_strategy
                      type: visible_if
                      value: auto
                    - config_source: compaction_strategy
                      type: visible_if
                      value: summarization
                  mode: or
                  type: visible_if_group
              mode: and
              type: visible_if_group
          tab: Model
          tool_mode: hidden
        compaction_tool_enabled:
          type: boolean
          title: Compaction Tool Enabled
          description: Expose a tool that lets the agent request compaction manually.
          default: false
          accordion: Compaction Settings
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Compaction tool
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            tooltip: >-
              When on, the agent can call `compact_conversation` to compact at
              will.
            type: toggle
          rules:
            - conds:
                - config_source: compaction_enabled
                  type: visible_if
                  value: true
                - conds:
                    - config_source: compaction_strategy
                      type: visible_if
                      value: auto
                    - config_source: compaction_strategy
                      type: visible_if
                      value: summarization
                  mode: or
                  type: visible_if_group
              mode: and
              type: visible_if_group
          tab: Model
          tool_mode: hidden
        tool_calling_section:
          type: string
          title: Tool Calling Section
          default: ''
          accordion: Model Parameters
          display:
            col_span: 10
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            small_text: Configure how the agent handles tool execution and function calls.
            title: Tool calling
            type: ui_text_display
          tab: Model
          tool_mode: hidden
        parallel_tool_calls:
          type: boolean
          title: Parallel Tool Calls
          description: Whether to allow the agent to call multiple tools at the same time.
          default: true
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Parallel tool calls
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Model
          tool_mode: hidden
        tool_timeout:
          type: number
          title: Tool Timeout
          description: Maximum seconds a single tool call can run before timing out.
          default: 15
          accordion: Model Parameters
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Tool timeout
            max: 300
            min: 1
            needs_confirmation: false
            show_optional_label: false
            step: 1
            tooltip: Per-tool-call timeout. The model retries on timeout.
            type: number_slider
          tab: Model
          tool_mode: hidden
        visuals_section:
          type: string
          title: Visuals Section
          default: ''
          display:
            col_span: 10
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            small_text: >-
              Control what information is displayed to users during agent
              interactions.
            title: Visual preferences
            type: ui_text_display
          tab: Display
          tool_mode: hidden
        hide_reasoning:
          type: boolean
          title: Hide Reasoning
          description: Whether to hide the reasoning messages
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Hide reasoning messages
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          rules:
            - config_source: enable_reasoning
              type: visible_if
              value: true
          tab: Display
          tool_mode: hidden
        group_into_chain_of_thought:
          type: boolean
          title: Group Into Chain Of Thought
          description: Group reasoning and tool calls into a collapsible chain of thought
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Group into chain of thought
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Display
          tool_mode: hidden
        chain_of_thought_final_answer_only:
          type: boolean
          title: Chain Of Thought Final Answer Only
          description: >-
            The agent only responds at the end, keeping all intermediate
            messages in its chain of thought.
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Only show the final answer
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          rules:
            - config_source: group_into_chain_of_thought
              type: visible_if
              value: true
          tab: Display
          tool_mode: hidden
          visible: false
        hide_workflow_progress:
          type: boolean
          title: Hide Workflow Progress
          description: Whether to hide the flow progress
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Hide flow progress
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Display
          tool_mode: hidden
        tool_display_preset:
          type: string
          title: Tool Display Preset
          description: Controls how tool executions are shown during conversations
          default: execution
          display:
            col_span: 12
            cols: 3
            is_disabled: false
            is_subconfig: false
            items:
              - description: Minimalist loading state. Best for end-users
                image: >-
                  https://storage.googleapis.com/image-storage-spot-manual/tool-display/minimal.svg
                label: Minimal
                value: minimal
              - description: Step-by-step execution visibility
                image: >-
                  https://storage.googleapis.com/image-storage-spot-manual/tool-display/execution.svg
                label: Execution
                value: execution
              - description: Tool inputs, outputs, and system trace
                image: >-
                  https://storage.googleapis.com/image-storage-spot-manual/tool-display/trace.svg
                label: Trace
                value: tracing
            label: Tool display preset
            needs_confirmation: false
            show_optional_label: false
            type: card_select
            variant: preview
          tab: Display
          tool_mode: hidden
        minimal_caret_only:
          type: boolean
          title: Minimal Caret Only
          description: Show a loading message while the agent is working.
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enable loading message
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Display
          tool_mode: hidden
        minimal_tool_message:
          type: string
          title: Minimal Tool Message
          default: Thinking...
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Loading message
            max_length: 50
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Thinking...
            show_optional_label: false
            show_refresh: false
            type: text
          rules:
            - config_source: minimal_caret_only
              type: visible_if
              value: true
          tab: Display
          tool_mode: hidden
        citation_style:
          type: string
          title: Citation Style
          description: How inline citation references are displayed
          default: text
          display:
            col_span: 12
            icons: false
            is_clearable: false
            is_disabled: false
            is_horizontal: false
            is_searchable: false
            is_subconfig: false
            label: Citation style
            needs_confirmation: false
            show_optional_label: false
            type: select
            values:
              - label: Text (hostname / title)
                value: text
              - label: Numbered (1, 2, 3)
                value: numbered
              - label: Hidden
                value: hidden
          tab: Display
          tool_mode: hidden
        deduplicate_sources_by_url:
          type: boolean
          title: Deduplicate Sources By Url
          description: Group sources by unique URL in the sources panel
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Deduplicate sources by URL
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          rules:
            - conds:
                - config_source: citation_style
                  type: visible_if
                  value: text
                - config_source: citation_style
                  type: visible_if
                  value: numbered
              mode: or
              type: visible_if_group
          tab: Display
          tool_mode: hidden
        omit_citation_quotes:
          type: boolean
          title: Omit Citation Quotes
          description: Hide quoted text in citation bubbles, show only the URL
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Omit citation quotes
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          rules:
            - conds:
                - config_source: citation_style
                  type: visible_if
                  value: text
                - config_source: citation_style
                  type: visible_if
                  value: numbered
              mode: or
              type: visible_if_group
          tab: Display
          tool_mode: hidden
        show_source_images:
          type: boolean
          title: Show Source Images
          description: >-
            Show document page images presented by the agent expanded by default
            instead of collapsed behind the source images toggle
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Show source images by default
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Display
          tool_mode: hidden
        chat_input_placeholder:
          type: string
          title: Chat Input Placeholder
          default: Ask me anything...
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Chat input hint
            max_length: 50
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Ask me anything...
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Display
          tool_mode: hidden
        divider_visuals:
          type: string
          title: Divider Visuals
          default: ''
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_line: true
            show_optional_label: false
            spacing: 0
            type: divider
          tab: Display
          tool_mode: hidden
        transport_show_tool_calls:
          type: boolean
          title: Transport Show Tool Calls
          default: false
          tab: Configuration
          tool_mode: hidden
          visible: false
        transport_show_sources:
          type: boolean
          title: Transport Show Sources
          default: true
          tab: Configuration
          tool_mode: hidden
          visible: false
        transport_show_thinking:
          type: boolean
          title: Transport Show Thinking
          default: false
          tab: Configuration
          tool_mode: hidden
          visible: false
        transport_allow_noop:
          type: boolean
          title: Transport Allow Noop
          default: false
          tab: Configuration
          tool_mode: hidden
          visible: false
        transport_thinking_text:
          type: string
          title: Transport Thinking Text
          default: ''
          tab: Configuration
          tool_mode: hidden
          visible: false
        conversation_title_section:
          type: string
          title: Conversation Title Section
          default: ''
          display:
            col_span: 10
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            small_text: Configure how the agent conversation title is displayed.
            title: Conversation title display
            type: ui_text_display
          tab: Display
          tool_mode: hidden
        agent_title_mode:
          type: string
          enum:
            - generate
            - first_message
            - last_message
            - custom
          title: Agent Title Mode
          description: >-
            Configure how the agent conversation titlte is displayed in the
            conversation history
          default: generate
          display:
            col_span: 12
            icons: false
            is_clearable: false
            is_disabled: false
            is_horizontal: false
            is_searchable: true
            is_subconfig: false
            label: Title mode
            needs_confirmation: false
            show_optional_label: false
            type: select
            values:
              - label: Generate from first messages
                value: generate
              - label: Use first message
                value: first_message
              - label: Use last message
                value: last_message
              - label: Custom prompt
                value: custom
          tab: Display
          tool_mode: hidden
        agent_title_prompt:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: string
          title: Agent Title Prompt
          description: Custom instructions for the generated conversation title.
          default: ''
          display:
            col_span: 12
            hide_toolbar: false
            is_disabled: false
            is_subconfig: false
            label: Title prompt
            needs_confirmation: false
            number_of_lines: 5
            placeholder: >-
              Describe what the title should contain and the format it should
              follow.
            show_optional_label: false
            type: big_text
          rules:
            - config_source: agent_title_mode
              type: visible_if
              value: custom
          tab: Display
          tool_mode: hidden
        divider_conversation_title:
          type: string
          title: Divider Conversation Title
          default: ''
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_line: true
            show_optional_label: false
            spacing: 0
            type: divider
          tab: Display
          tool_mode: hidden
        feedback_section:
          type: string
          title: Feedback Section
          default: ''
          display:
            col_span: 10
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            small_text: Customise the inline prompt shown when a user rates a response.
            title: Message feedback
            type: ui_text_display
          tab: Display
          tool_mode: hidden
        feedback_placeholder:
          type: string
          title: Feedback Placeholder
          description: Placeholder shown in the inline feedback box.
          default: Add details (optional)
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Feedback placeholder
            max_length: 140
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Add details (optional)
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Display
          tool_mode: hidden
        feedback_submit_label:
          type: string
          title: Feedback Submit Label
          default: Submit
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Submit button label
            max_length: 30
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Submit
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Display
          tool_mode: hidden
        feedback_cancel_label:
          type: string
          title: Feedback Cancel Label
          default: Cancel
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Cancel button label
            max_length: 30
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Cancel
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Display
          tool_mode: hidden
        agentflow_section:
          type: string
          title: Agentflow Section
          default: ''
          accordion: Model Parameters
          display:
            col_span: 10
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_optional_label: false
            small_text: Configure how the chat flow handles state transitions
            type: ui_text_display
          rules:
            - config_source: agentflow_enabled
              type: visible_if
              value: true
          tab: Display
          tool_mode: hidden
        hide_state_transitions:
          type: boolean
          title: Hide State Transitions
          description: Whether to hide the state transitions
          default: false
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Hide state transitions
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          rules:
            - config_source: agentflow_enabled
              type: visible_if
              value: true
          tab: Display
          tool_mode: hidden
        divider_13:
          type: string
          title: Divider 13
          default: ''
          accordion: Model Parameters
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: ''
            needs_confirmation: false
            show_line: true
            show_optional_label: false
            spacing: 0
            type: divider
          rules:
            - config_source: agentflow_enabled
              type: visible_if
              value: true
          tab: Display
          tool_mode: hidden
        agent_flow_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Agent Flow Id
          description: The agent flow to use for the conversation
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Agent flow
            needs_confirmation: false
            number_of_lines: 1
            placeholder: The agent flow to use for the conversation
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
          visible: false
        is_coworker:
          type: boolean
          title: Is Coworker
          description: Whether the agent is a co-worker
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Is co-worker
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        preset_selector:
          anyOf:
            - type: string
            - type: 'null'
          title: Preset Selector
          description: Choose a preset to get started quickly.
          display:
            button_label: Choose preset
            button_size: default
            button_variant: outline
            col_span: 12
            confirmation_message: >-
              Loading a preset will overwrite your persona, tone, instructions,
              and some model settings. Continue?
            is_disabled: false
            is_horizontal: true
            is_subconfig: false
            label: Quick start
            mixpanel_event: AGENT_PRESET_SELECTOR_CLICK
            needs_confirmation: true
            show_optional_label: false
            type: menu_select
            values:
              - description: Customer service agent for issue resolution
                label: Customer Operations
                value: customer_operations
              - description: Technical support specialist for troubleshooting
                label: IT Helpdesk
                value: it_helpdesk
              - description: Case management specialist for claims and workflows
                label: Case Management
                value: case_management
          rules:
            - target_fields:
                - persona
                - tone
                - extra_instructions
                - temperature
                - top_p
                - top_k
                - presence_penalty
                - frequency_penalty
                - parameter_preset
                - preset_selector
              type: sets_field_values
              value_map:
                case_management:
                  extra_instructions:
                    definition:
                      content:
                        - content:
                            - text: >-
                                - Review all case details thoroughly before
                                proceeding
                              type: text
                          type: paragraph
                        - content:
                            - text: >-
                                - Follow established procedures and compliance
                                requirements
                              type: text
                          type: paragraph
                        - content:
                            - text: '- Document all actions and decisions clearly'
                              type: text
                          type: paragraph
                        - content:
                            - text: >-
                                - Maintain accuracy and attention to detail
                                throughout the process
                              type: text
                          type: paragraph
                      type: doc
                    isRaw: false
                    text: >-
                      - Review all case details thoroughly before proceeding

                      - Follow established procedures and compliance
                      requirements

                      - Document all actions and decisions clearly

                      - Maintain accuracy and attention to detail throughout the
                      process
                  frequency_penalty: 0.5
                  parameter_preset: custom
                  persona:
                    definition:
                      content:
                        - content:
                            - text: >-
                                You are a detail-oriented case management
                                specialist with expertise in claims processing,
                                case review, and regulatory compliance. You are
                                methodical, thorough, and skilled at managing
                                complex workflows while ensuring accuracy and
                                adherence to procedures.
                              type: text
                          type: paragraph
                      type: doc
                    isRaw: false
                    text: >-
                      You are a detail-oriented case management specialist with
                      expertise in claims processing, case review, and
                      regulatory compliance. You are methodical, thorough, and
                      skilled at managing complex workflows while ensuring
                      accuracy and adherence to procedures.
                  presence_penalty: 0.3
                  temperature: 0.2
                  tone:
                    definition:
                      content:
                        - content:
                            - text: >-
                                Maintain a formal and professional tone at all
                                times. Use precise, business-appropriate
                                language. Be respectful and maintain clear
                                boundaries in all interactions.
                              type: text
                          type: paragraph
                      type: doc
                    isRaw: false
                    text: >-
                      Maintain a formal and professional tone at all times. Use
                      precise, business-appropriate language. Be respectful and
                      maintain clear boundaries in all interactions.
                  top_k: 25
                  top_p: 0.85
                customer_operations:
                  extra_instructions:
                    definition:
                      content:
                        - content:
                            - text: >-
                                - Always confirm customer details before taking
                                action
                              type: text
                          type: paragraph
                        - content:
                            - text: '- Provide concise step-by-step guidance'
                              type: text
                          type: paragraph
                        - content:
                            - text: '- Escalate complex cases politely when needed'
                              type: text
                          type: paragraph
                        - content:
                            - text: >-
                                - Maintain empathy and professionalism in all
                                interactions
                              type: text
                          type: paragraph
                      type: doc
                    isRaw: false
                    text: |-
                      - Always confirm customer details before taking action
                      - Provide concise step-by-step guidance
                      - Escalate complex cases politely when needed
                      - Maintain empathy and professionalism in all interactions
                  frequency_penalty: 0.6
                  parameter_preset: custom
                  persona:
                    definition:
                      content:
                        - content:
                            - text: >-
                                You are a knowledgeable and empathetic customer
                                operations agent who helps users resolve issues
                                quickly and clearly. You have deep expertise in
                                customer service best practices, issue
                                resolution, and maintaining positive customer
                                relationships.
                              type: text
                          type: paragraph
                      type: doc
                    isRaw: false
                    text: >-
                      You are a knowledgeable and empathetic customer operations
                      agent who helps users resolve issues quickly and clearly.
                      You have deep expertise in customer service best
                      practices, issue resolution, and maintaining positive
                      customer relationships.
                  presence_penalty: 0.4
                  temperature: 0.2
                  tone:
                    definition:
                      content:
                        - content:
                            - text: >-
                                Be professional yet personable. Provide clear
                                and engaging communication. Exercise good
                                judgment in matching tone to context.
                              type: text
                          type: paragraph
                      type: doc
                    isRaw: false
                    text: >-
                      Be professional yet personable. Provide clear and engaging
                      communication. Exercise good judgment in matching tone to
                      context.
                  top_k: 20
                  top_p: 0.85
                it_helpdesk:
                  extra_instructions:
                    definition:
                      content:
                        - content:
                            - text: >-
                                - Gather system information and error details
                                first
                              type: text
                          type: paragraph
                        - content:
                            - text: >-
                                - Provide step-by-step troubleshooting
                                instructions
                              type: text
                          type: paragraph
                        - content:
                            - text: '- Explain technical concepts in simple terms'
                              type: text
                          type: paragraph
                        - content:
                            - text: '- Document solutions for future reference'
                              type: text
                          type: paragraph
                      type: doc
                    isRaw: false
                    text: |-
                      - Gather system information and error details first
                      - Provide step-by-step troubleshooting instructions
                      - Explain technical concepts in simple terms
                      - Document solutions for future reference
                  frequency_penalty: 0.7
                  parameter_preset: custom
                  persona:
                    definition:
                      content:
                        - content:
                            - text: >-
                                You are an experienced IT helpdesk support
                                specialist with comprehensive knowledge of
                                technical troubleshooting, common software and
                                hardware issues, and system administration. You
                                excel at translating complex technical concepts
                                into simple, actionable guidance.
                              type: text
                          type: paragraph
                      type: doc
                    isRaw: false
                    text: >-
                      You are an experienced IT helpdesk support specialist with
                      comprehensive knowledge of technical troubleshooting,
                      common software and hardware issues, and system
                      administration. You excel at translating complex technical
                      concepts into simple, actionable guidance.
                  presence_penalty: 0.3
                  temperature: 0.2
                  tone:
                    definition:
                      content:
                        - content:
                            - text: >-
                                Be professional yet personable. Provide clear
                                and engaging communication. Exercise good
                                judgment in matching tone to context.
                              type: text
                          type: paragraph
                      type: doc
                    isRaw: false
                    text: >-
                      Be professional yet personable. Provide clear and engaging
                      communication. Exercise good judgment in matching tone to
                      context.
                  top_k: 25
                  top_p: 0.85
          tab: Prompt
          tool_mode: hidden
          visible: false
        introductory_message:
          anyOf:
            - items:
                $ref: '#/components/schemas/NoxusTipTapDocument-Output'
              type: array
            - type: 'null'
          title: Introductory Message
          description: The introductory message to use for the conversation.
          display:
            col_span: 12
            connector_name: ''
            hide_chip_options: false
            hide_toolbar: false
            is_disabled: false
            is_simple_text: false
            is_subconfig: false
            label: Introductory message
            needs_confirmation: false
            no_space_on_insert: false
            number_of_lines: 5
            placeholder: Hello, how can I help you today?
            show_optional_label: false
            type: rich_text_variables
          rules:
            - config_source: is_coworker
              type: visible_if
              value: true
          tab: Prompt
          tool_mode: hidden
        persona:
          anyOf:
            - items:
                $ref: '#/components/schemas/NoxusTipTapDocument-Output'
              type: array
            - type: 'null'
          title: Persona
          description: >-
            Describe who the co-worker is — their background, role, or point of
            view.
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Agent persona defining the AI's character, background, role, and
              point of view
            heuristic_types:
              - clarity
              - specificity
              - roleplaying
            improver_context: >-
              This is an AGENT PERSONA definition — a description of who the AI
              agent is. The output must read as a natural character description,
              NOT a structured task prompt. Do NOT include output format specs,
              JSON schemas, edge case sections, or task-type templates. Focus
              on: identity, background, personality traits, expertise, and point
              of view. Keep it concise (2-4 short paragraphs max). Write in
              second person ('You are...'). Be specific about the character but
              avoid copying any real or copyrighted personas.
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Persona
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Prompt
          tool_mode: hidden
        tone:
          anyOf:
            - items:
                $ref: '#/components/schemas/NoxusTipTapDocument-Output'
              type: array
            - type: 'null'
          title: Tone
          description: >-
            Define how the co-worker should communicate — its voice, attitude,
            and style.
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Agent tone and communication style defining voice, attitude, and
              writing style
            heuristic_types:
              - clarity
              - specificity
              - roleplaying
            improver_context: >-
              This is an AGENT TONE & STYLE definition — how the AI agent should
              communicate. The output must be a concise set of voice and style
              guidelines, NOT a structured task prompt. Do NOT include output
              format specs, JSON schemas, edge case sections, or task-type
              templates. Focus on: communication style, vocabulary level,
              formality, pacing, and attitude. Keep it concise (a short list of
              guidelines or 1-2 paragraphs max). Use direct instructions ('Use
              short sentences', 'Be encouraging', etc.).
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Tone & style
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Prompt
          tool_mode: hidden
        extra_instructions:
          anyOf:
            - items:
                $ref: '#/components/schemas/NoxusTipTapDocument-Output'
              type: array
            - type: 'null'
          title: Extra Instructions
          description: >-
            Provide specific rules, goals, or context to guide the co-worker's
            behavior.
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Agent behavior instructions providing specific rules, goals, and
              operational guidelines
            heuristic_types:
              - clarity
              - specificity
              - actionability
              - task_breakdown
            improver_context: >-
              This is an AGENT BEHAVIOR INSTRUCTIONS field — specific rules and
              guidelines for the agent. The output must be a concise set of
              behavioral rules, NOT a generic task prompt template. Do NOT
              include output format specs, JSON schemas, edge case sections, or
              task-type templates. Focus on: do/don't rules, goals, boundaries,
              and operational guidelines. Keep it concise and actionable. Use
              bullet points or numbered rules.
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Instructions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Prompt
          tool_mode: hidden
        tools:
          items:
            oneOf:
              - $ref: '#/components/schemas/WebResearchSettings-Output'
              - $ref: '#/components/schemas/NoxusQaSettings-Output'
              - $ref: '#/components/schemas/KnowledgeBaseSelectorSettings-Output'
              - $ref: '#/components/schemas/KnowledgeBaseQaSettings-Output'
              - $ref: '#/components/schemas/WorkflowSettings-Output'
              - $ref: '#/components/schemas/AttachFileSettings'
              - $ref: '#/components/schemas/FlowTransitionSettings-Output'
              - $ref: '#/components/schemas/ChatflowSettings-Output'
              - $ref: '#/components/schemas/ChatflowExtractionSettings-Output'
              - $ref: '#/components/schemas/HumanInTheLoopSettings-Output'
              - $ref: '#/components/schemas/ChatflowTransitionSettings'
              - $ref: '#/components/schemas/AgentToolSettings-Output'
              - $ref: '#/components/schemas/MemorySettings-Output'
              - $ref: '#/components/schemas/ActionToolSettings-Output'
              - $ref: '#/components/schemas/ExcelSettings-Output'
              - $ref: '#/components/schemas/DocxSettings-Output'
              - $ref: '#/components/schemas/FileSystemSettings-Output'
              - $ref: '#/components/schemas/FileSettings-Output'
              - $ref: '#/components/schemas/TodoSettings-Output'
              - $ref: '#/components/schemas/SandboxSettings-Output'
              - $ref: '#/components/schemas/ScheduleToolSettings-Output'
              - $ref: '#/components/schemas/SubAgentSettings-Output'
              - $ref: '#/components/schemas/CodeExecutionSettings-Output'
              - $ref: '#/components/schemas/AgentMemorySettings-Output'
              - $ref: '#/components/schemas/CreateFilesSettings-Output'
              - $ref: '#/components/schemas/DocumentationSettings-Output'
              - $ref: '#/components/schemas/ImageGenerationSettings-Output'
            discriminator:
              propertyName: type
              mapping:
                action:
                  $ref: '#/components/schemas/ActionToolSettings-Output'
                agent_memory:
                  $ref: '#/components/schemas/AgentMemorySettings-Output'
                agent_tool:
                  $ref: '#/components/schemas/AgentToolSettings-Output'
                attach_file:
                  $ref: '#/components/schemas/AttachFileSettings'
                chatflow:
                  $ref: '#/components/schemas/ChatflowSettings-Output'
                chatflow_extraction:
                  $ref: '#/components/schemas/ChatflowExtractionSettings-Output'
                chatflow_transition:
                  $ref: '#/components/schemas/ChatflowTransitionSettings'
                code_execution:
                  $ref: '#/components/schemas/CodeExecutionSettings-Output'
                create_files:
                  $ref: '#/components/schemas/CreateFilesSettings-Output'
                documentation:
                  $ref: '#/components/schemas/DocumentationSettings-Output'
                docx:
                  $ref: '#/components/schemas/DocxSettings-Output'
                excel:
                  $ref: '#/components/schemas/ExcelSettings-Output'
                files:
                  $ref: '#/components/schemas/FileSettings-Output'
                filesystem:
                  $ref: '#/components/schemas/FileSystemSettings-Output'
                flow_transition:
                  $ref: '#/components/schemas/FlowTransitionSettings-Output'
                human_in_the_loop:
                  $ref: '#/components/schemas/HumanInTheLoopSettings-Output'
                image_generation:
                  $ref: '#/components/schemas/ImageGenerationSettings-Output'
                kb_qa:
                  $ref: '#/components/schemas/KnowledgeBaseQaSettings-Output'
                kb_selector:
                  $ref: '#/components/schemas/KnowledgeBaseSelectorSettings-Output'
                memory:
                  $ref: '#/components/schemas/MemorySettings-Output'
                noxus_qa:
                  $ref: '#/components/schemas/NoxusQaSettings-Output'
                sandbox:
                  $ref: '#/components/schemas/SandboxSettings-Output'
                schedule_tool:
                  $ref: '#/components/schemas/ScheduleToolSettings-Output'
                subagent:
                  $ref: '#/components/schemas/SubAgentSettings-Output'
                todos:
                  $ref: '#/components/schemas/TodoSettings-Output'
                web_research:
                  $ref: '#/components/schemas/WebResearchSettings-Output'
                workflow:
                  $ref: '#/components/schemas/WorkflowSettings-Output'
          type: array
          title: Tools
          default: []
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Tools
            needs_confirmation: false
            show_optional_label: false
            show_sections: []
            type: tools_select
          tab: Configuration
          tool_mode: hidden
          visible: false
        mcp_servers:
          items:
            $ref: '#/components/schemas/MCPServerBinding'
          type: array
          title: Mcp Servers
          description: Workspace MCP credentials this agent can call tools on.
          default: []
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: MCP
            needs_confirmation: false
            show_optional_label: false
            type: mcp_credential_select
          order: 50
          tab: Actions
          tool_mode: hidden
        skills_enabled:
          type: boolean
          title: Skills Enabled
          description: Extend agent capabilities with markdown-based skill packages.
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Skills
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Knowledge
          tool_mode: hidden
          visible: false
        convert_unsupported_files_to_text:
          type: boolean
          title: Convert Unsupported Files To Text
          description: >-
            When an attached file's type can't be sent to the model as a native
            attachment (e.g. JSON, CSV, XML, Markdown), inline its text content
            into the prompt instead of failing the run. PDFs and images are
            always sent as attachments.
          default: true
          accordion: Advanced
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Convert unsupported files to text
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Prompt
          tool_mode: hidden
        skills:
          items:
            $ref: '#/components/schemas/SkillConfig'
          type: array
          title: Skills
          default: []
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Skills
            needs_confirmation: false
            show_optional_label: false
            type: skills_list
          tab: Knowledge
          tool_mode: hidden
        subagents_enabled:
          type: boolean
          title: Subagents Enabled
          description: Delegate tasks to specialized subagents for parallel execution.
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Subagents
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Actions
          tool_mode: hidden
          visible: false
        subagents:
          items:
            $ref: '#/components/schemas/SubAgentDefinition'
          type: array
          title: Subagents
          default: []
          accordion: Subagent options
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Subagents
            needs_confirmation: false
            show_optional_label: false
            type: subagents_list
          tab: Actions
          tool_mode: hidden
        subagents_instructions:
          anyOf:
            - items:
                $ref: '#/components/schemas/NoxusTipTapDocument-Output'
              type: array
            - type: 'null'
          title: Subagents Instructions
          description: Tell the co-worker when to hand work to a subagent.
          accordion: Subagent options
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: false
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: When to delegate
            needs_confirmation: false
            number_of_lines: 4
            placeholder: >-
              e.g. Delegate research that needs more than a few searches. Keep
              drafting and formatting for yourself.
            show_optional_label: false
            type: rich_text_variables_ai
          rules:
            - config_source: subagents_enabled
              type: visible_if
              value: true
          tab: Actions
          tool_mode: hidden
        subagents_model:
          items:
            type: string
          type: array
          title: Subagents Model
          description: >-
            Model the subagents run on. Specialists that pick their own model
            override this; an empty selection falls back to the agent's model.
          default:
            - preset:cost
          accordion: Subagent options
          display:
            col_span: 12
            default_preset: cost
            endpoint: /models/llms
            hide_disabled_models: true
            is_disabled: false
            is_subconfig: false
            label: Subagent model
            layout: side_by_side
            model_limit: 3
            model_type: text
            needs_confirmation: false
            show_inline_presets: true
            show_optional_label: false
            show_presets: true
            type: model_select
          optional: true
          rules:
            - config_source: subagents_enabled
              type: visible_if
              value: true
          tab: Actions
          tool_mode: hidden
        guidelines_enabled:
          type: boolean
          title: Guidelines Enabled
          description: Enable behavioral guidelines that shape how the agent responds.
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enable Guidelines
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Prompt
          tool_mode: hidden
          visible: false
        guidelines:
          items:
            $ref: '#/components/schemas/GuidelineConfig'
          type: array
          title: Guidelines
          default: []
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Guidelines
            needs_confirmation: false
            show_optional_label: false
            type: guidelines_list
          tab: Prompt
          tool_mode: hidden
        glossary:
          items:
            $ref: '#/components/schemas/GlossaryTermConfig'
          type: array
          title: Glossary
          default: []
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Glossary
            needs_confirmation: false
            show_optional_label: false
            type: glossary_list
          tab: Prompt
          tool_mode: hidden
        memories:
          items:
            $ref: '#/components/schemas/AgentMemoryEntry'
          type: array
          title: Memories
          description: Persistent memory across all conversations
          default: []
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Agent Memory
            needs_confirmation: false
            show_optional_label: false
            type: agent_memory_field
          tab: Knowledge
          tool_mode: hidden
        hidden_tools:
          items:
            type: string
          type: array
          title: Hidden Tools
          description: Tool calls that never appear in the chat activity feed.
          default:
            - todos_read_todos
            - todos_add_todo
            - todos_write_todos
            - todos_update_todo_status
            - todos_remove_todo
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Hidden tools
            needs_confirmation: false
            show_optional_label: false
            tooltip: Toggled-on tools never appear in the chat activity feed.
            type: tool_select
          tab: Display
          tool_mode: hidden
          visible: false
        deployment_custom_instructions:
          anyOf:
            - type: string
            - type: 'null'
          title: Deployment Custom Instructions
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: deployment_custom_instructions
            needs_confirmation: false
            show_optional_label: false
            type: config_dynamic_text
          tab: Configuration
          tool_mode: hidden
          visible: false
        workflows:
          items:
            $ref: '#/components/schemas/WorkflowSettings-Output'
          type: array
          title: Workflows
          description: Workflows the agent can run
          default: []
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Workflows
            needs_confirmation: false
            show_optional_label: false
            type: workflows_field
          order: 10
          tab: Actions
          tool_mode: hidden
        knowledge_bases:
          items:
            $ref: '#/components/schemas/KnowledgeBaseQaSettings-Output'
          type: array
          title: Knowledge Bases
          description: Knowledge bases the agent can search
          default: []
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Knowledge Bases
            needs_confirmation: false
            show_optional_label: false
            type: knowledge_bases_field
          tab: Knowledge
          tool_mode: hidden
        agent_files:
          items:
            $ref: '#/components/schemas/AgentFileConfig-Output'
          type: array
          title: Agent Files
          description: >-
            Files pre-loaded into every conversation. Each is added to the
            session (readable via the file tools) with its context shown to the
            agent.
          default: []
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Files
            needs_confirmation: false
            show_optional_label: false
            type: files_field
          order: 10
          tab: Knowledge
          tool_mode: hidden
        databases:
          items:
            $ref: '#/components/schemas/AgentDatabaseConfig-Output'
          type: array
          title: Databases
          description: >-
            SQL databases the agent can query read-only. Each references a
            database credential; access is deferred, so the agent connects only
            when a query is needed.
          default: []
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Databases
            needs_confirmation: false
            show_optional_label: false
            type: databases_field
          order: 20
          tab: Knowledge
          tool_mode: hidden
        tables:
          items:
            $ref: '#/components/schemas/AgentTableConfig-Output'
          type: array
          title: Tables
          description: >-
            The workspace tables this agent can use. Add context for each so the
            agent knows what it holds and when to use it.
          default: []
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Tables
            needs_confirmation: false
            show_optional_label: false
            type: tables_field
          order: 21
          tab: Knowledge
          tool_mode: hidden
        coworkers:
          items:
            $ref: '#/components/schemas/AgentToolSettings-Output'
          type: array
          title: Coworkers
          description: Co-workers the agent can call
          default: []
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Co-workers
            needs_confirmation: false
            show_optional_label: false
            type: coworkers_field
          order: 20
          tab: Actions
          tool_mode: hidden
        base_tools:
          items:
            oneOf:
              - $ref: '#/components/schemas/WebResearchSettings-Output'
              - $ref: '#/components/schemas/HumanInTheLoopSettings-Output'
              - $ref: '#/components/schemas/MemorySettings-Output'
              - $ref: '#/components/schemas/AttachFileSettings'
              - $ref: '#/components/schemas/FileSystemSettings-Output'
              - $ref: '#/components/schemas/FileSettings-Output'
              - $ref: '#/components/schemas/CodeExecutionSettings-Output'
              - $ref: '#/components/schemas/ExcelSettings-Output'
              - $ref: '#/components/schemas/DocxSettings-Output'
              - $ref: '#/components/schemas/NoxusQaSettings-Output'
              - $ref: '#/components/schemas/KnowledgeBaseSelectorSettings-Output'
              - $ref: '#/components/schemas/TodoSettings-Output'
              - $ref: '#/components/schemas/SandboxSettings-Output'
              - $ref: '#/components/schemas/ScheduleToolSettings-Output'
              - $ref: '#/components/schemas/SubAgentSettings-Output'
              - $ref: '#/components/schemas/AgentMemorySettings-Output'
              - $ref: '#/components/schemas/CreateFilesSettings-Output'
              - $ref: '#/components/schemas/DocumentationSettings-Output'
              - $ref: '#/components/schemas/ImageGenerationSettings-Output'
            discriminator:
              propertyName: type
              mapping:
                agent_memory:
                  $ref: '#/components/schemas/AgentMemorySettings-Output'
                attach_file:
                  $ref: '#/components/schemas/AttachFileSettings'
                code_execution:
                  $ref: '#/components/schemas/CodeExecutionSettings-Output'
                create_files:
                  $ref: '#/components/schemas/CreateFilesSettings-Output'
                documentation:
                  $ref: '#/components/schemas/DocumentationSettings-Output'
                docx:
                  $ref: '#/components/schemas/DocxSettings-Output'
                excel:
                  $ref: '#/components/schemas/ExcelSettings-Output'
                files:
                  $ref: '#/components/schemas/FileSettings-Output'
                filesystem:
                  $ref: '#/components/schemas/FileSystemSettings-Output'
                human_in_the_loop:
                  $ref: '#/components/schemas/HumanInTheLoopSettings-Output'
                image_generation:
                  $ref: '#/components/schemas/ImageGenerationSettings-Output'
                kb_selector:
                  $ref: '#/components/schemas/KnowledgeBaseSelectorSettings-Output'
                memory:
                  $ref: '#/components/schemas/MemorySettings-Output'
                noxus_qa:
                  $ref: '#/components/schemas/NoxusQaSettings-Output'
                sandbox:
                  $ref: '#/components/schemas/SandboxSettings-Output'
                schedule_tool:
                  $ref: '#/components/schemas/ScheduleToolSettings-Output'
                subagent:
                  $ref: '#/components/schemas/SubAgentSettings-Output'
                todos:
                  $ref: '#/components/schemas/TodoSettings-Output'
                web_research:
                  $ref: '#/components/schemas/WebResearchSettings-Output'
          type: array
          title: Base Tools
          description: Quick action tools the agent can use
          default:
            - title: Human in the Loop
              description: Human in the Loop
              category: QuickAction
              enabled: false
              tool_display_icon: PersonStanding
              tool_display_message_start: Escalating to human operator...
              tool_display_message_end: Escalated to human operator
              requires_approval: false
              visible: true
              icon: PersonStanding
              bg_color: blue.50
              icon_color: blue.500
              chatflow_usable: true
              deprecated: false
              type: human_in_the_loop
              has_timeout: false
              handover_message: You are now talking to the co-worker.
            - title: Web Research
              description: Search the web for information
              category: QuickAction
              enabled: false
              tool_display_icon: Globe
              tool_display_message_start: Searching the web...
              tool_display_message_end: Searched the web
              requires_approval: false
              visible: true
              icon: Globe
              bg_color: '#D1FADF'
              icon_color: '#027A48'
              chatflow_usable: true
              deprecated: false
              type: web_research
            - title: Files
              description: Attach, generate, and work with files.
              category: QuickAction
              enabled: false
              tool_display_icon: Files
              tool_display_message_start: Working with files...
              tool_display_message_end: Done
              requires_approval: false
              visible: true
              icon: Files
              bg_color: '#EFF6FF'
              icon_color: '#2B7FFF'
              chatflow_usable: true
              deprecated: false
              type: files
              allow_html_graphs: true
              show_inline: true
              custom_author_name: false
              author_name: ''
              enable_python_sandbox: false
              enable_formula_eval: false
              experimental: false
            - title: Memory
              description: Persistent memory during a single conversation
              category: QuickAction
              enabled: false
              tool_display_icon: Brain
              tool_display_message_start: Accessing memory...
              tool_display_message_end: Memory operation complete
              requires_approval: false
              visible: true
              icon: Brain
              bg_color: '#f5f3ff'
              icon_color: '#8e51ff'
              chatflow_usable: true
              deprecated: false
              type: memory
            - title: File System
              description: Access and read files in the current session
              category: QuickAction
              enabled: true
              tool_display_icon: FolderOpen
              tool_display_message_start: Accessing file system...
              tool_display_message_end: File system operation complete
              requires_approval: false
              visible: false
              icon: FolderOpen
              bg_color: '#fef3c7'
              icon_color: '#f59e0b'
              chatflow_usable: true
              deprecated: false
              type: filesystem
            - title: Code Execution
              description: Run Python code in a sandboxed environment
              category: QuickAction
              enabled: false
              tool_display_icon: Terminal
              tool_display_message_start: Running code...
              tool_display_message_end: Code executed
              requires_approval: false
              visible: true
              icon: Terminal
              bg_color: '#fef9c3'
              icon_color: '#ca8a04'
              chatflow_usable: true
              deprecated: false
              type: code_execution
              timeout: 60
            - title: Agent Memory
              description: Persistent memory across all conversations
              category: QuickAction
              enabled: false
              tool_display_icon: BookOpen
              tool_display_message_start: Accessing agent memory...
              tool_display_message_end: Memory operation complete
              requires_approval: false
              visible: false
              icon: BookOpen
              bg_color: '#fef3c7'
              icon_color: '#d97706'
              chatflow_usable: true
              deprecated: false
              type: agent_memory
            - title: Documentation
              description: Search and read Noxus platform documentation
              category: QuickAction
              enabled: false
              tool_display_icon: BookOpen
              tool_display_message_start: Searching documentation...
              tool_display_message_end: Documentation found
              requires_approval: false
              visible: true
              icon: BookOpen
              bg_color: '#EFF6FF'
              icon_color: '#2B7FFF'
              chatflow_usable: true
              deprecated: false
              type: documentation
            - title: Task Tracking
              description: Track and manage tasks during the conversation
              category: QuickAction
              enabled: false
              tool_display_icon: ListTodo
              tool_display_message_start: Managing tasks...
              tool_display_message_end: Tasks updated
              requires_approval: false
              visible: true
              icon: ListTodo
              bg_color: '#f0fdf4'
              icon_color: '#16a34a'
              chatflow_usable: true
              deprecated: false
              type: todos
              enable_subtasks: false
            - title: Image Generation
              description: Generate images from text prompts, shown inline in the chat.
              category: QuickAction
              enabled: false
              tool_display_icon: ImagePlus
              tool_display_message_start: Generating image...
              tool_display_message_end: Image generated
              requires_approval: false
              visible: true
              icon: ImagePlus
              bg_color: '#FDF4FF'
              icon_color: '#C026D3'
              chatflow_usable: true
              deprecated: false
              type: image_generation
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Tools
            needs_confirmation: false
            show_optional_label: false
            type: base_tools_field
          order: 80
          tab: Actions
          tool_mode: hidden
        actions:
          items:
            $ref: '#/components/schemas/ActionToolSettings-Output'
          type: array
          title: Actions
          description: Action nodes the agent can execute
          default: []
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Actions
            needs_confirmation: false
            show_optional_label: false
            type: actions_field
          order: 40
          tab: Actions
          tool_mode: hidden
        chatflow_tools:
          items:
            oneOf:
              - $ref: '#/components/schemas/FlowTransitionSettings-Output'
              - $ref: '#/components/schemas/ChatflowSettings-Output'
              - $ref: '#/components/schemas/ChatflowExtractionSettings-Output'
              - $ref: '#/components/schemas/ChatflowTransitionSettings'
            discriminator:
              propertyName: type
              mapping:
                chatflow:
                  $ref: '#/components/schemas/ChatflowSettings-Output'
                chatflow_extraction:
                  $ref: '#/components/schemas/ChatflowExtractionSettings-Output'
                chatflow_transition:
                  $ref: '#/components/schemas/ChatflowTransitionSettings'
                flow_transition:
                  $ref: '#/components/schemas/FlowTransitionSettings-Output'
          type: array
          title: Chatflow Tools
          default: []
          tab: Configuration
          tool_mode: hidden
          visible: false
        insights_enabled:
          type: boolean
          title: Insights Enabled
          description: Enable conversation analysis and insights dashboard.
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enable Insights
            needs_confirmation: false
            show_optional_label: false
            toggle_position: left
            type: toggle
          tab: Insights
          tool_mode: hidden
        insights_csat_enabled:
          type: boolean
          title: Insights Csat Enabled
          description: >-
            Collect customer satisfaction (CSAT) ratings at end of
            conversations.
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enable CSAT
            needs_confirmation: false
            show_optional_label: false
            toggle_position: left
            type: toggle
          rules:
            - config_source: insights_enabled
              type: visible_if
              value: true
          tab: Insights
          tool_mode: hidden
        insights_csat_sampling_rate:
          type: number
          title: Insights Csat Sampling Rate
          description: >-
            Fraction of conversations that get a CSAT prompt (1.0 = every
            conversation).
          default: 1
          display:
            col_span: 12
            hide_number: false
            is_disabled: false
            is_subconfig: false
            label: CSAT Sampling Rate
            max: 1
            min: 0
            needs_confirmation: false
            show_optional_label: false
            step: 0.05
            type: number_slider
          rules:
            - conds:
                - config_source: insights_enabled
                  type: visible_if
                  value: true
                - config_source: insights_csat_enabled
                  type: visible_if
                  value: true
              mode: and
              type: visible_if_group
          tab: Insights
          tool_mode: hidden
        insights_csat_agent_tool_enabled:
          type: boolean
          title: Insights Csat Agent Tool Enabled
          description: Let the agent decide when to show the CSAT form via a tool call.
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Agent Feedback Tool
            needs_confirmation: false
            show_optional_label: false
            toggle_position: left
            type: toggle
          rules:
            - conds:
                - config_source: insights_enabled
                  type: visible_if
                  value: true
                - config_source: insights_csat_enabled
                  type: visible_if
                  value: true
              mode: and
              type: visible_if_group
          tab: Insights
          tool_mode: hidden
        insights_csat_agent_tool_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: string
          title: Insights Csat Agent Tool Instructions
          description: >-
            Custom instructions for when the agent should request customer
            feedback.
          default: ''
          display:
            col_span: 12
            hide_toolbar: false
            is_disabled: false
            is_subconfig: false
            label: Feedback Tool Instructions
            needs_confirmation: false
            number_of_lines: 5
            placeholder: >-
              e.g. Ask for feedback once the customer confirms their issue is
              solved. Never ask during troubleshooting.
            show_optional_label: false
            type: big_text
          rules:
            - conds:
                - config_source: insights_enabled
                  type: visible_if
                  value: true
                - config_source: insights_csat_enabled
                  type: visible_if
                  value: true
                - config_source: insights_csat_agent_tool_enabled
                  type: visible_if
                  value: true
              mode: and
              type: visible_if_group
          tab: Insights
          tool_mode: hidden
        insights_csat_auto_enabled:
          type: boolean
          title: Insights Csat Auto Enabled
          description: >-
            Automatically show the CSAT form at the end of an agent turn
            (rule-based, no tool call). Independent of the agent feedback tool.
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Automatic Feedback Request
            needs_confirmation: false
            show_optional_label: false
            toggle_position: left
            type: toggle
          rules:
            - conds:
                - config_source: insights_enabled
                  type: visible_if
                  value: true
                - config_source: insights_csat_enabled
                  type: visible_if
                  value: true
              mode: and
              type: visible_if_group
          tab: Insights
          tool_mode: hidden
        insights_csat_auto_min_messages:
          type: integer
          title: Insights Csat Auto Min Messages
          description: >-
            Only auto-request feedback once the user has sent at least this many
            messages.
          default: 2
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Minimum user messages before auto request
            needs_confirmation: false
            show_optional_label: false
            type: number
          rules:
            - conds:
                - config_source: insights_enabled
                  type: visible_if
                  value: true
                - config_source: insights_csat_enabled
                  type: visible_if
                  value: true
                - config_source: insights_csat_auto_enabled
                  type: visible_if
                  value: true
              mode: and
              type: visible_if_group
          tab: Insights
          tool_mode: hidden
        insights_custom_definitions:
          items:
            $ref: '#/components/schemas/CustomInsightDefinition'
          type: array
          title: Insights Custom Definitions
          description: User-defined situations to detect in each conversation.
          default: []
          tab: Insights
          tool_mode: hidden
          visible: false
        tool_grant_scope:
          type: string
          enum:
            - workspace
            - user
          title: Tool Grant Scope
          description: >-
            Whether 'Always Allow' tool grants apply to all workspace users or
            only the granting user
          default: workspace
          display:
            col_span: 12
            icons: false
            is_clearable: false
            is_disabled: false
            is_horizontal: false
            is_searchable: true
            is_subconfig: false
            label: Tool Grant Scope
            needs_confirmation: false
            show_optional_label: false
            type: select
            values:
              - label: Workspace
                value: workspace
              - label: Per User
                value: user
          order: 70
          tab: Actions
          tool_mode: hidden
      type: object
      title: CoWorkerSettings
    RunStatus:
      type: string
      enum:
        - queued
        - running
        - failed
        - completed
        - stopped
        - awaiting_human_feedback
      title: RunStatus
    Message:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        created_at:
          type: string
          format: date-time
          title: Created At
        message_parts:
          items:
            oneOf:
              - $ref: '#/components/schemas/UserMessage'
              - $ref: '#/components/schemas/ToolCallMessage'
              - $ref: '#/components/schemas/ToolCalledMessage'
              - $ref: '#/components/schemas/ToolCalledMessageEnd'
              - $ref: '#/components/schemas/MessageEnd'
              - $ref: '#/components/schemas/MarkdownMessage'
              - $ref: '#/components/schemas/AudioReferenceMessage'
              - $ref: '#/components/schemas/ImageReferenceMessage'
              - $ref: '#/components/schemas/VideoReferenceMessage'
              - $ref: '#/components/schemas/DocumentReferenceMessage'
              - $ref: '#/components/schemas/WebReferenceMessage'
              - $ref: '#/components/schemas/ImageCarouselMessage'
              - $ref: '#/components/schemas/SourceReferenceMessage'
              - $ref: '#/components/schemas/SystemMessage'
              - $ref: '#/components/schemas/ErrorMessage'
              - $ref: '#/components/schemas/WarningMessage'
              - $ref: '#/components/schemas/InfoMessage'
              - $ref: '#/components/schemas/SuccessMessage'
              - $ref: '#/components/schemas/SetConversationTitle'
              - $ref: '#/components/schemas/InternalToolResultMessage'
              - $ref: '#/components/schemas/YoutubeReferenceMessage'
              - $ref: '#/components/schemas/StateTransitionMessage'
              - $ref: '#/components/schemas/ChatflowExtractionMessage'
              - $ref: '#/components/schemas/ConversationEndMessage'
              - $ref: '#/components/schemas/HumanInTheLoopMessage'
              - $ref: '#/components/schemas/MemoryMessage'
              - $ref: '#/components/schemas/KBContextMessage'
              - $ref: '#/components/schemas/WebpageContextMessage'
              - $ref: '#/components/schemas/HumanInTheLoopAssignedMessage'
              - $ref: '#/components/schemas/ThinkingMessage'
              - $ref: '#/components/schemas/ThinkingEndedMessage'
              - $ref: '#/components/schemas/ClearConversationStreamMessage'
              - $ref: '#/components/schemas/WorkflowRunningMessage'
              - $ref: '#/components/schemas/ChatflowTransitionMessage'
              - $ref: '#/components/schemas/PresentedFileMessage'
            discriminator:
              propertyName: type
              mapping:
                audio:
                  $ref: '#/components/schemas/AudioReferenceMessage'
                chatflow_extraction:
                  $ref: '#/components/schemas/ChatflowExtractionMessage'
                chatflow_transition:
                  $ref: '#/components/schemas/ChatflowTransitionMessage'
                clear_conversation_stream:
                  $ref: '#/components/schemas/ClearConversationStreamMessage'
                conversation_end:
                  $ref: '#/components/schemas/ConversationEndMessage'
                document:
                  $ref: '#/components/schemas/DocumentReferenceMessage'
                error:
                  $ref: '#/components/schemas/ErrorMessage'
                human_in_the_loop:
                  $ref: '#/components/schemas/HumanInTheLoopMessage'
                human_in_the_loop_assigned:
                  $ref: '#/components/schemas/HumanInTheLoopAssignedMessage'
                image:
                  $ref: '#/components/schemas/ImageReferenceMessage'
                image_carousel:
                  $ref: '#/components/schemas/ImageCarouselMessage'
                info:
                  $ref: '#/components/schemas/InfoMessage'
                kb_context:
                  $ref: '#/components/schemas/KBContextMessage'
                markdown:
                  $ref: '#/components/schemas/MarkdownMessage'
                memory:
                  $ref: '#/components/schemas/MemoryMessage'
                message_end:
                  $ref: '#/components/schemas/MessageEnd'
                presented_file:
                  $ref: '#/components/schemas/PresentedFileMessage'
                set_conversation_title:
                  $ref: '#/components/schemas/SetConversationTitle'
                source_reference:
                  $ref: '#/components/schemas/SourceReferenceMessage'
                state_transition:
                  $ref: '#/components/schemas/StateTransitionMessage'
                success:
                  $ref: '#/components/schemas/SuccessMessage'
                system:
                  $ref: '#/components/schemas/SystemMessage'
                thinking:
                  $ref: '#/components/schemas/ThinkingMessage'
                thinking_ended:
                  $ref: '#/components/schemas/ThinkingEndedMessage'
                tool_call:
                  $ref: '#/components/schemas/ToolCallMessage'
                tool_called:
                  $ref: '#/components/schemas/ToolCalledMessage'
                tool_called_end:
                  $ref: '#/components/schemas/ToolCalledMessageEnd'
                tool_result:
                  $ref: '#/components/schemas/InternalToolResultMessage'
                user:
                  $ref: '#/components/schemas/UserMessage'
                video:
                  $ref: '#/components/schemas/VideoReferenceMessage'
                warning:
                  $ref: '#/components/schemas/WarningMessage'
                web_reference:
                  $ref: '#/components/schemas/WebReferenceMessage'
                webpage_context:
                  $ref: '#/components/schemas/WebpageContextMessage'
                workflow_running:
                  $ref: '#/components/schemas/WorkflowRunningMessage'
                youtube_reference:
                  $ref: '#/components/schemas/YoutubeReferenceMessage'
          type: array
          title: Message Parts
        pydantic_message_parts:
          items:
            oneOf:
              - $ref: '#/components/schemas/ModelRequest'
              - $ref: '#/components/schemas/ModelResponse'
            discriminator:
              propertyName: kind
              mapping:
                request:
                  $ref: '#/components/schemas/ModelRequest'
                response:
                  $ref: '#/components/schemas/ModelResponse'
          type: array
          title: Pydantic Message Parts
        is_positive:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Is Positive
        feedback_meta:
          anyOf:
            - $ref: '#/components/schemas/FeedbackMeta'
            - type: 'null'
        sender_ref:
          anyOf:
            - $ref: '#/components/schemas/SenderRefSchema'
            - type: 'null'
      type: object
      required:
        - id
        - created_at
        - message_parts
        - pydantic_message_parts
        - is_positive
      title: Message
    UIMessage:
      properties:
        id:
          type: string
          title: Id
        role:
          type: string
          enum:
            - system
            - user
            - assistant
          title: Role
        metadata:
          anyOf:
            - {}
            - type: 'null'
          title: Metadata
        parts:
          items:
            anyOf:
              - $ref: '#/components/schemas/TextUIPart'
              - $ref: '#/components/schemas/ReasoningUIPart'
              - $ref: '#/components/schemas/ToolInputStreamingPart'
              - $ref: '#/components/schemas/ToolInputAvailablePart'
              - $ref: '#/components/schemas/ToolOutputAvailablePart'
              - $ref: '#/components/schemas/ToolOutputErrorPart'
              - $ref: '#/components/schemas/ToolApprovalRequestedPart'
              - $ref: '#/components/schemas/ToolApprovalRespondedPart'
              - $ref: '#/components/schemas/ToolOutputDeniedPart'
              - $ref: '#/components/schemas/DynamicToolInputStreamingPart'
              - $ref: '#/components/schemas/DynamicToolInputAvailablePart'
              - $ref: '#/components/schemas/DynamicToolOutputAvailablePart'
              - $ref: '#/components/schemas/DynamicToolOutputErrorPart'
              - $ref: '#/components/schemas/DynamicToolApprovalRequestedPart'
              - $ref: '#/components/schemas/DynamicToolApprovalRespondedPart'
              - $ref: '#/components/schemas/DynamicToolOutputDeniedPart'
              - $ref: '#/components/schemas/SourceUrlUIPart'
              - $ref: '#/components/schemas/SourceDocumentUIPart'
              - $ref: '#/components/schemas/FileUIPart'
              - $ref: '#/components/schemas/DataUIPart'
              - $ref: '#/components/schemas/StepStartUIPart'
          type: array
          title: Parts
      additionalProperties: false
      type: object
      required:
        - id
        - role
        - parts
      title: UIMessage
      description: A message as displayed in the UI by Vercel AI Elements.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    GuardrailValue:
      properties:
        value:
          type: string
          title: Value
          default: 'Off'
        context:
          type: string
          title: Context
          default: ''
      type: object
      title: GuardrailValue
    NoxusTipTapDocument-Output:
      properties:
        text:
          type: string
          title: Text
        definition:
          $ref: '#/components/schemas/TiptapDocument-Output'
      type: object
      required:
        - text
      title: NoxusTipTapDocument
    WebResearchSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Web Research
        description:
          type: string
          title: Description
          default: Search the web for information
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          description: Whether the tool is enabled
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enabled
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: Globe
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Searching the web...
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Start message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the web search starts.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Searched the web
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: End message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the web search completes.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        icon:
          type: string
          title: Icon
          default: Globe
        bg_color:
          type: string
          title: Bg Color
          default: '#D1FADF'
        icon_color:
          type: string
          title: Icon Color
          default: '#027A48'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          description: >-
            Whether this tool type is deprecated and should be hidden from the
            UI
          default: false
        type:
          type: string
          const: web_research
          title: Type
          default: web_research
      type: object
      title: WebResearchSettings
    NoxusQaSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Noxus Q&A
        description:
          type: string
          title: Description
          default: Noxus Q&A
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: Bot
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Noxus Q&A
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Noxus Q&A complete
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        icon:
          type: string
          title: Icon
          default: Bot
        bg_color:
          type: string
          title: Bg Color
          default: '#EFF6FF'
        icon_color:
          type: string
          title: Icon Color
          default: '#2B7FFF'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          default: false
        deprecated:
          type: boolean
          title: Deprecated
          default: true
        type:
          type: string
          const: noxus_qa
          title: Type
          default: noxus_qa
      type: object
      title: NoxusQaSettings
    KnowledgeBaseSelectorSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: KB Selector
        description:
          type: string
          title: Description
          default: Allows the user to select a knowledge base for your co-worker
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          description: Whether the tool is enabled
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enabled
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: Search
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Searching knowledge base...
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Start message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the knowledge base search starts.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Knowledge base search complete
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: End message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the knowledge base search completes.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        icon:
          type: string
          title: Icon
          default: Folder
        bg_color:
          type: string
          title: Bg Color
          default: '#FEF9C2'
        icon_color:
          type: string
          title: Icon Color
          default: '#894B00'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          default: false
        deprecated:
          type: boolean
          title: Deprecated
          default: true
        type:
          type: string
          const: kb_selector
          title: Type
          default: kb_selector
      type: object
      title: KnowledgeBaseSelectorSettings
      description: >-
        Tool that allows the user to select a knowledge base to answer questions
        about
    KnowledgeBaseQaSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Knowledge Base Q&A
          tab: Configuration
          tool_mode: hidden
          visible: false
        description:
          type: string
          title: Description
          default: Answer questions about the knowledge base
          tab: Configuration
          tool_mode: hidden
          visible: false
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          default: Knowledge
          tab: Configuration
          tool_mode: hidden
          visible: false
        enabled:
          type: boolean
          title: Enabled
          description: Whether the tool is enabled
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enabled
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: Search
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Searching knowledge base...
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Start message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the knowledge base search starts.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Knowledge base search complete
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: End message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the knowledge base search completes.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        type:
          type: string
          const: kb_qa
          title: Type
          default: kb_qa
          tab: Configuration
          tool_mode: hidden
          visible: false
        kb_id:
          type: string
          format: uuid
          title: Kb Id
          tab: Configuration
          tool_mode: hidden
          visible: false
        advanced_search:
          type: boolean
          title: Advanced Search
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Advanced search tools
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            tooltip: >-
              The agent chooses the best search method (overrides the KB
              configured retrieval method).
            type: toggle
          tab: Configuration
          tool_mode: hidden
        private:
          type: boolean
          title: Private
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Private knowledge base
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            tooltip: The agent won’t cite this knowledge base as a source.
            type: toggle
          tab: Configuration
          tool_mode: hidden
        enable_browse_tools:
          type: boolean
          title: Enable Browse Tools
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enable File system tools
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            tooltip: >-
              Enable kb_tree and kb_ls tools for navigating the knowledge base
              file system.
            type: toggle
          tab: Configuration
          tool_mode: hidden
        include_tree_in_instructions:
          type: boolean
          title: Include Tree In Instructions
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Include File system structure in instructions
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            tooltip: >-
              Inline this KB's folder tree into the system prompt every turn.
              Saves the agent a kb_tree round-trip but increases prompt size —
              keep depth low for large KBs.
            type: toggle
          rules:
            - config_source: enable_browse_tools
              type: visible_if
              value: true
          tab: Configuration
          tool_mode: hidden
        tree_depth_in_instructions:
          type: integer
          title: Tree Depth In Instructions
          default: 3
          display:
            col_span: 12
            hide_number: true
            is_disabled: false
            is_subconfig: false
            label: Tree depth in instructions
            max: 10
            min: 1
            needs_confirmation: false
            show_optional_label: false
            step: 1
            tooltip: How many folder levels to include (1-10).
            type: number_slider
          rules:
            - config_source: enable_browse_tools
              type: visible_if
              value: true
            - config_source: include_tree_in_instructions
              type: visible_if
              value: true
          tab: Configuration
          tool_mode: hidden
        link_references_to_noxus_file:
          type: boolean
          title: Link References To Noxus File
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Link references to the file in Noxus
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            tooltip: >-
              Point citations at the copy stored in Noxus instead of the
              document's original source (e.g. Google Drive). Use when users may
              not have access to the source location.
            type: toggle
          tab: Configuration
          tool_mode: hidden
      type: object
      required:
        - kb_id
      title: KnowledgeBaseQaSettings
      description: >-
        Tool that allows the user to answer questions about a specific
        pre-selected knowledge base
    WorkflowSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Workflow Runner
          tab: Configuration
          tool_mode: hidden
          visible: false
        description:
          type: string
          title: Description
          default: Run a workflow
          tab: Configuration
          tool_mode: hidden
          visible: false
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          default: Flows
          tab: Configuration
          tool_mode: hidden
          visible: false
        enabled:
          type: boolean
          title: Enabled
          description: Whether the tool is enabled
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enabled
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          description: The lucide icon to display for this tool
          default: Cog
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Running a workflow
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Start message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the workflow starts.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Workflow run complete
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: End message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the workflow finishes.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        type:
          type: string
          const: workflow
          title: Type
          default: workflow
          tab: Configuration
          tool_mode: hidden
          visible: false
        workflow_id:
          type: string
          format: uuid
          title: Workflow Id
          description: >-
            The ID of the workflow to run. Comes unselected, and should be
            selected by the user.
          tab: Configuration
          tool_mode: hidden
          visible: false
        inputs_descriptions:
          additionalProperties:
            type: string
          type: object
          title: Inputs Descriptions
          description: A dictionary of input names to descriptions.
          tab: Configuration
          tool_mode: hidden
          visible: false
        version_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Version Id
          description: >-
            The ID of the version of the workflow to run. Comes unselected, and
            should be selected by the user.
          tab: Configuration
          tool_mode: hidden
          visible: false
      type: object
      required:
        - workflow_id
      title: WorkflowSettings
    AttachFileSettings:
      properties:
        title:
          type: string
          title: Title
          default: Add Files
        description:
          type: string
          title: Description
          default: >-
            Allows the user to add files to the conversation for the agent to
            access.
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: true
        tool_display_icon:
          type: string
          title: Tool Display Icon
          description: The lucide icon to display for this tool
          default: Cog
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          description: The message to display to the user when the tool is called.
          default: Running tool...
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Start message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the tool starts.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          description: The message to display to the user when the tool completes.
          default: Tool complete
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: End message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the tool completes.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        extra_instructions:
          anyOf:
            - type: string
            - type: 'null'
          title: Extra Instructions
        requires_approval:
          type: boolean
          title: Requires Approval
          default: false
        visible:
          type: boolean
          title: Visible
          default: false
        icon:
          type: string
          title: Icon
          default: Paperclip
        bg_color:
          type: string
          title: Bg Color
          default: '#EFF6FF'
        icon_color:
          type: string
          title: Icon Color
          default: '#2B7FFF'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          default: false
        deprecated:
          type: boolean
          title: Deprecated
          default: true
        type:
          type: string
          const: attach_file
          title: Type
          default: attach_file
      type: object
      title: AttachFileSettings
    FlowTransitionSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Flow Transition
        description:
          type: string
          title: Description
          default: Transition to a different flow
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          default: Chatflow
        enabled:
          type: boolean
          title: Enabled
          description: Whether the tool is enabled
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enabled
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          description: The lucide icon to display for this tool
          default: Cog
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          description: The message to display to the user when the tool is called.
          default: Running tool...
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Start message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the tool starts.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          description: The message to display to the user when the tool completes.
          default: Tool complete
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: End message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the tool completes.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        type:
          type: string
          const: flow_transition
          title: Type
          default: flow_transition
        transition:
          $ref: '#/components/schemas/Transition'
          description: The transition to make
      type: object
      required:
        - transition
      title: FlowTransitionSettings
    ChatflowSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Chatflow
        description:
          type: string
          title: Description
          default: Chatflow
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          default: Chatflow
        enabled:
          type: boolean
          title: Enabled
          description: Whether the tool is enabled
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enabled
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          description: The lucide icon to display for this tool
          default: Cog
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          description: The message to display to the user when the tool is called.
          default: Running tool...
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Start message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the tool starts.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          description: The message to display to the user when the tool completes.
          default: Tool complete
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: End message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the tool completes.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        type:
          type: string
          const: chatflow
          title: Type
          default: chatflow
        chatflow_instructions:
          type: string
          title: Chatflow Instructions
          description: The instructions for the chatflow
        chatflow_criteria:
          anyOf:
            - type: string
            - type: 'null'
          title: Chatflow Criteria
          description: The criteria for the chatflow
        mode:
          type: string
          enum:
            - choose_path
            - extract
            - response
          title: Mode
      type: object
      required:
        - chatflow_instructions
        - chatflow_criteria
        - mode
      title: ChatflowSettings
    ChatflowExtractionSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Chatflow Extraction
        description:
          type: string
          title: Description
          default: Extract data in a chatflow
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          default: Chatflow
        enabled:
          type: boolean
          title: Enabled
          description: Whether the tool is enabled
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enabled
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          description: The lucide icon to display for this tool
          default: Cog
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          description: The message to display to the user when the tool is called.
          default: Running tool...
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Start message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the tool starts.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          description: The message to display to the user when the tool completes.
          default: Tool complete
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: End message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the tool completes.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        type:
          type: string
          const: chatflow_extraction
          title: Type
          default: chatflow_extraction
        response_format:
          title: Response Format
          description: The transition to make
      type: object
      required:
        - response_format
      title: ChatflowExtractionSettings
    HumanInTheLoopSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Human in the Loop
        description:
          type: string
          title: Description
          default: Human in the Loop
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: PersonStanding
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Escalating to human operator...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Escalated to human operator
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        icon:
          type: string
          title: Icon
          default: PersonStanding
        bg_color:
          type: string
          title: Bg Color
          default: blue.50
        icon_color:
          type: string
          title: Icon Color
          default: blue.500
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          description: >-
            Whether this tool type is deprecated and should be hidden from the
            UI
          default: false
        type:
          type: string
          const: human_in_the_loop
          title: Type
          default: human_in_the_loop
        has_timeout:
          type: boolean
          title: Has Timeout
          default: false
        timeout:
          anyOf:
            - type: integer
            - type: 'null'
          title: Timeout
        handover_message:
          type: string
          title: Handover Message
          default: You are now talking to the co-worker.
      type: object
      title: HumanInTheLoopSettings
    ChatflowTransitionSettings:
      properties:
        title:
          type: string
          title: Title
          default: Chatflow Transition
          tab: Configuration
          tool_mode: hidden
          visible: false
        description:
          type: string
          title: Description
          default: Transition to a different chatflow state
          tab: Configuration
          tool_mode: hidden
          visible: false
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          default: Chatflow
          tab: Configuration
          tool_mode: hidden
          visible: false
        enabled:
          type: boolean
          title: Enabled
          description: Whether the tool is enabled
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enabled
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          description: The lucide icon to display for this tool
          default: Cog
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          description: The message to display to the user when the tool is called.
          default: Running tool...
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Start message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the tool starts.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          description: The message to display to the user when the tool completes.
          default: Tool complete
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: End message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when the tool completes.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        extra_instructions:
          anyOf:
            - type: string
            - type: 'null'
          title: Extra Instructions
          description: The condition for the chat flow to proceed out of this node.
          default: You are done when the user has confirmed that you can proceed.
          display:
            class_name: h-[10rem]
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: true
            label: Transition criteria
            needs_confirmation: false
            number_of_lines: 5
            placeholder: >-
              E.g. You are done when the user has confirmed that you can
              proceed.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        type:
          type: string
          const: chatflow_transition
          title: Type
          default: chatflow_transition
          tab: Configuration
          tool_mode: hidden
          visible: false
        transition_key:
          type: string
          title: Transition Key
          description: >-
            A unique name that identifies the transition and maps to an output
            of the node.
          display:
            class_name: h-[1rem]
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Transition name
            needs_confirmation: false
            number_of_lines: 1
            placeholder: A name for the transition
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
      type: object
      required:
        - transition_key
      title: ChatflowTransitionSettings
    AgentToolSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Agent Tool
          tab: Configuration
          tool_mode: hidden
          visible: false
        description:
          type: string
          title: Description
          default: Call another co-worker
          tab: Configuration
          tool_mode: hidden
          visible: false
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          default: Agents
          tab: Configuration
          tool_mode: hidden
          visible: false
        enabled:
          type: boolean
          title: Enabled
          description: Whether the tool is enabled
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enabled
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: Bot
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Calling co-worker
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Start message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when calling the co-worker.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Co-worker responded
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: End message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed after the co-worker responds.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        type:
          type: string
          const: agent_tool
          title: Type
          default: agent_tool
          tab: Configuration
          tool_mode: hidden
          visible: false
        agent_id:
          type: string
          format: uuid
          title: Agent Id
          description: >-
            The ID of the agent to call. Comes unselected, and should be
            selected by the user.
          tab: Configuration
          tool_mode: hidden
          visible: false
        max_clarification_turns:
          type: integer
          title: Max Clarification Turns
          description: >-
            How many times this co-worker can ask follow-up questions before
            giving a final answer. Set to 0 to require an immediate response
            with no back-and-forth.
          default: 2
          display:
            col_span: 12
            hide_number: false
            is_disabled: false
            is_subconfig: false
            label: Follow-up questions allowed
            max: 10
            min: 0
            needs_confirmation: false
            show_optional_label: false
            step: 1
            type: number_slider
          tab: Configuration
          tool_mode: hidden
      type: object
      required:
        - agent_id
      title: AgentToolSettings
    MemorySettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Memory
        description:
          type: string
          title: Description
          default: Persistent memory during a single conversation
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: Brain
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Accessing memory...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Memory operation complete
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        icon:
          type: string
          title: Icon
          default: Brain
        bg_color:
          type: string
          title: Bg Color
          default: '#f5f3ff'
        icon_color:
          type: string
          title: Icon Color
          default: '#8e51ff'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          description: >-
            Whether this tool type is deprecated and should be hidden from the
            UI
          default: false
        type:
          type: string
          const: memory
          title: Type
          default: memory
      type: object
      title: MemorySettings
    ActionToolSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Actions
        description:
          type: string
          title: Description
          default: Execute workflow actions
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          default: Actions
        enabled:
          type: boolean
          title: Enabled
          default: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: Zap
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Running action...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Action complete
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        type:
          type: string
          const: action
          title: Type
          default: action
        icon:
          type: string
          title: Icon
          default: Zap
        bg_color:
          type: string
          title: Bg Color
          default: '#FEF3C7'
        icon_color:
          type: string
          title: Icon Color
          default: '#F59E0B'
        node_name:
          type: string
          title: Node Name
          description: The name of the node/action to execute
        tool_config:
          anyOf:
            - $ref: '#/components/schemas/ActionToolConfig'
            - type: 'null'
      type: object
      required:
        - node_name
      title: ActionToolSettings
    ExcelSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Excel
        description:
          type: string
          title: Description
          default: Read, analyze, and modify Excel spreadsheets
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: true
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: FileSpreadsheet
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Analyzing spreadsheet...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Spreadsheet analysis complete
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          default: false
        icon:
          type: string
          title: Icon
          default: FileSpreadsheet
        bg_color:
          type: string
          title: Bg Color
          default: '#dcfce7'
        icon_color:
          type: string
          title: Icon Color
          default: '#16a34a'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          default: true
        type:
          type: string
          const: excel
          title: Type
          default: excel
        enable_python_sandbox:
          type: boolean
          title: Enable Python Sandbox
          default: false
        enable_formula_eval:
          type: boolean
          title: Enable Formula Eval
          default: false
        experimental:
          type: boolean
          title: Experimental
          default: false
      type: object
      title: ExcelSettings
    DocxSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Word Document
        description:
          type: string
          title: Description
          default: Read, edit, and comment on Word (.docx) files using track changes.
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: true
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: FileText
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Editing Word document...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Word document edit complete
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          default: false
        icon:
          type: string
          title: Icon
          default: FileText
        bg_color:
          type: string
          title: Bg Color
          default: '#dbeafe'
        icon_color:
          type: string
          title: Icon Color
          default: '#2563eb'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          default: true
        type:
          type: string
          const: docx
          title: Type
          default: docx
        author_name:
          type: string
          title: Author Name
          description: Author shown on track-change revisions and comments.
          default: Docx Agent
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Track-change author
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Docx Agent
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
      type: object
      title: DocxSettings
    FileSystemSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: File System
        description:
          type: string
          title: Description
          default: Access and read files in the current session
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: true
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: FolderOpen
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Accessing file system...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: File system operation complete
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          default: false
        icon:
          type: string
          title: Icon
          default: FolderOpen
        bg_color:
          type: string
          title: Bg Color
          default: '#fef3c7'
        icon_color:
          type: string
          title: Icon Color
          default: '#f59e0b'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          description: >-
            Whether this tool type is deprecated and should be hidden from the
            UI
          default: false
        type:
          type: string
          const: filesystem
          title: Type
          default: filesystem
      type: object
      title: FileSystemSettings
    FileSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Files
        description:
          type: string
          title: Description
          default: Attach, generate, and work with files.
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: Files
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Working with files...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Done
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        icon:
          type: string
          title: Icon
          default: Files
        bg_color:
          type: string
          title: Bg Color
          default: '#EFF6FF'
        icon_color:
          type: string
          title: Icon Color
          default: '#2B7FFF'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          description: >-
            Whether this tool type is deprecated and should be hidden from the
            UI
          default: false
        type:
          type: string
          const: files
          title: Type
          default: files
        allow_html_graphs:
          type: boolean
          title: Allow Html Graphs
          description: >-
            Instruct the agent to use self-contained HTML (Plotly, Chart.js,
            ...) when generating charts and visualizations.
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Use HTML for charts
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        show_inline:
          type: boolean
          title: Show Inline
          description: Render HTML and images directly in the chat instead of as a card.
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Render artifacts inline
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        custom_author_name:
          type: boolean
          title: Custom Author Name
          description: >-
            Use a custom author for track-change revisions and comments. When
            off, the agent's name is used.
          default: false
          accordion: Word documents (.docx)
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Custom track-change author
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        author_name:
          type: string
          title: Author Name
          description: >-
            Author shown on track-change revisions and comments. Defaults to the
            agent's name when left unset.
          default: ''
          accordion: Word documents (.docx)
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Track-change author
            needs_confirmation: false
            number_of_lines: 1
            placeholder: The agent's name
            show_optional_label: false
            show_refresh: false
            type: text
          rules:
            - config_source: custom_author_name
              type: visible_if
              value: true
          tab: Configuration
          tool_mode: hidden
        enable_python_sandbox:
          type: boolean
          title: Enable Python Sandbox
          description: Run pandas/Python over the workbook in the sandbox.
          default: false
          accordion: Spreadsheets (Excel)
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Python sandbox
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        enable_formula_eval:
          type: boolean
          title: Enable Formula Eval
          description: Evaluate spreadsheet formulas via the formulas library.
          default: false
          accordion: Spreadsheets (Excel)
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Formula evaluation
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        experimental:
          type: boolean
          title: Experimental
          description: Enable every experimental spreadsheet tool above.
          default: false
          accordion: Spreadsheets (Excel)
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: All experimental spreadsheet tools
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
      type: object
      title: FileSettings
      description: >-
        Unified file capability for the agent.


        One master toggle that, when on, lets the user attach files and lets the

        agent generate + present them (``create_file``, ``present_file``,

        ``sandbox_publish_file``). Word (.docx) and Excel editing are offered

        on-demand whenever a matching file is in the session — no separate
        toggles.


        The always-on session-file reader (``list_files``/``read_file``) is a

        separate, hidden capability (``FileSystemSettings``) and is unaffected.
    TodoSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Task Tracking
        description:
          type: string
          title: Description
          default: Track and manage tasks during the conversation
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: ListTodo
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Managing tasks...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Tasks updated
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        icon:
          type: string
          title: Icon
          default: ListTodo
        bg_color:
          type: string
          title: Bg Color
          default: '#f0fdf4'
        icon_color:
          type: string
          title: Icon Color
          default: '#16a34a'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          description: >-
            Whether this tool type is deprecated and should be hidden from the
            UI
          default: false
        type:
          type: string
          const: todos
          title: Type
          default: todos
        enable_subtasks:
          type: boolean
          title: Enable Subtasks
          description: Enable subtask hierarchy and dependency features
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Enable Subtasks
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
      type: object
      title: TodoSettings
      description: |-
        Settings for the task tracking toolset.

        Wraps pydantic-ai-todo's create_todo_toolset() with Noxus settings.
        Todos are persisted in conversation.memory["todos"].
    SandboxSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Sandbox
        description:
          type: string
          title: Description
          default: File operations and command execution in isolated sandbox
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: Terminal
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Working in sandbox...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Command complete
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        icon:
          type: string
          title: Icon
          default: Terminal
        bg_color:
          type: string
          title: Bg Color
          default: '#fef3c7'
        icon_color:
          type: string
          title: Icon Color
          default: '#d97706'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          description: >-
            Whether this tool type is deprecated and should be hidden from the
            UI
          default: false
        type:
          type: string
          const: sandbox
          title: Type
          default: sandbox
        persistent:
          type: boolean
          title: Persistent
          description: Keep sandbox running permanently (no idle timeout)
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Keep Running
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        include_execute:
          type: boolean
          title: Include Execute
          description: Include shell command execution tool
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Shell Execution
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        require_write_approval:
          type: boolean
          title: Require Write Approval
          description: Require user approval for file write/edit operations
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Approve Writes
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        require_execute_approval:
          type: boolean
          title: Require Execute Approval
          description: Require user approval for shell command execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Approve Execution
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
      type: object
      title: SandboxSettings
      description: >-
        Settings for the sandbox console toolset.


        Wraps pydantic-ai-backend's create_console_toolset() with Noxus
        settings.

        Provides file operations (ls, read, write, edit, glob, grep) and
        optional

        shell execution in an isolated sandbox environment.
    ScheduleToolSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Periodic Tasks
        description:
          type: string
          title: Description
          default: Create periodic tasks that call this agent on a schedule
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: Clock
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Managing schedule...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Schedule updated
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        icon:
          type: string
          title: Icon
          default: Clock
        bg_color:
          type: string
          title: Bg Color
          default: '#eff6ff'
        icon_color:
          type: string
          title: Icon Color
          default: '#2563eb'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          description: >-
            Whether this tool type is deprecated and should be hidden from the
            UI
          default: false
        type:
          type: string
          const: schedule_tool
          title: Type
          default: schedule_tool
      type: object
      title: ScheduleToolSettings
    SubAgentSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Task Delegation
        description:
          type: string
          title: Description
          default: Delegate tasks to specialized subagents
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: true
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: Users
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Delegating task...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Task delegated
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          default: false
        icon:
          type: string
          title: Icon
          default: Users
        bg_color:
          type: string
          title: Bg Color
          default: '#f0f9ff'
        icon_color:
          type: string
          title: Icon Color
          default: '#0284c7'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          description: >-
            Whether this tool type is deprecated and should be hidden from the
            UI
          default: false
        type:
          type: string
          const: subagent
          title: Type
          default: subagent
        subagents:
          items:
            $ref: '#/components/schemas/SubAgentDefinition'
          type: array
          title: Subagents
          default: []
      type: object
      title: SubAgentSettings
      description: >-
        Settings for the subagent task delegation toolset.


        The roster and the delegation guidance live on the agent settings

        (``subagents``, ``subagents_instructions``); this variant only carries
        the

        tool's chat display.
    CodeExecutionSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Code Execution
        description:
          type: string
          title: Description
          default: Run Python code in a sandboxed environment
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: Terminal
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Running code...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Code executed
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        icon:
          type: string
          title: Icon
          default: Terminal
        bg_color:
          type: string
          title: Bg Color
          default: '#fef9c3'
        icon_color:
          type: string
          title: Icon Color
          default: '#ca8a04'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          description: >-
            Whether this tool type is deprecated and should be hidden from the
            UI
          default: false
        type:
          type: string
          const: code_execution
          title: Type
          default: code_execution
        timeout:
          type: integer
          title: Timeout
          description: Maximum execution time in seconds
          default: 60
          display:
            col_span: 12
            hide_number: false
            is_disabled: false
            is_subconfig: false
            label: Timeout (seconds)
            max: 300
            min: 10
            needs_confirmation: false
            show_optional_label: false
            step: 10
            type: number_slider
          tab: Configuration
          tool_mode: hidden
      type: object
      title: CodeExecutionSettings
    AgentMemorySettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Agent Memory
        description:
          type: string
          title: Description
          default: Persistent memory across all conversations
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: BookOpen
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Accessing agent memory...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Memory operation complete
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          default: false
        icon:
          type: string
          title: Icon
          default: BookOpen
        bg_color:
          type: string
          title: Bg Color
          default: '#fef3c7'
        icon_color:
          type: string
          title: Icon Color
          default: '#d97706'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          description: >-
            Whether this tool type is deprecated and should be hidden from the
            UI
          default: false
        type:
          type: string
          const: agent_memory
          title: Type
          default: agent_memory
      type: object
      title: AgentMemorySettings
      description: |-
        Settings for the persistent agent memory toolset.

        Memories are stored in assistant.definition["memories"] JSONB
        and persist across all conversations with this agent.
    CreateFilesSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Create Files
        description:
          type: string
          title: Description
          default: Generate files and surface them in the chat.
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: FileInput
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Working with files...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Done
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          default: false
        icon:
          type: string
          title: Icon
          default: FileInput
        bg_color:
          type: string
          title: Bg Color
          default: '#EFF6FF'
        icon_color:
          type: string
          title: Icon Color
          default: '#2B7FFF'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          default: true
        type:
          type: string
          const: create_files
          title: Type
          default: create_files
        allow_html_graphs:
          type: boolean
          title: Allow Html Graphs
          description: >-
            Instruct the agent to use self-contained HTML (Plotly, Chart.js,
            ...) when generating charts and visualizations.
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Use HTML for charts
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        show_inline:
          type: boolean
          title: Show Inline
          description: Render HTML and images directly in the chat instead of as a card.
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Render artifacts inline
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
      type: object
      title: CreateFilesSettings
      description: >-
        Unified setting for the file creation + presentation tools.


        Enables ``create_file`` (generate text/markdown/html/json/csv/code into
        the

        session) and ``present_file`` (surface a session file as a
        preview/download

        card in the chat). They share one toggle because they're useless apart —

        creating a file the user can't see is dead weight, and presenting
        nothing

        is a no-op.
    DocumentationSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Documentation
        description:
          type: string
          title: Description
          default: Search and read Noxus platform documentation
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: BookOpen
          tab: Configuration
          tool_mode: hidden
          visible: false
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Searching documentation...
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: Start message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when searching docs.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Documentation found
          col_span: 6
          display:
            col_span: 12
            is_code: false
            is_disabled: false
            is_subconfig: false
            is_textarea: false
            label: End message
            needs_confirmation: false
            number_of_lines: 1
            placeholder: Message displayed when search completes.
            show_optional_label: false
            show_refresh: false
            type: text
          tab: Configuration
          tool_mode: hidden
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        icon:
          type: string
          title: Icon
          default: BookOpen
        bg_color:
          type: string
          title: Bg Color
          default: '#EFF6FF'
        icon_color:
          type: string
          title: Icon Color
          default: '#2B7FFF'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          description: >-
            Whether this tool type is deprecated and should be hidden from the
            UI
          default: false
        type:
          type: string
          const: documentation
          title: Type
          default: documentation
      type: object
      title: DocumentationSettings
    ImageGenerationSettings-Output:
      properties:
        title:
          type: string
          title: Title
          default: Image Generation
        description:
          type: string
          title: Description
          default: Generate images from text prompts, shown inline in the chat.
        category:
          type: string
          enum:
            - QuickAction
            - Flows
            - Knowledge
            - Actions
            - MCP
            - Chatflow
            - Agents
          title: Category
          description: The category of the tool
          default: QuickAction
        enabled:
          type: boolean
          title: Enabled
          default: false
        tool_display_icon:
          type: string
          title: Tool Display Icon
          default: ImagePlus
        tool_display_message_start:
          type: string
          title: Tool Display Message Start
          default: Generating image...
        tool_display_message_end:
          type: string
          title: Tool Display Message End
          default: Image generated
        extra_instructions:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
          description: Any extra instructions for the tool
          display:
            allow_reference_mentions: false
            col_span: 12
            connector_name: ''
            enable_heuristics: true
            heuristic_context: >-
              Tool execution conditions specifying when and how the agent should
              use this tool
            heuristic_types:
              - clarity
              - specificity
              - actionability
            improver_prompt: PromptImproverPromptV2
            is_disabled: false
            is_subconfig: false
            label: Execution Conditions
            needs_confirmation: false
            number_of_lines: 5
            show_optional_label: false
            type: rich_text_variables_ai
          tab: Configuration
          tool_mode: hidden
        requires_approval:
          type: boolean
          title: Requires Approval
          description: Whether tool calls require user approval before execution
          default: false
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Require Approval
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
        visible:
          type: boolean
          title: Visible
          description: Whether the tool is visible
          default: true
          display:
            col_span: 12
            is_disabled: false
            is_subconfig: false
            label: Visible
            needs_confirmation: false
            show_optional_label: false
            toggle_position: right
            type: toggle
          tab: Configuration
          tool_mode: hidden
          visible: false
        icon:
          type: string
          title: Icon
          default: ImagePlus
        bg_color:
          type: string
          title: Bg Color
          default: '#FDF4FF'
        icon_color:
          type: string
          title: Icon Color
          default: '#C026D3'
        chatflow_usable:
          type: boolean
          title: Chatflow Usable
          description: Whether the tool is usable in a chatflow
          default: true
        deprecated:
          type: boolean
          title: Deprecated
          description: >-
            Whether this tool type is deprecated and should be hidden from the
            UI
          default: false
        type:
          type: string
          const: image_generation
          title: Type
          default: image_generation
      type: object
      title: ImageGenerationSettings
      description: |-
        Image generation quick action.

        When on, the agent can generate images from text prompts with any
        image-generation-capable model in the registry; results are surfaced
        inline in the chat.
    MCPServerBinding:
      properties:
        credential_id:
          type: string
          format: uuid
          title: Credential Id
        enabled:
          type: boolean
          title: Enabled
          default: true
        selected_tools:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Selected Tools
      type: object
      required:
        - credential_id
      title: MCPServerBinding
      description: >-
        Per-agent binding to a workspace MCP credential.


        ``selected_tools=None`` means "every tool the server exposes minus the

        credential's ``disabled_tools``" — new server tools flow through without
        a

        re-probe. An explicit list is a per-agent allowlist narrowed further by
        the

        workspace denials.
    SkillConfig:
      properties:
        name:
          type: string
          title: Name
        description:
          type: string
          title: Description
          default: ''
        tags:
          items:
            type: string
          type: array
          title: Tags
        version:
          type: string
          title: Version
          default: 1.0.0
        author:
          type: string
          title: Author
          default: ''
        instructions:
          type: string
          title: Instructions
          default: ''
        enabled:
          type: boolean
          title: Enabled
          default: true
        resources:
          additionalProperties:
            type: string
          type: object
          title: Resources
      type: object
      required:
        - name
      title: SkillConfig
      description: |-
        Full skill definition stored in agent settings.

        Skills are markdown-based instruction packages that extend agent
        capabilities.  Stored directly in the agent's ``definition`` JSONB
        column — no separate table or migration needed.
    SubAgentDefinition:
      properties:
        name:
          type: string
          title: Name
        description:
          type: string
          title: Description
        instructions:
          type: string
          title: Instructions
        model:
          items:
            type: string
          type: array
          title: Model
          default: []
        enabled:
          type: boolean
          title: Enabled
          default: true
      type: object
      required:
        - name
        - description
        - instructions
      title: SubAgentDefinition
      description: Single subagent config from frontend.
    GuidelineConfig:
      properties:
        id:
          type: string
          title: Id
        condition:
          type: string
          title: Condition
        action:
          type: string
          title: Action
        priority:
          type: string
          title: Priority
          default: NORMAL
        tags:
          items:
            type: string
          type: array
          title: Tags
        enabled:
          type: boolean
          title: Enabled
          default: true
        tool_association:
          anyOf:
            - $ref: '#/components/schemas/ToolAssociationConfig'
            - type: 'null'
        tool_associations:
          items:
            $ref: '#/components/schemas/ToolAssociationConfig'
          type: array
          title: Tool Associations
      type: object
      required:
        - id
        - condition
        - action
      title: GuidelineConfig
      description: A single When/Then behavioral guideline stored in agent settings.
    GlossaryTermConfig:
      properties:
        term:
          type: string
          title: Term
        definition:
          type: string
          title: Definition
        synonyms:
          items:
            type: string
          type: array
          title: Synonyms
      type: object
      required:
        - term
        - definition
      title: GlossaryTermConfig
      description: A glossary term definition stored in agent settings.
    AgentMemoryEntry:
      properties:
        id:
          type: string
          title: Id
        content:
          type: string
          title: Content
        category:
          type: string
          title: Category
          default: general
        created_at:
          type: string
          title: Created At
          default: ''
        updated_at:
          type: string
          title: Updated At
          default: ''
      type: object
      required:
        - id
        - content
      title: AgentMemoryEntry
      description: A single persistent memory entry stored in agent settings.
    AgentFileConfig-Output:
      properties:
        file:
          $ref: '#/components/schemas/File-Output'
        context:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
        enabled:
          type: boolean
          title: Enabled
          default: true
        delimiter:
          anyOf:
            - type: string
            - type: 'null'
          title: Delimiter
      type: object
      required:
        - file
      title: AgentFileConfig
      description: >-
        A file pre-loaded into every conversation of an agent, with context.


        Stored directly in the agent's ``definition`` JSONB column. The file is

        uploaded in the agent settings (``file.uri`` is a ``spot://``
        reference);

        ``context`` is shown to the agent so it knows what the file is and when
        to

        read it via the always-on session-file tools.
    AgentDatabaseConfig-Output:
      properties:
        credential_id:
          type: string
          format: uuid
          title: Credential Id
        context:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
        enabled:
          type: boolean
          title: Enabled
          default: true
        selected_tables:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Selected Tables
        max_rows:
          type: integer
          maximum: 10000
          minimum: 1
          title: Max Rows
          default: 100
        query_timeout_seconds:
          type: integer
          maximum: 300
          minimum: 1
          title: Query Timeout Seconds
          default: 30
      type: object
      required:
        - credential_id
      title: AgentDatabaseConfig
      description: |-
        A SQL database, referenced by stored credential id, the agent can query
        read-only. ``selected_tables=None`` means every table is visible.
    AgentTableConfig-Output:
      properties:
        table_id:
          type: string
          format: uuid
          title: Table Id
        context:
          anyOf:
            - $ref: '#/components/schemas/NoxusTipTapDocument-Output'
            - type: 'null'
        enabled:
          type: boolean
          title: Enabled
          default: true
        read_only:
          type: boolean
          title: Read Only
          default: true
        max_rows:
          type: integer
          maximum: 10000
          minimum: 1
          title: Max Rows
          default: 100
        query_timeout_seconds:
          type: integer
          maximum: 300
          minimum: 1
          title: Query Timeout Seconds
          default: 30
      type: object
      required:
        - table_id
      title: AgentTableConfig
      description: >-
        A single workspace custom table the agent can query read-only, with its

        own context and limits. Queries run as the workspace's read-only tenant
        role

        and are restricted to this table.
    CustomInsightDefinition:
      properties:
        name:
          type: string
          maxLength: 200
          title: Name
        prompt:
          type: string
          maxLength: 2000
          title: Prompt
        scope:
          type: string
          enum:
            - all
            - resolved
            - unresolved
            - escalated
            - abandoned
            - rated-high
            - rated-low
          title: Scope
          default: all
      type: object
      required:
        - name
        - prompt
      title: CustomInsightDefinition
      description: A user-defined situation to detect in a conversation (binary).
    UserMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: user
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: user
          title: Type
          default: user
        content:
          type: string
          title: Content
          default: ''
        tool:
          anyOf:
            - type: string
              enum:
                - kb_qa
                - web_research
                - workflow
                - list_workflows
                - run_integration
                - noxus_qa
                - human_in_the_loop
            - type: string
            - type: 'null'
          title: Tool
        kb_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Kb Id
        workflow_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workflow Id
        files:
          anyOf:
            - items:
                $ref: '#/components/schemas/ConversationFile'
              type: array
            - type: 'null'
          title: Files
        model_selection:
          anyOf:
            - items:
                type: string
              type: array
            - type: string
            - type: 'null'
          title: Model Selection
        images:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Images
        refresh_message:
          type: boolean
          title: Refresh Message
          default: false
        new_chat:
          type: boolean
          title: New Chat
          default: false
      type: object
      title: UserMessage
    ToolCallMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: function
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        tool_type:
          anyOf:
            - type: string
              enum:
                - kb_qa
                - web_research
                - workflow
                - list_workflows
                - run_integration
                - noxus_qa
                - human_in_the_loop
            - type: string
          title: Tool Type
        type:
          type: string
          const: tool_call
          title: Type
          default: tool_call
        display_message_start:
          type: string
          title: Display Message Start
          default: Running tool...
        display_message_end:
          type: string
          title: Display Message End
          default: Tool finished running
        icon:
          type: string
          title: Icon
          default: Cog
        run_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Run Id
      type: object
      required:
        - tool_type
      title: ToolCallMessage
    ToolCalledMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: function
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        tool_type:
          anyOf:
            - type: string
              enum:
                - kb_qa
                - web_research
                - workflow
                - list_workflows
                - run_integration
                - noxus_qa
                - human_in_the_loop
            - type: string
          title: Tool Type
        type:
          type: string
          const: tool_called
          title: Type
          default: tool_called
        content:
          type: string
          title: Content
      type: object
      required:
        - tool_type
        - content
      title: ToolCalledMessage
    ToolCalledMessageEnd:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: function
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        tool_type:
          anyOf:
            - type: string
              enum:
                - kb_qa
                - web_research
                - workflow
                - list_workflows
                - run_integration
                - noxus_qa
                - human_in_the_loop
            - type: string
          title: Tool Type
        type:
          type: string
          const: tool_called_end
          title: Type
          default: tool_called_end
        content:
          type: string
          title: Content
      type: object
      required:
        - tool_type
        - content
      title: ToolCalledMessageEnd
    MessageEnd:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: message_end
          title: Type
          default: message_end
        content:
          type: string
          title: Content
          default: ''
        pydantic_messages:
          anyOf:
            - {}
            - type: 'null'
          title: Pydantic Messages
        noxus_messages:
          anyOf:
            - items:
                $ref: '#/components/schemas/BaseMessage'
              type: array
            - type: 'null'
          title: Noxus Messages
      type: object
      title: MessageEnd
    MarkdownMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: markdown
          title: Type
          default: markdown
        content:
          type: string
          title: Content
          default: ''
      type: object
      required:
        - role
      title: MarkdownMessage
    AudioReferenceMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        kb_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Kb Id
        doc_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Doc Id
        file_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: File Id
        file_name:
          anyOf:
            - type: string
            - type: 'null'
          title: File Name
        from_timestamp:
          type: string
          format: duration
          title: From Timestamp
        to_timestamp:
          type: string
          format: duration
          title: To Timestamp
        type:
          type: string
          const: audio
          title: Type
          default: audio
      type: object
      required:
        - from_timestamp
        - to_timestamp
      title: AudioReferenceMessage
    ImageReferenceMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        kb_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Kb Id
        doc_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Doc Id
        file_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: File Id
        file_name:
          anyOf:
            - type: string
            - type: 'null'
          title: File Name
        type:
          type: string
          const: image
          title: Type
          default: image
      type: object
      title: ImageReferenceMessage
    VideoReferenceMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        kb_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Kb Id
        doc_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Doc Id
        file_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: File Id
        file_name:
          anyOf:
            - type: string
            - type: 'null'
          title: File Name
        from_timestamp:
          type: string
          format: duration
          title: From Timestamp
        to_timestamp:
          type: string
          format: duration
          title: To Timestamp
        type:
          type: string
          const: video
          title: Type
          default: video
      type: object
      required:
        - from_timestamp
        - to_timestamp
      title: VideoReferenceMessage
    DocumentReferenceMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        kb_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Kb Id
        doc_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Doc Id
        file_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: File Id
        file_name:
          anyOf:
            - type: string
            - type: 'null'
          title: File Name
        type:
          type: string
          const: document
          title: Type
          default: document
        quote:
          type: string
          title: Quote
        page_label:
          type: string
          title: Page Label
        ref_num:
          type: integer
          title: Ref Num
        content_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Content Type
        url:
          anyOf:
            - type: string
            - type: 'null'
          title: Url
      type: object
      required:
        - quote
        - page_label
        - ref_num
      title: DocumentReferenceMessage
    WebReferenceMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: web_reference
          title: Type
          default: web_reference
        quote:
          type: string
          title: Quote
        title:
          type: string
          title: Title
        ref_label:
          type: string
          title: Ref Label
        url:
          type: string
          title: Url
        image_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Image Url
      type: object
      required:
        - quote
        - title
        - ref_label
        - url
      title: WebReferenceMessage
    ImageCarouselMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: image_carousel
          title: Type
          default: image_carousel
        images:
          items:
            anyOf:
              - $ref: '#/components/schemas/ImageReferenceMessage'
              - $ref: '#/components/schemas/DocumentReferenceMessage'
          type: array
          title: Images
      type: object
      required:
        - images
      title: ImageCarouselMessage
    SourceReferenceMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: source_reference
          title: Type
          default: source_reference
        references:
          items:
            anyOf:
              - $ref: '#/components/schemas/DocumentReferenceMessage'
              - $ref: '#/components/schemas/WebReferenceMessage'
              - $ref: '#/components/schemas/YoutubeReferenceMessage'
          type: array
          title: References
      type: object
      required:
        - references
      title: SourceReferenceMessage
    SystemMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: system
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: system
          title: Type
          default: system
        content:
          type: string
          title: Content
          default: ''
      type: object
      title: SystemMessage
    ErrorMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        content:
          type: string
          title: Content
        show_to_user:
          type: boolean
          title: Show To User
          default: true
        close_delay:
          anyOf:
            - type: integer
            - type: 'null'
          title: Close Delay
        type:
          type: string
          const: error
          title: Type
          default: error
        error_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Error Type
      type: object
      required:
        - content
      title: ErrorMessage
    WarningMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        content:
          type: string
          title: Content
        show_to_user:
          type: boolean
          title: Show To User
          default: true
        close_delay:
          anyOf:
            - type: integer
            - type: 'null'
          title: Close Delay
        type:
          type: string
          const: warning
          title: Type
          default: warning
        warning_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Warning Type
      type: object
      required:
        - content
      title: WarningMessage
    InfoMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        content:
          type: string
          title: Content
        show_to_user:
          type: boolean
          title: Show To User
          default: true
        close_delay:
          anyOf:
            - type: integer
            - type: 'null'
          title: Close Delay
        type:
          type: string
          const: info
          title: Type
          default: info
      type: object
      required:
        - content
      title: InfoMessage
    SuccessMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        content:
          type: string
          title: Content
        show_to_user:
          type: boolean
          title: Show To User
          default: true
        close_delay:
          anyOf:
            - type: integer
            - type: 'null'
          title: Close Delay
        type:
          type: string
          const: success
          title: Type
          default: success
      type: object
      required:
        - content
      title: SuccessMessage
    SetConversationTitle:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: set_conversation_title
          title: Type
          default: set_conversation_title
        content:
          type: string
          title: Content
      type: object
      required:
        - content
      title: SetConversationTitle
    InternalToolResultMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: function
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        tool_type:
          anyOf:
            - type: string
              enum:
                - kb_qa
                - web_research
                - workflow
                - list_workflows
                - run_integration
                - noxus_qa
                - human_in_the_loop
            - type: string
          title: Tool Type
        type:
          type: string
          const: tool_result
          title: Type
          default: tool_result
        content:
          type: string
          title: Content
      type: object
      required:
        - tool_type
        - content
      title: InternalToolResultMessage
    YoutubeReferenceMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: youtube_reference
          title: Type
          default: youtube_reference
        url:
          type: string
          title: Url
      type: object
      required:
        - url
      title: YoutubeReferenceMessage
    StateTransitionMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: state_transition
          title: Type
          default: state_transition
        data:
          additionalProperties: true
          type: object
          title: Data
        next_state_key:
          type: string
          title: Next State Key
      type: object
      required:
        - data
        - next_state_key
      title: StateTransitionMessage
    ChatflowExtractionMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: chatflow_extraction
          title: Type
          default: chatflow_extraction
        data:
          additionalProperties: true
          type: object
          title: Data
      type: object
      required:
        - data
      title: ChatflowExtractionMessage
    ConversationEndMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: conversation_end
          title: Type
          default: conversation_end
      type: object
      title: ConversationEndMessage
    HumanInTheLoopMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: human_in_the_loop
          title: Type
          default: human_in_the_loop
        title:
          type: string
          title: Title
        description:
          type: string
          title: Description
        reason:
          type: string
          title: Reason
        priority:
          type: string
          enum:
            - low
            - medium
            - high
            - critical
          title: Priority
      type: object
      required:
        - title
        - description
        - reason
        - priority
      title: HumanInTheLoopMessage
    MemoryMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: memory
          title: Type
          default: memory
        content:
          additionalProperties: true
          type: object
          title: Content
      type: object
      required:
        - content
      title: MemoryMessage
    KBContextMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: kb_context
          title: Type
          default: kb_context
        context:
          $ref: '#/components/schemas/QAContext'
      type: object
      required:
        - context
      title: KBContextMessage
    WebpageContextMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: webpage_context
          title: Type
          default: webpage_context
        context:
          $ref: '#/components/schemas/WebpageContext'
      type: object
      required:
        - context
      title: WebpageContextMessage
    HumanInTheLoopAssignedMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: human_in_the_loop_assigned
          title: Type
          default: human_in_the_loop_assigned
        assigned_to:
          type: string
          format: uuid
          title: Assigned To
      type: object
      required:
        - assigned_to
      title: HumanInTheLoopAssignedMessage
    ThinkingMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: assistant
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: thinking
          title: Type
          default: thinking
        content:
          type: string
          title: Content
          default: ''
      type: object
      title: ThinkingMessage
    ThinkingEndedMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: thinking_ended
          title: Type
          default: thinking_ended
        seconds_duration:
          type: integer
          title: Seconds Duration
      type: object
      required:
        - seconds_duration
      title: ThinkingEndedMessage
    ClearConversationStreamMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: clear_conversation_stream
          title: Type
          default: clear_conversation_stream
        content:
          type: string
          title: Content
          default: ''
      type: object
      title: ClearConversationStreamMessage
    WorkflowRunningMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: workflow_running
          title: Type
          default: workflow_running
        workflow_id:
          type: string
          title: Workflow Id
        run_id:
          type: string
          title: Run Id
        display_message_start:
          type: string
          title: Display Message Start
          default: Running workflow...
        display_message_end:
          type: string
          title: Display Message End
          default: Workflow finished running
      type: object
      required:
        - workflow_id
        - run_id
      title: WorkflowRunningMessage
    ChatflowTransitionMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: chatflow_transition
          title: Type
          default: chatflow_transition
        content:
          type: string
          title: Content
      type: object
      required:
        - content
      title: ChatflowTransitionMessage
    PresentedFileMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
          default: noxus
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
        type:
          type: string
          const: presented_file
          title: Type
          default: presented_file
        file_id:
          type: string
          title: File Id
        name:
          type: string
          title: Name
        content_type:
          type: string
          title: Content Type
        url:
          type: string
          title: Url
        size:
          anyOf:
            - type: integer
            - type: 'null'
          title: Size
        caption:
          anyOf:
            - type: string
            - type: 'null'
          title: Caption
        show_inline:
          type: boolean
          title: Show Inline
          default: false
        source_image:
          type: boolean
          title: Source Image
          default: false
      type: object
      required:
        - file_id
        - name
        - content_type
        - url
      title: PresentedFileMessage
      description: >-
        Persisted record of a file the agent surfaced via ``present_file``.


        Lives alongside the assistant message in ``Message.message_parts_`` so
        the

        file widget survives conversation reload and so the data chunk does not

        need to round-trip through the FE (which causes 422s on the next turn).
    ModelRequest:
      properties:
        parts:
          items:
            oneOf:
              - $ref: '#/components/schemas/SystemPromptPart'
              - $ref: '#/components/schemas/UserPromptPart'
              - $ref: '#/components/schemas/ToolSearchReturnPart'
              - $ref: '#/components/schemas/LoadCapabilityReturnPart'
              - $ref: '#/components/schemas/ToolReturnPart'
              - $ref: '#/components/schemas/RetryPromptPart'
          type: array
          title: Parts
        timestamp:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Timestamp
        instructions:
          anyOf:
            - type: string
            - type: 'null'
          title: Instructions
        kind:
          type: string
          const: request
          title: Kind
          default: request
        run_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Run Id
        conversation_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Conversation Id
        metadata:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Metadata
        state:
          type: string
          enum:
            - complete
            - interrupted
          title: State
          default: complete
      type: object
      required:
        - parts
      title: ModelRequest
    ModelResponse:
      properties:
        parts:
          items:
            oneOf:
              - $ref: '#/components/schemas/TextPart'
              - $ref: '#/components/schemas/ToolSearchCallPart'
              - $ref: '#/components/schemas/LoadCapabilityCallPart'
              - $ref: '#/components/schemas/ToolCallPart'
              - $ref: '#/components/schemas/NativeToolSearchCallPart'
              - $ref: '#/components/schemas/NativeToolCallPart'
              - $ref: '#/components/schemas/NativeToolSearchReturnPart'
              - $ref: '#/components/schemas/NativeToolReturnPart'
              - $ref: '#/components/schemas/ThinkingPart'
              - $ref: '#/components/schemas/CompactionPart'
              - $ref: '#/components/schemas/FilePart'
          type: array
          title: Parts
        usage:
          $ref: '#/components/schemas/RequestUsage'
        model_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Model Name
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        kind:
          type: string
          const: response
          title: Kind
          default: response
        provider_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Name
        provider_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Url
        provider_details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Provider Details
        provider_response_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Response Id
        finish_reason:
          anyOf:
            - type: string
              enum:
                - stop
                - length
                - content_filter
                - tool_call
                - error
            - type: 'null'
          title: Finish Reason
        run_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Run Id
        conversation_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Conversation Id
        metadata:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Metadata
        state:
          type: string
          enum:
            - complete
            - incomplete
            - suspended
            - interrupted
          title: State
          default: complete
      type: object
      required:
        - parts
      title: ModelResponse
    FeedbackMeta:
      properties:
        feedback_reason:
          anyOf:
            - type: string
            - type: 'null'
          title: Feedback Reason
        comment:
          anyOf:
            - type: string
            - type: 'null'
          title: Comment
      type: object
      title: FeedbackMeta
    SenderRefSchema:
      properties:
        type:
          type: string
          title: Type
          default: external
        user_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: User Id
        agent_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Agent Id
        external_participant:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: External Participant
      type: object
      title: SenderRefSchema
      description: External participant identity on a message.
    TextUIPart:
      properties:
        type:
          type: string
          const: text
          title: Type
          default: text
        text:
          type: string
          title: Text
        state:
          anyOf:
            - type: string
              enum:
                - streaming
                - done
            - type: 'null'
          title: State
        providerMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Providermetadata
      additionalProperties: false
      type: object
      required:
        - text
      title: TextUIPart
      description: A text part of a message.
    ReasoningUIPart:
      properties:
        type:
          type: string
          const: reasoning
          title: Type
          default: reasoning
        text:
          type: string
          title: Text
        state:
          anyOf:
            - type: string
              enum:
                - streaming
                - done
            - type: 'null'
          title: State
        providerMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Providermetadata
      additionalProperties: false
      type: object
      required:
        - text
      title: ReasoningUIPart
      description: A reasoning part of a message.
    ToolInputStreamingPart:
      properties:
        type:
          type: string
          pattern: ^tool-
          title: Type
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: input-streaming
          title: State
          default: input-streaming
        input:
          anyOf:
            - {}
            - type: 'null'
          title: Input
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - type
        - toolCallId
      title: ToolInputStreamingPart
      description: Tool part in input-streaming state.
    ToolInputAvailablePart:
      properties:
        type:
          type: string
          pattern: ^tool-
          title: Type
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: input-available
          title: State
          default: input-available
        input:
          anyOf:
            - {}
            - type: 'null'
          title: Input
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - type
        - toolCallId
      title: ToolInputAvailablePart
      description: Tool part in input-available state.
    ToolOutputAvailablePart:
      properties:
        type:
          type: string
          pattern: ^tool-
          title: Type
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: output-available
          title: State
          default: output-available
        input:
          anyOf:
            - {}
            - type: 'null'
          title: Input
        output:
          anyOf:
            - {}
            - type: 'null'
          title: Output
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        preliminary:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Preliminary
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - type
        - toolCallId
      title: ToolOutputAvailablePart
      description: Tool part in output-available state.
    ToolOutputErrorPart:
      properties:
        type:
          type: string
          pattern: ^tool-
          title: Type
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: output-error
          title: State
          default: output-error
        input:
          anyOf:
            - {}
            - type: 'null'
          title: Input
        rawInput:
          anyOf:
            - {}
            - type: 'null'
          title: Rawinput
        errorText:
          type: string
          title: Errortext
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - type
        - toolCallId
        - errorText
      title: ToolOutputErrorPart
      description: Tool part in output-error state.
    ToolApprovalRequestedPart:
      properties:
        type:
          type: string
          pattern: ^tool-
          title: Type
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: approval-requested
          title: State
          default: approval-requested
        input:
          anyOf:
            - {}
            - type: 'null'
          title: Input
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - type
        - toolCallId
      title: ToolApprovalRequestedPart
      description: Tool part in approval-requested state (awaiting user decision).
    ToolApprovalRespondedPart:
      properties:
        type:
          type: string
          pattern: ^tool-
          title: Type
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: approval-responded
          title: State
          default: approval-responded
        input:
          anyOf:
            - {}
            - type: 'null'
          title: Input
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - type
        - toolCallId
      title: ToolApprovalRespondedPart
      description: >-
        Tool part in approval-responded state (user approved/denied, execution
        pending).
    ToolOutputDeniedPart:
      properties:
        type:
          type: string
          pattern: ^tool-
          title: Type
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: output-denied
          title: State
          default: output-denied
        input:
          anyOf:
            - {}
            - type: 'null'
          title: Input
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - type
        - toolCallId
      title: ToolOutputDeniedPart
      description: Tool part in output-denied state (tool was denied, terminal state).
    DynamicToolInputStreamingPart:
      properties:
        type:
          type: string
          const: dynamic-tool
          title: Type
          default: dynamic-tool
        toolName:
          type: string
          title: Toolname
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: input-streaming
          title: State
          default: input-streaming
        input:
          anyOf:
            - {}
            - type: 'null'
          title: Input
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - toolName
        - toolCallId
      title: DynamicToolInputStreamingPart
      description: Dynamic tool part in input-streaming state.
    DynamicToolInputAvailablePart:
      properties:
        type:
          type: string
          const: dynamic-tool
          title: Type
          default: dynamic-tool
        toolName:
          type: string
          title: Toolname
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: input-available
          title: State
          default: input-available
        input:
          title: Input
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - toolName
        - toolCallId
        - input
      title: DynamicToolInputAvailablePart
      description: Dynamic tool part in input-available state.
    DynamicToolOutputAvailablePart:
      properties:
        type:
          type: string
          const: dynamic-tool
          title: Type
          default: dynamic-tool
        toolName:
          type: string
          title: Toolname
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: output-available
          title: State
          default: output-available
        input:
          title: Input
        output:
          title: Output
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        preliminary:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Preliminary
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - toolName
        - toolCallId
        - input
        - output
      title: DynamicToolOutputAvailablePart
      description: Dynamic tool part in output-available state.
    DynamicToolOutputErrorPart:
      properties:
        type:
          type: string
          const: dynamic-tool
          title: Type
          default: dynamic-tool
        toolName:
          type: string
          title: Toolname
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: output-error
          title: State
          default: output-error
        input:
          title: Input
        errorText:
          type: string
          title: Errortext
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - toolName
        - toolCallId
        - input
        - errorText
      title: DynamicToolOutputErrorPart
      description: Dynamic tool part in output-error state.
    DynamicToolApprovalRequestedPart:
      properties:
        type:
          type: string
          const: dynamic-tool
          title: Type
          default: dynamic-tool
        toolName:
          type: string
          title: Toolname
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: approval-requested
          title: State
          default: approval-requested
        input:
          title: Input
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - toolName
        - toolCallId
        - input
      title: DynamicToolApprovalRequestedPart
      description: Dynamic tool part in approval-requested state (awaiting user decision).
    DynamicToolApprovalRespondedPart:
      properties:
        type:
          type: string
          const: dynamic-tool
          title: Type
          default: dynamic-tool
        toolName:
          type: string
          title: Toolname
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: approval-responded
          title: State
          default: approval-responded
        input:
          title: Input
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - toolName
        - toolCallId
        - input
      title: DynamicToolApprovalRespondedPart
      description: >-
        Dynamic tool part in approval-responded state (user approved/denied,
        execution pending).
    DynamicToolOutputDeniedPart:
      properties:
        type:
          type: string
          const: dynamic-tool
          title: Type
          default: dynamic-tool
        toolName:
          type: string
          title: Toolname
        toolCallId:
          type: string
          title: Toolcallid
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        state:
          type: string
          const: output-denied
          title: State
          default: output-denied
        input:
          title: Input
        providerExecuted:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Providerexecuted
        callProviderMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Callprovidermetadata
        approval:
          anyOf:
            - $ref: '#/components/schemas/ToolApprovalRequested'
            - $ref: '#/components/schemas/ToolApprovalResponded'
            - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
        - toolName
        - toolCallId
        - input
      title: DynamicToolOutputDeniedPart
      description: >-
        Dynamic tool part in output-denied state (tool was denied, terminal
        state).
    SourceUrlUIPart:
      properties:
        type:
          type: string
          const: source-url
          title: Type
          default: source-url
        sourceId:
          type: string
          title: Sourceid
        url:
          type: string
          title: Url
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        providerMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Providermetadata
      additionalProperties: false
      type: object
      required:
        - sourceId
        - url
      title: SourceUrlUIPart
      description: A source part of a message.
    SourceDocumentUIPart:
      properties:
        type:
          type: string
          const: source-document
          title: Type
          default: source-document
        sourceId:
          type: string
          title: Sourceid
        mediaType:
          type: string
          title: Mediatype
        title:
          type: string
          title: Title
        filename:
          anyOf:
            - type: string
            - type: 'null'
          title: Filename
        providerMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Providermetadata
      additionalProperties: false
      type: object
      required:
        - sourceId
        - mediaType
        - title
      title: SourceDocumentUIPart
      description: A document source part of a message.
    FileUIPart:
      properties:
        type:
          type: string
          const: file
          title: Type
          default: file
        mediaType:
          type: string
          title: Mediatype
        filename:
          anyOf:
            - type: string
            - type: 'null'
          title: Filename
        url:
          type: string
          title: Url
        providerMetadata:
          anyOf:
            - additionalProperties:
                additionalProperties: true
                type: object
              type: object
            - type: 'null'
          title: Providermetadata
      additionalProperties: false
      type: object
      required:
        - mediaType
        - url
      title: FileUIPart
      description: A file part of a message.
    DataUIPart:
      properties:
        type:
          type: string
          pattern: ^data-
          title: Type
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        data:
          title: Data
      additionalProperties: false
      type: object
      required:
        - type
        - data
      title: DataUIPart
      description: Data part with dynamic type based on data name.
    StepStartUIPart:
      properties:
        type:
          type: string
          const: step-start
          title: Type
          default: step-start
      additionalProperties: false
      type: object
      title: StepStartUIPart
      description: A step boundary part of a message.
    TiptapDocument-Output:
      properties:
        type:
          type: string
          title: Type
          default: doc
        content:
          items:
            $ref: '#/components/schemas/Node-Output'
          type: array
          title: Content
          default: []
      type: object
      title: TiptapDocument
    Transition:
      properties:
        node_label:
          type: string
          title: Node Label
        transition_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Transition Key
        transition_criteria:
          type: string
          title: Transition Criteria
      type: object
      required:
        - node_label
        - transition_criteria
      title: Transition
    ActionToolConfig:
      properties:
        config_overrides:
          additionalProperties: true
          type: object
          title: Config Overrides
        input_overrides:
          additionalProperties: true
          type: object
          title: Input Overrides
        exposed_configs:
          items:
            type: string
          type: array
          title: Exposed Configs
        exposed_inputs:
          items:
            type: string
          type: array
          title: Exposed Inputs
      type: object
      title: ActionToolConfig
      description: >-
        Configuration for hardcoded values and exposed parameters in action
        tools.


        For each config parameter or input connector, you either:

        1. Hardcode it (store value in overrides, don't expose to LLM)

        2. Expose it to LLM (add to exposed list, LLM provides value)
    ToolAssociationConfig:
      properties:
        tool_names:
          items:
            type: string
          type: array
          title: Tool Names
        mode:
          type: string
          title: Mode
          default: PREFER
      type: object
      title: ToolAssociationConfig
      description: Tool enforcement configuration for a guideline.
    File-Output:
      properties:
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        uri:
          type: string
          title: Uri
        name:
          type: string
          title: Name
        content_type:
          type: string
          title: Content Type
          default: text/plain
        size:
          anyOf:
            - type: integer
            - type: 'null'
          title: Size
        content_metadata:
          anyOf:
            - oneOf:
                - $ref: '#/components/schemas/PdfMetadata'
                - $ref: '#/components/schemas/SpreadsheetMetadata'
                - $ref: '#/components/schemas/TabularMetadata'
              discriminator:
                propertyName: kind
                mapping:
                  pdf:
                    $ref: '#/components/schemas/PdfMetadata'
                  spreadsheet:
                    $ref: '#/components/schemas/SpreadsheetMetadata'
                  tabular:
                    $ref: '#/components/schemas/TabularMetadata'
            - type: 'null'
          title: Content Metadata
        source_type:
          $ref: '#/components/schemas/SourceType'
          default: Document
        source_metadata:
          anyOf:
            - $ref: '#/components/schemas/SourceMetadata'
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Source Metadata
      additionalProperties: true
      type: object
      required:
        - uri
        - name
      title: File
    MessageRole:
      type: string
      enum:
        - system
        - user
        - assistant
        - function
        - noxus
        - controller
      title: MessageRole
    ConversationFile:
      properties:
        id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Id
        name:
          type: string
          title: Name
        size:
          anyOf:
            - type: integer
            - type: 'null'
          title: Size
        type:
          anyOf:
            - type: string
            - type: 'null'
          title: Type
        status:
          type: string
          enum:
            - pending
            - success
            - error
          title: Status
        url:
          anyOf:
            - type: string
            - type: 'null'
          title: Url
        b64_content:
          anyOf:
            - type: string
            - type: 'null'
          title: B64 Content
      type: object
      required:
        - id
        - name
        - size
        - type
        - status
        - url
      title: ConversationFile
    BaseMessage:
      properties:
        role:
          $ref: '#/components/schemas/MessageRole'
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        model:
          type: string
          title: Model
        trace_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Trace Id
        message_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Message Id
        span_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Span Id
      type: object
      required:
        - role
      title: BaseMessage
    QAContext:
      properties:
        file_name:
          type: string
          title: File Name
        doc_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Doc Id
        node_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Id
        path:
          anyOf:
            - type: string
            - type: 'null'
          title: Path
        page_num:
          anyOf:
            - type: integer
            - type: string
            - type: 'null'
          title: Page Num
        context:
          type: string
          title: Context
      type: object
      required:
        - file_name
        - context
      title: QAContext
    WebpageContext:
      properties:
        url:
          type: string
          title: Url
        context:
          type: string
          title: Context
      type: object
      required:
        - url
        - context
      title: WebpageContext
    SystemPromptPart:
      properties:
        content:
          type: string
          title: Content
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        dynamic_ref:
          anyOf:
            - type: string
            - type: 'null'
          title: Dynamic Ref
        part_kind:
          type: string
          const: system-prompt
          title: Part Kind
          default: system-prompt
      type: object
      required:
        - content
      title: SystemPromptPart
    UserPromptPart:
      properties:
        content:
          anyOf:
            - type: string
            - items:
                anyOf:
                  - type: string
                  - $ref: '#/components/schemas/TextContent'
                  - oneOf:
                      - $ref: '#/components/schemas/ImageUrl'
                      - $ref: '#/components/schemas/AudioUrl'
                      - $ref: '#/components/schemas/DocumentUrl'
                      - $ref: '#/components/schemas/VideoUrl'
                      - $ref: '#/components/schemas/BinaryContent'
                      - $ref: '#/components/schemas/UploadedFile'
                    discriminator:
                      propertyName: kind
                      mapping:
                        audio-url:
                          $ref: '#/components/schemas/AudioUrl'
                        binary:
                          $ref: '#/components/schemas/BinaryContent'
                        document-url:
                          $ref: '#/components/schemas/DocumentUrl'
                        image-url:
                          $ref: '#/components/schemas/ImageUrl'
                        uploaded-file:
                          $ref: '#/components/schemas/UploadedFile'
                        video-url:
                          $ref: '#/components/schemas/VideoUrl'
                  - $ref: '#/components/schemas/CachePoint'
              type: array
          title: Content
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        part_kind:
          type: string
          const: user-prompt
          title: Part Kind
          default: user-prompt
      type: object
      required:
        - content
      title: UserPromptPart
    ToolSearchReturnPart:
      properties:
        tool_name:
          type: string
          const: search_tools
          title: Tool Name
          default: search_tools
        tool_call_id:
          type: string
          title: Tool Call Id
        tool_kind:
          type: string
          const: tool-search
          title: Tool Kind
          default: tool-search
        content:
          $ref: '#/components/schemas/ToolSearchReturnContent'
        metadata:
          title: Metadata
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        outcome:
          type: string
          enum:
            - success
            - failed
            - denied
            - interrupted
          title: Outcome
          default: success
        part_kind:
          type: string
          const: tool-return
          title: Part Kind
          default: tool-return
      type: object
      required:
        - content
      title: ToolSearchReturnPart
    LoadCapabilityReturnPart:
      properties:
        tool_call_id:
          type: string
          title: Tool Call Id
        tool_name:
          type: string
          const: load_capability
          title: Tool Name
          default: load_capability
        content:
          $ref: '#/components/schemas/LoadCapabilityReturn'
        tool_kind:
          type: string
          const: capability-load
          title: Tool Kind
          default: capability-load
        metadata:
          title: Metadata
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        outcome:
          type: string
          enum:
            - success
            - failed
            - denied
            - interrupted
          title: Outcome
          default: success
        part_kind:
          type: string
          const: tool-return
          title: Part Kind
          default: tool-return
      type: object
      required:
        - content
      title: LoadCapabilityReturnPart
    ToolReturnPart:
      properties:
        tool_name:
          type: string
          title: Tool Name
        content:
          $ref: '#/components/schemas/ToolReturnContent'
        tool_call_id:
          type: string
          title: Tool Call Id
        tool_kind:
          anyOf:
            - type: string
              enum:
                - tool-search
                - capability-load
            - type: 'null'
          title: Tool Kind
        metadata:
          title: Metadata
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        outcome:
          type: string
          enum:
            - success
            - failed
            - denied
            - interrupted
          title: Outcome
          default: success
        part_kind:
          type: string
          const: tool-return
          title: Part Kind
          default: tool-return
      type: object
      required:
        - tool_name
        - content
      title: ToolReturnPart
    RetryPromptPart:
      properties:
        content:
          anyOf:
            - items:
                $ref: '#/components/schemas/ErrorDetails'
              type: array
            - type: string
          title: Content
        tool_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Name
        tool_call_id:
          type: string
          title: Tool Call Id
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        part_kind:
          type: string
          const: retry-prompt
          title: Part Kind
          default: retry-prompt
      type: object
      required:
        - content
      title: RetryPromptPart
    TextPart:
      properties:
        content:
          type: string
          title: Content
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        provider_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Name
        provider_details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Provider Details
        part_kind:
          type: string
          const: text
          title: Part Kind
          default: text
      type: object
      required:
        - content
      title: TextPart
    ToolSearchCallPart:
      properties:
        tool_name:
          type: string
          const: search_tools
          title: Tool Name
          default: search_tools
        args:
          anyOf:
            - type: string
            - $ref: '#/components/schemas/ToolSearchArgs'
            - type: 'null'
          title: Args
        tool_call_id:
          type: string
          title: Tool Call Id
        tool_kind:
          type: string
          const: tool-search
          title: Tool Kind
          default: tool-search
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        provider_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Name
        provider_details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Provider Details
        part_kind:
          type: string
          const: tool-call
          title: Part Kind
          default: tool-call
      type: object
      title: ToolSearchCallPart
    LoadCapabilityCallPart:
      properties:
        tool_call_id:
          type: string
          title: Tool Call Id
        tool_name:
          type: string
          const: load_capability
          title: Tool Name
          default: load_capability
        args:
          anyOf:
            - type: string
            - $ref: '#/components/schemas/LoadCapabilityArgs'
            - type: 'null'
          title: Args
        tool_kind:
          type: string
          const: capability-load
          title: Tool Kind
          default: capability-load
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        provider_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Name
        provider_details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Provider Details
        part_kind:
          type: string
          const: tool-call
          title: Part Kind
          default: tool-call
      type: object
      title: LoadCapabilityCallPart
    ToolCallPart:
      properties:
        tool_name:
          type: string
          title: Tool Name
        args:
          anyOf:
            - type: string
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Args
        tool_call_id:
          type: string
          title: Tool Call Id
        tool_kind:
          anyOf:
            - type: string
              enum:
                - tool-search
                - capability-load
            - type: 'null'
          title: Tool Kind
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        provider_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Name
        provider_details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Provider Details
        part_kind:
          type: string
          const: tool-call
          title: Part Kind
          default: tool-call
      type: object
      required:
        - tool_name
      title: ToolCallPart
    NativeToolSearchCallPart:
      properties:
        tool_name:
          type: string
          const: tool_search
          title: Tool Name
          default: tool_search
        args:
          anyOf:
            - type: string
            - $ref: '#/components/schemas/ToolSearchArgs'
            - type: 'null'
          title: Args
        tool_call_id:
          type: string
          title: Tool Call Id
        tool_kind:
          type: string
          const: tool-search
          title: Tool Kind
          default: tool-search
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        provider_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Name
        provider_details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Provider Details
        part_kind:
          type: string
          const: builtin-tool-call
          title: Part Kind
          default: builtin-tool-call
      type: object
      title: NativeToolSearchCallPart
    NativeToolCallPart:
      properties:
        tool_name:
          type: string
          title: Tool Name
        args:
          anyOf:
            - type: string
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Args
        tool_call_id:
          type: string
          title: Tool Call Id
        tool_kind:
          anyOf:
            - type: string
              enum:
                - tool-search
                - capability-load
            - type: 'null'
          title: Tool Kind
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        provider_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Name
        provider_details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Provider Details
        part_kind:
          type: string
          const: builtin-tool-call
          title: Part Kind
          default: builtin-tool-call
      type: object
      required:
        - tool_name
      title: NativeToolCallPart
    NativeToolSearchReturnPart:
      properties:
        tool_name:
          type: string
          const: tool_search
          title: Tool Name
          default: tool_search
        tool_call_id:
          type: string
          title: Tool Call Id
        tool_kind:
          type: string
          const: tool-search
          title: Tool Kind
          default: tool-search
        content:
          $ref: '#/components/schemas/ToolSearchReturnContent'
        metadata:
          title: Metadata
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        outcome:
          type: string
          enum:
            - success
            - failed
            - denied
            - interrupted
          title: Outcome
          default: success
        provider_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Name
        provider_details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Provider Details
        part_kind:
          type: string
          const: builtin-tool-return
          title: Part Kind
          default: builtin-tool-return
      type: object
      required:
        - content
      title: NativeToolSearchReturnPart
    NativeToolReturnPart:
      properties:
        tool_name:
          type: string
          title: Tool Name
        content:
          $ref: '#/components/schemas/ToolReturnContent'
        tool_call_id:
          type: string
          title: Tool Call Id
        tool_kind:
          anyOf:
            - type: string
              enum:
                - tool-search
                - capability-load
            - type: 'null'
          title: Tool Kind
        metadata:
          title: Metadata
        timestamp:
          type: string
          format: date-time
          title: Timestamp
        outcome:
          type: string
          enum:
            - success
            - failed
            - denied
            - interrupted
          title: Outcome
          default: success
        provider_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Name
        provider_details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Provider Details
        part_kind:
          type: string
          const: builtin-tool-return
          title: Part Kind
          default: builtin-tool-return
      type: object
      required:
        - tool_name
        - content
      title: NativeToolReturnPart
    ThinkingPart:
      properties:
        content:
          type: string
          title: Content
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        signature:
          anyOf:
            - type: string
            - type: 'null'
          title: Signature
        provider_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Name
        provider_details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Provider Details
        part_kind:
          type: string
          const: thinking
          title: Part Kind
          default: thinking
      type: object
      required:
        - content
      title: ThinkingPart
    CompactionPart:
      properties:
        content:
          anyOf:
            - type: string
            - type: 'null'
          title: Content
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        provider_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Name
        provider_details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Provider Details
        part_kind:
          type: string
          const: compaction
          title: Part Kind
          default: compaction
      type: object
      title: CompactionPart
    FilePart:
      properties:
        content:
          $ref: '#/components/schemas/BinaryContent'
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        provider_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Name
        provider_details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Provider Details
        part_kind:
          type: string
          const: file
          title: Part Kind
          default: file
      type: object
      required:
        - content
      title: FilePart
    RequestUsage:
      properties:
        input_tokens:
          type: integer
          title: Input Tokens
          default: 0
        cache_write_tokens:
          type: integer
          title: Cache Write Tokens
          default: 0
        cache_read_tokens:
          type: integer
          title: Cache Read Tokens
          default: 0
        output_tokens:
          type: integer
          title: Output Tokens
          default: 0
        input_audio_tokens:
          type: integer
          title: Input Audio Tokens
          default: 0
        cache_audio_read_tokens:
          type: integer
          title: Cache Audio Read Tokens
          default: 0
        output_audio_tokens:
          type: integer
          title: Output Audio Tokens
          default: 0
        details:
          additionalProperties:
            type: integer
          type: object
          title: Details
      type: object
      title: RequestUsage
    ToolApprovalRequested:
      properties:
        id:
          type: string
          title: Id
      additionalProperties: false
      type: object
      required:
        - id
      title: ToolApprovalRequested
      description: Tool approval in requested state (awaiting user response).
    ToolApprovalResponded:
      properties:
        id:
          type: string
          title: Id
        approved:
          type: boolean
          title: Approved
        reason:
          anyOf:
            - type: string
            - type: 'null'
          title: Reason
      additionalProperties: false
      type: object
      required:
        - id
        - approved
      title: ToolApprovalResponded
      description: Tool approval in responded state (user has approved or denied).
    Node-Output:
      properties:
        type:
          type: string
          title: Type
        attrs:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Attrs
        content:
          anyOf:
            - items:
                $ref: '#/components/schemas/Node-Output'
              type: array
            - type: 'null'
          title: Content
        marks:
          anyOf:
            - items:
                $ref: '#/components/schemas/Mark'
              type: array
            - type: 'null'
          title: Marks
        text:
          anyOf:
            - type: string
            - type: 'null'
          title: Text
      type: object
      required:
        - type
      title: Node
    PdfMetadata:
      properties:
        kind:
          type: string
          const: pdf
          title: Kind
          default: pdf
        page_count:
          type: integer
          title: Page Count
      type: object
      required:
        - page_count
      title: PdfMetadata
      description: Structural metadata for a PDF file.
    SpreadsheetMetadata:
      properties:
        kind:
          type: string
          const: spreadsheet
          title: Kind
          default: spreadsheet
        sheets:
          items:
            $ref: '#/components/schemas/SheetInfo'
          type: array
          title: Sheets
      type: object
      required:
        - sheets
      title: SpreadsheetMetadata
      description: Structural metadata for a spreadsheet (Excel) file.
    TabularMetadata:
      properties:
        kind:
          type: string
          const: tabular
          title: Kind
          default: tabular
        row_count:
          type: integer
          title: Row Count
        column_count:
          type: integer
          title: Column Count
      type: object
      required:
        - row_count
        - column_count
      title: TabularMetadata
      description: Structural metadata for a delimited-text (CSV/TSV) file.
    SourceType:
      type: string
      enum:
        - Document
        - Google Drive
        - Notion
        - Website
        - OneDrive
        - Slack
        - Linear
        - Github
        - Teams
        - Sharepoint
        - ServiceNow
        - Custom
      title: SourceType
    SourceMetadata:
      properties:
        rel_path:
          anyOf:
            - type: string
            - type: 'null'
          title: Rel Path
        external_id:
          anyOf:
            - type: string
            - type: 'null'
          title: External Id
        file_created_date:
          anyOf:
            - type: string
            - type: 'null'
          title: File Created Date
        file_modified_date:
          anyOf:
            - type: string
            - type: 'null'
          title: File Modified Date
        original_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Original Url
        source_label:
          anyOf:
            - type: string
            - type: 'null'
          title: Source Label
        source_image:
          anyOf:
            - type: string
            - type: 'null'
          title: Source Image
      additionalProperties: true
      type: object
      title: SourceMetadata
      description: |-
        Base class for source metadata across different source types.

        ``external_id`` is the source's stable id for this item (Drive
        file id, OneDrive item id, URL for websites, etc.). Datasource
        ``download_file`` implementations stamp it explicitly, and the
        DB materialisation trigger projects it onto
        ``KnowledgeBaseDocument.m_source_external_id`` — which is the
        join key the KB sync engine uses to find existing docs by their
        source id.
    TextContent:
      properties:
        content:
          type: string
          title: Content
        metadata:
          title: Metadata
        kind:
          type: string
          const: text-content
          title: Kind
          default: text-content
      type: object
      required:
        - content
      title: TextContent
    ImageUrl:
      properties:
        url:
          type: string
          title: Url
        force_download:
          anyOf:
            - type: boolean
            - type: string
              const: allow-local
          title: Force Download
          default: false
        vendor_metadata:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Vendor Metadata
        kind:
          type: string
          const: image-url
          title: Kind
          default: image-url
        media_type:
          type: string
          title: Media Type
          description: >-
            Return the media type of the file, based on the URL or the provided
            `media_type`.
          readOnly: true
        identifier:
          type: string
          title: Identifier
          description: >-
            The identifier of the file, such as a unique ID.


            This identifier can be provided to the model in a message to allow
            it to refer to this file in a tool call argument,

            and the tool can look up the file in question by iterating over the
            message history and finding the matching `FileUrl`.


            This identifier is only automatically passed to the model when the
            `FileUrl` is returned by a tool.

            If you're passing the `FileUrl` as a user message, it's up to you to
            include a separate text part with the identifier,

            e.g. "This is file <identifier>:" preceding the `FileUrl`.


            It's also included in inline-text delimiters for providers that
            require inlining text documents, so the model can

            distinguish multiple files.
          readOnly: true
      type: object
      required:
        - url
        - media_type
        - identifier
      title: ImageUrl
      description: A URL to an image.
    AudioUrl:
      properties:
        url:
          type: string
          title: Url
        force_download:
          anyOf:
            - type: boolean
            - type: string
              const: allow-local
          title: Force Download
          default: false
        vendor_metadata:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Vendor Metadata
        kind:
          type: string
          const: audio-url
          title: Kind
          default: audio-url
        media_type:
          type: string
          title: Media Type
          description: >-
            Return the media type of the file, based on the URL or the provided
            `media_type`.
          readOnly: true
        identifier:
          type: string
          title: Identifier
          description: >-
            The identifier of the file, such as a unique ID.


            This identifier can be provided to the model in a message to allow
            it to refer to this file in a tool call argument,

            and the tool can look up the file in question by iterating over the
            message history and finding the matching `FileUrl`.


            This identifier is only automatically passed to the model when the
            `FileUrl` is returned by a tool.

            If you're passing the `FileUrl` as a user message, it's up to you to
            include a separate text part with the identifier,

            e.g. "This is file <identifier>:" preceding the `FileUrl`.


            It's also included in inline-text delimiters for providers that
            require inlining text documents, so the model can

            distinguish multiple files.
          readOnly: true
      type: object
      required:
        - url
        - media_type
        - identifier
      title: AudioUrl
      description: A URL to an audio file.
    DocumentUrl:
      properties:
        url:
          type: string
          title: Url
        force_download:
          anyOf:
            - type: boolean
            - type: string
              const: allow-local
          title: Force Download
          default: false
        vendor_metadata:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Vendor Metadata
        kind:
          type: string
          const: document-url
          title: Kind
          default: document-url
        media_type:
          type: string
          title: Media Type
          description: >-
            Return the media type of the file, based on the URL or the provided
            `media_type`.
          readOnly: true
        identifier:
          type: string
          title: Identifier
          description: >-
            The identifier of the file, such as a unique ID.


            This identifier can be provided to the model in a message to allow
            it to refer to this file in a tool call argument,

            and the tool can look up the file in question by iterating over the
            message history and finding the matching `FileUrl`.


            This identifier is only automatically passed to the model when the
            `FileUrl` is returned by a tool.

            If you're passing the `FileUrl` as a user message, it's up to you to
            include a separate text part with the identifier,

            e.g. "This is file <identifier>:" preceding the `FileUrl`.


            It's also included in inline-text delimiters for providers that
            require inlining text documents, so the model can

            distinguish multiple files.
          readOnly: true
      type: object
      required:
        - url
        - media_type
        - identifier
      title: DocumentUrl
      description: The URL of the document.
    VideoUrl:
      properties:
        url:
          type: string
          title: Url
        force_download:
          anyOf:
            - type: boolean
            - type: string
              const: allow-local
          title: Force Download
          default: false
        vendor_metadata:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Vendor Metadata
        kind:
          type: string
          const: video-url
          title: Kind
          default: video-url
        media_type:
          type: string
          title: Media Type
          description: >-
            Return the media type of the file, based on the URL or the provided
            `media_type`.
          readOnly: true
        identifier:
          type: string
          title: Identifier
          description: >-
            The identifier of the file, such as a unique ID.


            This identifier can be provided to the model in a message to allow
            it to refer to this file in a tool call argument,

            and the tool can look up the file in question by iterating over the
            message history and finding the matching `FileUrl`.


            This identifier is only automatically passed to the model when the
            `FileUrl` is returned by a tool.

            If you're passing the `FileUrl` as a user message, it's up to you to
            include a separate text part with the identifier,

            e.g. "This is file <identifier>:" preceding the `FileUrl`.


            It's also included in inline-text delimiters for providers that
            require inlining text documents, so the model can

            distinguish multiple files.
          readOnly: true
      type: object
      required:
        - url
        - media_type
        - identifier
      title: VideoUrl
      description: A URL to a video.
    BinaryContent:
      properties:
        data:
          type: string
          contentEncoding: base64
          contentMediaType: application/octet-stream
          title: Data
          format: binary
        media_type:
          anyOf:
            - type: string
              enum:
                - audio/wav
                - audio/mpeg
                - audio/ogg
                - audio/flac
                - audio/aiff
                - audio/aac
            - type: string
              enum:
                - image/jpeg
                - image/png
                - image/gif
                - image/webp
            - type: string
              enum:
                - application/pdf
                - text/plain
                - text/csv
                - >-
                  application/vnd.openxmlformats-officedocument.wordprocessingml.document
                - >-
                  application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
                - text/html
                - text/markdown
                - application/msword
                - application/vnd.ms-excel
            - type: string
          title: Media Type
        vendor_metadata:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Vendor Metadata
        kind:
          type: string
          const: binary
          title: Kind
          default: binary
        identifier:
          type: string
          title: Identifier
          description: >-
            Identifier for the binary content, such as a unique ID.


            This identifier can be provided to the model in a message to allow
            it to refer to this file in a tool call argument,

            and the tool can look up the file in question by iterating over the
            message history and finding the matching `BinaryContent`.


            This identifier is only automatically passed to the model when the
            `BinaryContent` is returned by a tool.

            If you're passing the `BinaryContent` as a user message, it's up to
            you to include a separate text part with the identifier,

            e.g. "This is file <identifier>:" preceding the `BinaryContent`.


            It's also included in inline-text delimiters for providers that
            require inlining text documents, so the model can

            distinguish multiple files.
          readOnly: true
      type: object
      required:
        - data
        - media_type
        - identifier
      title: BinaryContent
      description: Binary content, e.g. an audio or image file.
    UploadedFile:
      properties:
        file_id:
          type: string
          title: File Id
        provider_name:
          type: string
          enum:
            - anthropic
            - openai
            - google
            - google-cloud
            - google-gla
            - google-vertex
            - bedrock
            - xai
          title: Provider Name
        vendor_metadata:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Vendor Metadata
        kind:
          type: string
          const: uploaded-file
          title: Kind
          default: uploaded-file
        media_type:
          type: string
          title: Media Type
          description: >-
            Return the media type of the file, inferred from `file_id` if not
            explicitly provided.


            Note: Inference relies on the file extension in `file_id`.

            For opaque file IDs (e.g., `'file-abc123'`), the media type will
            default to `'application/octet-stream'`.

            Inference relies on Python's `mimetypes` module, whose results may
            vary across platforms.


            Required by some providers (e.g., Bedrock) for certain file types.
          readOnly: true
        identifier:
          type: string
          title: Identifier
          description: >-
            The identifier of the file, such as a unique ID.


            This identifier can be provided to the model in a message to allow
            it to refer to this file in a tool call argument,

            and the tool can look up the file in question by iterating over the
            message history and finding the matching `UploadedFile`.


            This identifier is only automatically passed to the model when the
            `UploadedFile` is returned by a tool.

            If you're passing the `UploadedFile` as a user message, it's up to
            you to include a separate text part with the identifier,

            e.g. "This is file <identifier>:" preceding the `UploadedFile`.
          readOnly: true
      type: object
      required:
        - file_id
        - provider_name
        - media_type
        - identifier
      title: UploadedFile
      description: >-
        A reference to a file uploaded to a provider's file storage by ID.


        This allows referencing files that have been uploaded via
        provider-specific file APIs

        rather than providing the file content directly.


        Supported by:


        - [`AnthropicModel`][pydantic_ai.models.anthropic.AnthropicModel]

        - [`OpenAIChatModel`][pydantic_ai.models.openai.OpenAIChatModel]

        -
        [`OpenAIResponsesModel`][pydantic_ai.models.openai.OpenAIResponsesModel]

        -
        [`BedrockConverseModel`][pydantic_ai.models.bedrock.BedrockConverseModel]

        - [`GoogleModel`][pydantic_ai.models.google.GoogleModel] (Gemini API:
        [Files API](https://ai.google.dev/gemini-api/docs/files) URIs, Google
        Cloud: GCS `gs://` URIs)

        - [`XaiModel`][pydantic_ai.models.xai.XaiModel]
    CachePoint:
      properties:
        kind:
          type: string
          const: cache-point
          title: Kind
          default: cache-point
        ttl:
          type: string
          enum:
            - 5m
            - 1h
          title: Ttl
          default: 5m
      type: object
      title: CachePoint
    ToolSearchReturnContent:
      properties:
        discovered_tools:
          items:
            $ref: '#/components/schemas/ToolSearchMatch'
          type: array
          title: Discovered Tools
        message:
          type: string
          title: Message
      type: object
      required:
        - discovered_tools
      title: ToolSearchReturnContent
      description: >-
        Typed return value of the framework-managed tool-search builtin.


        Carried on

        [`NativeToolSearchReturnPart.content`][pydantic_ai.messages.NativeToolSearchReturnPart.content]

        (native server-side path) and

        [`ToolSearchReturnPart.content`][pydantic_ai.messages.ToolSearchReturnPart.content]

        (local-fallback path) as the canonical cross-provider shape.
    LoadCapabilityReturn:
      properties:
        instructions:
          type: string
          title: Instructions
      type: object
      title: LoadCapabilityReturn
      description: Typed return value for the `load_capability` tool.
    ToolReturnContent:
      oneOf:
        - {}
        - additionalProperties:
            $ref: '#/components/schemas/ToolReturnContent'
          type: object
        - items:
            $ref: '#/components/schemas/ToolReturnContent'
          type: array
    ErrorDetails:
      properties:
        type:
          type: string
          title: Type
        loc:
          items:
            anyOf:
              - type: integer
              - type: string
          type: array
          title: Loc
        msg:
          type: string
          title: Msg
        input:
          title: Input
        ctx:
          additionalProperties: true
          type: object
          title: Ctx
        url:
          type: string
          title: Url
      type: object
      required:
        - type
        - loc
        - msg
        - input
      title: ErrorDetails
    ToolSearchArgs:
      properties:
        queries:
          items:
            type: string
          type: array
          title: Queries
      type: object
      required:
        - queries
      title: ToolSearchArgs
      description: >-
        Typed arguments for a tool-search call.


        Carried on

        [`NativeToolSearchCallPart.args`][pydantic_ai.messages.NativeToolSearchCallPart.args]

        (native server-side path) and

        [`ToolSearchCallPart.args`][pydantic_ai.messages.ToolSearchCallPart.args]

        (local-fallback path) as the canonical cross-provider shape. Each
        adapter

        normalizes its provider's wire format into this shape on parse, and
        rebuilds the

        wire format from this shape on emit.
    LoadCapabilityArgs:
      properties:
        id:
          type: string
          title: Id
          description: The id of the capability to load.
      type: object
      required:
        - id
      title: LoadCapabilityArgs
      description: Typed arguments for a `load_capability` tool call.
    Mark:
      properties:
        type:
          type: string
          title: Type
        attrs:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Attrs
      type: object
      required:
        - type
      title: Mark
    SheetInfo:
      properties:
        name:
          type: string
          title: Name
        dimensions:
          type: string
          title: Dimensions
      type: object
      required:
        - name
        - dimensions
      title: SheetInfo
      description: Per-worksheet metadata for a spreadsheet file.
    ToolSearchMatch:
      properties:
        name:
          type: string
          title: Name
      type: object
      required:
        - name
      title: ToolSearchMatch
      description: A single match in a tool-search result.
  securitySchemes:
    APIKeyHeader:
      type: apiKey
      in: header
      name: X-API-Key

````