1实现原理 · 为什么它能做到
本条目是 Codex Plugin 合集(6 个业务 Skill)而非单文件 skill:主入口取「剪口播」chengfeng-cut,它与字幕/画面/导出/上报/更新检查并列注册,共同的边界写在内部 references 里,不占用用户入口。
Six task-facing chengfeng-videocut Skills: cut, subtitle, visual, export, safe bug reporting, and Marketplace update checks. Shared product boundaries are internal references, not a user-facing Skill.
主入口只做语义判断与编排:它明确不产出媒体,唯一产物是一份人工复核过的删词账本(Cuts + EDL),时间/媒体/状态的真值都在产品 Runtime。
**不切媒体**:账本改一次是几十毫秒,切一次是一个不可撤销的文件。到本 Skill 结束,
所有状态变更走 Product CAS:先 readback 拿 revision,再用 --expected-revision 提交候选,提交后立即再次 readback 校验 stage 与项目/Cuts/EDL 三个 revision。
使用上一步 readback 的 expected revision 调用 `cuts set`、`artifact put` 或 Product transition;随后立即 readback,确认 Product 返回的新 revision 与预期 stage。
删词判断的唯一合法输入是产品给的「播放顺序」视图(transcript playback),禁止 agent 自己拼 transcript.json——那会把跳号静默读成缺内容。
**判断只用 `transcript playback` 的播放顺序,不许自己从 `transcript.json` 拼**
删词被切成五轮单判据扫描(重复 / 残句改口 / 口误重说 / 英文卡壳 / 口头禅),每轮只带一个判据、只记一类,冲突留到汇总解决。
把播放顺序完整读五遍,每遍只带一个判据。
汇总产出两张表并强制自读:删词汇总表 + 重复句子表,AI 自己按表通读删后全文,读不通就撤销(两态,不设『建议删除』第三态)。
这是复核的定义:AI 自己再看一遍,不是拿去问用户;拿不准 = 不列(两态)。
人工复核环节把 UI 打开做成项目级绑定 + 能力门禁双重校验:URL 的 #project/<projectId> 必须与 readback 一致,且 ensure-studio 返回 ok=true 才开页面。
- 打开前把 `productUrl` 的 `#project/<projectId>` 与 readback 的 `projectId` 严格比对,
交棒后做复盘沉淀:用留存的提案文件与终版账本 diff,把差异归档成三抽屉(口味偏好 / 专名词典 / 规则空白)。
- 口味差异 → `~/.chengfeng-videocut/cut-preferences.md` 追加(Agent 维护的
结论分级被写成硬门禁:API/readback PASS、visual frame PASS、human listening PASS 三档互不替代,没人真的听过就必须报 UNVERIFIED。
没有真实人类听音记录时,必须报告 **human listening UNVERIFIED**;不得声称 PASS。若本轮没有真实 UI 路径,visual frame 也必须是 UNVERIFIED,而不是由静态测试代替。
环境逻辑被集中到唯一一个 Skill:业务 Skill 第 0 步只引用 check-updates 的「就绪检查」,结果只有三态。
三步走完,输出三态之一:**就绪 / 需新会话 / 停**。
Skills 更新是「发现」与「改变安装」两事务:检查阶段只在临时 CODEX_HOME 里用官方 stable 解析候选,对用户 HOME 零 codex 调用、零写入。
正常检查只允许在临时 `CODEX_HOME` 中用官方 `stable` 发现候选;对用户
激活只走官方 Codex 命令并可回滚:用户确认四项身份后,脚本重新 stage 比对 --expected-*,再 remove → add --ref <B> → upgrade,并从 cache 复读验证。
"codex plugin marketplace add",
2核心能力
3外部依赖
| 类型 | 依赖 |
|---|---|
| cli | codex(OpenAI Codex CLI) |
| cli | git |
| cli | gh(GitHub CLI) |
| cli | curl |
| network | GitHub Releases(Runtime 制品与 install.cjs) |
| network | 官方 Codex Marketplace 源(Git) |
| network | 本地 Studio / Product Runtime(loopback 常驻服务) |
| cli | node ≥ 20 / ffmpeg ≥ 6 / ffprobe / Google Chrome |
| api | 云端 ASR(火山引擎,凭证由 Runtime 保存) |
| package | MCP 运行时依赖(plugin 包) |
4风险提醒 风险提醒:橙色 · 评估后使用
- 会下载并执行远程安装器(远程代码执行面) — ensure-runtime.cjs 用 curl 拉官方 Release 的 install.cjs 并 spawn node 执行;缓释是 release tag 固定 + SHA-256 校验 + 平台门禁,但供应链仍指向 Agentchengfeng/chengfeng-videocut 发布件。
- 会改用户 Codex 环境(Marketplace ref 与 plugin cache) — 激活路径经官方 codex 命令写入,需用户确认四项身份且带 CAS/回滚;确认门之后的写入落在用户真实环境,脚本对『恢复不完整』只报告实际状态。
- 密钥以命令行参数传递 — 转录凭证走 videocut-cli config set transcription.apiKey <key>,可能进 shell 历史与进程列表;SKILL.md 未就此给出提示。
- 强流程对宿主能力有硬依赖 — 需要 Codex Plugin/Marketplace、managed service(launchd / Windows Task Scheduler)、Google Chrome、Node ≥ 20、云端 ASR;缺任一项按设计停止,非 Codex 宿主基本无法复现该流程。
- 『已启用』不可自证,存在误判面 — plugin README 明说静态 metadata 与 CLI 调用不能证明 Desktop UI 已展示群组,用户可能以为装好即生效。
5第二遍独立确认
- [ok] skill.path 定位(任务表标『待定位』;本 repo 是合集形态) — repo 是 Codex Plugin 安装入口 + 一包 6 个 Skill,plugin 根无 SKILL.md;主入口按 plugin.json defaultPrompt[0] 与 plugin README 能力边界表首行取 chengfeng-cut,故 path=plugins/chengfeng-videocut/skills/chengfeng-cut。其余 5 个 SKILL.md 路径已在 analysis.capabilities 与 internal_assets 中逐条登记。
- [ok] skill.commit / audit.skill_commit 与 pin 一致 — 工作副本 HEAD b10e85e1694ac562cb9d0a9496e1a79545d10071;任务表 pin b10e85e1694a;PINS-b2.json 记 {dir: chengfeng-videocut-skills, commit: b10e85e1694a}。
- [ok] meta.license 与仓库事实 — 仓库根 LICENSE 为 Apache License Version 2.0;plugin package.json 与 .codex-plugin/plugin.json 均声明 Apache-2.0;GitHub API spdx_id = Apache-2.0,无冲突。
- [ok] stars / last_push 交叉核对 — gh api 返回 stargazers_count 2996、pushed_at 2026-09-14T15:41:49Z;工作副本最后一次提交时间为 2026-09-14 23:40:09 +0800(同年同日),一致。
- [unlocatable] 被顶替关系(本条目顶替 to-prd/writing-great-skills) — 『为什么由本 skill 顶替』属任务分配层决定,源码内无证据可核;本条仅按 agent-18.md 指派执行。
- [discrepancy] 池内旧描述(aws_review:FFmpeg + 火山引擎 ASR + 上传 uguu.se 公共图床)是否适用于本 pin — 全仓 grep 'uguu' 零命中(仅 git pack 二进制噪声),该描述来自旧仓库 Ceeon/videocut-skills 时代;本 pin 的实际外部依赖是官方 GitHub Releases/Marketplace、codex/gh CLI 与 loopback 5190。云端 ASR 仍是火山引擎,但凭证经 Runtime 管理。池内 aws_review 与 pool.gh_url(Ceeon/videocut-skills)均为待更新的历史值。
- [ok] README/契约中的『已验收/未验收』自述是否与代码一致 — README 明说本轮是 CLI/portable 安装修复预发行、不推进 stable、常驻服务生命周期尚未完成新版本验收;runtime-requirements.json 的 minimumRuntimeVersion 0.4.10 与 releaseTag v0.4.11 与之相符,未发现把预发行包装成 stable 的表述。
- [ok] 『user-invocable 只证明兼容 metadata,不证明 UI 展示』是否真在源码写明 — plugin README 原句:静态元数据、agents/openai.yaml、Plugin 首页 starter prompt 和 CLI 的 $plugin:skill 调用,不能单独证明 Desktop Slash/Plugin 群组已经在界面中展示。
6结论
34c8b28b38500e4f…b10e85e169