角色卡结构与 .chr 文件
本文概括角色卡的内容结构、归档格式,以及导入导出方式。
1. 角色卡内容结构
关键字段:
schema_id:引用角色私有状态 schematags:角色卡标签folder:角色卡文件夹;空字符串表示未分组
2. 模板变量
支持的变量:
{{char}}:当前角色展示名{{user}}:当前玩家名{{field_name}}:当前角色自己的 schema 字段值
替换范围:
personalitystylesystem_prompt
3. .chr 归档格式
.chr 是一个 ZIP 容器,固定包含:
manifest.jsoncontent.jsoncover.<ext>
目录示例:
4. manifest.json
约束:
format必须为sillystage_character_cardversion当前固定为1content_path当前固定为content.jsoncover_path必须以cover.开头character_id必须与content.json.id一致
支持的封面 MIME:
image/pngimage/jpegimage/webp
5. 创建与导入
5.1 导入 .chr
POST /upload/character:{character_id}/archive
规则:
- body 为原始
.chr字节 - 客户端通常发送
Content-Type: application/x-sillystage-character-card - 归档里的
content.id必须与路径中的{character_id}一致
5.2 直接创建角色
character.create- 可选
POST /upload/character:{character_id}/cover
封面上传要求:
- body 为原始图片字节
Content-Type必须是image/png、image/jpeg或image/webp
6. 读取与导出
character.list:角色摘要character.get:完整角色内容GET /download/character:{character_id}/cover:封面字节GET /download/character:{character_id}/archive:导出.chr
JSON payload 只暴露封面元数据:
cover_file_namecover_mime_type