メインコンテンツへスキップ
システム動作のための環境情報を設定します。設定ファイルは data/config.yaml にあります。 通常、変更は必要ありません。
admins: []
api:
    port: 5300
    webhook_prefix: 'http://127.0.0.1:5300'
    extra_webhook_prefix: ''
command:
    enable: true
    prefix:
    - '!'
    - 
    privilege: {}
concurrency:
    pipeline: 20
    session: 1
proxy:
    http: ''
    https: ''
system:
    instance_id: ''
    edition: community
    recovery_key: ''
    allow_modify_login_info: true
    disabled_adapters: []
    limitation:
        max_bots: -1
        max_pipelines: -1
        max_extensions: -1
    task_retention:
        # メモリ内に保持する完了済み非同期タスク履歴の最大数
        completed_limit: 200
    jwt:
        expire: 604800
        secret: ''
database:
    use: sqlite
    sqlite:
        path: 'data/langbot.db'
    postgresql:
        host: '127.0.0.1'
        port: 5432
        user: 'postgres'
        password: 'postgres'
        database: 'postgres'
vdb:
    use: chroma
    qdrant:
        url: ''
        host: localhost
        port: 6333
        api_key: ''
    seekdb:
        mode: embedded  # 'embedded' または 'server'
        # 組み込みモード設定:
        path: './data/seekdb'
        database: 'langbot'
        # サーバーモード設定(mode='server' の場合):
        host: 'localhost'
        port: 2881
        user: 'root'
        password: ''
        tenant: ''  # OceanBase サーバー向けの任意項目
    milvus:
        uri: 'http://127.0.0.1:19530'
        token: ''
        db_name: ''
    pgvector:
        host: '127.0.0.1'
        port: 5433
        database: 'langbot'
        user: 'postgres'
        password: 'postgres'
storage:
    use: local
    cleanup:
        # ローカル/S3 のアップロードファイルと古いログを定期的に削除するか
        enabled: true
        # クリーンアップ確認間隔(時間)
        check_interval_hours: 1
        # ストレージルート直下のアップロードファイルを保持する日数
        uploaded_file_retention_days: 7
        # LangBot ログファイルを保持する日数
        log_retention_days: 3
    s3:
        endpoint_url: ''
        access_key_id: ''
        secret_access_key: ''
        region: 'us-east-1'
        bucket: 'langbot-storage'
plugin:
    enable: true
    runtime_ws_url: 'ws://langbot_plugin_runtime:5400/control/ws'
    enable_marketplace: true
    display_plugin_debug_url: 'ws://localhost:5401/plugin/debug/ws'
    binary_storage:
        # 1 つのプラグインバイナリストレージ値の最大バイト数
        max_value_bytes: 10485760
monitoring:
    auto_cleanup:
        # 期限切れの監視レコードを自動削除するか
        enabled: true
        # 監視レコードの保持日数
        retention_days: 30
        # クリーンアップ確認間隔(時間)
        check_interval_hours: 1
        # 各監視テーブルで 1 回に削除する期限切れ行数
        delete_batch_size: 1000
box:
    backend: 'local'  # 'local' (Docker/nsjail), 'docker', 'nsjail', または 'e2b'。BOX__BACKEND で書き込めます。
    runtime:
        endpoint: ''  # 外部 Box Runtime ベース URL(例: 'ws://127.0.0.1:5410')。空の場合はローカル自動管理ランタイムを使用。
    local:
        profile: 'default'
        image: ''  # カスタムローカルサンドボックスイメージ。空の場合はプロファイルデフォルトを使用。
        host_root: './data/box'  # ローカルワークスペースマウント用のホストルートディレクトリ。Docker デプロイ時は langbot_box にマウントする絶対ホストパスを使用。
        default_workspace: ''  # デフォルトは '<host_root>/default'。
        skills_root: 'skills'  # Box が管理する Skill パッケージディレクトリ。相対パスは host_root 配下に解決されます。
        allowed_mount_roots:  # 空の場合はデフォルトで ['<host_root>']。
            - './data/box'
            - '/tmp'
        workspace_quota_mb: null  # オプションのディスククォータオーバーライド (>= 0)。null = プロファイルデフォルト。
    e2b:
        api_key: ''  # E2B_API_KEY 環境変数でも設定可能。
        api_url: ''  # セルフホストデプロイ用のカスタム API URL。
        template: ''  # デフォルトテンプレート ID(例: 'base', 'python-3.11')。
space:
    # Space サービス URL
    url: 'https://space.langbot.app'
    # Space モデルリクエスト API URL(MaaS)
    models_gateway_api_url: 'https://api.langbot.cloud/v1'
    # OAuth 認可ページ URL
    oauth_authorize_url: 'https://space.langbot.app/auth/authorize'
    disable_models_service: false
    disable_telemetry: false

補足

  • storage.cleanup.uploaded_file_retention_days はストレージルート直下の一時アップロードファイルのみを削除します。プラグイン設定ファイルやディレクトリ配下の内部オブジェクトは削除しません。
  • storage.cleanup.log_retention_days はファイル名の日付に基づいて古いログを削除します。デフォルトでは最大 3 日分のログを保持します。
  • SQLite をデータベースとして使用している場合、監視レコードの自動削除後にデータベースファイルの空き容量を直接解放します。
  • plugin.binary_storage.max_value_bytes は 1 つのプラグインバイナリストレージ値のサイズを制限します。デフォルトは 10 MiB です。
  • WebUI のサイドバーには「ストレージ分析」ページがあり、データベース、ログ、アップロードファイル、ベクターストア、プラグイン、MCP、一時ファイル、クリーンアップ候補を確認できます。

環境変数による設定

config.yaml の設定は環境変数を介して設定できます。環境変数名は大文字で、二重アンダースコアで接続されます。例: API__PORTapi.port を表します。
  • API__PORTapi.port を表します
  • CONCURRENCY__PIPELINEconcurrency.pipeline を表します
  • DATABASE__SQLITE__PATHdatabase.sqlite.path を表します
  • STORAGE__CLEANUP__UPLOADED_FILE_RETENTION_DAYSstorage.cleanup.uploaded_file_retention_days を表します
  • STORAGE__CLEANUP__LOG_RETENTION_DAYSstorage.cleanup.log_retention_days を表します
  • MONITORING__AUTO_CLEANUP__RETENTION_DAYSmonitoring.auto_cleanup.retention_days を表します
  • PLUGIN__BINARY_STORAGE__MAX_VALUE_BYTESplugin.binary_storage.max_value_bytes を表します
  • BOX__BACKENDbox.backend を表します
  • BOX__LOCAL__HOST_ROOTbox.local.host_root を表します
  • BOX__LOCAL__SKILLS_ROOTbox.local.skills_root を表します
起動時、LangBot はすべての環境変数を読み取り、対応する設定を config.yaml に適用して data/config.yaml ファイルに書き込みます。
Box 関連設定は langbot サービスに統一形式の BOX__* 環境変数で設定します。LangBot は起動時にそれらを data/config.yaml に適用し、INIT RPC 経由で Box 設定を langbot_box に渡します。LANGBOT_BOX_*BOX__*langbot_box に設定しても直接読み取られません。