界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
效率与协作 · SKILL.md

character-museai-to-tavern

character-museai-to-tavern

【效率与协作】将 MuseAI 伙伴项目角色卡 JSON 转换为可导入 SillyTavern 的角色卡 V2 JSON,并保持、整理和补写中文角色内容。用户要求转换、迁移、重排、修复或批量处理 MuseAI 角色卡到 SillyTavern 时使用;也适用于中文开场白、示例对话、行为指令、备用开场、内嵌世界书或 V2 结构校验。

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: character-museai-to-tavern description: 将 MuseAI 伙伴项目角色卡 JSON 转换为可导入 SillyTavern 的角色卡 V2 JSON,并保持、整理和补写中文角色内容。用户要求转换、迁移、重排、修复或批量处理 MuseAI 角色卡到 SillyTavern 时使用;也适用于中文开场白、示例对话、行为指令、备用开场、内嵌世界书或 V2 结构校验。

MuseAI 角色卡转 SillyTavern

将 museai.partner-items JSON 中的一个 MuseAI 角色转换为打磨后的中文 SillyTavern 角色卡 V2。

工作流程

  1. 完整读取源 JSON。选择用户指定的 characterCards[] 条目;如果文件中只有一个角色,自动使用它。
  2. 运行内置转换脚本,先生成结构有效的草稿:
python3 scripts/convert_character.py INPUT.json OUTPUT.json
  1. 阅读生成的草稿,并依据源文件事实继续打磨:

    • 所有面向角色扮演的内容都保持中文。SillyTavern 结构字段、{{char}}、{{user}} 和 <START> 可以保留原样。
    • 保留源文件中的身份、外貌、性格、价值观、能力、经历、关系、用户关系、边界和关键事件。
    • 将零散字段整理为连贯可用的角色指令,而不是直接堆叠原始键值对。
    • 编写有场景感的 first_mes,包含动作、对白、张力,并给 {{user}} 留出开放选择。
    • 编写至少三段有差异的 mes_example 交流,用来展示语气、反应、边界和关系动态。
    • 当源文件支持多个时期或场景时,添加两到三个 alternate_greetings。
    • 将稳定事实和受时间线影响的材料放入 character_book.entries。
    • 明确要求不得替 {{user}} 说话、思考、决定或行动。
    • 保持时间线一致,不要在对应时期之前泄露未来事实。
    • 不要发明与源文件冲突的身份特征、关系、能力或正史事件。
  2. V2 中顶层和 data 内重复出现的载荷字段必须完全一致。编辑其中一处后,要同步镜像到另一处。

  3. 校验最终文件:

python3 scripts/convert_character.py --validate-only OUTPUT.json
  1. 汇报输出路径和校验结果。

输出要求

使用 spec: "chara_card_v2" 和 spec_version: "2.0"。必须包含:

  • name
  • description
  • personality
  • scenario
  • first_mes
  • mes_example
  • creator_notes
  • system_prompt
  • post_history_instructions
  • alternate_greetings
  • tags
  • creator
  • character_version
  • extensions
  • character_book
  • data,并镜像上方所有字段

除非用户要求改名或改路径,否则保留用户指定的目标位置和文件名。只有在用户明确要求,或请求清楚说明要原地转换时,才覆盖源文件。

参考资料

当源文件包含不熟悉的 MuseAI 字段、多个角色卡、关联世界书,或需要判断某条事实该放在哪里时,读取 references/field-mapping.md。

脚本行为

scripts/convert_character.py 支持:

python3 scripts/convert_character.py INPUT OUTPUT
python3 scripts/convert_character.py INPUT OUTPUT --card-name "角色名"
python3 scripts/convert_character.py --validate-only OUTPUT

脚本输出只是结构有效的草稿,不能替代针对具体角色的写作打磨和事实复核。

我的收藏