Skip to content

[Feature] 为「导入人格」补充文件格式说明 #10335

Description

@silvaling

功能描述

为「导入人格」补充文件格式说明 —— 包括 WebUI 上的即时提示,以及使用文档中的对应页面。

当前导入只接受一种格式,但界面与文档都没有说明它长什么样、需要哪些字段,用户只能靠试错或读源码反推;其中「tools / skills 不会被导入」这一行为完全没有被记录。

现状

界面没有格式提示。上传控件只有扩展名限制(PersonaManager.vue:52-53):

<input ref="importFileInput" type="file" accept=".json" @change="handleImportFile" />

相关反馈只有事后报错(features/persona.json:97-98):"文件格式错误……"、"文件内容不完整,缺少系统提示词"。

文档没有对应内容。docs/ 全文搜索「导入人格」为 0 处;docs/zh/use/ 下 19 个页面中无人格相关页面。persona_id / system_prompt 仅出现在开发文档(Persona API、配置结构)中,面向用户的格式说明是空白。

实际接受的字段(PersonaManager.vue:778-811):

字段 必填 缺省行为
system_prompt ✅ 缺失则报错
persona_id ❌ 默认 imported_persona,重名自动追加 _imported 后缀
begin_dialogs ❌ 默认 []

而 tools 与 skills 被硬编码为 null,即导入不携带工具与技能配置,导入后等同于全部启用。

期望行为

  1. 在「导入人格」处提供可见的格式说明:字段列表与一份最小示例 JSON
  2. 在 docs/zh/use/(及各语言对应位置)补充人格管理页面,或并入 webui.md:说明支持格式与各字段(含重名重命名规则),并明确写出 tools / skills 不会被导入
  3. 可选:文件包含未生效字段时,在导入结果中给出提示

使用场景

  • 拿到一份人格 JSON 后不知道要写哪些字段,也不清楚哪些会被忽略
  • 迁移或备份人格时,想确认工具与技能是否需要重建

补充说明

  • 以补充说明与提示为主,不改变现有导入行为
  • tools / skills 置空属既有设计(注释写明"默认使用所有工具"),此处只要求说明白

检查清单

  • 我已在 Issue 列表中搜索过相关功能,确认该功能想法从未被提出过。
  • 我建议的功能与 AstrBot 本体相关,而非在建议某一插件的功能。
  • 我已阅读并同意本项目的贡献者行为准则。

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions