Skip to content

feat(provider-agy): центральная настройка отключения нативных субагентов - #22

Merged
nick8cyber merged 2 commits into
mainfrom
feat/provider-agy-subagents-setting-thr_r2eik2fuzy
Nov 10, 2026
Merged

nick8cyber merged 2 commits into
mainfrom
feat/provider-agy-subagents-setting-thr_r2eik2fuzy

Conversation

@nick8cyber

Copy link
Copy Markdown
Owner

Контекст

Запрет нативных субагентов (PR #20) управлялся только env AGY_DISABLE_SUBAGENTS. У codex/claude-code тот же запрет — центральная настройка провайдера на странице Settings → Providers (subagentsDisabled → deriveProviderOptions → options.providerOptions.providerSubagentsEnabled). agy теперь на том же контракте.

Что сделано

  • server.ts: bb.settings.define({ subagentsDisabled }) — default true (bb владеет всеми субагентами; у codex default false — здесь осознанно строже по инциденту 11.11) + deriveProviderOptions → providerSubagentsEnabled.
  • acp-wrapper.ts: резолв AGY_DISABLE_SUBAGENTS env-override > providerOptions.providerSubagentsEnabled > default disabled. Решение передаётся в env шима (0/1 — инъекция disableBuiltInTools) и в стемп settings.json (enabled=<resolved> — re-enable реально возвращает enabled:true, раньше стемп был только на запрет).
  • Харнесс: тред t9 с providerSubagentsEnabled:true — env 0 + enabled:true; проверка инъекции привязана к env-записи процесса (инвариант: disableBuiltInTools ⇔ env≠"0"). Спека §9 и README обновлены.

Проверки

  • harness-acp.mjs: 39/39 (новые subagents/disabled-env-default, subagents/reenabled-env, subagents/reenabled-settings).
  • tsc --noEmit чисто, bb plugin build . собран.

Источник: bb тред thr_r2eik2fuzy

…rSubagentsEnabled

Источник: bb тред thr_r2eik2fuzy — запрет нативных субагентов должен
управляться той же центральной настройкой провайдера, что у codex/
claude-code, а не только env-гейтом. server.ts: settings.define
subagentsDisabled (default true — bb владеет всеми субагентами) +
deriveProviderOptions → options.providerOptions.providerSubagentsEnabled.
Обёртка резолвит: AGY_DISABLE_SUBAGENTS env-override > provider option >
default disabled; решение едет в env шима (инъекция disableBuiltInTools)
и в стемп settings.json (re-enable реально возвращает enabled=true).
Харнесс: тред с providerSubagentsEnabled=true — env 0 + enabled:true,
остальные сессии остаются выключенными; 39/39.
undefined setting value must resolve disabled (наш дефолт инвертирован
относительно codex) — === false, не !== true.
@nick8cyber
nick8cyber merged commit 08869ee into main Nov 10, 2026
@nick8cyber
nick8cyber deleted the feat/provider-agy-subagents-setting-thr_r2eik2fuzy branch November 10, 2026 23:18
nick8cyber added a commit that referenced this pull request Nov 10, 2026
Co-authored-by: user.email <245943021+nick8cyber@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant