Od media generation
Skill nexu-io/open-design/plugins/_official/scenarios/od-media-generation
Default reference pipeline for image, video, and audio projects — routes through media-image / media-video / media-audio atoms based on the project kind, wraps the output in a live artifact, and devloops on critique-theater until the score converges.From its SKILL.md
npx -y skills add nexu-io/open-design --skill od-media-generationAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
2.8 KB, 645 tokens by cl100k_base, as published. Nobody here has run it
od-media-generation (scenario)
This scenario plugin is the bundled default for projects whose
metadata.kind is image, video, or audio. The web client and the
daemon both look up defaultScenarioPluginIdForKind(kind) from
@open-design/contracts and, when no other plugin is applied, bind
this scenario at project / run creation time.
Default pipeline
{
"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"
}
]
}
The generate stage lists all three media atoms even though a single
run only calls one of them. Picking the right atom is the agent's job:
metadata.kind === 'image'→media-imagemetadata.kind === 'video'→media-videometadata.kind === 'audio'→media-audio
If the user picks this plugin manually without a media-typed project,
prefer media-image and explain the assumption in the first reply.
Atom call shape
Every media atom takes the same kernel of inputs and returns a media
artifact reference that live-artifact can wrap:
prompt— the rendereduseCase.queryafter input substitution.aspect— one of1:1/16:9/9:16/4:3/3:4. Default16:9. The contractsMediaAspectunion enumerates the legal values.provider— left blank by default so the daemon picks the user's configured provider for this media kind (see Settings → Media). Only set this when the user names a provider explicitly.
After the media atom returns:
- Save the binary into
<cwd>/media/<timestamp>.<ext>. - Call
live-artifactto register a preview surface pointing at the saved file. The preview is what the user sees in the right pane.
Critique loop
critique-theater reads the artifact, scores it across the standard
five dimensions, and emits a critique.score signal. The until
clause stops the loop at score ≥ 4 or three iterations, whichever
comes first. Use the critique notes to drive the next media call's
prompt, not to re-pick the media atom.
Replace, do not extend
Enterprise editions that need a different default for media work
should ship a sibling scenario plugin and add the right mapping in
@open-design/contracts/scenario-defaults, not patch this manifest.
What ships with it: 1 file
8.1 KB alongside SKILL.md
- open-design.json8.1 KB