mcpField
C
cut-as-code

cut-as-code

github.com/whitetowerai创意与媒体1754 次安装3 周前更新
代码仓库

关于 cut-as-code

cut-as-code 是视频编辑工作的入口技能,会依据项目状态和交付目标进行路由。它选择对应的视频技能并协调依赖与多步操作,但不负责编辑决策。

主要功能

  1. 01按项目状态和交付目标路由
  2. 02依据共享项目清单恢复进度
  3. 03协调操作依赖与执行顺序
  4. 04路由期间保持只读
  5. 05将工作交给专用视频技能

适用场景

  1. 01继续现有项目中的视频操作
  2. 02为新素材选择合适的视频流程
  3. 03协调字幕、内容卡片和动态图形
  4. 04准备已验证项目以供渲染

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/whitetowerai/cut-as-code --skill cut-as-code

安装后在 Claude Code 中输入/cut-as-code确认已加载。

详细介绍

Cut as Code 入口

将此作为 cut-as-code 视频工作的强制入口。仅负责路由和项目状态恢复。选定的叶子技能负责编辑决策、审核关卡、脚本、渲染细节和自检。

1. 从项目状态开始

应用第一个匹配的行。不要评估其后的行。

状态操作
用户指定了对现有项目执行的具体操作仅检查该操作所需的状态,然后加载负责该操作的技能。跳过常规信息收集。
明确指定的项目根目录中包含 work/project.json读取 work/project.json、work/timeline.json,以及仅与所选操作相关的计划/证据。根据记录的状态恢复。如果负责的技能不唯一,只问一个仅涉及路由的问题。
用户提供了源文件或 URL,没有项目,但明确说明了交付成果加载 /video-understand 以初始化项目并准备共享证据,然后继续执行所请求的操作。
无法确定项目/源文件,或无法识别预期交付成果简洁地提出一个问题,请求提供缺失的项目/源文件和预期结果。暂不启动技能。

项目根目录必须明确指定;绝不要将仓库根目录视为视频项目。将 work/project.json 视为唯一的共享清单。根据操作的 status、revision、based_on、check 和渲染状态判断进度,而不是根据目录是否存在来判断。不要重新执行已验证的工作。如果依赖项缺失或已过时,先完成该依赖项,再恢复所请求的操作。

路由过程只读。在决定将任务交给哪个技能时,绝不要修复、重置、批准、移除或激活任何操作。

2. 按交付成果路由

根据请求的输出进行匹配,而不是根据顺带提及的关键词。

请求的结果负责的技能或工作流
探查、转录、客观分析、语义理解或初始化新项目/video-understand
收紧、缩短、删除薄弱部分,或创建初版/粗剪在 /video-understand 之后使用 /video-cut
校正颜色、创建/选择视觉风格,或交付/应用 LUT/video-color-grade;仅当用户明确要求不采用 Project Protocol 交付时,才使用其独立流程
添加与转录时间同步的视觉插入镜头在 /video-understand 之后使用 /video-add-b-roll
添加来源明确的动态图形或动画语义叠加在 /video-understand 之后使用 /video-add-motion-graphics
添加标题、下三分之一字幕、统计数据、引言、章节或行动号召在 /video-understand 之后使用 /video-add-content-cards
添加字幕、隐藏式字幕或卡拉 OK 字幕在 /video-understand 之后使用 /video-add-captions
按源时间将原片与实际最终像素进行比较在已存在经过验证的主交付成果后使用 /video-edit-compare
选择、审核并规划短视频片段范围在 /video-understand 之后使用 /video-to-shorts;应在所请求的内容卡片和字幕之前完成
完成并提取获批的横向或竖向短视频衍生版本在已存在经过验证的主交付成果后恢复 /video-to-shorts
编译或渲染现有的 Project Protocol 交付成果在所有选定的活动操作均通过各自关卡后,使用 /video-understand 中的 build_render_plan.py 和 render_project.py

像“编辑这个视频”这样的通用请求并不能唯一确定 /video-cut。除非现有项目状态或上下文请求已明确预期输出,否则应提出一个路由问题。

3. 编排多项操作请求

仅冻结用户请求的操作;绝不要把路由表变成默认操作包。只运行一次共享理解前置步骤。按规范顺序执行选定的主序列操作:

cut -> color-grade -> b-roll -> captions -> content-cards -> motion-graphics

对于包含 Shorts、内容卡片或字幕的请求,使用以下分阶段流程:

/video-understand
-> /video-to-shorts plan and candidate review only
-> /video-add-captions
-> /video-add-content-cards
-> /video-add-motion-graphics
-> compile and render the shared main delivery once
-> /video-to-shorts finalize and extract approved derivatives

在规划 Shorts 之前,先完成任何会更改时间线的操作,例如 /video-cut;变更后的 work/timeline.json 会使候选内容审批失效。Shorts 规划会写入共享计划/审核状态,但不得创建 final.mp4 或 final/shorts/ 下的任何内容。随后,字幕、内容卡片和动态图形按此顺序分别添加自己的共享计划和叠加内容。只选其中任意两项时,也适用相同顺序:先字幕,再内容卡片,最后动态图形。每次交接前都重新读取 work/project.json。如果叶子技能可能写入 work/project.json、work/timeline.json、操作计划或共享渲染产物,就不要并行运行。所有选定的活动操作均通过验证后,再构建并渲染一次主交付内容。针对已验证的交付内容运行 /video-edit-compare,并且只运行 /video-to-shorts 的最终化/提取阶段;Shorts 不属于 sequences.main.operations。

对于 /video-add-content-cards 和 /video-add-motion-graphics,整个提示期间都要为每位主要人物或前景人物、演讲者、主持人、受访者或具有重要语义的人物保留可见面部和头部轮廓。仅出现在背景、且并非叙事或视觉焦点的偶然人物可不受此限制;不确定时应予以保护。如果叠加内容触及受保护的面部或头部,应先重新定位,再缩放或重新设计;如果找不到合规位置,则跳过该提示。

如果所属技能允许,全跳过或零提示结果均有效。不要为了让某项操作保持活动状态而捏造填充工作。

4. 完成交接,然后退出

开始操作前,阅读所选技能的完整 SKILL.md 以及所有必需的子技能。对于单项操作,只交接一次,然后退出此入口。对于用户请求的多项操作,逐项进入对应负责人;完成自检后,恢复项目状态并继续执行下一个冻结操作,无需重新进行请求确认。

如果路由明确无误,不要让用户批准路由。只有在缺少输入、路由确有歧义、需要凭据,或需要由所属技能作出编辑/审核决策时,才与用户交互。除非用户明确授权,否则绝不要以 Agent 的决定替代必需的人工决定。

示例

对于“继续处理这个已理解的项目并添加字幕”的请求,先读取当前项目和时间线版本,然后进入 /video-add-captions。不要重新转录、重新剪辑,也不要询问用户是否要走字幕这条路由。无关的待处理操作不会改变路由,但活动中尚未验证的操作可能会阻止最终共享渲染;编译器必须报告这一点。

失败规则

  • 项目状态无效:报告确切的验证问题;绝不要在其上重新初始化。
  • 缺少叶子技能或前置步骤:停止并指出缺少的内容;不要凭记忆重新构建。
  • 缺少源文件/项目路径:在唯一一次路由提问中询问。
  • 请求的输出相互冲突:询问本次运行应以哪个交付内容为准。
  • 已有用户更改或产物:予以保留,并依据记录的状态开展工作。

评论

支持 Markdown