关于 digital-human
用于创建可复用数字人形象或生成口型同步讲述视频的技能,覆盖身份、语音、脚本、格式、同意和生成状态。它根据当前能力与已有状态解决必要条件,而非按固定向导逐项提问。
主要功能
- 01创建照片或合成数字人身份
- 02生成口型同步讲述视频
- 03管理脚本、语音与画面格式
- 04处理分段生成的重试与排序
- 05按需获取实时能力和身份状态
适用场景
- 01让已选数字人朗读获批脚本
- 02从经同意的肖像创建可复用身份
- 03从导入视频选择画面创建数字人
- 04检查并调整分段视频生成结果
MCP 相关
要求通过 `ToolSearch` 加载数字人相关工具,并使用 `manage_avatar` 查询实时能力与身份状态、使用 `submit_avatar_video` 提交生成;工具不可用时不应改用其他生成路径。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ chatcut-inc/ agent-plugin --skill digital-human安装后在 Claude Code 中输入/digital-human确认已加载。
详细介绍
数字人
如果尚未加载 manage_custom_voice、manage_avatar 或 submit_avatar_video,请先使用 ToolSearch 加载它们,再调用这些工具,以便使用其实际参数,而不是猜测参数。
创建可重复使用的演示者身份,或生成口型同步的演示者视频,同时不暴露底层服务提供方。将头像选择、语音、脚本、格式、同意、生成和验证视为一个有状态的对话流程。
适用场景
当用户希望进行以下操作时,使用此技能:
- 让官方头像或已保存的 AI 头像、会说话的头像或虚拟演示者开口说话。
- 将获得同意的肖像转换为可重复使用的数字人身份。
- 将导入视频中的代表性静帧用作照片头像。
- 在实时能力允许时,根据描述创建合成 AI 演示者。
- 起草或修改数字人视频的旁白。
- 重新生成、调整顺序、移除、重试或接受头像视频批次中的片段。
将 AI avatar 视为通用的英文概念。Digital twin 指特定真人的可重复使用肖像;photo avatar 或 talking photo 指静态图像来源;AI presenter、virtual presenter 和 virtual spokesperson 描述演示者的角色。Digital human 也可使用,但通常指更广泛的企业级或交互式体验。
将相邻请求转至其他技能:
- 不涉及头像视频的语音、语音试听或语音克隆:使用 Voice Skill。
- 普通素材清理或演示者剪辑:使用 Talking Head Guide。
- 不涉及会说话头像的通用图生视频或视频生成:使用 Video Generation Skill。
- 现有视频的翻译或配音:在可用时使用专用的翻译或配音工作流。
必需输入
提交前请确认以下信息,但不要按固定顺序询问:
- 目标项目 — 项目明确时使用当前项目。
- 头像身份和就绪版本 — 官方头像、已保存的头像,或新建的照片头像或合成头像。
- 语音来源 — 一个确切的可用语音、一个克隆语音,或一个导入的音频素材。文本驱动的来源还需要最终脚本。
- 最终脚本 — 保留用户的措辞和标点。完整展示任何由 AI 撰写的草稿,并让用户在生成前编辑或批准。
- 宽高比 —
auto、1:1、4:5、5:4、9:16或16:9。优先采用用户的明确选择;否则省略此项,让后端使用auto并保留所选头像的原始构图。不要改用当前项目的宽高比。 - 分辨率 — 默认使用
1080p;用户提出要求或实时能力限制时使用720p,并说明任何回退。 - 可选控制项 — 仅当实时能力响应表明支持时,才使用动作指引。对于官方目录头像,使用其返回的
hasBackground值:若为 true,则保留原始场景;若为 false,则请求透明背景。对于已保存/自定义头像,默认保留其原始背景。仅当用户明确要求移除背景或使用透明背景时,才请求透明背景。不要让用户选择背景模式;提交前简要说明已确定的默认设置。用户明确要求保留或移除背景时,始终优先遵从。
创建头像时,还需确认:
- 名称不能为空。不要在问题标签中提及数字校验限制;只有提交的名称未通过校验时,才解释相关限制。
- 最终头像创建来源,三选一:导入的 JPEG/PNG 肖像、从导入视频中准备的代表性 JPEG/PNG 静帧,或在支持时用于合成身份的提示词。
- 涉及真人肖像时,须获得明确同意。 除非实时能力契约明确支持,否则不要直接将视频用于照片头像创建。对于导入的视频,请使用主机准备好的代表性静帧,或帮助用户选取一帧清晰、无遮挡、正面朝向的画面,然后将该图像资源用作来源。
当用户附加或引用了一段包含人物的视频,并说“这个头像”“这个人”“用她”“用他”、这个形象、这个人、用她、用他或类似表达时,应将该附件中的人物确定为预期的肖像来源。不要仅仅因为附件包含音频或转录文本,就把它当作用户要求的语音来源。如果用户还提供了新主题或经批准的脚本,则以新主题或脚本为准;除非用户明确要求,否则不要朗读或复用视频中的语音内容。
附加的视频是潜在的头像来源,而不是现成的 identityId。请进入视频转头像创建流程:准备一张干净的代表性静帧,取得所需的肖像同意,创建身份,然后在用户要求的生成中复用该身份。只要该潜在来源仍然有效,就不要显示官方头像或已保存的头像选项。只有当用户拒绝使用视频中的人物,或无法准备符合条件的人脸画面时,才提供其他身份。
如果“这个”有可能指人物肖像、视频现有画面或视频中的语音内容,请在选择工作流前只提出一个有针对性的澄清问题:“你想使用这段视频中的人物作为头像,并让他们说出你的新脚本吗?”不要将其替换为“你想用这段视频做什么?”之类的泛泛问题。
当用户准备上传或选择用于创建头像的视频时,请提前告知:所选画面必须清晰显示面部,且不得有任何遮挡——不能有内嵌字幕、字幕、 水印、贴纸或遮住面部的手;并优先选择表情自然、正面朝向的画面。绝不要将检查用的联系表或带有叠加时间标签的任何预览用作头像来源;请使用没有任何附加标记的干净画面。
视频来源还包含人物的声音。使用视频创建头像后,请提供从同一视频克隆该声音的选项,让头像用此声音说话:
- 运行 Voice Skill 的克隆流程(使用视频资源调用
manage_custom_voice action=clone,并取得明确的声音克隆同意——仅有肖像同意并不包含声音授权)。 - 克隆的声音准备就绪后,调用
manage_avatar action=set-default-voice identityId=<avatar> voiceRef=<cloned voiceRef>将其设为该头像已保存的默认声音。 - 后续使用该头像生成内容时,应默认使用返回的
defaultVoiceRef,同时仍允许用户选择其他声音。
这是一个可选项,并非自动步骤:如果用户拒绝,或视频音频不可用(有音乐、包含多个说话者或噪音很大),请跳过。
工作流
这是一个由意图驱动的约束解析器,而不是线性向导。不要引导用户逐一完成每个部分,也不要按预设顺序询问各项信息。
每轮对话:
- 提取用户、附件、当前项目、所选媒体、已保存的头像状态以及本请求中先前回答已经提供的所有信息。
- 根据附加或选定的媒体以及用户的操作用语,解析“这个”、
这个、这个形象和这个人等指示性短语,然后再推断一般媒体工作流。 - 推断用户当前请求的操作:探索、选择、创建、修改、生成、查看进度、重试、重新排序、移除、接受、放置或导出。
- 仅计算阻碍该操作的因素。默认值和当前已保存的绑定均视为已解决,除非它们与明确请求冲突。
- 如果没有阻碍,立即执行。
- 否则,询问最重要的一项缺失或含糊的约束,尽可能提供结构化选项,然后根据新状态重新计算。
例如,用户指定了一个可用头像、提供了已批准的文本,并接受其已保存的语音时,不应再要求用户重新选择。用户查看正在运行的批次时,无需重新确定脚本或宽高比。仅在创建或克隆操作需要时才请求同意。
在相关时加载实时能力和状态
如果尚未显示,请使用 ToolSearch 加载 manage_avatar 和 submit_avatar_video。在提供创建或高级选项前,调用 manage_avatar 获取实时能力。
如果用户既未选择确切身份,也未提供拟用作相似度来源的素材,请先列出当前官方身份和已保存身份,再给出建议。不要根据聊天记录、示例或对服务提供方的了解推断可用性。对于官方头像,将实时目录中的 tags 作为事实性筛选条件,将其 description 作为建议依据。根据这些字段与用户所需的出镜者及使用场景进行匹配;切勿根据预览外观推断缺失的年龄、性别、族裔、角色、场景或能力。
对于没有已保存头像的推荐状态,使用 limit: 5 调用官方目录;不要翻阅目录页面,也不要把完整目录页变成一份推荐表单。
从 ChatCut 数字人库或原生视觉选择器附加的头像已经是准确选定的头像。在后续确认和重试轮次中,将其附带的 ChatCut avatarId 作为 identityId 使用。已附加的官方身份可直接供 submit_avatar_video 使用;无需导入,也无需在目录第一页中重新查找。为已附加身份解析语音前,除非当前轮次已有实时结果提供其 defaultVoiceRef,否则请使用该确切 ID 调用 manage_avatar,并设置 action: get。切勿仅因某个已附加头像未出现在五项推荐列表中就拒绝或替换它。
仅使用报告为就绪状态的身份和版本。待处理、失败、正在删除、已删除或孤立的身份不能作为生成输入。
如果数字人工具不可用,请说明此生成能力尚未接入。不要静默改用通用视频生成,也不要直接调用后端 HTTP 路由。
缺少或无效时解析头像
尊重用户明确的选择。否则:
- 明确或暂定识别为人物肖像来源的视频:继续执行视频转数字人创建流程。不要进入通用数字人选择器,也不要询问用户从已保存或官方身份中选择。
- 没有可用的已保存数字人:展示至多五个合适的官方数字人,并在同一选择界面中加入预留的 创建 卡片。这是严格的空状态约束:绝不显示第六个官方推荐,也绝不因有官方数字人可选而省略创建选项。
- 存在可用的已保存数字人:优先展示它们(总卡片数最多为五张),然后展示预留的创建卡片。
- 恰好有一个可用的已保存数字人:优先提供该数字人,并询问是否使用。
- 有多个可用的已保存数字人:优先选择实时使用次数较多的;次数相同时,优先选择创建时间较新的。如果没有使用次数元数据,只按创建时间从新到旧排序;绝不虚构使用频率。
数字人身份选择只能通过媒体预览进行,且严格例外于通用的单分支 <choices/> 规则。始终通过 Widget Forms Skill 使用视觉卡片,即使恰好只有一个可用的已保存数字人也不例外。绝不要提出纯文本类别问题,例如“使用已保存的数字人”还是“浏览官方数字人”,也不要使用 <choices/>、<form-single> 或仅含标签的身份卡片来选择数字人。对于 ChatCut 原生 Widget 中的数字人卡片(官方数字人或用户自己的已保存数字人),只将其确切的 identityId 写入 avatar-id;即使工具负载未提供预览 URL,宿主也会根据实时数字人身份解析当前名称、预览视频或备用图片、宽高比及提交值。绝不要将 value、name、media 或 aspect-ratio 复制到 avatar-id 选项上。如果宿主无法解析预览媒体,就省略该身份,而不是退回到文本形式。有实时预览视频时优先使用;预览图片仅用作其海报或备用内容。当
用户有可用的已保存数字人时,将其卡片放在官方推荐之前。每次只询问一个最重要的缺失问题,不要重复已回答的问题。
下方的原始标签仅用于内嵌的 ChatCut 协议。在已发布的 Codex 或
Claude Code 插件中,Widget Forms Skill 的宿主适配器优先:绝不要输出原始 ChatCut 标签。将每个实时身份映射到宿主的视觉选择界面,以 identityId 作为稳定值,以 name 作为标签。在 Codex 中,将 previewVideoUrl 作为 previewVideo 提供,并将 previewImageUrl 作为 preview 提供,使图片成为视频的海报和加载失败时的备用内容。将创建操作保留为独立的 create_avatar 值;插件宿主会将该值返回工作流,而不是自动打开 ChatCut 的原生对话框。
对于 list 行中没有预览 URL 的已保存身份,在渲染该身份前,针对该确切候选项调用 manage_avatar action=get;使用所选的可用版本返回的预览媒体,不要虚构或复制其他数字人的媒体。
一个预留的纯标签选项值会打开原生编辑器界面,而不是提交答案。写入时不要包含 media:
create_avatar— 打开原生创建对话框,用户可在其中上传照片并创建个人数字人。卡片标签应使用简短的“创建专属数字人”之类表述;不要提及上传照片——对话框会自行说明。
点击该卡片不会生成表单答案。用户在原生对话框中完成操作后,所选或新创建的数字人会自动附在本问题的答案中返回;将该回复视为数字人选择,不要再次询问。
因此,选择界面应为一个 <form-visual>,其中包含最多五张数字人预览卡片(先显示已保存的,再显示官方的),后接创建卡片。将可见问题和卡片标签本地化为对话所用的语言:
<widget>
<form-visual id="avatar" question="Please choose an avatar" required="true">
<visual-option avatar-id="<saved-or-official-identity-id>"/>
<visual-option value="create_avatar" name="Create your own avatar"/>
</form-visual>
</widget>
创建身份与生成视频是两个独立步骤:
- 确定来源或提示词以及名称。
- 获取所需的同意。
- 通过
manage_avatar创建身份。 - 等待其就绪或进入终止状态。如果
track_progress提供target=avatar,则使用identityIds调用action=wait,并按其 结果执行;否则,在后续轮次中使用manage_avatar action=get refresh=true重新读取。 - 将其保存在我的虚拟形象下。不要仅仅因为虚拟形象 创建成功就自动生成视频。
在嵌入式 ChatCut Widget 中请求肖像时,务必始终将上传内容标记为虚拟形象来源,这样 宿主才能使用与原生 Digital Humans 对话框相同的验证、JPEG 规范化、私有传输存储和 上传就绪行为:
<widget>
<form-files id="avatar_source" label="Please upload a portrait photo"
accept="image/jpeg,image/png" purpose="avatar-source"
multiple="false" required="true"/>
<form-text id="avatar_name" label="Name this avatar" required="true"/>
</widget>
创建虚拟形象时,不要使用未标记的通用 <form-files> 上传。
已发布的插件表单不提供此原生上传控件。请用户通过其宿主附加肖像,
然后使用 Asset Import Skill,并将返回的 ChatCut 图像资产 ID 传递给 manage_avatar。
仅在请求的操作需要语音时解析语音
对于官方头像,绝不要默默使用与之配对的语音,也不要立即打开更广泛的语音目录。当实时结果提供了 defaultVoiceRef,且用户尚未做出此选择时,先用对话语言提出一个阻塞式的纯文本选择:是使用此头像的官方内置语音,还是选择其他语音。在嵌入式 ChatCut 中,使用本地化的 <choices options="Use official voice,Choose another voice"/> 呈现此选择,然后停止并等待。如果用户接受,使用该确切的 defaultVoiceRef 解析语音,且不要调用 manage_avatar action=voices。仅当用户选择其他语音,或实时身份没有 defaultVoiceRef 时,才调用 action=voices。不要在同一轮中先询问语言或文稿,然后抢先调用 action=voices。
对于已保存或新创建的头像,如果存在已保存的语音绑定,则复用并确认;否则提供可用语音。当用户确定希望此头像使用的语音后,使用 manage_avatar action=set-default-voice 保存;之后 list/get 会将其作为头像的 defaultVoiceRef 返回。
发现、试听或克隆语音时,请遵循 Voice Skill,并复用其中的实时语音列表、同意流程和生成的语音素材。不要在此处重复实现语音克隆逻辑。
当仍需选择确切语音时,绝不要在自由文本字段旁边以散文形式列出语音名称。使用 manage_avatar 返回的确切 voiceRef 作为提交值。语音选择仅支持音频预览,是通用 <choices/> 规则的严格例外:
- 绝不要呈现
<choices/>、<form-single>、散文形式的语音名称或仅有标签的语音选项。若某语音没有返回可播放的previewUrl,则必须将其从推荐界面中省略,而不是作为无法播放的选项呈现。 - 用户想试听语音时,优先选择最多五个合适的可用官方、预设或自定义语音,且这些语音必须实际包含
previewUrl。将它们作为一个必填的<form-visual id="voiceRef" media-kind="audio">呈现;没有previewUrl的hasPreview: true并不可播放,不得将其作为试听卡片呈现。始终追加一个无媒体的<visual-option value="clone_voice" name="Clone Voice"/>操作,使用对话语言本地化,并将其作为最后一张卡片。每个推荐语音界面都必须包含此克隆选项。 - 无需列出更广泛的官方语音目录,也可以使用官方头像配对的默认语音。除非为该语音返回了实际的音频
previewUrl,否则不要将该默认语音显示为试听卡片。绝不要将头像图片或视频 URL 用作语音预览。 - 原样复制每个返回的
previewUrl。尤其要保持/voice-samples/...为根相对路径;不要将其扩展为chatcut.com,也不要编造其他主机名。 - 同时确认文稿文本时,将语音选择器和文稿字段放在同一个组件中。不要让用户在文稿字段中输入语音名称。
<widget>
<form-visual id="voiceRef" label="Please choose a voice and listen to its preview" media-kind="audio" required="true">
<visual-option value="<voiceRef>" name="<voice name>"
media="<previewUrl>" media-kind="audio" summary="<voice traits>"/>
<visual-option value="clone_voice" name="Clone a voice"/>
</form-visual>
<form-textarea id="script" label="Please confirm the script" required="true" default="<script>"/>
</widget>
如果源素材最初是用户视频,请询问用户是否想使用该视频中的语音。如果是,请遵循 Voice Skill 明确的语音克隆授权流程,然后再使用。仅提供附件并不代表允许克隆。如果否,则继续使用常规语音选择器。
现有项目音频素材可以直接驱动头像。音频作为语音来源时,除非用户还需要转录文本或审核文稿,否则不要编造或要求提供文本。
仅针对文本驱动的生成确定脚本
脚本可以由用户粘贴、从选定的项目素材中提取,或协作撰写。起草时:
- 只询问缺失的意图信息,例如受众、目标、语气、事实和时长。
- 提供完整的脚本提案。
- 让用户编辑脚本或明确批准。
- 严格提交已确认的内容。
每个显式文本片段必须包含 1–5000 个字符。对于普通脚本,请省略显式片段,让后端生成一段连贯的视频,文本最长为 5000 个字符。仅当用户要求有意义的段落或镜头边界时,才使用显式片段。较长的文本会自动拆分,最多可能生成 10 个片段。切勿为了符合限制而总结、翻译、删减、重复或调整内容顺序。保留原有措辞和标点;非语义性的行间空白可以自动规范化。
文本驱动的数字人生成受 5000 个字符的片段边界限制,而非预估的音频时长。提交数字人视频前,ChatCut TTS 和克隆声音会先渲染为音频。较长的音频文本会准备为多个较小的有序片段,并根据每个生成的音频文件的实际时长进行验证。超过 600 秒的现有项目音频会在提交前自动拆分为有序片段。只传入原始素材一次;切勿手动拆分,也不要针对每个片段分别提交生成调用。如果需要提供进度更新,只需说明 ChatCut 正在拆分长音频,同时保留完整内容和顺序。不要添加有关工作在哪里或如何运行的实现细节,也绝不要暴露隐藏的衍生音频素材。切勿为了满足这些限制而缩短或总结已批准的内容。
根据意图和可用默认值确定输出设置
默认保留所选数字人的原始构图:省略 aspectRatio,让后端将其解析为 auto。切勿将当前项目的宽高比用作数字人视频的默认值。如果用户明确要求不同的宽高比,则传入该要求。
对于官方目录中的数字人,根据 manage_avatar action="catalog" 返回的 hasBackground 字段确定默认值:
hasBackground: true— 设置removeBackground: false并保留原始场景。hasBackground: false— 设置removeBackground: true,以便在支持透明度时生成透明背景的 WebM。
对于没有目录元数据的已保存/自定义数字人,默认保持 removeBackground: false,并保留源图像背景。仅当用户明确要求透明背景或移除背景时,才设置 removeBackground: true。不要将此作为阻塞问题。在提交前,简要告知用户将保留原始场景还是生成透明背景。用户的明确要求优先于目录默认值。如果不支持透明度,请说明限制并保留原始背景。
在实时能力响应确认之前,不要承诺裁剪、背景移除、动作控制、透明度、分辨率或基于提示词创建身份。
解决所有相关约束后立即提交
如果任何选择仍会对结果产生重要影响,请在首次生成前概述已确定的头像、语音或音频来源、脚本状态、宽高比和分辨率。然后调用一次 submit_avatar_video。
将长脚本的输出视为按顺序排列的头像视频片段批次,而不是单个音频文件或一个不透明的任务。提交后,告知用户生成已开始,然后结束本轮。切勿让本轮继续等待:不要使用 Bash sleep,也不要重复读取 track_progress 或 manage_avatar action=get-batch。如果此请求中的后续步骤需要已完成的视频,且 track_progress 将 action=wait 描述为注册自动后续操作,请使用 jobIds 和备注调用一次,然后结束本轮。项目库会显示正在进行的生成,并在后台接收已完成的视频素材。
仅当用户在后续轮次询问状态,或恢复依赖已完成素材的后续步骤(例如将素材放到时间线上或查看结果)时,才调用 track_progress。如果任务尚未进入终止状态,请说明生成仍在进行,不要引用数值进度:服务提供方的进度值是粗略的内部阶段,并非面向用户的完成时间预估。需要查看片段顺序和尝试状态时,使用 manage_avatar action=get-batch。保留稳定的片段键和原始顺序。
如果某个片段生成失败,请提供针对该片段的重试选项。未经用户指示,不要重新提交已成功的片段或整个批次。使用管理工具执行受支持的片段重新生成、移除、重新排序、尝试版本选择和接受操作。
生成结果会成为普通的 ChatCut 视频素材。只有当用户要求放到时间线上,或这显然属于当前剪辑任务的一部分时,才将其添加到时间线上。未经要求,不要导出。
服务提供方选择
服务提供方选择属于 ChatCut 后端的内部细节。始终调用 ChatCut 原生工具,由后端构造服务提供方请求、解析私有 ID、执行能力检查并持久化结果。切勿通过此技能直接调用底层服务提供方的 API 或 CLI。
只能通过 ChatCut 的功能、目录结果、已保存的绑定和原生工具进行选择。面向用户的措辞仅限于以下概念:
- 官方头像和我的头像
- 官方语音、克隆语音和项目音频
- 照片头像和合成头像
服务提供方名称、引擎或模型名称、服务提供方专用的头像或语音 ID、原始服务提供方 URL、请求负载以及服务提供方错误消息均属于内部信息。切勿在说明文字、选项标签、进度更新或失败消息中向用户展示这些信息。应将失败转化为可执行的产品提示,同时保留实际状态。
不要绕过 ChatCut 的功能门槛、配额、计费检查、安全政策、目录可见性或服务提供方注册机制。
同意与安全
创建真人照片头像前,必须立即获得明确肯定的确认。使用用户的语言,并确保含义准确。中文:
我确认拥有该肖像,或已获得创建和使用该数字人形象的授权,并承诺不将其用于 冒充他人、欺诈或其他违法用途。
英文:
我确认拥有该肖像,或已获得创建和使用该数字人形象的授权,并承诺不将其用于 冒充他人、欺诈或其他违法用途。
西班牙语:
我确认拥有该肖像,或已获得创建和使用该数字人形象的授权,并承诺不将其用于 冒充他人、欺诈或其他违法用途。
不得根据上传内容、先前无关的确认、对项目的所有权或第三方指示推断用户已同意。仅通过原生工具的同意字段记录同意。由提示词创建的合成身份无需获得真人肖像同意,除非提示词或参考资料指明了某个真人。
拒绝未经同意的冒充、欺骗性身份使用、欺诈、骚扰、性剥削或试图规避安全措施的行为。授权不明确时,不得创建真人身份。语音克隆有单独的同意关卡;即使已经获得头像同意,也必须遵循 Voice Skill。
验证
报告成功前,必须通过实时工具结果进行验证:
- 提交时,选定的身份修订已就绪。
- 作业或批次已达到已完成的终止状态,并返回输出资源 ID。
- 每个预期片段键都恰好存在一次,并按确认的顺序排列。
- 有文本支持的片段清单保留了确认的措辞和标点,仅允许按文档说明进行不改变语义的空白规范化。
- 生成的视频作为可用的项目或媒体库资源存在。
- 如有要求,时间线中的素材已正确放置并排序。
如可进行视觉验证,请预览生成的素材或合成后的时间线。不得仅凭状态字段就声称面部、口型同步、取景或背景效果正确。如果无法进行视觉检查,请说明已完成哪些结构性验证。
硬性规则
- 绝不向用户透露提供商、引擎或模型的身份。
- 绝不直接调用底层提供商,也绝不在对话层构造提供商载荷。
- 绝不虚构头像、语音、能力、使用次数、已保存的绑定或资源 ID。
- 绝不使用尚未就绪的身份版本生成内容。
- 除非明确具备实时能力,否则绝不将视频视为受支持的身份来源;应为当前照片头像契约准备一张具有代表性的静帧。
- 绝不将外部来源 URL 传给头像创建功能;应先将来源导入目标 ChatCut 项目。
- 绝不根据附件推断用户同意使用肖像或克隆语音。
- 未获得 Voice Skill 明确授权,绝不克隆视频中的原始语音。
- 绝不悄悄改写、翻译、截短、重排或重复已确认的脚本文本。
- 绝不询问项目、附件或实时工具中已有的信息。
- 绝不运行固定向导,也绝不按预设顺序询问头像、语音、脚本、比例和分辨率;只处理当前用户操作仍需确认的内容。
- 每次只询问一个最重要的缺失信息;优先提供结构化的视觉选项。
- 绝不在用户可见的输出中展示提供商专用 ID、URL、载荷或原始错误信息。
- 绝不绕过 ChatCut 工具、功能门控、计费、配额或安全检查。
- 绝不因一个片段失败而重试整个已成功的批次。
- 未检查生成结果前,绝不声称其视觉质量。
- 除非任务要求,否则绝不将媒体放到时间线上或导出媒体。
- 对于官方目录头像,遵循返回的
hasBackground默认值:保留已配置的场景背景,移除已配置为不存在的背景。对于已保存或自定义头像,除非用户明确要求透明或移除背景,否则保留来源背景。用户的明确意图始终优先于这两种默认设置。