What happened / 发生了什么
上传包含小写 skill.md 的 Skill 压缩包时,WebUI 会通过校验,且 Bot 也可以正常识别并使用该 Skill。
但上传完成后,该 Skill 不会显示在 WebUI 的 Skill 列表中,同时在“人格配置”里也无法被搜索到。
也就是说,当前对 SKILL.md 和 skill.md 的处理存在不一致:
- 校验阶段允许小写 skill.md
- 运行阶段可被 Bot 识别
- 但 UI 展示和搜索阶段不会将其正常收录
这会导致虽然 Skill 已完整上传成功,但实际上在 WebUI 中不可见、不可检索。
Reproduce / 如何复现?
- 准备一个可正常使用的 Skill 压缩包,并将入口文件命名为小写 skill.md。
- 在 AstrBot 的 WebUI 中上传该 Skill。
- 观察上传结果,WebUI 会通过校验,不会提示入口文件命名异常。
- 让 Bot 加载或使用该 Skill,可发现该 Skill 能被正常识别和使用。
- 查看skill.json文件,发现包含该Skill的信息。
- 查看skills文件夹,发现包含该Skill的子文件夹。
- 打开 WebUI 的 Skill 列表,该Skill不会正常显示。
- 进入“人格配置”,在Skill配置中搜索该 Skill 名称,无法检索到。
AstrBot version, deployment method (e.g., Windows Docker Desktop deployment), provider used, and messaging platform used. / AstrBot 版本、部署方式(如 Windows Docker Desktop 部署)、使用的提供商、使用的消息平台适配器
Astrbot 4.20.1; Ubuntu 22.04.4 LTS 1panel; soulter/astrbot docker部署
OS
Linux
Logs / 报错日志
[2026-03-21 23:02:15.215] [Core] [INFO] [computer.computer_client:499]: [Computer] Syncing skills to 0 active sandbox(es)
Are you willing to submit a PR? / 你愿意提交 PR 吗?
Code of Conduct
What happened / 发生了什么
上传包含小写 skill.md 的 Skill 压缩包时,WebUI 会通过校验,且 Bot 也可以正常识别并使用该 Skill。
但上传完成后,该 Skill 不会显示在 WebUI 的 Skill 列表中,同时在“人格配置”里也无法被搜索到。
也就是说,当前对 SKILL.md 和 skill.md 的处理存在不一致:
这会导致虽然 Skill 已完整上传成功,但实际上在 WebUI 中不可见、不可检索。
Reproduce / 如何复现?
AstrBot version, deployment method (e.g., Windows Docker Desktop deployment), provider used, and messaging platform used. / AstrBot 版本、部署方式(如 Windows Docker Desktop 部署)、使用的提供商、使用的消息平台适配器
Astrbot 4.20.1; Ubuntu 22.04.4 LTS 1panel; soulter/astrbot docker部署
OS
Linux
Logs / 报错日志
[2026-03-21 23:02:15.215] [Core] [INFO] [computer.computer_client:499]: [Computer] Syncing skills to 0 active sandbox(es)
Are you willing to submit a PR? / 你愿意提交 PR 吗?
Code of Conduct