@nodetool-ai/agents 0.8.4-a24.2 → 0.8.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/dist/.nodetool-build-stamp +1 -1
  2. package/dist/_skills/LICENSE-iart-motion-design-skills +21 -0
  3. package/dist/_skills/README.md +211 -0
  4. package/dist/_skills/api-agents/SKILL.md +58 -0
  5. package/dist/_skills/api-apps/SKILL.md +54 -0
  6. package/dist/_skills/api-assets/SKILL.md +66 -0
  7. package/dist/_skills/api-collections/SKILL.md +33 -0
  8. package/dist/_skills/api-games/SKILL.md +81 -0
  9. package/dist/_skills/api-media/SKILL.md +131 -0
  10. package/dist/_skills/api-memory/SKILL.md +72 -0
  11. package/dist/_skills/api-models/SKILL.md +78 -0
  12. package/dist/_skills/api-scripts/SKILL.md +79 -0
  13. package/dist/_skills/api-settings/SKILL.md +49 -0
  14. package/dist/_skills/api-sketches/SKILL.md +61 -0
  15. package/dist/_skills/api-storyboards/SKILL.md +94 -0
  16. package/dist/_skills/api-timelines/SKILL.md +151 -0
  17. package/dist/_skills/api-web/SKILL.md +57 -0
  18. package/dist/_skills/api-workflows/SKILL.md +123 -0
  19. package/dist/_skills/beat-sync-editing/SKILL.md +208 -0
  20. package/dist/_skills/caption-titles/SKILL.md +94 -0
  21. package/dist/_skills/color-motion/SKILL.md +185 -0
  22. package/dist/_skills/commercial-beat-sheet/SKILL.md +338 -0
  23. package/dist/_skills/elevenlabs-audio-prompting/SKILL.md +163 -0
  24. package/dist/_skills/explainer-storyboard/SKILL.md +63 -0
  25. package/dist/_skills/flux-2-klein-prompting/SKILL.md +107 -0
  26. package/dist/_skills/frame-composition/SKILL.md +291 -0
  27. package/dist/_skills/game-direction/SKILL.md +99 -0
  28. package/dist/_skills/gpt-image-2-prompting/SKILL.md +161 -0
  29. package/dist/_skills/hailuo-prompting/SKILL.md +107 -0
  30. package/dist/_skills/kling-video-prompting/SKILL.md +188 -0
  31. package/dist/_skills/launch-commercial/SKILL.md +267 -0
  32. package/dist/_skills/launch-kit/SKILL.md +120 -0
  33. package/dist/_skills/logo-reveal/SKILL.md +225 -0
  34. package/dist/_skills/manimgx/SKILL.md +123 -0
  35. package/dist/_skills/minimax-h3-prompting/SKILL.md +134 -0
  36. package/dist/_skills/motion-ad/SKILL.md +281 -0
  37. package/dist/_skills/motion-background/SKILL.md +145 -0
  38. package/dist/_skills/motion-curves/SKILL.md +302 -0
  39. package/dist/_skills/motion-direction/SKILL.md +259 -0
  40. package/dist/_skills/motion-graphics/SKILL.md +217 -0
  41. package/dist/_skills/motion-principles/SKILL.md +255 -0
  42. package/dist/_skills/music-video-treatment/SKILL.md +40 -0
  43. package/dist/_skills/nano-banana-pro-prompting/SKILL.md +133 -0
  44. package/dist/_skills/native-game/SKILL.md +310 -0
  45. package/dist/_skills/native-game-reference/SKILL.md +879 -0
  46. package/dist/_skills/nodetool-3d-scene/SKILL.md +110 -0
  47. package/dist/_skills/nodetool-api-reference/SKILL.md +338 -0
  48. package/dist/_skills/nodetool-app-builder/SKILL.md +291 -0
  49. package/dist/_skills/nodetool-browser-agent/SKILL.md +119 -0
  50. package/dist/_skills/nodetool-chat-cli/SKILL.md +184 -0
  51. package/dist/_skills/nodetool-custom-node-developer/SKILL.md +294 -0
  52. package/dist/_skills/nodetool-deployment/SKILL.md +195 -0
  53. package/dist/_skills/nodetool-js-scripting/SKILL.md +223 -0
  54. package/dist/_skills/nodetool-model-provider-config/SKILL.md +348 -0
  55. package/dist/_skills/nodetool-rag-indexing/SKILL.md +153 -0
  56. package/dist/_skills/nodetool-sketch/SKILL.md +138 -0
  57. package/dist/_skills/nodetool-skill-author/SKILL.md +125 -0
  58. package/dist/_skills/nodetool-troubleshooter/SKILL.md +370 -0
  59. package/dist/_skills/nodetool-video-post/SKILL.md +149 -0
  60. package/dist/_skills/nodetool-workflow-builder/SKILL.md +295 -0
  61. package/dist/_skills/product-commercial/SKILL.md +132 -0
  62. package/dist/_skills/qwen-image-prompting/SKILL.md +122 -0
  63. package/dist/_skills/script-video/SKILL.md +106 -0
  64. package/dist/_skills/seedance-2-prompting/SKILL.md +194 -0
  65. package/dist/_skills/seedream-prompting/SKILL.md +117 -0
  66. package/dist/_skills/short-film/SKILL.md +123 -0
  67. package/dist/_skills/stable-audio-prompting/SKILL.md +130 -0
  68. package/dist/_skills/storyboard-core/SKILL.md +716 -0
  69. package/dist/_skills/timeline-edit-ops/SKILL.md +736 -0
  70. package/dist/_skills/trailer-template/SKILL.md +291 -0
  71. package/dist/_skills/ugc-video/SKILL.md +186 -0
  72. package/dist/_skills/veo-3-prompting/SKILL.md +140 -0
  73. package/dist/_skills/video-audio-continuity/SKILL.md +90 -0
  74. package/dist/_skills/video-clone/SKILL.md +96 -0
  75. package/dist/_skills/video-workflow/SKILL.md +119 -0
  76. package/dist/_skills/wan-2-6-prompting/SKILL.md +107 -0
  77. package/dist/app-build/bridge.d.ts.map +1 -1
  78. package/dist/app-build/bridge.js +44 -17
  79. package/dist/app-build/bridge.js.map +1 -1
  80. package/dist/capabilities/apps.d.ts.map +1 -1
  81. package/dist/capabilities/apps.js +55 -13
  82. package/dist/capabilities/apps.js.map +1 -1
  83. package/dist/capabilities/apps.specs.d.ts.map +1 -1
  84. package/dist/capabilities/apps.specs.js +5 -3
  85. package/dist/capabilities/apps.specs.js.map +1 -1
  86. package/dist/capabilities/game-asset-browser.d.ts.map +1 -1
  87. package/dist/capabilities/game-asset-browser.js +6 -1
  88. package/dist/capabilities/game-asset-browser.js.map +1 -1
  89. package/dist/capabilities/game.d.ts +1 -1
  90. package/dist/capabilities/game.d.ts.map +1 -1
  91. package/dist/capabilities/game.js +71 -56
  92. package/dist/capabilities/game.js.map +1 -1
  93. package/dist/capabilities/game.specs.js +1 -1
  94. package/dist/capabilities/game.specs.js.map +1 -1
  95. package/dist/capabilities/game3d.d.ts.map +1 -1
  96. package/dist/capabilities/game3d.js +14 -19
  97. package/dist/capabilities/game3d.js.map +1 -1
  98. package/dist/capabilities/gameAssertions.d.ts +52 -0
  99. package/dist/capabilities/gameAssertions.d.ts.map +1 -0
  100. package/dist/capabilities/gameAssertions.js +32 -0
  101. package/dist/capabilities/gameAssertions.js.map +1 -0
  102. package/dist/capabilities/models.d.ts.map +1 -1
  103. package/dist/capabilities/models.js +9 -0
  104. package/dist/capabilities/models.js.map +1 -1
  105. package/dist/capabilities/storyboards.d.ts.map +1 -1
  106. package/dist/capabilities/storyboards.js +36 -11
  107. package/dist/capabilities/storyboards.js.map +1 -1
  108. package/dist/capabilities/storyboards.specs.d.ts.map +1 -1
  109. package/dist/capabilities/storyboards.specs.js +11 -1
  110. package/dist/capabilities/storyboards.specs.js.map +1 -1
  111. package/dist/capabilities/workflows.d.ts.map +1 -1
  112. package/dist/capabilities/workflows.js +1 -0
  113. package/dist/capabilities/workflows.js.map +1 -1
  114. package/dist/capabilities/workflows.specs.d.ts.map +1 -1
  115. package/dist/capabilities/workflows.specs.js +4 -3
  116. package/dist/capabilities/workflows.specs.js.map +1 -1
  117. package/dist/evals/surfaces/game.d.ts.map +1 -1
  118. package/dist/evals/surfaces/game.js +29 -1
  119. package/dist/evals/surfaces/game.js.map +1 -1
  120. package/dist/game-authoring.d.ts +120 -0
  121. package/dist/game-authoring.d.ts.map +1 -1
  122. package/dist/game-build-integrity.d.ts +12 -0
  123. package/dist/game-build-integrity.d.ts.map +1 -0
  124. package/dist/game-build-integrity.js +78 -0
  125. package/dist/game-build-integrity.js.map +1 -0
  126. package/dist/game-examples.d.ts +44 -3
  127. package/dist/game-examples.d.ts.map +1 -1
  128. package/dist/game-examples.js +60 -10
  129. package/dist/game-examples.js.map +1 -1
  130. package/dist/system-skills.d.ts +1 -1
  131. package/dist/system-skills.js +1 -1
  132. package/dist/tools/builtin-tools.d.ts.map +1 -1
  133. package/dist/tools/builtin-tools.js +2 -0
  134. package/dist/tools/builtin-tools.js.map +1 -1
  135. package/package.json +19 -19
@@ -0,0 +1,90 @@
1
+ ---
2
+ name: video-audio-continuity
3
+ description: Keep sound continuous across a multi-scene piece cut from generated video — why one clip per scene hard-cuts the audio at every boundary, when to write all the scenes into a single generation instead, the sound-design vocabulary that survives a provider's copyright filter, and how to check the length, the aspect ratio and the mix of what came back. Use when a piece has more than one scene and the video model writes its own audio (Seedance 2, Veo 3, MiniMax H3, Kling 2.6 and later), or when a cut's sound drops out at the shot changes.
4
+ featured: true
5
+ ---
6
+
7
+ # One clip, one bed
8
+
9
+ A generated clip carries its own audio, and that audio starts and stops at the
10
+ clip's own edges. So the obvious build — one generated clip per shot, laid end
11
+ to end — hard-cuts or drops to silence at every boundary. Stills and contact
12
+ sheets never show it; it only exists on playback, and it is the most common
13
+ audio defect in a multi-scene piece.
14
+
15
+ ## The rule
16
+
17
+ When sound has to carry across the scene changes, generate **one** clip holding
18
+ **all** the scenes.
19
+
20
+ - One `generate_video` call, the scenes written as "cut to" beats inside the
21
+ prompt, and one continuous audio brief across the whole thing.
22
+ - Lay that clip under the sequence as the base bed and time the type and
23
+ graphics to it.
24
+ - Use a model line that writes native audio, and load its prompting skill first:
25
+ `seedance-2-prompting` (its JSON beat sheet is built for exactly this — global
26
+ `audio_note`, one `audio` line per beat), `veo-3-prompting`,
27
+ `minimax-h3-prompting`, `kling-video-prompting`.
28
+
29
+ Separate per-shot clips are right in two cases:
30
+
31
+ - the piece is silent, or
32
+ - the continuity comes from a track you add yourself — narration from
33
+ `generate_speech` (or `voice_script_lines`, which voices every line of a
34
+ board's script in one call), a bed from `generate_music` — on its own
35
+ timeline track. Then the visual beds can be separate and the shots are muted
36
+ under it. `elevenlabs-audio-prompting` directs the voice and the music plan,
37
+ `stable-audio-prompting` the bed and any effects; a bed generated with a
38
+ stated BPM is a bed whose grid `beat-sync-editing` already knows.
39
+
40
+ Two video lines force the second build: Wan 2.6 takes an audio file as input
41
+ but writes none, and Hailuo has no native audio at all, so a piece on either
42
+ gets its sound from a track of your own.
43
+
44
+ On a storyboard this means one shot, not seven. A board whose shots each render
45
+ their own native-audio clip cannot be assembled into a continuous mix; decide
46
+ which of the two builds you are doing before the first render, because the fix
47
+ afterwards is a re-render. The board skills (`commercial-beat-sheet`,
48
+ `trailer-template`, `explainer-storyboard`, `music-video-treatment`) each say
49
+ which build they default to; the sound brief itself goes into the shot's
50
+ `motion` and `action`, the only fields the clip prompt is built from.
51
+
52
+ ## A sound brief that is not refused
53
+
54
+ Providers copyright-filter the generated audio track, and a brief asking for a
55
+ "swell", a "chord", a "score", a "soundtrack" or a named musical genre can come
56
+ back blocked — failing the whole render, not just the audio. For an underscore,
57
+ describe sound design instead:
58
+
59
+ - Hum, digital pulses, ticking, airy whooshes, risers, sparkle textures, one low
60
+ sub-bass boom.
61
+ - Close with "no music, no melody, no song, no voice".
62
+ - Put each transition in the sound design — a whoosh on every "cut to" — not in a
63
+ musical cue. A cue tends to restart at the cut, which is the discontinuity you
64
+ are avoiding.
65
+
66
+ Dialogue is not affected by this: quoted lines are the model's own voice track,
67
+ and the model-line skill says how to write them.
68
+
69
+ ## Check what came back
70
+
71
+ - **Length.** `duration_seconds` is honoured loosely and clamped to the lengths a
72
+ model supports. Measure with `analyze_video` before cutting to it.
73
+ - **Frame.** Aspect ratio is not guaranteed — an image-to-video route often
74
+ ignores a 9:16 source and emits 16:9. `analyze_video` reports it; fix it with
75
+ an ffmpeg crop to the target frame (`nodetool.media.ffmpeg` in a code action;
76
+ `api-media` has its contract) before compositing, not after.
77
+ - **The mix.** Judge it with `understand_video` (Gemini gets the audio; every
78
+ other vision model is sent silent stills), `analyze_audio` for the levels, and
79
+ `detect_video_scenes` to confirm the cuts landed where the beats said. Never
80
+ from a contact sheet.
81
+ - **The file.** Build on a stored asset. `generate_video` saves its result;
82
+ probing a generation node with `invoke_node` hands back whatever the node
83
+ returned, which can be a run-local path that is gone by the time you assemble.
84
+
85
+ ## Where the rest picks up
86
+
87
+ `timeline-edit-ops` carries the timeline op contract for laying the bed and muting
88
+ shot audio under a narration track. `beat-sync-editing` sits the cuts on that
89
+ bed once it exists, and `caption-titles` times the type to it — a title card is
90
+ never rendered into the clip, whichever build you chose.
@@ -0,0 +1,96 @@
1
+ ---
2
+ name: video-clone
3
+ description: "Analyze a reference video and recreate its shot structure with a new product or cast in NodeTool."
4
+ ---
5
+
6
+ **Load `/storyboard-core` first.** It carries the loop, the tool contract and
7
+ the gating this skill assumes. Everything below is the breakdown pass that comes
8
+ before that loop, and the rules for what may and may not be carried over.
9
+
10
+ ## What makes this job type its own
11
+
12
+ The structure is given, so the work is reading it accurately and then rebuilding it
13
+ with different content. Two failure modes: describing the reference vaguely enough
14
+ that the rebuild is unrelated, and copying it closely enough that you reproduce
15
+ somebody's trademarks.
16
+
17
+ ## Read the reference first
18
+
19
+ `find_model` with `capability: "generate_message"` for a model that reads video —
20
+ Gemini does it natively — then:
21
+
22
+ ```
23
+ understand_video {provider, model, video, prompt, max_tokens}
24
+ ```
25
+
26
+ `video` takes an asset id, an `asset://` URI, a URL or a data URI. It reads the whole
27
+ video, not sampled frames. Ask for one thing at a time rather than everything at once;
28
+ two or three calls read better than one overloaded prompt.
29
+
30
+ Extract, in this order:
31
+
32
+ 1. **Frame:** aspect, total length, shot count.
33
+ 2. **The first three seconds** — what the hook actually does, described as an action.
34
+ 3. **Per shot:** in and out timecode, framing, camera height, camera move, who speaks,
35
+ whether the product is visible and how.
36
+ 4. **Audio recipe:** dialogue, voiceover, room tone, music, and whether the sound is
37
+ diegetic.
38
+ 5. **One paragraph on why it works** — the mechanism, not praise.
39
+
40
+ Report the breakdown. Stop for an analysis-only request or a requested review.
41
+ For an authorized remake, continue using the reference structure and the new brief.
42
+
43
+ ## What carries over, and what must not
44
+
45
+ | Carry over | Replace |
46
+ |---|---|
47
+ | Cut rhythm — each shot's duration | The room, the set, the location |
48
+ | Camera heights and framings | Wardrobe and casting |
49
+ | The order of beats: hook, demonstration, verdict | Every spoken line |
50
+ | Whether the sound is diegetic | The product |
51
+ | Aspect ratio and total length | The palette, unless the user asks to match it |
52
+
53
+ **Never carry a trademark across.** Logos, wordmarks, brand colours as identity,
54
+ slogans, packaging layout and any readable sign in the reference stay out of the
55
+ rebuild. Put `no brand marks other than [PRODUCT]` in the board `style`. If the user
56
+ asks for the reference's actual logo, say plainly that the rebuild uses their product
57
+ and nothing else, and carry on with the rest.
58
+
59
+ ## Rebuild
60
+
61
+ Map each extracted shot to one `add_shot`, keeping its duration as
62
+ `duration_seconds`, its framing in `camera.framing`, its camera height in
63
+ `camera.angle` and its move in `camera.movement`. The still prompt reads framing,
64
+ angle and lens, and the clip prompt reads the movement, so none of them needs
65
+ repeating in `action`.
66
+
67
+ Cast before rendering: a character entity from a generated reference you show the user
68
+ first, and a prop entity from their pack shot. Slug the shots `1a`, `2a`, … so the
69
+ user can name one against the reference's own numbering.
70
+
71
+ Then run the core loop: stills, take selection (`select_version` when the user names a take), clips.
72
+
73
+ ## Brief
74
+
75
+ Adapt these examples to the user's brief. Example deliverables, style choices,
76
+ and approval checkpoints apply only when the user adopts them.
77
+
78
+ ```
79
+ Read the attached reference video with understand_video (find a model that reads
80
+ video via find_model, capability=generate_message — Gemini reads it natively).
81
+
82
+ Extract: aspect, length, shot count; what the first three seconds do; then per
83
+ shot the in/out timecode, framing, camera height, move, who speaks and whether
84
+ the product is visible. Then the audio recipe, then one paragraph on the
85
+ mechanism that makes it work.
86
+
87
+ Report that and stop.
88
+
89
+ Then rebuild it for [PRODUCT] with a new character. Keep the cut rhythm, the
90
+ durations and the camera heights. Change the room, the wardrobe and every line.
91
+ Carry no trademark from the reference — board style gets "no brand marks other
92
+ than [PRODUCT]".
93
+
94
+ Cast from stills first: generate the character reference, show me, then tag it.
95
+ Slug every shot so I can say "fix 2a".
96
+ ```
@@ -0,0 +1,119 @@
1
+ ---
2
+ name: video-workflow
3
+ description: "Build a reusable NodeTool video workflow for batches or repeated inputs. For a single finished piece, use a storyboard skill."
4
+ ---
5
+
6
+ **Load `/storyboard-core` for what a shot is and how entities season a prompt,
7
+ and `/nodetool-workflow-builder` for how to author a graph at all** — node search,
8
+ handles, validation, the tools. This skill is the seam between them: the nodes that
9
+ turn a brief into shots, and when a graph is the wrong answer.
10
+
11
+ ## First, check a graph is actually wanted
12
+
13
+ A graph earns its cost only when the pipeline gets **re-run on new inputs**. One video,
14
+ even a complicated one, is faster and cheaper to direct on a storyboard — no node
15
+ search, no handle wiring, no validation pass, and the user can see and fix each shot.
16
+
17
+ Build a graph when the user says template, pipeline, batch, factory, "for every SKU",
18
+ "run it again next month", or wants it callable from Chat by name. If they asked for a
19
+ video and you are reaching for a graph, go back to the storyboard skills.
20
+
21
+ ## The creative nodes
22
+
23
+ Search the registry before adding any of these — `search_nodes` or `ui_search_nodes`
24
+ with `include_properties` and `include_outputs` — and never invent a type, a property
25
+ or a handle name. Verified types:
26
+
27
+ | Node | Does |
28
+ |---|---|
29
+ | `nodetool.creative.Director` | brief → `Screenplay`. Props: `model` (language_model), `brief`, `style`, `shot_count` (1–20), `aspect_ratio`, `max_tokens`. Outputs: `screenplay`, `narration`, `music_prompt`, `title`. |
30
+ | `nodetool.creative.ScreenplayShots` | fans a screenplay out one shot at a time. Outputs `shot`, `shot_prompt`, `index` per iteration plus `output` as the whole list. |
31
+ | `nodetool.creative.ShotBatch` | flattens a screenplay into generation-ready specs in one go. Output: `shots` (list[dict]) with prompt, timing and keyframe. |
32
+ | `nodetool.creative.ShotChain` | animates a spec list sequentially, seeding each shot's first frame from the previous clip's last frame. Output: `videos`. Needs the `ffmpeg` runtime. |
33
+ | `nodetool.creative.ApplyEntities` | seasons a prompt with entity descriptors, the same rule the storyboard render path uses. |
34
+ | `nodetool.image.TextToImage` | prompt → image. |
35
+ | `nodetool.video.ImageToVideo` / `nodetool.video.TextToVideo` | still → clip, or prompt → clip. |
36
+
37
+ ## Re-run an approved document instead of re-directing
38
+
39
+ When the user already has a board, a script or a cut they signed off, do not put
40
+ `Director` in the graph. Start from the approved row and derive:
41
+
42
+ | Node | Does |
43
+ |---|---|
44
+ | `nodetool.constant.Storyboard` / `.Entity` | a picked board or library entity as a graph value. Outputs `output`. |
45
+ | `nodetool.entity.CreateEntity` | `image`, `kind`, `name`, `descriptor`, `key` → `entity`, `created`. Upserts on `key` (a SKU), so a second run reuses the row instead of growing the library. |
46
+ | `nodetool.entity.LoadEntity` / `ListEntities` | read one entity, or stream a filtered set. |
47
+ | `nodetool.storyboard.CreateStoryboard` | `screenplay` from `Director`, `name`, `cast`, both models → a new writable `storyboard`. The brief-first path: Director → CreateStoryboard → RenderStills. A re-run returns the board it made. |
48
+ | `nodetool.storyboard.RecastStoryboard` | `storyboard`, `cast`, `replaces`, `reuse_existing` → the copy, `invalidated`, `kept`. Keeps every frame whose prompt did not move. |
49
+ | `nodetool.storyboard.RenderStills` / `RenderClips` | render the stale shots of a derived board. `only_stale`, `max_shots`, `require_keyframe` are the spend gates. |
50
+ | `nodetool.storyboard.AssembleTimeline` | the derived board → `timeline`. A copy inherits the template's cut, titles and music. |
51
+ | `nodetool.storyboard.LoadStoryboard` / `StoryboardShots` | read a board's shots, entities and settings, or stream one message per shot with its still and clip. |
52
+ | `nodetool.script.WriteScript` / `FillScript` | write a script from a brief and a cast, or fill `{{key}}` placeholders in an approved one. Both make a new row. |
53
+ | `nodetool.timeline.FillTimelineText` | `timeline`, `values` → a new sequence with the overlay filled. |
54
+ | `nodetool.timeline.RetargetTimeline` | `timeline`, `aspect_ratio`, `fit` → a new sequence, plus `cropped` naming the clips the crop cuts into. |
55
+
56
+ **The write contract.** A `storyboard` ref is read-only unless the run derived it.
57
+ `RenderStills`, `RenderClips` and `AssembleTimeline` refuse a picked board and name
58
+ `allow_writes`, which is the override for a graph whose whole purpose is to render the
59
+ board a person chose. Wire `CreateStoryboard` or `RecastStoryboard` first and pass its
60
+ output along; that ref carries the permission.
61
+
62
+ Shipped examples to read before wiring one yourself: **Per-SKU Ad Factory**,
63
+ **Localized Explainer**, **Three Ratios** (`get_example_workflow`).
64
+
65
+ ## Two shapes, and they are not interchangeable
66
+
67
+ **Per-shot fan-out** — `Director` → `ScreenplayShots` → `TextToImage` → `ImageToVideo`.
68
+ Each shot renders independently. Use it when shots are separate takes: an ad, a set of
69
+ social cuts, anything where a shot failing should not spoil the rest.
70
+
71
+ **Continuous chain** — `Director` → `ShotBatch` → `ShotChain`. Each clip's first frame
72
+ is the previous clip's last frame, so motion and framing carry across the cut. Use it
73
+ for a sequence that has to feel continuous. It is sequential, so it is slower and one
74
+ bad clip propagates.
75
+
76
+ `ApplyEntities` goes between the prompt source and the image node whenever the pipeline
77
+ has a recurring character or product to hold steady.
78
+
79
+ ## Wire the gate in
80
+
81
+ The storyboard loop's value is that a human sees the stills before the clips are paid
82
+ for. A graph loses that unless you build it in: keep the still half and the clip half
83
+ separable, so the user can run to the stills, look, and then run the clip half. Say
84
+ which inputs do that when you hand the workflow over.
85
+
86
+ ## Validate and deliver the requested result
87
+
88
+ `validate_workflow` with the inline graph before saving — it catches unknown node
89
+ types, missing required properties, unselected models, dangling edges and a model id
90
+ the provider does not offer, in well under a second and with no spend.
91
+
92
+ `create_workflow` refuses to save a graph whose model properties are unselected, so
93
+ pick real ones with `find_model` and stamp them in. Nothing fills them in at run time.
94
+
95
+ Save and read back the graph. A request to build a template ends with a validated
96
+ workflow and its input instructions. If the user also requested execution, run
97
+ the authorized stages within their scope and budget. Do not request the same
98
+ authorization again.
99
+
100
+ ## Brief
101
+
102
+ Adapt these examples to the user's brief. Example deliverables, style choices,
103
+ and approval checkpoints apply only when the user adopts them.
104
+
105
+ ```
106
+ Build a workflow named "UGC factory" that I can re-run from Chat.
107
+
108
+ Inputs: a product image, a brief, an aspect ratio.
109
+ Shape: nodetool.creative.Director (brief + style + shot_count) ->
110
+ nodetool.creative.ScreenplayShots -> nodetool.creative.ApplyEntities ->
111
+ nodetool.image.TextToImage -> a point I can stop at and look ->
112
+ nodetool.video.ImageToVideo -> timeline assembly.
113
+
114
+ Search the registry for every node type and read its real properties and handles
115
+ before you add it. Pick concrete models with find_model and stamp them in.
116
+ validate_workflow before saving.
117
+
118
+ Save it and stop. Do not run the clip stage.
119
+ ```
@@ -0,0 +1,107 @@
1
+ ---
2
+ name: wan-2-6-prompting
3
+ description: Prompt Alibaba's Wan 2.6 video — text-to-video with a global style line plus timing-bracketed shots, and image-to-video that describes only what changes over time. Covers the shot-mode switch per provider, the prompt budget, negative prompts, motion intensity wording, audio input and prompt expansion. Use whenever the model id names a Wan 2.6 video route (alibaba/wan-2.6/text-to-video, alibaba/wan-2.6/image-to-video, wan-video/wan-2.6-t2v, wan-video/wan-2.6-i2v, wan-video/wan2.6-i2v-flash) on generate_video, animate_image or a TextToVideo node. Not for Wan 2.5 or 2.7, or the Wan 2.6 image routes.
4
+ ---
5
+
6
+ # Wan 2.6 → two modes, two prompt shapes
7
+
8
+ Wan 2.6 generates from text or animates a still. Each mode wants a differently
9
+ shaped prompt. Getting the shape wrong is the usual reason a clip comes back
10
+ generic.
11
+
12
+ Reach it with `find_model` for `text_to_video` or `image_to_video`, then
13
+ `generate_video` / `animate_image`. Those forward the prompt (and the image),
14
+ a negative prompt (not `animate_image`), the duration, the aspect ratio and
15
+ the resolution. The shot-mode switch, prompt expansion and an audio file exist
16
+ only on the route's own node: find it with `search_nodes`, read its fields
17
+ with `get_node_info`, and run it with `run_node`. Each run is a paid
18
+ generation, so confirm the scope with the user before rendering several.
19
+
20
+ fal's guide caps main prompts at 800 characters. No shipped route states the
21
+ limit, but write as if it holds.
22
+
23
+ ## Text to video
24
+
25
+ Two components: a global style line, then shots with timing brackets.
26
+
27
+ ```
28
+ A cinematic journey through ancient ruins at sunset. Photoreal, 4K, film grain.
29
+
30
+ Shot 1 [0-3s] Wide establishing shot of stone pillars with sunlight streaming through.
31
+ Shot 2 [3-7s] Camera tracks forward through an archway revealing a hidden chamber.
32
+ Shot 3 [7-10s] Close-up of ancient inscriptions as dust particles float in light beams.
33
+ ```
34
+
35
+ The shot mode is a switch, and its name and default differ by provider:
36
+ AtlasCloud's `shot_type` defaults to `multi`, and Replicate's `multi_shots`
37
+ defaults to false, so set it true there before sending bracketed shots. Give
38
+ each shot a timing indicator, a
39
+ camera action (push, pull, pan, orbit, track) and its scene elements — subject
40
+ position, lighting change, environmental detail. Keep continuity by referencing
41
+ the same characters, locations and objects across shots; unrelated shots
42
+ produce disjointed results.
43
+
44
+ AtlasCloud's durations are 5, 10 or 15 seconds, at 720p or 1080p, in 16:9, 9:16, 1:1, 4:3 or
45
+ 3:4. Write to the ratio you picked: wide establishing shots and horizontal
46
+ movement for 16:9, tighter framing and vertical composition for 9:16, centred
47
+ subjects for 1:1.
48
+
49
+ ## Image to video
50
+
51
+ Describe the temporal change, not the image. The model already has the frame;
52
+ words spent re-describing it are words not spent on motion.
53
+
54
+ ```
55
+ Continue from first frame. Gentle camera push toward the mountain peak as
56
+ clouds drift overhead. Light changes from morning to golden hour. Cinematic and
57
+ serene movement.
58
+ ```
59
+
60
+ Spend the prompt on camera motion, lighting shifts, and environmental
61
+ animation — water, clouds, foliage, smoke. The same shot switch applies:
62
+ AtlasCloud defaults to `multi`, Replicate to `multi_shots` false. Set single
63
+ shot for a plain animated still.
64
+
65
+ Images animate better when they are high resolution, have clear depth of field,
66
+ carry atmospheric elements, and are uncluttered with a well-defined subject.
67
+ Busy compositions with competing elements produce inconsistent motion. fal's
68
+ guide gives input images 360 to 2000 px per side, up to 100 MB.
69
+
70
+ ## Controls
71
+
72
+ **Negative prompt** — fal's guide caps it at 500 characters. Prioritise the artifacts you actually
73
+ see: "low quality, blurry, distorted faces, unnatural movement, text,
74
+ watermarks, shaky camera".
75
+
76
+ **Motion intensity** is a wording choice, not a parameter. Minimal: "subtle
77
+ camera drift", "gentle movement". Moderate: "smooth camera track", "flowing
78
+ motion". Dramatic: "dynamic sweeping motion", "rapid camera movement".
79
+
80
+ **Audio input** (`audio` on the route's node) takes WAV or MP3, 3 to 30
81
+ seconds, up to 15 MB, per fal's guide. Audio longer than the video is
82
+ truncated; audio shorter leaves the rest silent. For
83
+ dialogue, put speaker cues in the prompt.
84
+
85
+ **Prompt expansion** (`enable_prompt_expansion`) is on by default on every
86
+ Wan 2.6 video route and runs an LLM over the prompt before generation. It adds
87
+ detail without eating the 800-character budget, and it
88
+ works best when you have given it style references, visual descriptors and
89
+ precise terminology to expand from.
90
+
91
+ ## Symptoms
92
+
93
+ | What went wrong | What to change |
94
+ | :--- | :--- |
95
+ | Incoherent narrative | Break the scene into specific shots with timing brackets |
96
+ | Inconsistent subjects | Repeat the character description across every shot |
97
+ | Unnatural motion | Name the camera movement explicitly: push, pan, orbit |
98
+ | Flat visual quality | Add quality descriptors to the global style line |
99
+ | An element ignored | Move it earlier in the shot description |
100
+
101
+ Iterate one variable at a time, and start in text-to-video — the shot and
102
+ timing format transfers to image-to-video without any asset dependency.
103
+ Check the render with `analyze_video`, `detect_video_scenes` and
104
+ `understand_video`.
105
+
106
+ Adapted from fal's Wan 2.6 prompt guide:
107
+ https://fal.ai/learn/devs/wan-2-6-prompt-guide-mastering-all-three-generation-modes
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/app-build/bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAIH,OAAO,EAcL,KAAK,UAAU,EACf,KAAK,gBAAgB,EAGrB,KAAK,gBAAgB,EAIrB,KAAK,eAAe,EAGpB,KAAK,mBAAmB,EAEzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAUjE,qEAAqE;AACrE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;CACjD;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,iFAAiF;AACjF,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,qEAAqE;IACrE,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,SAAS,EAAE,mBAAmB,EAAE,CAAC;IACjC,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,2EAA2E;IAC3E,QAAQ,EAAE,OAAO,CAAC;IAClB,mEAAmE;IACnE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,oEAAoE;AACpE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,2EAA2E;IAC3E,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;IAC7B,qEAAqE;IACrE,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mFAAmF;IACnF,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACvD;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,mBAAmB,CAAC;IACtC,mEAAmE;IACnE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;IAClC,gFAAgF;IAChF,YAAY,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAChD;AAmID;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,qBAA0B,GAClC,aAAa,CAipBf"}
1
+ {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/app-build/bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAIH,OAAO,EAcL,KAAK,UAAU,EACf,KAAK,gBAAgB,EAGrB,KAAK,gBAAgB,EAIrB,KAAK,eAAe,EAGpB,KAAK,mBAAmB,EAEzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAUjE,qEAAqE;AACrE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;CACjD;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,iFAAiF;AACjF,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,qEAAqE;IACrE,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,SAAS,EAAE,mBAAmB,EAAE,CAAC;IACjC,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,2EAA2E;IAC3E,QAAQ,EAAE,OAAO,CAAC;IAClB,mEAAmE;IACnE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,oEAAoE;AACpE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,2EAA2E;IAC3E,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;IAC7B,qEAAqE;IACrE,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mFAAmF;IACnF,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACvD;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,mBAAmB,CAAC;IACtC,mEAAmE;IACnE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;IAClC,gFAAgF;IAChF,YAAY,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAChD;AAgKD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,qBAA0B,GAClC,aAAa,CAupBf"}
@@ -32,18 +32,13 @@
32
32
  * the document the previous round produced instead of an empty one.
33
33
  */
34
34
  import { z } from "zod";
35
- import { parseWithTypeCoercion } from "@nodetool-ai/runtime";
35
+ import { parseWithTypeCoercion, zodToJsonSchema } from "@nodetool-ai/runtime";
36
36
  import { EMPTY_DOC_META, addOperation, addResource, bindingTargets, declareVariable, removeOperation, removeResource, removeVariable, updateOperation, updateVariable, widgetFields, widgetSlots, WIDGET_CATALOG } from "@nodetool-ai/app-runtime";
37
37
  /** The widget types the tools expose, with the fields each one accepts. */
38
38
  const WIDGET_TYPES = Object.fromEntries(Object.entries(WIDGET_CATALOG).map(([type, descriptor]) => [
39
39
  type,
40
40
  { label: descriptor.label, fields: widgetFields(type) }
41
41
  ]));
42
- const EMPTY_WORKFLOW = {
43
- inputs: [],
44
- outputs: [],
45
- variables: []
46
- };
47
42
  /** Slot arrays present on a node, mirroring `slotArrays` in puckDataOps. */
48
43
  function slotArrays(node) {
49
44
  const result = [];
@@ -94,16 +89,46 @@ function mapTree(items, fn) {
94
89
  return result;
95
90
  }
96
91
  function tool(name, description, parameters, impl) {
92
+ const schema = parameters instanceof z.ZodObject ? parameters.strict() : parameters;
97
93
  return {
98
94
  name,
99
95
  description,
100
- parameters,
96
+ parameters: schema,
101
97
  execute: (args) => {
102
- const parsed = parseWithTypeCoercion(parameters, args ?? {});
98
+ const parsed = parseWithTypeCoercion(schema, args ?? {});
103
99
  return impl(parsed);
104
100
  }
105
101
  };
106
102
  }
103
+ const appEventSchema = z.strictObject({
104
+ trigger: z.enum(["click", "change"]),
105
+ kind: z.enum([
106
+ "",
107
+ "run",
108
+ "cancel",
109
+ "setVariable",
110
+ "toggleVariable",
111
+ "setState",
112
+ "toggleState",
113
+ "resourceCommand",
114
+ "openResource"
115
+ ]).optional(),
116
+ key: z.string().optional(),
117
+ value: z.string().optional(),
118
+ operationId: z.string().optional(),
119
+ invocationId: z.string().optional(),
120
+ resourceBindingId: z.string().optional(),
121
+ command: z.enum(["read", "create", "update", "delete", "upload"]).optional(),
122
+ pace: z.enum(["live", "release", "debounce"]).optional()
123
+ });
124
+ const componentPropsSchema = z
125
+ .object({
126
+ events: z
127
+ .array(appEventSchema)
128
+ .optional()
129
+ .describe("Widget actions, e.g. [{trigger: 'click', kind: 'run', operationId: 'main'}].")
130
+ })
131
+ .catchall(z.unknown());
107
132
  const applicationIdParam = z
108
133
  .string()
109
134
  .describe("Id of the application whose app document to operate on. The open app " +
@@ -149,9 +174,9 @@ export function createAppToolBridge(initial = {}) {
149
174
  let finished = false;
150
175
  let finishSummary = null;
151
176
  const hostWorkflowId = initial.workflowId ?? "wf-app";
152
- const hostWorkflow = initial.workflow ?? EMPTY_WORKFLOW;
177
+ const hostWorkflow = initial.workflow;
153
178
  const loadedWorkflows = new Map([
154
- [hostWorkflowId, hostWorkflow],
179
+ ...(hostWorkflow ? [[hostWorkflowId, hostWorkflow]] : []),
155
180
  ...Object.entries(initial.workflows ?? {})
156
181
  ]);
157
182
  /** Binding targets across every loaded workflow. */
@@ -205,10 +230,13 @@ export function createAppToolBridge(initial = {}) {
205
230
  types: Object.entries(WIDGET_TYPES).map(([type, def]) => ({
206
231
  type,
207
232
  label: def.label,
208
- fields: Object.entries(def.fields).map(([name, kind]) => ({
209
- name,
210
- type: kind
211
- }))
233
+ fields: Object.entries(def.fields).map(([name, kind]) => {
234
+ const field = { name, type: kind };
235
+ if (name === "events") {
236
+ field.schema = zodToJsonSchema(z.array(appEventSchema));
237
+ }
238
+ return field;
239
+ })
212
240
  }))
213
241
  })),
214
242
  tool("ui_app_add_component", "Add a widget to the app. Bindings reference workflow nodes that must " +
@@ -223,8 +251,7 @@ export function createAppToolBridge(initial = {}) {
223
251
  type: z
224
252
  .string()
225
253
  .describe("Widget type, e.g. 'Heading', 'TextInput', 'Button'."),
226
- props: z
227
- .record(z.string(), z.unknown())
254
+ props: componentPropsSchema
228
255
  .optional()
229
256
  .describe("Initial props (label, text, binding, events, ...)."),
230
257
  parent_id: z
@@ -301,7 +328,7 @@ export function createAppToolBridge(initial = {}) {
301
328
  id: z
302
329
  .string()
303
330
  .describe("Widget id from ui_app_get_snapshot — a component inside the app, not a workflow id."),
304
- props: z.record(z.string(), z.unknown()).describe("Props to merge.")
331
+ props: componentPropsSchema.describe("Props to merge.")
305
332
  }), async ({ application_id: _app, id, props }) => {
306
333
  let found = false;
307
334
  content = mapTree(content, (n) => {
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/app-build/bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/app-build/bridge.ts"],"names":[],"mappings":"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"}