SuperAPI AI 工具集

od-media-generation

设计与创作

查看项目

更新于 10-16 12:53

技能介绍

用途

od-media-generation 是 Open Design(来源 nexu-io/open-design)中用于 image、video、audio 类项目的内置默认场景插件。当项目 metadata.kind 为这三种媒体类型之一,且没有应用其他插件时,系统会自动绑定该场景:Web 客户端与守护进程都会调用 @open-design/contracts 中的 defaultScenarioPluginIdForKind(kind),并在项目或运行创建时完成绑定。

默认流水线

该场景的默认流水线由以下阶段组成:

{
  "stages": [
    { "id": "discovery", "atoms": ["discovery-question-form"] },
    { "id": "plan",      "atoms": ["todo-write"] },
    { "id": "generate",  "atoms": ["media-image", "media-video", "media-audio", "live-artifact"] },
    {
      "id": "critique", "atoms": ["critique-theater"],
      "repeat": true,
      "until": "critique.score>=4 || iterations>=3"
    }
  ]
}
  • discovery 阶段使用 discovery-question-form 原子。
  • plan 阶段使用 todo-write 原子。
  • generate 阶段列出 media-image、media-video、media-audio 与 live-artifact 四个原子,但单次运行只会调用其中一个媒体原子。
  • critique 阶段使用 critique-theater 原子,可重复执行,停止条件为 critique.score>=4 或 iterations>=3,先满足者为准。

媒体原子的选择

generate 阶段虽然列出了全部三个媒体原子,但选择正确的原子由 agent 负责:

  • metadata.kind === 'image' → media-image
  • metadata.kind === 'video' → media-video
  • metadata.kind === 'audio' → media-audio

如果用户手动选择该插件,但项目不是媒体类型,则优先使用 media-image,并在首条回复中说明这一假设。

原子调用形式

每个媒体原子接收相同的核心输入,并返回一个媒体工件引用,供 live-artifact 包装:

  • prompt:输入替换后渲染出的 useCase.query。
  • aspect:可选 1:1 / 16:9 / 9:16 / 4:3 / 3:4,默认 16:9。合法值由 contracts 的 MediaAspect 联合类型枚举。
  • provider:默认留空,由守护进程选择用户为该媒体类型配置的 provider(见 Settings → Media)。仅在用户明确指定 provider 时才设置。

生成之后的处理

媒体原子返回后需要执行两步:

  1. 将二进制文件保存到 <cwd>/media/<timestamp>.<ext>。
  2. 调用 live-artifact 注册指向该保存文件的预览界面,用户在右侧面板看到的就是该预览。

评审循环

critique-theater 读取工件,按标准五个维度评分,并发出 critique.score 信号。until 条件在评分 ≥ 4 或迭代达到三次时停止循环,先到者为准。评审意见应驱动下一次媒体调用的 prompt,而不是用于重新选择媒体原子。

替换而非扩展

需要为媒体工作提供不同默认行为的企业版,应发布一个同级的场景插件,并在 @open-design/contracts/scenario-defaults 中添加正确的映射,而不是直接修补此清单文件。

限制

资料未提供该插件支持的 provider 清单、收费与价格信息、可用平台范围、实际生成效果说明以及具体的安装命令。