mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2026-06-28 18:54:26 +03:00
730 lines
47 KiB
YAML
730 lines
47 KiB
YAML
# SPDX-FileCopyrightText: 2024 Nikita Chernyi
|
|
# SPDX-FileCopyrightText: 2024 Slavi Pantaleev
|
|
# SPDX-FileCopyrightText: 2024 Suguru Hirahara
|
|
#
|
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
---
|
|
|
|
# baibot is a bot exposing the power of Large Language Models to you.
|
|
# Project source code URL: https://github.com/etkecc/baibot
|
|
|
|
matrix_bot_baibot_enabled: true
|
|
|
|
matrix_bot_baibot_container_image_self_build: false
|
|
matrix_bot_baibot_container_repo: "https://github.com/etkecc/baibot.git"
|
|
matrix_bot_baibot_container_repo_version: "{{ 'main' if matrix_bot_baibot_version == 'latest' else matrix_bot_baibot_version }}"
|
|
matrix_bot_baibot_container_src_files_path: "{{ matrix_base_data_path }}/baibot/container-src"
|
|
|
|
# renovate: datasource=docker depName=ghcr.io/etkecc/baibot
|
|
matrix_bot_baibot_version: v1.24.0
|
|
matrix_bot_baibot_container_image: "{{ matrix_bot_baibot_container_image_registry_prefix }}etkecc/baibot:{{ matrix_bot_baibot_version }}"
|
|
matrix_bot_baibot_container_image_registry_prefix: "{{ 'localhost/' if matrix_bot_baibot_container_image_self_build else matrix_bot_baibot_container_image_registry_prefix_upstream }}"
|
|
matrix_bot_baibot_container_image_registry_prefix_upstream: "{{ matrix_bot_baibot_container_image_registry_prefix_upstream_default }}"
|
|
matrix_bot_baibot_container_image_registry_prefix_upstream_default: "ghcr.io/"
|
|
|
|
matrix_bot_baibot_base_path: "{{ matrix_base_data_path }}/baibot"
|
|
matrix_bot_baibot_config_path: "{{ matrix_bot_baibot_base_path }}/config"
|
|
matrix_bot_baibot_data_path: "{{ matrix_bot_baibot_base_path }}/data"
|
|
|
|
matrix_bot_baibot_container_network: ""
|
|
|
|
matrix_bot_baibot_container_additional_networks: "{{ matrix_bot_baibot_container_additional_networks_auto + matrix_bot_baibot_container_additional_networks_custom }}"
|
|
matrix_bot_baibot_container_additional_networks_auto: []
|
|
matrix_bot_baibot_container_additional_networks_custom: []
|
|
|
|
# A list of extra arguments to pass to the container
|
|
matrix_bot_baibot_container_extra_arguments: []
|
|
|
|
# List of systemd services that matrix-bot-baibot.service depends on
|
|
matrix_bot_baibot_systemd_required_services_list: "{{ matrix_bot_baibot_systemd_required_services_list_default + matrix_bot_baibot_systemd_required_services_list_auto + matrix_bot_baibot_systemd_required_services_list_custom }}"
|
|
matrix_bot_baibot_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
|
|
matrix_bot_baibot_systemd_required_services_list_auto: []
|
|
matrix_bot_baibot_systemd_required_services_list_custom: []
|
|
|
|
# List of systemd services that matrix-bot-baibot.service wants
|
|
matrix_bot_baibot_systemd_wanted_services_list: []
|
|
|
|
# Controls the `homeserver.server_name` configuration setting.
|
|
matrix_bot_baibot_config_homeserver_server_name: "{{ matrix_domain }}"
|
|
|
|
# Controls the `homeserver.url` configuration setting.
|
|
matrix_bot_baibot_config_homeserver_url: ""
|
|
|
|
# Controls the `user.mxid_localpart` configuration setting.
|
|
#
|
|
# This affects the bot's username.
|
|
# Changing this subsequently will require you to drop the bot's session/database (see `matrix_bot_baibot_data_path`),
|
|
# so it can start fresh.
|
|
matrix_bot_baibot_config_user_mxid_localpart: baibot
|
|
|
|
# Authentication settings (`user.*` configuration keys).
|
|
#
|
|
# baibot supports 2 mutually-exclusive authentication modes.
|
|
# Set EITHER:
|
|
# - password authentication: `matrix_bot_baibot_config_user_password`
|
|
# OR:
|
|
# - access-token authentication: `matrix_bot_baibot_config_user_access_token` + `matrix_bot_baibot_config_user_device_id`
|
|
#
|
|
# Password authentication is recommended for most playbook-managed deployments,
|
|
# because it integrates with the `matrix-user-creator` role and can auto-create
|
|
# the bot account (via the `ensure-matrix-users-created` playbook tag).
|
|
# This remains true even on many MAS-enabled deployments where the bot account
|
|
# is local and playbook-managed.
|
|
|
|
# Controls the `user.password` configuration setting.
|
|
matrix_bot_baibot_config_user_password: null
|
|
|
|
# Controls the `user.access_token` configuration setting.
|
|
matrix_bot_baibot_config_user_access_token: null
|
|
|
|
# Controls the `user.device_id` configuration setting.
|
|
matrix_bot_baibot_config_user_device_id: null
|
|
|
|
# Controls the `user.name` configuration setting.
|
|
#
|
|
# The name the bot uses as a display name and when it refers to itself.
|
|
# If you leave this empty, the bot will use the default (baibot).
|
|
#
|
|
# Also see: `matrix_bot_baibot_config_user_mxid_localpart`
|
|
matrix_bot_baibot_config_user_name: baibot
|
|
|
|
# Controls the `user.avatar` configuration setting.
|
|
#
|
|
# An optional path to an image file to be used as a custom avatar image.
|
|
# This path should be an in-container path (e.g., `/data/avatar.png`).
|
|
# Any type of content type is supported, but stick to common image formats (PNG, JPG, ..) for better compatibility with various Matrix clients.
|
|
#
|
|
# To use a custom avatar:
|
|
# - Use the auxiliary role (`aux_` variables) to upload your avatar file to the server (e.g. to {{ matrix_bot_baibot_data_path }}/avatar.png on the host),
|
|
# or do it any other way (without Ansible) you prefer
|
|
# - Set this variable to something like `/data/avatar.png` (the in-container path)
|
|
#
|
|
# Possible values:
|
|
# - null or empty string: use the default baibot avatar
|
|
# - "keep": don't touch the avatar, keep whatever is already set (useful if you manage the avatar via other means)
|
|
# - any other value: path to a custom avatar image file (must be an in-container path like `/data/avatar.png`)
|
|
matrix_bot_baibot_config_user_avatar: null
|
|
|
|
# Controls the `user.encryption.recovery_passphrase` configuration setting.
|
|
#
|
|
# An optional passphrase to use for backing up and recovering the bot's encryption keys.
|
|
# You can use any string here.
|
|
#
|
|
# If left empty, the recovery module will not be used and losing your session/database (see persistence)
|
|
# will mean you lose access to old messages in encrypted room.
|
|
#
|
|
# Changing this subsequently will also cause you to lose access to old messages in encrypted rooms.
|
|
# If you really need to change this:
|
|
# - Set `matrix_bot_baibot_config_user_encryption_recovery_reset_allowed` to `true` and adjust the passphrase
|
|
# - Remove your session file and database (see persistence)
|
|
# - Restart the bot
|
|
# - Then restore `matrix_bot_baibot_config_user_encryption_recovery_reset_allowed` to `false` to prevent accidental resets in the future
|
|
matrix_bot_baibot_config_user_encryption_recovery_passphrase: null
|
|
|
|
# Controls the `user.encryption.recovery_passphrase` configuration setting.
|
|
#
|
|
# An optional flag to reset the encryption recovery passphrase (see `matrix_bot_baibot_config_user_encryption_recovery_passphrase`).
|
|
matrix_bot_baibot_config_user_encryption_recovery_reset_allowed: false
|
|
|
|
# Controls the `command_prefix` configuration setting.
|
|
# If you leave this empty, the bot will use the default (!bai).
|
|
matrix_bot_baibot_config_command_prefix: "!bai"
|
|
|
|
# Controls the `room.post_join_self_introduction_enabled` configuration setting.
|
|
# Influences whether the bot should send an introduction message after joining a room.
|
|
matrix_bot_baibot_config_room_post_join_self_introduction_enabled: true
|
|
|
|
# Controls the `access.admin_patterns` configuration setting.
|
|
# A space-separated list of MXID patterns which specify who is an admin.
|
|
#
|
|
# Example:
|
|
# matrix_bot_baibot_config_access_admin_patterns:
|
|
# - "@*:example.com"
|
|
# - "@admin:example.net"
|
|
matrix_bot_baibot_config_access_admin_patterns: "{{ [matrix_admin] if matrix_admin else [] }}"
|
|
|
|
# Controls the `persistence.data_dir_path` configuration setting.
|
|
#
|
|
# The bot runs in a container, so this is the in-container path referring to the data directory on the host
|
|
# (see `matrix_bot_baibot_data_path`).
|
|
#
|
|
# You generally don't need to change this.
|
|
matrix_bot_baibot_config_persistence_data_dir_path: /data
|
|
|
|
# Controls the `persistence.session_encryption_key` configuration setting.
|
|
#
|
|
# An optional secret for encrypting the bot's session data (see `matrix_bot_baibot_data_path`).
|
|
# This must be 32-bytes (64 characters when HEX-encoded).
|
|
# Generate it with: `openssl rand -hex 32`
|
|
# Leave null or empty to avoid using encryption.
|
|
# Changing this subsequently requires that you also throw away all data (see `matrix_bot_baibot_data_path`)
|
|
matrix_bot_baibot_config_persistence_session_encryption_key: null
|
|
|
|
# Controls the `persistence.config_encryption_key` configuration setting.
|
|
#
|
|
# An optional secret for encrypting bot configuration stored in Matrix's account data.
|
|
# This must be 32-bytes (64 characters when HEX-encoded).
|
|
# Generate it with: `openssl rand -hex 32`
|
|
# Leave null or empty to avoid using encryption.
|
|
# Changing this subsequently will make you lose your configuration.
|
|
matrix_bot_baibot_config_persistence_config_encryption_key: null
|
|
|
|
# Controls the `agents.static_definitions` configuration setting.
|
|
#
|
|
# There are some presets (e.g. `matrix_bot_baibot_config_agents_static_definitions_openai_*`) you can easily use to get started with a given provider.
|
|
# You can also define your own agents via `matrix_bot_baibot_config_agents_static_definitions_custom`.
|
|
matrix_bot_baibot_config_agents_static_definitions: "{{ matrix_bot_baibot_config_agents_static_definitions_auto + matrix_bot_baibot_config_agents_static_definitions_custom }}"
|
|
matrix_bot_baibot_config_agents_static_definitions_auto: |-
|
|
{{
|
|
([{
|
|
'id': matrix_bot_baibot_config_agents_static_definitions_anthropic_id,
|
|
'provider': matrix_bot_baibot_config_agents_static_definitions_anthropic_provider,
|
|
'config': matrix_bot_baibot_config_agents_static_definitions_anthropic_config,
|
|
}] if matrix_bot_baibot_config_agents_static_definitions_anthropic_enabled else [])
|
|
+
|
|
([{
|
|
'id': matrix_bot_baibot_config_agents_static_definitions_groq_id,
|
|
'provider': matrix_bot_baibot_config_agents_static_definitions_groq_provider,
|
|
'config': matrix_bot_baibot_config_agents_static_definitions_groq_config,
|
|
}] if matrix_bot_baibot_config_agents_static_definitions_groq_enabled else [])
|
|
+
|
|
([{
|
|
'id': matrix_bot_baibot_config_agents_static_definitions_mistral_id,
|
|
'provider': matrix_bot_baibot_config_agents_static_definitions_mistral_provider,
|
|
'config': matrix_bot_baibot_config_agents_static_definitions_mistral_config,
|
|
}] if matrix_bot_baibot_config_agents_static_definitions_mistral_enabled else [])
|
|
+
|
|
([{
|
|
'id': matrix_bot_baibot_config_agents_static_definitions_openai_id,
|
|
'provider': matrix_bot_baibot_config_agents_static_definitions_openai_provider,
|
|
'config': matrix_bot_baibot_config_agents_static_definitions_openai_config,
|
|
}] if matrix_bot_baibot_config_agents_static_definitions_openai_enabled else [])
|
|
+
|
|
([{
|
|
'id': matrix_bot_baibot_config_agents_static_definitions_venice_id,
|
|
'provider': matrix_bot_baibot_config_agents_static_definitions_venice_provider,
|
|
'config': matrix_bot_baibot_config_agents_static_definitions_venice_config,
|
|
}] if matrix_bot_baibot_config_agents_static_definitions_venice_enabled else [])
|
|
}}
|
|
matrix_bot_baibot_config_agents_static_definitions_custom: []
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_prompt: "{% raw %}You are a brief, but helpful bot called {{ baibot_name }} powered by the {{ baibot_model_id }} model. The date/time of this conversation's start is: {{ baibot_conversation_start_time_utc }}.{% endraw %}"
|
|
|
|
########################################################################################
|
|
# #
|
|
# Anthropic agent configuration #
|
|
# #
|
|
########################################################################################
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_enabled: false
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_id: anthropic
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_provider: anthropic
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_config: "{{ matrix_bot_baibot_config_agents_static_definitions_anthropic_config_yaml | from_yaml | combine(matrix_bot_baibot_config_agents_static_definitions_anthropic_config_extension, recursive=True) }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_config_yaml: "{{ lookup('template', 'templates/provider/anthropic-config.yml.j2') }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_config_extension: "{{ matrix_bot_baibot_config_agents_static_definitions_anthropic_config_extension_yaml | from_yaml if matrix_bot_baibot_config_agents_static_definitions_anthropic_config_extension_yaml | from_yaml is mapping else {} }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_config_extension_yaml: |
|
|
# Your custom YAML configuration for this provider's configuration goes here.
|
|
# This configuration extends the default starting configuration (`matrix_bot_baibot_config_agents_static_definitions_anthropic_config`).
|
|
#
|
|
# You can override individual variables from the default configuration, or introduce new ones.
|
|
#
|
|
# If you need something more special, you can take full control by
|
|
# completely redefining `matrix_bot_baibot_config_agents_static_definitions_anthropic_config_yaml`.
|
|
#
|
|
# Example configuration extension follows:
|
|
#
|
|
# text_generation:
|
|
# temperature: 3.5
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_config_base_url: https://api.anthropic.com/v1
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_config_api_key: ""
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_enabled: true
|
|
# For valid model choices, see: https://docs.claude.com/en/docs/about-claude/models/overview
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_model_id: claude-sonnet-4-5-20250929
|
|
# The prompt text to use (can be null or empty to not use a prompt).
|
|
# See: https://huggingface.co/docs/transformers/en/tasks/prompting
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_prompt: "{{ matrix_bot_baibot_config_agents_static_definitions_prompt }}"
|
|
# The temperature parameter controls the randomness of the generated text.
|
|
# See: https://blogs.novita.ai/what-are-large-language-model-settings-temperature-top-p-and-max-tokens/#what-is-llm-temperature
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_temperature: 1.0
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_max_response_tokens: 8192
|
|
matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_max_context_tokens: 204800
|
|
|
|
########################################################################################
|
|
# #
|
|
# /Anthropic agent configuration #
|
|
# #
|
|
########################################################################################
|
|
|
|
|
|
########################################################################################
|
|
# #
|
|
# Groq agent configuration #
|
|
# #
|
|
########################################################################################
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_enabled: false
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_id: groq
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_provider: groq
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config: "{{ matrix_bot_baibot_config_agents_static_definitions_groq_config_yaml | from_yaml | combine(matrix_bot_baibot_config_agents_static_definitions_groq_config_extension, recursive=True) }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config_yaml: "{{ lookup('template', 'templates/provider/groq-config.yml.j2') }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config_extension: "{{ matrix_bot_baibot_config_agents_static_definitions_groq_config_extension_yaml | from_yaml if matrix_bot_baibot_config_agents_static_definitions_groq_config_extension_yaml | from_yaml is mapping else {} }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config_extension_yaml: |
|
|
# Your custom YAML configuration for this provider's configuration goes here.
|
|
# This configuration extends the default starting configuration (`matrix_bot_baibot_config_agents_static_definitions_groq_config`).
|
|
#
|
|
# You can override individual variables from the default configuration, or introduce new ones.
|
|
#
|
|
# If you need something more special, you can take full control by
|
|
# completely redefining `matrix_bot_baibot_config_agents_static_definitions_groq_config_yaml`.
|
|
#
|
|
# Example configuration extension follows:
|
|
#
|
|
# text_generation:
|
|
# temperature: 3.5
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config_base_url: https://api.groq.com/openai/v1
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config_api_key: ""
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_enabled: true
|
|
# For valid model choices, see: https://platform.groq.com/docs/models
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_model_id: ""
|
|
# The prompt text to use (can be null or empty to not use a prompt).
|
|
# See: https://huggingface.co/docs/transformers/en/tasks/prompting
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_prompt: "{{ matrix_bot_baibot_config_agents_static_definitions_prompt }}"
|
|
# The temperature parameter controls the randomness of the generated text.
|
|
# See: https://blogs.novita.ai/what-are-large-language-model-settings-temperature-top-p-and-max-tokens/#what-is-llm-temperature
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_temperature: 1.0
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_max_response_tokens: 4096
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_max_context_tokens: 131072
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config_speech_to_text_enabled: true
|
|
matrix_bot_baibot_config_agents_static_definitions_groq_config_speech_to_text_model_id: whisper-large-v3
|
|
|
|
########################################################################################
|
|
# #
|
|
# /Groq agent configuration #
|
|
# #
|
|
########################################################################################
|
|
|
|
|
|
########################################################################################
|
|
# #
|
|
# Mistral agent configuration #
|
|
# #
|
|
########################################################################################
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_enabled: false
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_id: mistral
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_provider: mistral
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_config: "{{ matrix_bot_baibot_config_agents_static_definitions_mistral_config_yaml | from_yaml | combine(matrix_bot_baibot_config_agents_static_definitions_mistral_config_extension, recursive=True) }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_config_yaml: "{{ lookup('template', 'templates/provider/mistral-config.yml.j2') }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_config_extension: "{{ matrix_bot_baibot_config_agents_static_definitions_mistral_config_extension_yaml | from_yaml if matrix_bot_baibot_config_agents_static_definitions_mistral_config_extension_yaml | from_yaml is mapping else {} }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_config_extension_yaml: |
|
|
# Your custom YAML configuration for this provider's configuration goes here.
|
|
# This configuration extends the default starting configuration (`matrix_bot_baibot_config_agents_static_definitions_mistral_config`).
|
|
#
|
|
# You can override individual variables from the default configuration, or introduce new ones.
|
|
#
|
|
# If you need something more special, you can take full control by
|
|
# completely redefining `matrix_bot_baibot_config_agents_static_definitions_mistral_config_yaml`.
|
|
#
|
|
# Example configuration extension follows:
|
|
#
|
|
# text_generation:
|
|
# temperature: 3.5
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_config_base_url: https://api.mistral.ai/v1
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_config_api_key: ""
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_enabled: true
|
|
# For valid model choices, see: https://platform.mistral.com/docs/models
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_model_id: mistral-large-latest
|
|
# The prompt text to use (can be null or empty to not use a prompt).
|
|
# See: https://huggingface.co/docs/transformers/en/tasks/prompting
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_prompt: "{{ matrix_bot_baibot_config_agents_static_definitions_prompt }}"
|
|
# The temperature parameter controls the randomness of the generated text.
|
|
# See: https://blogs.novita.ai/what-are-large-language-model-settings-temperature-top-p-and-max-tokens/#what-is-llm-temperature
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_temperature: 1.0
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_max_response_tokens: 4096
|
|
matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_max_context_tokens: 128000
|
|
|
|
########################################################################################
|
|
# #
|
|
# /Mistral agent configuration #
|
|
# #
|
|
########################################################################################
|
|
|
|
|
|
########################################################################################
|
|
# #
|
|
# OpenAI agent configuration #
|
|
# #
|
|
########################################################################################
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_enabled: false
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_id: openai
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_provider: openai
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config: "{{ matrix_bot_baibot_config_agents_static_definitions_openai_config_yaml | from_yaml | combine(matrix_bot_baibot_config_agents_static_definitions_openai_config_extension, recursive=True) }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_yaml: "{{ lookup('template', 'templates/provider/openai-config.yml.j2') }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_extension: "{{ matrix_bot_baibot_config_agents_static_definitions_openai_config_extension_yaml | from_yaml if matrix_bot_baibot_config_agents_static_definitions_openai_config_extension_yaml | from_yaml is mapping else {} }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_extension_yaml: |
|
|
# Your custom YAML configuration for this provider's configuration goes here.
|
|
# This configuration extends the default starting configuration (`matrix_bot_baibot_config_agents_static_definitions_openai_config`).
|
|
#
|
|
# You can override individual variables from the default configuration, or introduce new ones.
|
|
#
|
|
# If you need something more special, you can take full control by
|
|
# completely redefining `matrix_bot_baibot_config_agents_static_definitions_openai_config_yaml`.
|
|
#
|
|
# Example configuration extension follows:
|
|
#
|
|
# text_generation:
|
|
# temperature: 3.5
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_base_url: https://api.openai.com/v1
|
|
|
|
# The API key is intentionally not required. Some OpenAI-compatible APIs do not require a key.
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_api_key: ""
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_enabled: true
|
|
# For valid model choices, see: https://platform.openai.com/docs/models
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_model_id: gpt-5.4
|
|
# The prompt text to use (can be null or empty to not use a prompt).
|
|
# See: https://huggingface.co/docs/transformers/en/tasks/prompting
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_prompt: "{{ matrix_bot_baibot_config_agents_static_definitions_prompt }}"
|
|
# The temperature parameter controls the randomness of the generated text.
|
|
# See: https://blogs.novita.ai/what-are-large-language-model-settings-temperature-top-p-and-max-tokens/#what-is-llm-temperature
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_temperature: 1.0
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_max_response_tokens: ~
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_max_completion_tokens: 128000
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_max_context_tokens: 400000
|
|
# Built-in tools configuration (OpenAI only).
|
|
# These tools extend the model's capabilities but are disabled by default following upstream defaults.
|
|
# See: https://github.com/etkecc/baibot/blob/main/docs/features.md#%EF%B8%8F-built-in-tools-openai-only
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_tools_web_search: false
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_tools_code_interpreter: false
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_speech_to_text_enabled: true
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_speech_to_text_model_id: whisper-1
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_enabled: true
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_model_id: tts-1-hd
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_voice: onyx
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_speed: 1.0
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_response_format: opus
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_enabled: true
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_model_id: gpt-image-1.5
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_style: null
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_size: null
|
|
matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_quality: null
|
|
|
|
########################################################################################
|
|
# #
|
|
# /OpenAI agent configuration #
|
|
# #
|
|
########################################################################################
|
|
|
|
|
|
########################################################################################
|
|
# #
|
|
# Venice agent configuration #
|
|
# #
|
|
########################################################################################
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_enabled: false
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_id: venice
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_provider: venice
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config: "{{ matrix_bot_baibot_config_agents_static_definitions_venice_config_yaml | from_yaml | combine(matrix_bot_baibot_config_agents_static_definitions_venice_config_extension, recursive=True) }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_yaml: "{{ lookup('template', 'templates/provider/venice-config.yml.j2') }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_extension: "{{ matrix_bot_baibot_config_agents_static_definitions_venice_config_extension_yaml | from_yaml if matrix_bot_baibot_config_agents_static_definitions_venice_config_extension_yaml | from_yaml is mapping else {} }}"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_extension_yaml: |
|
|
# Your custom YAML configuration for this provider's configuration goes here.
|
|
# This configuration extends the default starting configuration (`matrix_bot_baibot_config_agents_static_definitions_venice_config`).
|
|
#
|
|
# You can override individual variables from the default configuration, or introduce new ones.
|
|
#
|
|
# If you need something more special, you can take full control by
|
|
# completely redefining `matrix_bot_baibot_config_agents_static_definitions_venice_config_yaml`.
|
|
#
|
|
# The fully-commented sample config (every Venice knob, with explanations) lives at:
|
|
# https://github.com/etkecc/baibot/blob/main/docs/sample-provider-configs/venice.yml
|
|
#
|
|
# Example configuration extension follows:
|
|
#
|
|
# text_generation:
|
|
# venice_parameters:
|
|
# enable_web_search: "off"
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_base_url: https://api.venice.ai/api/v1
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_api_key: ""
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_enabled: true
|
|
# For valid model choices, see: https://docs.venice.ai/models/overview
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_model_id: kimi-k2-5
|
|
# The prompt text to use (can be null or empty to not use a prompt).
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_prompt: "{{ matrix_bot_baibot_config_agents_static_definitions_prompt }}"
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_temperature: 1.0
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_max_response_tokens: 4096
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_max_context_tokens: 128000
|
|
# How long Venice keeps the prompt prefix cached: "default", "extended", or "24h".
|
|
# "24h" makes a long, stable system prompt cheap across a day of conversations.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_prompt_cache_retention: 24h
|
|
# The optional top-level sampling and reasoning knobs below default to null, meaning the knob is
|
|
# omitted from the request and Venice applies its own server-side default. Set a value to override.
|
|
# Nucleus sampling, 0.0-1.0 (an alternative to temperature).
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_top_p: ~
|
|
# Penalize tokens by how often they have already appeared, -2.0-2.0.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_frequency_penalty: ~
|
|
# Penalize tokens that have appeared at all, -2.0-2.0.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_presence_penalty: ~
|
|
# Penalize repetition; values above 1.0 discourage repeats.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_repetition_penalty: ~
|
|
# Reasoning budget for models that support it: "low", "medium", or "high".
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_reasoning_effort: ~
|
|
# Append the model's reasoning below the answer as a collapsible "Reasoning" block (folded by default).
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_show_reasoning: ~
|
|
|
|
# Venice-specific request parameters (the `venice_parameters` bag). Each non-null knob below is sent;
|
|
# a null knob is omitted, so Venice applies its own default. Omitting a knob is NOT the same as
|
|
# setting it to `false` (which actively sends `false`).
|
|
# Web search: "auto" (model decides), "on" (always), or "off".
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_venice_parameters_enable_web_search: auto
|
|
# Strip <think></think> blocks from reasoning models so the user sees only the answer.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_venice_parameters_strip_thinking_response: true
|
|
# Run in TEE-only mode (works across all models) instead of end-to-end-encrypted inference (only
|
|
# some models support it). TEE is still zero-retention private; this default keeps every model usable.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_venice_parameters_enable_e2ee: false
|
|
# Render web-search sources as readable citations in the reply.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_venice_parameters_enable_web_citations: ~
|
|
# Let web search read full page content, not just snippets.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_venice_parameters_enable_web_scraping: ~
|
|
# Prepend Venice's own system prompt alongside yours.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_venice_parameters_include_venice_system_prompt: ~
|
|
# Include search results inline in the streamed response.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_venice_parameters_include_search_results_in_stream: ~
|
|
# Return search results as documents rather than inline text.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_venice_parameters_return_search_results_as_documents: ~
|
|
# Allow web search to query X (Twitter).
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_venice_parameters_enable_x_search: ~
|
|
# Disable the model's thinking phase entirely.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_venice_parameters_disable_thinking: ~
|
|
# Response verbosity for models that support it: "low", "medium", or "high".
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_venice_parameters_verbosity: ~
|
|
# Use a public Venice character by its slug.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_generation_venice_parameters_character_slug: ~
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_speech_to_text_enabled: true
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_speech_to_text_model_id: nvidia/parakeet-tdt-0.6b-v3
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_to_speech_enabled: true
|
|
# Other models include tts-qwen3-1-7b, tts-xai-v1, tts-elevenlabs-turbo-v2-5, tts-minimax-speech-02-hd.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_to_speech_model_id: tts-kokoro
|
|
# Voices are model-specific. Kokoro uses af_*/am_*/bf_*/bm_* (e.g. af_sky, am_adam). You can also pass
|
|
# a cloned-voice handle (vv_<id>). An incompatible voice returns an error.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_to_speech_voice: af_sky
|
|
# Output audio format: mp3, opus, aac, flac, wav, or pcm. mp3 is the broadest Matrix-client fit.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_to_speech_response_format: mp3
|
|
# The optional knobs below default to null (omitted). Set a value to override Venice's default.
|
|
# Playback speed, 0.25-4.0 (1.0 is normal).
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_to_speech_speed: ~
|
|
# A style prompt steering emotion/delivery (e.g. "Excited and energetic."). Only Qwen 3 TTS uses it.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_to_speech_prompt: ~
|
|
# Sampling temperature, 0.0-2.0. Only Qwen 3 / Orpheus / Chatterbox HD use it.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_to_speech_temperature: ~
|
|
# Nucleus sampling, 0.0-1.0. Only Qwen 3 TTS uses it.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_text_to_speech_top_p: ~
|
|
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_enabled: true
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_model_id: chroma
|
|
# The optional generation knobs below default to null (omitted). Set a value to override Venice's
|
|
# default. Omitting a knob is NOT the same as setting it: an omitted knob lets Venice apply its own
|
|
# default, a set value is sent verbatim.
|
|
# A description of what should NOT appear in the image.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_negative_prompt: ~
|
|
# CFG scale, 0-20. Higher values make the image adhere more closely to the prompt.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_cfg_scale: ~
|
|
# Number of inference steps. Model-specific; some models ignore it.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_steps: ~
|
|
# A named style to apply (e.g. "3D Model"). See Venice's image-styles reference.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_style_preset: ~
|
|
# Random seed, -999999999-999999999. Fix it for reproducible results; omit for a random seed.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_seed: ~
|
|
# Blur images classified as adult content. Defaults to true.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_safe_mode: ~
|
|
# Hide the Venice watermark. Venice may ignore this for certain generated content. Defaults to false.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_hide_watermark: ~
|
|
# Output format: jpeg, png, or webp. webp is smallest; png is highest-quality. Defaults to webp.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_format: ~
|
|
# Image dimensions in pixels, each 1-1280. Default 1024x1024.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_width: ~
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_height: ~
|
|
# Aspect ratio (used by certain models, e.g. Nano Banana): "1:1", "16:9". An alternative to width/height.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_aspect_ratio: ~
|
|
# Resolution tier (used by certain models): "1K", "2K", "4K".
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_resolution: ~
|
|
# Output quality for supported models (e.g. GPT Image 2): low, medium, high. Higher can cost more.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_quality: ~
|
|
# Lora strength, 0-100. Only applies if the model uses additional Loras.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_lora_strength: ~
|
|
# Embed the generation prompt into the image's EXIF metadata. Defaults to false.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_embed_exif_metadata: ~
|
|
# Let the model pull the latest info from the web for the image. Model-specific; costs extra credits.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_enable_web_search: ~
|
|
# Image editing shares this image_generation config block; only the model differs.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_edit_model_id: firered-image-edit
|
|
# The optional edit knobs below default to null (omitted). Set a value to override Venice's default.
|
|
# Output format: jpeg, png, or webp. When omitted, Venice infers it (PNG at 1K, JPEG at 2K/4K).
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_edit_output_format: ~
|
|
# Aspect ratio of the result: auto, 1:1, 3:2, 16:9, 21:9, 9:16, 2:3, 3:4, 4:5 (model-specific).
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_edit_aspect_ratio: ~
|
|
# Resolution tier: 1K, 2K, 4K (model-specific). Defaults to 1K.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_edit_resolution: ~
|
|
# Blur images classified as adult content. Defaults to true.
|
|
matrix_bot_baibot_config_agents_static_definitions_venice_config_image_generation_edit_safe_mode: ~
|
|
|
|
########################################################################################
|
|
# #
|
|
# /Venice agent configuration #
|
|
# #
|
|
########################################################################################
|
|
|
|
|
|
# Controls the `initial_global_config.handler.catch_all` configuration setting.
|
|
#
|
|
# This is an initial global configuration setting.
|
|
# It only affects the first run of the bot. Configuration is later managed at runtime.
|
|
matrix_bot_baibot_config_initial_global_config_handler_catch_all: null
|
|
|
|
# Controls the `initial_global_config.handler.text_generation` configuration setting.
|
|
#
|
|
# This is an initial global configuration setting.
|
|
# It only affects the first run of the bot. Configuration is later managed at runtime.
|
|
matrix_bot_baibot_config_initial_global_config_handler_text_generation: null
|
|
|
|
# Controls the `initial_global_config.handler.text_to_speech` configuration setting.
|
|
#
|
|
# This is an initial global configuration setting.
|
|
# It only affects the first run of the bot. Configuration is later managed at runtime.
|
|
matrix_bot_baibot_config_initial_global_config_handler_text_to_speech: null
|
|
|
|
# Controls the `initial_global_config.handler.speech_to_text` configuration setting.
|
|
#
|
|
# This is an initial global configuration setting.
|
|
# It only affects the first run of the bot. Configuration is later managed at runtime.
|
|
matrix_bot_baibot_config_initial_global_config_handler_speech_to_text: null
|
|
|
|
# Controls the `initial_global_config.handler.image_generation` configuration setting.
|
|
#
|
|
# This is an initial global configuration setting.
|
|
# It only affects the first run of the bot. Configuration is later managed at runtime.
|
|
matrix_bot_baibot_config_initial_global_config_handler_image_generation: null
|
|
|
|
# Controls the `initial_global_config.user_patterns` configuration setting.
|
|
#
|
|
# A space-separated list of MXID patterns which specify who can use the bot.
|
|
# By default, we let anyone on the homeserver use the bot.
|
|
#
|
|
# This is an initial global configuration setting.
|
|
# It only affects the first run of the bot. Configuration is later managed at runtime.
|
|
matrix_bot_baibot_config_initial_global_config_user_patterns:
|
|
- "@*:{{ matrix_bot_baibot_config_homeserver_server_name }}"
|
|
|
|
# Controls the `logging` configuration setting.
|
|
#
|
|
# This could take a single value (e.g. `warn`) to affect all tracing targets,
|
|
# or individual libraries (e.g. `mxlink`, `baibot`) can be configured independently of the main level.
|
|
#
|
|
# Below, we configure the logging level for:
|
|
# - the bot (baibot), via `matrix_bot_baibot_config_logging_level_baibot`
|
|
# - the bot framework that the bot is based on (mxlink), via `matrix_bot_baibot_config_logging_level_mxlink`
|
|
# - everything else (external libraries), via `matrix_bot_baibot_config_logging_level_other_libs`
|
|
#
|
|
# Valid values for each level are: `trace`, `debug`, `info`, `warn`, `error`.
|
|
# Learn more here: https://stackoverflow.com/a/73735203
|
|
matrix_bot_baibot_config_logging: "{{ matrix_bot_baibot_config_logging_level_other_libs }},mxlink={{ matrix_bot_baibot_config_logging_level_mxlink }},baibot={{ matrix_bot_baibot_config_logging_level_baibot }}"
|
|
|
|
# Adjust the logging level for other libraries used by the bot.
|
|
matrix_bot_baibot_config_logging_level_other_libs: warn
|
|
|
|
# Affects the logging level of the bot framework (mxlink) that the bot is based on.
|
|
# Related to `matrix_bot_baibot_config_logging`
|
|
matrix_bot_baibot_config_logging_level_mxlink: info
|
|
|
|
# Affects the logging level of the bot itself.
|
|
# Related to `matrix_bot_baibot_config_logging`
|
|
matrix_bot_baibot_config_logging_level_baibot: info
|
|
|
|
# Holds the final baibot configuration (a combination of the default and its extension).
|
|
# You most likely don't need to touch this variable. Instead, see `matrix_bot_baibot_configuration_yaml` or `matrix_bot_baibot_configuration_extension_yaml`.
|
|
matrix_bot_baibot_configuration: "{{ matrix_bot_baibot_configuration_yaml | from_yaml | combine(matrix_bot_baibot_configuration_extension, recursive=True) }}"
|
|
|
|
# Default baibot configuration template which covers the generic use case.
|
|
# You can customize it by controlling the various variables inside it.
|
|
#
|
|
# For a more advanced customization, you can extend the default (see `matrix_bot_baibot_configuration_extension_yaml`)
|
|
# or completely replace this variable with your own template.
|
|
matrix_bot_baibot_configuration_yaml: "{{ lookup('template', 'templates/config.yaml.j2') }}"
|
|
|
|
matrix_bot_baibot_configuration_extension_yaml: |
|
|
# Your custom YAML configuration for baibot goes here.
|
|
# This configuration extends the default starting configuration (`matrix_bot_baibot_configuration_yaml`).
|
|
#
|
|
# You can override individual variables from the default configuration, or introduce new ones.
|
|
#
|
|
# If you need something more special, you can take full control by
|
|
# completely redefining `matrix_bot_baibot_configuration_yaml`.
|
|
#
|
|
# Example configuration extension follows:
|
|
#
|
|
# user:
|
|
# password: something
|
|
|
|
matrix_bot_baibot_configuration_extension: "{{ matrix_bot_baibot_configuration_extension_yaml | from_yaml if matrix_bot_baibot_configuration_extension_yaml | from_yaml is mapping else {} }}"
|
|
|
|
# Additional environment variables to pass to the baibot container.
|
|
#
|
|
# Environment variables take priority over settings in the configuration file.
|
|
#
|
|
# Example:
|
|
# matrix_bot_baibot_environment_variables_extension: |
|
|
# BAIBOT_USER_PASSWORD=password
|
|
matrix_bot_baibot_environment_variables_extension: ''
|
|
|
|
# matrix_bot_baibot_restart_necessary controls whether the service
|
|
# will be restarted (when true) or merely started (when false) by the
|
|
# systemd service manager role (when conditional restart is enabled).
|
|
#
|
|
# This value is automatically computed during installation based on whether
|
|
# any configuration files, the systemd service file, or the container image changed.
|
|
# The default of `false` means "no restart needed" — appropriate when the role's
|
|
# installation tasks haven't run (e.g., due to --tags skipping them).
|
|
matrix_bot_baibot_restart_necessary: false
|