Конфигурация
Что это
raytsystem настраивается пятью файлами в каталоге config/. Все они хранятся в репозитории, читаются при старте и служат единым источником правды о том, какие возможности включены и по каким правилам работает система.
config/raytsystem.toml— базовые настройки ядра: версия схемы, пути данных, лимиты, а также флаги функций ядра в секции[features].config/platform.yaml— платформенные флаги функций, политики по умолчанию и пороги предохранителей (circuit breakers).config/policies.yaml— правила промоушена знаний, внешних действий, egress к моделям и роли ревьюеров.config/runtime-adapters.yaml— каталог runtime-адаптеров (исполнителей). В текущем релизе все адаптеры имеютstate: disabled.config/sources.yaml— маршруты нормализации источников и настройки сети (по умолчанию сеть выключена).
Когда использовать
Открывайте эти файлы, когда нужно понять, почему возможность недоступна, проверить пороги безопасности или подготовить изменение платформенных настроек. Для практических вопросов «включено ли X» удобнее посмотреть готовый статус через CLI, а не читать YAML вручную.
Предварительные условия
- Установленный проект и рабочее окружение
uv(см./getting-started/installation). - Доступ к каталогу
config/в репозитории.
Пошагово
-
Проверьте базовое состояние системы:
uv run raytsystem doctor -
Получите платформенные флаги и хеш конфигурации в машинно-читаемом виде:
uv run raytsystem platform-status --jsonОтвет включает поля
flagsиconfig_sha256— хеш нормализованной конфигурации изconfig/platform.yaml(см.to_public_dictиload_feature_configвsrc/raytsystem/features.py). -
Полный список флагов и их значения по умолчанию смотрите на странице
/reference/feature-flags. -
Для модуля «Документы» секция
[documents]задаёт disposableindex_db, лимиты и массив[[documents.roots]]сid, относительнымpath,modeиkind. Такая запись не может ослабить compiled protection floor; см. разрешённые и защищённые области.
Пример: флаги и их зависимости
Флаги функций живут в двух местах. Флаги ядра (config/raytsystem.toml, секция [features]) управляют графом кода, графовым поиском, цифровыми сотрудниками, рабочими пространствами задач и heartbeat'ами. Платформенные флаги (config/platform.yaml, секция features) управляют оценками, телеметрией, replay, симулятором политик, аварийными контролями, MCP-управлением, жизненным циклом паков, движком воркфлоу, уведомлениями и резервным копированием.
Ключевая особенность платформенных флагов — fail-closed зависимости. В src/raytsystem/features.py (_DEPENDENCIES) заданы пары «дочерний → родительский флаг»: дочерний флаг нельзя включить, если родительский выключен, иначе загрузка падает с FeatureConfigError. Например:
promptfoo_adapter_enabledтребуетevals_enabled;promptfoo_remote_generation_enabledтребуетpromptfoo_adapter_enabled;otel_export_enabledтребуетtelemetry_enabled;external_mcp_execution_enabledтребуетmcp_governance_enabled;a2a_network_exposure_enabledтребуетa2a_gateway_enabled;external_notifications_enabledтребуетnotifications_enabled;external_kms_enabledтребуетrestricted_encryption_enabled.
Отдельные шлюзы экспозиции/провайдеров (удалённая генерация promptfoo, внешнее исполнение MCP, сетевая экспозиция A2A, внешний KMS) остаются выключенными по умолчанию, даже если родительская функция включена.
Ожидаемый результат
platform-status --json возвращает текущий набор флагов и config_sha256. По умолчанию (согласно config/platform.yaml) включены: evals_enabled, telemetry_enabled, replay_enabled, policy_simulator_enabled, emergency_controls_enabled, mcp_governance_enabled, pack_lifecycle_enabled, workflow_engine_enabled, notifications_enabled, backup_enabled.
Ограничения и безопасность
Часть возможностей выключена по умолчанию и требует явного включения и одобрения. Не считайте их работающими:
- Исполнение runtime (
runtime_execution_enabled,codex_local_enabled,claude_local_enabledвconfig/raytsystem.toml) — выключено. Все адаптеры вconfig/runtime-adapters.yamlимеютstate: disabled. - Плановые heartbeat'ы (
scheduled_heartbeats_enabled) — выключены. - Внешние шлюзы:
otel_export_enabled,promptfoo_adapter_enabled,acp_adapter_enabled,a2a_gateway_enabled,external_notifications_enabled,restricted_encryption_enabledи связанные шлюзы экспозиции — выключены.
Политики по умолчанию из config/platform.yaml (секция policy) держат систему в безопасном состоянии: network_default: none, workspace_default: staging_only, external_actions_default: approval_required, mcp_tool_default: catalog_only, a2a_bind: loopback, пустой notification_destinations (любой внешний адресат отклоняется). Сеть в config/sources.yaml тоже отключена (network.enabled: false) и разрешает только https/порт 443 с блокировкой приватных адресов.
config/policies.yaml фиксирует: реальный промоушен знаний — manual_hash_bound (то есть по умолчанию запрещён без одобрения с привязкой к хешу), а действия send, publish, upload, delete, pay, git_push, pull_request всегда требуют одобрения.
Пороговые значения предохранителей (circuit_breakers в config/platform.yaml) задают лимиты, при превышении которых защёлкивается кэтч-брейкер (например, repeated_error: 5, protected_path: 1, forbidden_egress: 1).
Частые ошибки
- Правка YAML без учёта зависимостей. Если включить дочерний флаг при выключенном родителе, загрузка конфигурации завершится ошибкой
FeatureConfigError. Сначала включите родительский флаг. - Ожидание работы выключенной функции. Если возможность описана в документации, но отключена, см.
/troubleshooting/documented-but-disabledи/troubleshooting/feature-flag-off. - Ручная сверка вместо CLI. Быстрее и надёжнее выполнить
uv run raytsystem platform-status --json, чем сверять флаги глазами.
Связанные страницы
- Справочник флагов функций
- Безопасные значения по умолчанию
- Обзор безопасности
- Функция задокументирована, но отключена
- Флаг функции выключен
- Справочник CLI
Источники истины
config/raytsystem.tomlconfig/platform.yamlconfig/policies.yamlconfig/runtime-adapters.yamlconfig/sources.yamlsrc/raytsystem/features.py