@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.
- package/dist/.nodetool-build-stamp +1 -1
- package/dist/_skills/LICENSE-iart-motion-design-skills +21 -0
- package/dist/_skills/README.md +211 -0
- package/dist/_skills/api-agents/SKILL.md +58 -0
- package/dist/_skills/api-apps/SKILL.md +54 -0
- package/dist/_skills/api-assets/SKILL.md +66 -0
- package/dist/_skills/api-collections/SKILL.md +33 -0
- package/dist/_skills/api-games/SKILL.md +81 -0
- package/dist/_skills/api-media/SKILL.md +131 -0
- package/dist/_skills/api-memory/SKILL.md +72 -0
- package/dist/_skills/api-models/SKILL.md +78 -0
- package/dist/_skills/api-scripts/SKILL.md +79 -0
- package/dist/_skills/api-settings/SKILL.md +49 -0
- package/dist/_skills/api-sketches/SKILL.md +61 -0
- package/dist/_skills/api-storyboards/SKILL.md +94 -0
- package/dist/_skills/api-timelines/SKILL.md +151 -0
- package/dist/_skills/api-web/SKILL.md +57 -0
- package/dist/_skills/api-workflows/SKILL.md +123 -0
- package/dist/_skills/beat-sync-editing/SKILL.md +208 -0
- package/dist/_skills/caption-titles/SKILL.md +94 -0
- package/dist/_skills/color-motion/SKILL.md +185 -0
- package/dist/_skills/commercial-beat-sheet/SKILL.md +338 -0
- package/dist/_skills/elevenlabs-audio-prompting/SKILL.md +163 -0
- package/dist/_skills/explainer-storyboard/SKILL.md +63 -0
- package/dist/_skills/flux-2-klein-prompting/SKILL.md +107 -0
- package/dist/_skills/frame-composition/SKILL.md +291 -0
- package/dist/_skills/game-direction/SKILL.md +99 -0
- package/dist/_skills/gpt-image-2-prompting/SKILL.md +161 -0
- package/dist/_skills/hailuo-prompting/SKILL.md +107 -0
- package/dist/_skills/kling-video-prompting/SKILL.md +188 -0
- package/dist/_skills/launch-commercial/SKILL.md +267 -0
- package/dist/_skills/launch-kit/SKILL.md +120 -0
- package/dist/_skills/logo-reveal/SKILL.md +225 -0
- package/dist/_skills/manimgx/SKILL.md +123 -0
- package/dist/_skills/minimax-h3-prompting/SKILL.md +134 -0
- package/dist/_skills/motion-ad/SKILL.md +281 -0
- package/dist/_skills/motion-background/SKILL.md +145 -0
- package/dist/_skills/motion-curves/SKILL.md +302 -0
- package/dist/_skills/motion-direction/SKILL.md +259 -0
- package/dist/_skills/motion-graphics/SKILL.md +217 -0
- package/dist/_skills/motion-principles/SKILL.md +255 -0
- package/dist/_skills/music-video-treatment/SKILL.md +40 -0
- package/dist/_skills/nano-banana-pro-prompting/SKILL.md +133 -0
- package/dist/_skills/native-game/SKILL.md +310 -0
- package/dist/_skills/native-game-reference/SKILL.md +879 -0
- package/dist/_skills/nodetool-3d-scene/SKILL.md +110 -0
- package/dist/_skills/nodetool-api-reference/SKILL.md +338 -0
- package/dist/_skills/nodetool-app-builder/SKILL.md +291 -0
- package/dist/_skills/nodetool-browser-agent/SKILL.md +119 -0
- package/dist/_skills/nodetool-chat-cli/SKILL.md +184 -0
- package/dist/_skills/nodetool-custom-node-developer/SKILL.md +294 -0
- package/dist/_skills/nodetool-deployment/SKILL.md +195 -0
- package/dist/_skills/nodetool-js-scripting/SKILL.md +223 -0
- package/dist/_skills/nodetool-model-provider-config/SKILL.md +348 -0
- package/dist/_skills/nodetool-rag-indexing/SKILL.md +153 -0
- package/dist/_skills/nodetool-sketch/SKILL.md +138 -0
- package/dist/_skills/nodetool-skill-author/SKILL.md +125 -0
- package/dist/_skills/nodetool-troubleshooter/SKILL.md +370 -0
- package/dist/_skills/nodetool-video-post/SKILL.md +149 -0
- package/dist/_skills/nodetool-workflow-builder/SKILL.md +295 -0
- package/dist/_skills/product-commercial/SKILL.md +132 -0
- package/dist/_skills/qwen-image-prompting/SKILL.md +122 -0
- package/dist/_skills/script-video/SKILL.md +106 -0
- package/dist/_skills/seedance-2-prompting/SKILL.md +194 -0
- package/dist/_skills/seedream-prompting/SKILL.md +117 -0
- package/dist/_skills/short-film/SKILL.md +123 -0
- package/dist/_skills/stable-audio-prompting/SKILL.md +130 -0
- package/dist/_skills/storyboard-core/SKILL.md +716 -0
- package/dist/_skills/timeline-edit-ops/SKILL.md +736 -0
- package/dist/_skills/trailer-template/SKILL.md +291 -0
- package/dist/_skills/ugc-video/SKILL.md +186 -0
- package/dist/_skills/veo-3-prompting/SKILL.md +140 -0
- package/dist/_skills/video-audio-continuity/SKILL.md +90 -0
- package/dist/_skills/video-clone/SKILL.md +96 -0
- package/dist/_skills/video-workflow/SKILL.md +119 -0
- package/dist/_skills/wan-2-6-prompting/SKILL.md +107 -0
- package/dist/app-build/bridge.d.ts.map +1 -1
- package/dist/app-build/bridge.js +44 -17
- package/dist/app-build/bridge.js.map +1 -1
- package/dist/capabilities/apps.d.ts.map +1 -1
- package/dist/capabilities/apps.js +55 -13
- package/dist/capabilities/apps.js.map +1 -1
- package/dist/capabilities/apps.specs.d.ts.map +1 -1
- package/dist/capabilities/apps.specs.js +5 -3
- package/dist/capabilities/apps.specs.js.map +1 -1
- package/dist/capabilities/game-asset-browser.d.ts.map +1 -1
- package/dist/capabilities/game-asset-browser.js +6 -1
- package/dist/capabilities/game-asset-browser.js.map +1 -1
- package/dist/capabilities/game.d.ts +1 -1
- package/dist/capabilities/game.d.ts.map +1 -1
- package/dist/capabilities/game.js +71 -56
- package/dist/capabilities/game.js.map +1 -1
- package/dist/capabilities/game.specs.js +1 -1
- package/dist/capabilities/game.specs.js.map +1 -1
- package/dist/capabilities/game3d.d.ts.map +1 -1
- package/dist/capabilities/game3d.js +14 -19
- package/dist/capabilities/game3d.js.map +1 -1
- package/dist/capabilities/gameAssertions.d.ts +52 -0
- package/dist/capabilities/gameAssertions.d.ts.map +1 -0
- package/dist/capabilities/gameAssertions.js +32 -0
- package/dist/capabilities/gameAssertions.js.map +1 -0
- package/dist/capabilities/models.d.ts.map +1 -1
- package/dist/capabilities/models.js +9 -0
- package/dist/capabilities/models.js.map +1 -1
- package/dist/capabilities/storyboards.d.ts.map +1 -1
- package/dist/capabilities/storyboards.js +36 -11
- package/dist/capabilities/storyboards.js.map +1 -1
- package/dist/capabilities/storyboards.specs.d.ts.map +1 -1
- package/dist/capabilities/storyboards.specs.js +11 -1
- package/dist/capabilities/storyboards.specs.js.map +1 -1
- package/dist/capabilities/workflows.d.ts.map +1 -1
- package/dist/capabilities/workflows.js +1 -0
- package/dist/capabilities/workflows.js.map +1 -1
- package/dist/capabilities/workflows.specs.d.ts.map +1 -1
- package/dist/capabilities/workflows.specs.js +4 -3
- package/dist/capabilities/workflows.specs.js.map +1 -1
- package/dist/evals/surfaces/game.d.ts.map +1 -1
- package/dist/evals/surfaces/game.js +29 -1
- package/dist/evals/surfaces/game.js.map +1 -1
- package/dist/game-authoring.d.ts +120 -0
- package/dist/game-authoring.d.ts.map +1 -1
- package/dist/game-build-integrity.d.ts +12 -0
- package/dist/game-build-integrity.d.ts.map +1 -0
- package/dist/game-build-integrity.js +78 -0
- package/dist/game-build-integrity.js.map +1 -0
- package/dist/game-examples.d.ts +44 -3
- package/dist/game-examples.d.ts.map +1 -1
- package/dist/game-examples.js +60 -10
- package/dist/game-examples.js.map +1 -1
- package/dist/system-skills.d.ts +1 -1
- package/dist/system-skills.js +1 -1
- package/dist/tools/builtin-tools.d.ts.map +1 -1
- package/dist/tools/builtin-tools.js +2 -0
- package/dist/tools/builtin-tools.js.map +1 -1
- 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;
|
|
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"}
|
package/dist/app-build/bridge.js
CHANGED
|
@@ -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(
|
|
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
|
|
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
|
-
|
|
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:
|
|
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:
|
|
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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"}
|