@nodaro/prompts 1.8.0 → 1.8.1
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/index.cjs +14 -19
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +4 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +14 -19
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/__tests__/fixtures/parameter-hint-golden.json +1 -1
- package/src/__tests__/provider-prompt-doctrine.test.ts +18 -0
- package/src/framing.ts +4 -12
- package/src/lens.ts +2 -2
- package/src/provider-prompt-doctrine.ts +12 -5
package/dist/index.d.cts
CHANGED
|
@@ -5072,6 +5072,10 @@ declare function applyTemplate(template: string, vars: Record<string, string>):
|
|
|
5072
5072
|
* Seedance 2.0:
|
|
5073
5073
|
* - Official BytePlus ModelArk "Dreamina Seedance 2.0 series prompt guide"
|
|
5074
5074
|
* https://docs.byteplus.com/en/docs/ModelArk/2222480
|
|
5075
|
+
* - Official BytePlus ModelArk "Dreamina Seedance 2.5 prompt guide"
|
|
5076
|
+
* https://docs.byteplus.com/en/docs/ModelArk/2607689 — its "Differences
|
|
5077
|
+
* from Seedance 2.0" section is the authority for every 2.0-vs-2.5 split
|
|
5078
|
+
* below (timestamps, multi-view references, aspect ratios, MOV output).
|
|
5075
5079
|
* - Official launch post https://seed.bytedance.com/en/blog/official-launch-of-seedance-2-0
|
|
5076
5080
|
* - KIE API docs https://docs.kie.ai/market/bytedance/seedance-2
|
|
5077
5081
|
* Kling:
|
package/dist/index.d.ts
CHANGED
|
@@ -5072,6 +5072,10 @@ declare function applyTemplate(template: string, vars: Record<string, string>):
|
|
|
5072
5072
|
* Seedance 2.0:
|
|
5073
5073
|
* - Official BytePlus ModelArk "Dreamina Seedance 2.0 series prompt guide"
|
|
5074
5074
|
* https://docs.byteplus.com/en/docs/ModelArk/2222480
|
|
5075
|
+
* - Official BytePlus ModelArk "Dreamina Seedance 2.5 prompt guide"
|
|
5076
|
+
* https://docs.byteplus.com/en/docs/ModelArk/2607689 — its "Differences
|
|
5077
|
+
* from Seedance 2.0" section is the authority for every 2.0-vs-2.5 split
|
|
5078
|
+
* below (timestamps, multi-view references, aspect ratios, MOV output).
|
|
5075
5079
|
* - Official launch post https://seed.bytedance.com/en/blog/official-launch-of-seedance-2-0
|
|
5076
5080
|
* - KIE API docs https://docs.kie.ai/market/bytedance/seedance-2
|
|
5077
5081
|
* Kling:
|
package/dist/index.js
CHANGED
|
@@ -235,15 +235,7 @@ var FRAMINGS = [
|
|
|
235
235
|
label: "Cowboy Shot",
|
|
236
236
|
category: "shot-size",
|
|
237
237
|
description: "Mid-thigh up, classic Western framing",
|
|
238
|
-
promptHint: "cowboy shot, subject framed from mid-thigh up, classic Western framing
|
|
239
|
-
},
|
|
240
|
-
{
|
|
241
|
-
id: "head-to-knees",
|
|
242
|
-
label: "Head to Knees",
|
|
243
|
-
category: "shot-size",
|
|
244
|
-
description: "From head down to the knees",
|
|
245
|
-
promptHint: "head-to-knees framing, subject visible from the top of the head down to just above the knees",
|
|
246
|
-
term: "head-to-knees framing"
|
|
238
|
+
promptHint: "cowboy shot, subject framed from mid-thigh up, classic Western framing"
|
|
247
239
|
},
|
|
248
240
|
{
|
|
249
241
|
id: "head-to-hip",
|
|
@@ -500,15 +492,15 @@ var FRAMINGS = [
|
|
|
500
492
|
label: "Magazine Spread",
|
|
501
493
|
category: "composition",
|
|
502
494
|
description: "Two-page magazine layout with typography",
|
|
503
|
-
promptHint: "magazine spread layout, two-page editorial composition with
|
|
495
|
+
promptHint: "magazine spread layout, two-page editorial composition with a visible page gutter down the middle"
|
|
504
496
|
},
|
|
505
497
|
{
|
|
506
498
|
id: "cutaway-cross-section",
|
|
507
499
|
label: "Cutaway / Cross-Section",
|
|
508
500
|
category: "composition",
|
|
509
501
|
description: "Architectural cross-section with walls peeled away",
|
|
510
|
-
promptHint: "cutaway cross-section composition, the
|
|
511
|
-
term: "cutaway cross-section, near
|
|
502
|
+
promptHint: "cutaway cross-section composition, the near surface peeled away to reveal the interior in clean cross-section, the inner layers and hidden structure exposed at once",
|
|
503
|
+
term: "cutaway cross-section, near surface removed"
|
|
512
504
|
},
|
|
513
505
|
{
|
|
514
506
|
id: "golden-spiral",
|
|
@@ -878,8 +870,8 @@ var LENSES = [
|
|
|
878
870
|
{ id: "telephoto-135mm", label: "Telephoto (135mm)", description: "Compressed depth, isolated subject", promptHint: "shot on 135mm telephoto lens, compressed depth with subject isolated from background", term: "135mm telephoto lens" },
|
|
879
871
|
{ id: "super-telephoto-400mm", label: "Super Telephoto (400mm)", description: "Extreme compression, distant subject", promptHint: "shot on super-telephoto 400mm lens, extreme depth compression with subject pulled forward", term: "400mm super-telephoto lens" },
|
|
880
872
|
{ id: "fisheye", label: "Fisheye", description: "Hemispherical 180\xB0 distortion", promptHint: "shot on fisheye lens, extreme 180-degree hemispherical distortion with curved horizon", term: "fisheye lens" },
|
|
881
|
-
{ id: "anamorphic", label: "Anamorphic", description: "Cinematic widescreen, oval bokeh", promptHint: "anamorphic lens look,
|
|
882
|
-
{ id: "macro", label: "Macro", description: "Extreme close-up of small detail", promptHint: "macro lens, extreme close
|
|
873
|
+
{ id: "anamorphic", label: "Anamorphic", description: "Cinematic widescreen, oval bokeh", promptHint: "anamorphic lens look, characteristic oval bokeh and horizontal lens flares", term: "anamorphic lens" },
|
|
874
|
+
{ id: "macro", label: "Macro", description: "Extreme close-up of small detail", promptHint: "macro lens, capable of extreme close focus and life-size magnification with a very shallow depth of field", term: "macro lens" },
|
|
883
875
|
{ id: "probe", label: "Probe Lens", description: "Tube macro \u2014 through holes and tight spaces", promptHint: "probe lens shot, tube-lens macro perspective gliding through impossibly tight spaces with extreme close-up depth" },
|
|
884
876
|
{ id: "cctv", label: "CCTV", description: "Security-camera surveillance look", promptHint: "CCTV security camera footage look, high-angle fixed surveillance framing, mild wide-angle distortion, washed contrast and visible video grain", term: "cctv surveillance camera look" },
|
|
885
877
|
{ id: "tilt-shift", label: "Tilt-shift", description: "Selective focus, miniature effect", promptHint: "tilt-shift lens, selective plane of focus producing a miniature-diorama effect", term: "tilt-shift lens" },
|
|
@@ -27278,19 +27270,19 @@ var SEEDANCE_2_DOCTRINE = {
|
|
|
27278
27270
|
providers: ["seedance-2", "seedance-2-fast", "seedance-2-mini", "seedance-2-5"],
|
|
27279
27271
|
heading: "Seedance 2 (seedance-2, seedance-2-fast, seedance-2-mini, seedance-2-5)",
|
|
27280
27272
|
tips: [
|
|
27281
|
-
"Storyboard
|
|
27273
|
+
"Storyboard as 'Shot 1: \u2026 Shot 2: \u2026'. The 2.0 SKUs ignore timestamps and '(0-3s)' shots are officially unstable there; seedance-2-5 honours integer-second timestamps ('0-3s: \u2026', 'at the 5-second mark').",
|
|
27282
27274
|
"One camera movement per shot; describe actions per body part with degree ('slowly raises a hand'); express emotion as physical detail, never abstract words.",
|
|
27283
27275
|
"Native multi-track audio \u2014 cue it inline: \uFF08background music\uFF09, <sound effects>, and quoted dialogue.",
|
|
27284
|
-
"References go by ordinal (@Image 1, Video 2) in attachment order; earlier = higher priority. Identity = ONE headshot + ONE full-body (multi-view sheets
|
|
27276
|
+
"References go by ordinal (@Image 1, Video 2) in attachment order; earlier = higher priority. Identity = ONE headshot + ONE full-body (multi-view sheets drift on 2.0; 2.5 accepts them). 4-5 assets beats maxing 9/3/3.",
|
|
27285
27277
|
"No negative-prompt parameter \u2014 put constraints in the prompt: 'keep it subtitle-free, do not generate a watermark, do not generate a logo'.",
|
|
27286
|
-
"seedance-2-5 only: one shot runs to 30s (
|
|
27278
|
+
"seedance-2-5 only: one shot runs to 30s (2.0 stops at 15s) \u2014 storyboard a whole beat, not a stitch; timestamps work (gap-free, 1s units, don't overpack); refs 30/10/10 but 4-5 assets still gives the best identity.",
|
|
27287
27279
|
"Auto-path formula: Subject \u2192 Action \u2192 Environment \u2192 Camera \u2192 Style \u2192 Constraints in 60-100 words; ONE camera instruction (chain with 'then'); separate camera motion from subject motion; always add one lighting phrase."
|
|
27288
27280
|
],
|
|
27289
27281
|
doctrine: `Prompt structure (front-load what matters most):
|
|
27290
27282
|
precise subject \u2192 action details \u2192 scene/environment \u2192 lighting & color tone \u2192 camera movement \u2192 visual style \u2192 image quality \u2192 constraints.
|
|
27291
27283
|
|
|
27292
27284
|
**Shots & pacing**
|
|
27293
|
-
- Storyboard complex videos as "Shot 1: \u2026 Shot 2: \u2026 Shot 3: \u2026" in event order.
|
|
27285
|
+
- Storyboard complex videos as "Shot 1: \u2026 Shot 2: \u2026 Shot 3: \u2026" in event order. TIMESTAMPS ARE VERSION-SPLIT: the 2.0 SKUs (seedance-2 / -fast / -mini) respond to shot numbers only \u2014 do NOT attach timestamps there (e.g. "(0-3s)"; precise timing is officially unstable on 2.0 and forcing durations can break generation, so let the model pace). seedance-2-5 honours integer-second timestamps \u2014 the forms and limits are under "Generation differences" below.
|
|
27294
27286
|
- Per shot cover, in order: camera move or transition, subject action + expression, spatial/position change, audio for that shot.
|
|
27295
27287
|
- One camera movement type per shot \u2014 never ask for push + pan + orbit at once (image instability).
|
|
27296
27288
|
- Prefer slow, gentle, continuous movements over high-burst action (sprints, big jumps, violent rolls morph). Describe actions per body part with quantified degree: "slowly raises a hand", "pushes hard off the ground". Chain actions with inertia: "uses the momentum of the turn to naturally raise an arm".
|
|
@@ -27301,11 +27293,14 @@ precise subject \u2192 action details \u2192 scene/environment \u2192 lighting &
|
|
|
27301
27293
|
- 2.5 also takes far more reference material (30 images / 10 videos / 10 audio vs 9/3/3). Treat that as room for COVERAGE \u2014 more distinct characters, locations and props in one shot \u2014 not as licence to pile refs onto one identity. The "ONE headshot + ONE full-body, 4-5 assets total" rule above still produces the best likeness on 2.5.
|
|
27302
27294
|
- 2.5 renders at 480p/720p/1080p (1080p since 2026-08-17): there is no 4K tier, so route a job that needs 4K to seedance-2 (which has it) or upscale afterwards.
|
|
27303
27295
|
- With a start frame, 2.5 always derives the output aspect from that frame \u2014 an explicit aspect ratio is rejected outright, so compose the frame at the ratio you want.
|
|
27296
|
+
- Timestamps (official 2.5 guide, "Differences from Seedance 2.0"): 2.0 does not respond to them; 2.5 supports integer-second timestamps in three forms \u2014 gap-free intervals ("0-3s: \u2026 3-7s: \u2026 7-15s: \u2026" or "[1s-4s] \u2026 [4s-8s] \u2026"; never leave a hole like "0-3s \u2026 5-6s"), time-point control ("At the 5-second mark, \u2026"), and relative time ("After 3 seconds, \u2026"). Use 1-second units. Too little content in a range lets the model improvise; too much packs in extra cuts or drops beats \u2014 budget the seconds. Never use timestamps to drive high-frequency actions ("shake three times per second").
|
|
27297
|
+
- Multi-view subject images: not recommended on 2.0 (the views read as separate people \u2192 twins); supported on 2.5. ONE headshot + ONE full-body remains the safest default on both.
|
|
27298
|
+
- Transitions and camera terms on 2.5: state a transition's trigger point AND method in one sentence \u2014 "At the 5-second mark, the camera quickly transitions leftward using a left wipe combined with a natural dissolve." Basic shot and camera terms are written directly (push in / pull out / pan / track / orbit / dolly zoom / whip pan / hard cut / dissolve / one-shot / speed ramp); only niche terms need [term + descriptive explanation] \u2014 which is exactly what the pickers' compact hint mode emits versus their long hints.
|
|
27304
27299
|
|
|
27305
27300
|
**References (when reference media is attached)**
|
|
27306
27301
|
- Refer to assets by ordinal in attachment order: "@Image 1", "Video 2", "Audio 1". Asset ORDER is priority \u2014 put the most identity-critical asset first. (In the editor, the \`{image:N:label}\` / \`{video:N}\` / \`{audio:N}\` prompt tokens auto-emit this binding \u2014 \`{image:1:person}\` resolves to "the person from @image_1" \u2014 so a wired reference and its mention stay in sync.)
|
|
27307
27302
|
- Define each subject once, then reuse the label consistently: 'Define the woman in the red dress in Image 1 as the courier' \u2026 'the courier opens the door'. In multi-character scenes bind every character to its image ("the man from Image 1 hands the box to the woman from Image 2") and append: "do not generate duplicate copies of the same character".
|
|
27308
|
-
- Character identity: ONE close-up headshot + ONE full-body image is ideal.
|
|
27303
|
+
- Character identity: ONE close-up headshot + ONE full-body image is ideal. On the 2.0 SKUs do NOT attach multi-view/three-view character sheets \u2014 the model reads the views as separate people, causing identity drift and twin duplicates; 2.5 accepts multi-view images (see "Generation differences").
|
|
27309
27304
|
- 4-5 assets total works best (1-2 character images + 1 scene image + 1 camera-movement video + 1 audio clip). Maxing out the 9-image/3-video/3-audio limits degrades feature priority and adherence.
|
|
27310
27305
|
- Editing/extension instructions name clips directly: "Extend Video 1 backward\u2026", "Remove the chair from Video 1". Saying "reference Video 1" flips the model into reference mode and breaks the edit. Track completion: "Video 1 + [transition description] + followed by Video 2" (\u22643 clips, \u226415s total).
|
|
27311
27306
|
|