导演并制作多类型视频,从创意、研究、剧本、视觉开发、人物与声音设计、分镜和生成 Prompt,一直推进到素材生成、任务追踪与交付。适用于 Storytime Animation、Animated Explainer 与 Cinematic Drama,三个 Mode 均已完成实际作品验证。尚未建立专属 Mode 的类型不得冒充已支持流程。
npx skills add https://github.com/s1dashu/director --skill director
director 是视频创作与制作的顶层导演 skill,不以动画、旁白或任何单一题材定义自身。它负责先判断作品类型和创作目标,再把任务路由到经过验证的 Mode、style、共享资产与执行工具。
把每支视频拆成三层选择:
三者不互相替代。先选择 Mode,再从该 Mode 的 styles/ 中选择 style 并确认共享资产,最后选择执行 CLI。
用户已指定 Mode 时直接使用。未指定时,根据视频的核心驱动力推荐;无法判断时再询问作品主要由个人经历、知识解释、现实证据,还是人物行动与戏剧冲突驱动。不要因为当前已实现的 Mode 以旁白驱动为主,就把所有视频默认解释成动画解说。
storytime-animation):由第一人称讲述者与个人经历驱动,用动画重现自己、身边人或明确改编的故事。已完成首支五片段作品的生成与质量验证。animated-explainer):使用旁白和动画,在一支短片中讲清楚一个概念、理论、人物思想、历史事件或知识主题。这就是重构前已经完成多期实作验证的原有工作流。cinematic-drama,剧情影像):把已确认的世界观、人物设定、剧本和指定情节制作成由人物行动、对白与戏剧冲突驱动的 AI 电影、AI 漫剧、短剧或微电影。已完成端到端作品验证。选定 Mode 后,在任何采集、研究、写作、分镜或素材规划之前完整读取对应 workflow.md 及其指定的专属文档。不把 Animated Explainer 的旁白结构、字数、分镜、封面或纯动画切片流程默认套用到其他 Mode。
当前只有上方列出的三个 Mode 属于已进入实现的制作能力,三者均已完成实际作品验证。音乐视频及其他尚未建立 Mode 的类型属于 director 的计划扩展范围,但只有建立独立 Mode、完成真实作品验证并得到用户确认后,才能标记为已验证。
用户要求尚未建立专属 Mode 的视频类型时,明确说明当前缺少该类型的专属工作流;可以与用户共同定义目标、输入、叙事结构、素材策略、质量门槛和验证作品,但不得静默套用 Animated Explainer 或 Storytime Animation。新增 Mode 应放入 modes/<mode>/,把类型专属流程、style 和 Prompt 方法留在该 Mode 内;只有真正跨类型复用的能力才提升到 references/。
声音是各 Mode 的创作选择,不是 director 的身份边界。未来 Mode 可以由对白、同期声、音乐、纯画面或多种声音结构驱动;只有当前 Mode 明确要求统一旁白或声音身份时,才进入音色锚点流程。
每个 style 默认只属于一个 Mode,并与该 Mode 的内容目标、素材结构和 Prompt 方法一起验证。不向用户展示其他 Mode 的 style,也不在未验证时默认跨 Mode 混用。只有一个 style 已经通过多个 Mode 的实际作品验证并得到用户确认后,才将它提升为明确的跨 Mode 共享 style。
Storytime Animation
Animated Explainer
Cinematic Drama
用户未指定 style 时,只展示当前 Mode 的内置或候选选项并等待选择,不设置静默默认值;自定义文字 style 与该 Mode 的内置 style 具有同等优先级。style 只定义跨作品稳定的媒介、材质、线条、造型、色彩和运动语言,不是固定 Prompt、场景或镜头模板。候选 style 必须明确验证状态,样片经用户确认后才可标记为已验证。
共享 references 只维护跨 Mode 能复用的能力:
当 Mode 需要人物参考时,只为必须稳定识别的人物生成参考图,不为一次性群演生成。人物参考承担身份、相貌、比例、服装与材质职责。Animated Explainer 与 Storytime Animation 不生成或连接统一场景图、画风参考图或风格参考图;Cinematic Drama 将人物分为主角、配角和路人,主角与跨片段配角必须有人物和音色参考,路人不固定。三视图按角色重要性与制作速度选择:主角默认建议制作,重要配角按需制作,次要配角可使用单张参考。style 始终使用纯文字规则锁定,不使用抽象的统一画风参考图替代 style。
内置音色的唯一正式媒体源为顶级目录 voices/,权威清单为内置音色库。宿主项目可以额外登记私有人物与音色,但不得扫描历史作品冒充正式资产库。repository-assets/ 只保存 README 封面、效果示例和 style 预览等仓库展示素材,不属于 skill 执行资产,也不得被工作流当作生成输入。
Mode 和执行工具相互独立:Mode 决定制作什么,工具文档决定如何在用户选定的平台上生成、管理和下载媒体。任意 Mode 都可在平台能力足够时选择任意已适配 CLI。
当前工具文档:
工具专属命令、模型别名、输入模式、参数映射、任务跟踪和下载规则只在对应 tools/ 文档中维护,不在 Mode、style 或共享 references 中复制。
以下流程当前适用于 Animated Explainer 和 Storytime Animation。各 Mode 的采集、研究、结构、写作、视觉职责和质量门槛以对应 Mode 文件为准。
旁白.md。video/ 目录,不得只报告节点或任务 ID。下载后向用户返回可访问的本地文件路径;宿主支持媒体渲染时,在最终回复中直接展示可播放视频。默认只确认成功终态、可追溯 ID、资源完整性和下载成功,不主动抽帧或听写;用户明确要求或返回异常时才做针对性内容检查。任务失败或平台未返回资源 URL 时,明确说明不存在可下载文件,不伪造交付。全部片段生成后,提示用户在剪辑工具中手动拼接并轻量修剪局部废帧、片尾画面或声音毛刺。只有用户明确要求时,才由 Agent 执行自动拼接。需要封面时读取当前 Mode 的封面指南。目前只有 Animated Explainer 封面指南 已建立专属流程;不将它默认套用到其他 Mode。
| 任务 | 必须完整读取 |
| --- | --- |
| 选择 Mode,或开始采集、研究、写作、分镜与制作 | 当前选定的 Mode 文件 |
| 编写、改写或拆分 Animated Explainer 旁白 | Animated Explainer 流程和旁白讲稿写作指南 |
| 采集、改编或编写第一人称故事 | Storytime Animation 流程 |
| 制作 AI 电影、AI 漫剧、短剧或微电影 | Cinematic Drama 流程、视觉与声音参考资产指南和当前 style |
| 编写、改写或排查 Cinematic Drama 视频 Prompt | Cinematic Drama 流程、专属视频 Prompt 指南、当前 style、共享视频生成 Prompt 指南和目标模型官方指南 |
| 规划或生成人物参考 | 人物参考图指南、当前 Mode 和所选 style;Storytime 另读人物形象库,Cinematic Drama 另读视觉与声音参考资产指南 |
| 编写、改写或排查视频生成 Prompt | 当前 Mode、共享视频生成 Prompt 指南和目标模型官方指南 |
| 选择、建立、转换或更换音色 | 内置音色库和音色参考与音频转换指南 |
| 生成、比较、修改或质检 Animated Explainer 封面 | Animated Explainer 封面指南 |
| 安装、选择或执行媒体 CLI | 选定的 Tool 文件 |
Seedance 官方指南较长,定向排查时优先搜索:基础公式、多模态参考、编辑视频、延长视频、定义主体、使用分镜时序、动作描述要求、运镜写法、特殊字符规范、音色参考不准、人物 ID 漂移、风格漂移、视频延长 vs 分段拼接、视频结尾有噪音和中文发音不准。
进入生成前,先通过当前 Mode 的专属质量门槛和共享视频 Prompt 检查。以下任一情况存在时,不得进入后续批量生成或最终交付:
失败时保留 Mode、style、工具、模型、参数、素材映射、任务 ID、终态和 stderr 或等价日志。修正真实原因后重新执行,不静默换 Mode、style、模型或平台。
默认使用用户当前使用的语言回复;用户明确指定其他输出语言时,遵循用户指定的语言。
创作草稿默认先在对话中使用普通 Markdown 段落展示,不放入 text、plaintext 或其他代码块。讲稿经用户确认后保存为独立 旁白.md;每个视频 Prompt 片段也分别保存为独立 Markdown 文件。这些文件与人物、素材等生产文档平铺在当前作品的同一文档目录,并向用户返回文件路径。
信息冲突时:内容与叙事方法以当前 Mode 为准;视觉语言以用户选择的 style 和已确认人物参考为准;模型提示能力以最新官方指南为准;平台命令、模型名、输入能力与参数以当前 CLI 和实时 schema 为准。
Take s1dashu/director from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.