Skip to content

[feat] move BTW dual-loop config to AI capabilities #183

Description

@BegoniaHe

Preflight

  • I searched existing Issues and PRs.
  • This matches the current-branch, no-legacy, Python 3.14+ policy.
  • I filled exactly one of Human note or Agent note, matching who wrote this Issue.

Problem

BTW 双循环不是插件,配置值也在根级 btw,但 WebUI 元数据被挂在 plugin_group.metadata.btw。用户在「AI 配置 → 高级 / 能力」找不到这 10 个字段,只能去「插件配置」碰运气。

当前 master80855dba98a3d052e19e1e922a845c69eeb21f5d)上还有一层前端特判:AstrBotCoreConfigWrapper.vueplugin_group 只渲染插件选择器,连 plugin_group.metadata.btw 也画不出来。后端 /api/v1/config-profiles/default 已经返回完整 btw 元数据和中英词条。

放进插件页不是产品分类,而是 7630c7c76 为了迁就 ConfigMetadataI18n.convert_to_i18n_keys:顶层 CONFIG_METADATA_3["btw"] 会被当成 Tab 组且没有 metadata,转换后控件被清空。i18n 键当时已经写在 plugin_group.btw.* 下。

Proposal

把 WebUI 分组改到 AI 配置 → 能力,与 Computer Use、知识库、网页搜索、主动能力放在一起。不要做成内置插件,也不要塞进「高级」(那里是上下文压缩和杂项执行参数)。

建议最小改动:

  1. CONFIG_METADATA_3["plugin_group"]["metadata"]["btw"] 挪到 ai_group.metadata.btw。运行时仍用根级 btw,不改 DEFAULT_CONFIG 形状。
  2. AiConfigPanel.vuecapabilities 列表加入 btw
  3. config-metadata 中英词条从 plugin_group.btw 迁到 ai_group.btw,并更新 test_config_metadata_i18n.py
  4. 同步 docs/zh/dev/astrbot-config.mddocs/en/dev/astrbot-config.md 的路径说明(现为「配置文件 → BTW 双循环」)。
  5. btw.work_loop.computer_use_runtimelabelsinherit / none / local / sandbox),与 AI 页 Computer Use 下拉一致。

plugin_group 继续只负责插件选择器。若该组以后还有非 plugin 的 metadata,应由通用渲染接住,而不是再为 BTW 开特例。

Non-goals

  • 注册名为 btw 的内置插件 / Star。
  • 新增顶层配置 Tab。
  • 改 BTW 运行时语义、默认关闭策略或循环分配规则。
  • 把 BTW 放进「高级」或「扩展功能」。

Acceptance criteria

  • 「AI 配置 → 能力」在本地 Agent 下显示「BTW 双循环」组;启用后出现全部 10 个字段。
  • 「插件配置」不再出现该组。
  • 中英切换后标题、hint、Computer Use 选项标签走 i18n,不再显示 plugin_group.btw.* 键或未翻译的 inherit 原文(除非有意保留 ident)。
  • 根级 btw JSON 形状不变;保存/读取现有配置档不迁移、不丢字段。
  • tests/unit/test_config_metadata_i18n.py、相关 Dashboard Vitest、中英文档与 docs:build / make check-md 通过。

Author

Agent

Agent note

OpenCode 按维护者结论起草并提交本 Issue:BTW 应放在 AI 配置 → 能力,而不是插件页或假插件。依据是 CONFIG_METADATA_3AiConfigPanel.vue 的写死子 Tab、7630c7c76 的转换 workaround,以及本会话中确认的分类讨论。未声称可见性修复已合入 master。后续 PR 需人类维护者审查和独立 AI 辅助评审。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions