@kolbo/mcp 1.70.0 → 1.70.2

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 (35) hide show
  1. package/README.md +7 -7
  2. package/bin/kolbo-mcp.js +14 -5
  3. package/package.json +3 -2
  4. package/skill/GENERATED.md +4 -5
  5. package/skill/SKILL.md +11 -18
  6. package/skill/VERSION +1 -1
  7. package/skill/assets/filmmaking/continuity-ledger.template.json +27 -0
  8. package/skill/assets/filmmaking/generation-log.template.csv +2 -0
  9. package/skill/assets/filmmaking/production-bible.template.json +97 -0
  10. package/skill/assets/filmmaking/scene-card.template.json +40 -0
  11. package/skill/assets/filmmaking/shot-card.template.json +72 -0
  12. package/skill/references/filmmaking/acting-direction.md +131 -0
  13. package/skill/references/filmmaking/asset-preproduction.md +97 -0
  14. package/skill/references/filmmaking/audio-dialogue-music.md +111 -0
  15. package/skill/references/filmmaking/blocking-continuity.md +125 -0
  16. package/skill/references/filmmaking/cinematography.md +101 -0
  17. package/skill/references/filmmaking/physics-action.md +93 -0
  18. package/skill/references/filmmaking/production-bible.md +108 -0
  19. package/skill/references/filmmaking/prompt-contracts.md +140 -0
  20. package/skill/references/filmmaking/routing.md +105 -0
  21. package/skill/references/filmmaking/scene-engine.md +95 -0
  22. package/skill/references/filmmaking/validation.md +109 -0
  23. package/skill/references/filmmaking/workflows.md +80 -0
  24. package/skill/references/models/gpt-image.md +1 -1
  25. package/skill/references/models/nano-banana.md +1 -1
  26. package/skill/references/models/prompt-copilot.md +0 -1
  27. package/skill/references/models/seedance.md +24 -44
  28. package/skill/references/models/seedance25.md +3 -3
  29. package/skill/references/workflows/filmmaking.md +168 -0
  30. package/skill/scripts/filmmaking/lint_prompt.py +249 -0
  31. package/skill/scripts/filmmaking/validate_film_package.py +435 -0
  32. package/src/apps/widgets/generation.js +7 -2
  33. package/src/install.js +62 -3
  34. package/src/tools/_shared.js +11 -3
  35. package/src/tools/generate.js +22 -16
@@ -0,0 +1,111 @@
1
+ # Audio, Dialogue, and Music
2
+
3
+ Choose one primary audio lane, then state how the remaining sound layers interact.
4
+
5
+ ## Audio ownership
6
+
7
+ For every audible element, record:
8
+
9
+ - source: native generation, supplied audio, off-screen actor, environment, or post;
10
+ - owner: which mouth/body/object produces it;
11
+ - timing and duration;
12
+ - priority in the mix;
13
+ - whether it continues across the edit.
14
+
15
+ Never leave spoken or sung words ownerless.
16
+
17
+ ## Dialogue lane
18
+
19
+ Use exact quoted text. Separate:
20
+
21
+ 1. **Voice identity** — stable register, timbre, accent, pace, habitual delivery.
22
+ 2. **Scene delivery** — tactic, volume, pressure, timing, breath, interruption.
23
+ 3. **Listener behavior** — active task and reaction timing.
24
+
25
+ Specify when mouths remain closed if the model tends to invent speech. Allow nonverbal sound only when requested.
26
+
27
+ Fit dialogue to the available duration. Include a clean tail when the editor needs a seam. Preserve the previous line's emotional/audio tail only when it helps the next reaction; do not import irrelevant visual subjects from prior audio.
28
+
29
+ ## Exact-song lip-sync lane
30
+
31
+ Use when a supplied waveform is authoritative.
32
+
33
+ Declare:
34
+
35
+ - the audio/video reference contains the performance track;
36
+ - the exact performer whose mouth owns it;
37
+ - the lyric fragment in the block;
38
+ - source waveform wins if text and clipped edges disagree;
39
+ - breath gaps and section boundaries;
40
+ - non-performers' mouth behavior;
41
+ - whether returned generation audio is retained or replaced in post.
42
+
43
+ Example contract:
44
+
45
+ ```text
46
+ <audio tag> is the authoritative performance waveform.
47
+ <performer> shapes every audible syllable frame-accurately.
48
+ Lyrics: "..."
49
+ At clipped boundaries, follow the waveform rather than completing the written line.
50
+ Other mouths react and sing only if explicitly assigned; they never inherit these words.
51
+ ```
52
+
53
+ Cut long songs into edit-aware sections at breaths or musical seams. Do not cut mid-phoneme unless unavoidable.
54
+
55
+ ## Native music-performance lane
56
+
57
+ Use when the selected model can produce synchronized music/vocals and the user wants generation-native sound.
58
+
59
+ Specify:
60
+
61
+ - performers and vocal ownership;
62
+ - lyric or semantic requirement;
63
+ - tempo/beat landmarks and choreography hits;
64
+ - music style in observable arrangement terms;
65
+ - where vocals trade, overlap, or unify;
66
+ - SFX/ambience relationship;
67
+ - whether imperfect live energy or polished studio precision is desired.
68
+
69
+ Do not default to “music belongs in post” when the creative ask explicitly depends on native synchronized music.
70
+
71
+ ## Dance and ensemble performance
72
+
73
+ Define formation, choreography class, beat accents, leader changes, and what counts as synchronized versus individualized. Keep reaction/face rhythms distinct even when bodies hit choreography in unison.
74
+
75
+ For moving vehicles or complex environments, protect balance, handholds, wind, hair/wardrobe response, and occupant positions.
76
+
77
+ ## Ambience/SFX-only lane
78
+
79
+ Use when edit flexibility or dramatic silence matters. Define a continuous environmental bed and timed events. “No score” must not suppress dialogue or requested effects.
80
+
81
+ Use silence as a placed event with duration and dramatic purpose, not an empty unspecified gap.
82
+
83
+ ## Post-production music lane
84
+
85
+ Track the score brief outside the generation prompt:
86
+
87
+ - thematic motif and emotional arc;
88
+ - tempo, meter, instrumentation, entry/exit points;
89
+ - dialogue ducking and impact sync;
90
+ - continuous ambience that glues generated shots;
91
+ - licensing/ownership status.
92
+
93
+ Generate clean picture audio consistent with the edit plan.
94
+
95
+ ## Voice and likeness rights
96
+
97
+ Do not imitate or deploy a real person's voice/likeness without confirmed authorization. Store provenance/permission with the asset. Describe fictional character performance rather than relying on an actor name.
98
+
99
+ ## Audit failures
100
+
101
+ Flag:
102
+
103
+ - multiple mouths owning one line unintentionally;
104
+ - dialogue repeated in both action and audio in conflicting forms;
105
+ - lyrics inconsistent with the source waveform;
106
+ - invented ad-libs or sound from off-screen events meant to remain silent;
107
+ - native music requested but globally prohibited;
108
+ - “no music” interpreted as “no audio”;
109
+ - voice identity rewritten across shots;
110
+ - dialogue/choreography that cannot fit the duration;
111
+ - no clean audio seam for the intended edit.
@@ -0,0 +1,125 @@
1
+ # Blocking, Geography, and Continuity
2
+
3
+ Use this pack for multiple subjects, dialogue, recurring locations, cross-shot continuity, or any result where characters flip, teleport, swap, duplicate, or lose props.
4
+
5
+ ## Build the map before the shot
6
+
7
+ Record stable scene geography independently of camera prose:
8
+
9
+ - landmark names and screen/world relationships;
10
+ - entrances, exits, furniture, hazards, levels, and movement paths;
11
+ - key light direction;
12
+ - one side of the 180-degree line for coverage;
13
+ - character starting marks and recurring prop homes.
14
+
15
+ Tie people to visible landmarks. Prefer “at the stage edge, one stride from the exit door” over an unsupported abstract coordinate. Use measurable distances only when they genuinely help the target model.
16
+
17
+ ## First-frame contract
18
+
19
+ State exactly what frame one contains when occupancy matters:
20
+
21
+ - active character count;
22
+ - screen position and depth layer;
23
+ - body facing and eyeline;
24
+ - contact with landmarks/props;
25
+ - camera side and shot size;
26
+ - motion already in progress or deliberate stillness.
27
+
28
+ Do not automatically add an empty establishing beat. Use a short master/positioning image only when it serves continuity or editorial intent.
29
+
30
+ ## Position grammar
31
+
32
+ For each important subject specify as needed:
33
+
34
+ - screen-left/center/right;
35
+ - foreground/midground/background;
36
+ - facing direction and torso orientation;
37
+ - gaze target;
38
+ - relation/contact to landmark;
39
+ - movement direction/path;
40
+ - hand/prop state;
41
+ - permitted moment of relocation.
42
+
43
+ Body direction and eye direction are separate facts.
44
+
45
+ ## Internal cuts
46
+
47
+ At every cut preserve or deliberately change:
48
+
49
+ - camera side and screen direction;
50
+ - subject marks, facing, eyelines, and posture;
51
+ - wardrobe, hair, wounds, dirt, wetness;
52
+ - prop owner, hand, orientation, damage;
53
+ - environmental debris, smoke, fire, water, practical lights;
54
+ - emotional pressure and breath;
55
+ - audio tail and mouth state.
56
+
57
+ Begin the new shot on a physically possible continuation or explicit temporal/spatial reset. Do not use “continues from before” as the only instruction.
58
+
59
+ ## Across generations
60
+
61
+ Record the approved final state of shot N and compile it into shot N+1. Use the continuity ledger rather than reinterpreting the previous prompt.
62
+
63
+ Default to the full approved prior video plus explicit final-state prose. The video owns motion cadence, performance, ambience, temporal carry, and the actual landing state. Do not automatically extract or attach its last frame merely because the next shot is connected.
64
+
65
+ Add a last-frame or staging still only when exact opening geometry is essential, or after a video-only attempt failed on blocking, axis, eyeline, prop-hand state, or composition. When both references are used, keep their authority non-overlapping: the prior video owns temporal behavior; the still owns only the new shot's opening crop, pose, facing, positions, and geometry.
66
+
67
+ Continuity can intentionally break for ellipsis, montage, dream logic, or a revealed camera-side change, but name the transition in the edit plan.
68
+
69
+ ## Staging/layout references
70
+
71
+ Use a staging reference when prose cannot reliably hold multi-character geometry.
72
+
73
+ ### Diagram construction
74
+
75
+ - Build a front-view composition map from the intended camera side, not a top-down floor plan unless the model has proven it can use one.
76
+ - Use thin muted outlines or another low-style-mass representation.
77
+ - Keep one distinct color per figure/path.
78
+ - Preserve crop, pose, facing, scale, and anchoring furniture.
79
+ - Avoid rendered names/letters if they may bleed into the video.
80
+ - Version every retake from the real source frame, not from a progressively degraded diagram.
81
+
82
+ ### Connector
83
+
84
+ In the video prompt, bind diagram identities textually:
85
+
86
+ ```text
87
+ <staging tag> controls position, pose, facing, and path only.
88
+ BLUE figure = <character tag> at <mark> facing <target>.
89
+ Visual identity, wardrobe, materials, light, and grade come from character/location references.
90
+ ```
91
+
92
+ Attach strong identity/location references before the staging reference when attachment order affects the model.
93
+
94
+ ### Anti-bleed discipline
95
+
96
+ Do not describe the diagram's graphic aesthetics inside the final video prompt. State positively where the final picture's style and identity come from.
97
+
98
+ ## Depth and trajectory helpers
99
+
100
+ Use a depth map when the difficult problem is volume, scale, or occlusion. Use trajectory paths when the problem is a thrown object, bullet, creature, vehicle, camera path, or character cross. Define start, path, end, trigger beat, and owner.
101
+
102
+ ## Count and scale laws
103
+
104
+ For critical counts or scale, write:
105
+
106
+ - the intended count/measure;
107
+ - visible proof in the frame;
108
+ - relationship to a known person/object;
109
+ - what state must not multiply during motion.
110
+
111
+ Avoid contradictory repeated bans. One clear law near the protected action plus a concise final restatement is usually stronger.
112
+
113
+ ## Audit failures
114
+
115
+ Flag:
116
+
117
+ - “left of him” without a stable camera/world anchor;
118
+ - changing map facts between shots;
119
+ - camera crossing the line without showing it;
120
+ - gaze directions that do not meet;
121
+ - prop teleportation or hand swap;
122
+ - asset state reset after a cut;
123
+ - diagram controlling style rather than geometry;
124
+ - overly free camera instruction in a strict geography shot;
125
+ - active references that are not visible or required.
@@ -0,0 +1,101 @@
1
+ # Cinematography
2
+
3
+ Translate creative intent into visible camera behavior. Use model-readable outcomes rather than relying only on equipment names.
4
+
5
+ ## Decide content before lens
6
+
7
+ Match the optical class to what the frame must communicate:
8
+
9
+ | Content | Useful FOV region | Observable result |
10
+ |---|---:|---|
11
+ | Immersive environment/body-near-camera | 84°–107° | strong depth expansion, environment readable, camera physically close |
12
+ | Natural grounded observation | 47°–63° | human perspective, readable space, modest separation |
13
+ | Portrait/dialogue isolation | 18°–29° | stable face, compressed background, focused attention |
14
+ | Distant surveillance/sports/wildlife | 8°–12° | extreme compression, distance, foreground occlusion, atmosphere |
15
+ | Fisheye/extreme subjective world | 135°–180° | explicit distortion and environmental immersion; higher failure risk |
16
+
17
+ Use discrete anchors when the model responds to them. Reinforce extreme optics with physical camera distance, foreground behavior, depth, and visible outcome.
18
+
19
+ ## One content class per beat
20
+
21
+ Do not ask one uninterrupted lens beat to be a macro detail, intimate portrait, and vast geographic panorama simultaneously. Use a cut, motivated camera transition, or looser exploratory instruction.
22
+
23
+ ## Shot design
24
+
25
+ For each shot or segment establish:
26
+
27
+ - shot size and subject priority;
28
+ - camera height, side, and physical distance;
29
+ - operator movement and motivation;
30
+ - focus target and transition;
31
+ - lens/FOV character;
32
+ - negative space and depth layers;
33
+ - how the shot begins and ends editorially.
34
+
35
+ Write camera and subject motion separately.
36
+
37
+ ## Operator behavior
38
+
39
+ Prefer physical language:
40
+
41
+ - locked at eye height;
42
+ - shoulder-mounted with weight and organic corrections;
43
+ - low tracking beside the vehicle;
44
+ - cranes as the reveal expands;
45
+ - camera stays put as subjects pass;
46
+ - orbits only while preserving a named axis/center.
47
+
48
+ Do not confuse travel speed with shake intensity. Preserve explicitly requested restless handheld instead of softening it into subtle drift.
49
+
50
+ ## Single take versus controlled cuts
51
+
52
+ Use a single take when geography, performance, or physical flow benefits from continuity and the action is feasible.
53
+
54
+ Use controlled cuts when content class changes, two simultaneous reactions need coverage, a detail requires an insert, time compresses, or the editorial rhythm is the idea.
55
+
56
+ Do not describe “one continuous take” and then request multiple disconnected framings unless a physically plausible camera path connects them.
57
+
58
+ ## Controlled creative freedom
59
+
60
+ In anchored/exploratory work, name the dimensions the model may vary:
61
+
62
+ ```text
63
+ Keep identity, geography, action order, scale, and final state fixed.
64
+ Vary camera path and shot size within smooth motivated coverage.
65
+ ```
66
+
67
+ Avoid “free camera” when strict eyelines, exact prop contact, or a single-take topology would be endangered.
68
+
69
+ ## Optical signatures
70
+
71
+ Describe signatures through outcomes:
72
+
73
+ - anamorphic: oval/cat-eye bokeh, horizontal defocus character, contained source glows, edge behavior, breathing;
74
+ - spherical: round bokeh, natural geometry, more uniform focus falloff;
75
+ - vintage: lower contrast, imperfect edge response, gentle aberration, texture;
76
+ - clean modern: controlled highlights, crisp detail, restrained artifacts.
77
+
78
+ Do not stack incompatible signatures. If a location asset already carries the optical look, keep the video prompt lighter and protect it from drift.
79
+
80
+ ## Style and palette
81
+
82
+ Treat style as a production bible decision. Express palette through materials, sources, and compositional role, not an arbitrary color list. Place style after identity, geography, action, optics, and light so it cannot overwrite them.
83
+
84
+ Translate a named filmmaker/cinematographer reference into observable characteristics when necessary. Do not depend on the name alone.
85
+
86
+ ## Edit grammar
87
+
88
+ Name cut type only when it matters: hard, match, smash, insert, reverse, whip. Allocate enough pre/post action for the intended edit. Record the final state and the visual or audio hook into the next shot.
89
+
90
+ ## Audit failures
91
+
92
+ Flag:
93
+
94
+ - optics incompatible with content;
95
+ - extreme FOV without supporting visual evidence;
96
+ - compound camera moves competing in one time slice;
97
+ - camera freedom contradicting blocking;
98
+ - unjustified lens drift across internal cuts;
99
+ - stylistic camera language overriding acting or story;
100
+ - impossible travel across the requested duration;
101
+ - a first/last frame that does not support the desired camera move.
@@ -0,0 +1,93 @@
1
+ # Physics and Action
2
+
3
+ Design action as cause, contact, mass, and consequence.
4
+
5
+ ## Feasibility pass
6
+
7
+ Before prompting, simulate the shot mentally:
8
+
9
+ 1. Where is every body/object at frame one?
10
+ 2. What force starts each movement?
11
+ 3. What path, distance, duration, and contact are required?
12
+ 4. What carries inertia or delay?
13
+ 5. What changes state?
14
+ 6. What is the final stable arrangement?
15
+
16
+ If the movement cannot happen physically or editorially in the allotted time, simplify or split it.
17
+
18
+ ## Physical vocabulary
19
+
20
+ Specify only relevant properties:
21
+
22
+ - gravity, mass, inertia, friction, weight transfer, balance;
23
+ - contact point, pressure, collision, follow-through;
24
+ - acceleration/deceleration and motion vector;
25
+ - cloth/hair/feather delay and wind coupling;
26
+ - liquid viscosity, splash origin, wake, residue;
27
+ - particle direction, density, accumulation, heat shimmer;
28
+ - hinge resistance, suspension, vehicle roll, creature wing loading;
29
+ - prop weight, grip, wrist/shoulder response.
30
+
31
+ Keep subject physics, camera physics, and environment physics mutually compatible.
32
+
33
+ ## States, transitions, and action density
34
+
35
+ For difficult action, begin on a strong executable state: already mid-swing, already inverted, already running, already in contact. Put the approach in another shot when it competes with the main event.
36
+
37
+ Use explicit transitions only when the model/mode and duration can carry them. A sequence of clear states with causal bridges is usually more reliable than a long chain of preparatory actions.
38
+
39
+ ## Impossible shots
40
+
41
+ Change the input before overprompting:
42
+
43
+ - bake orientation or damage into a new state asset;
44
+ - supply start/end frames;
45
+ - add a layout or depth reference;
46
+ - use motion reference for choreography;
47
+ - split approach, impact, and aftermath;
48
+ - grant camera freedom while locking physics anchors;
49
+ - design several anchored coverage variations and edit the strongest pieces.
50
+
51
+ ## Scale
52
+
53
+ Protect scale with three signals:
54
+
55
+ 1. real-world measurement or ratio;
56
+ 2. visible frame occupation;
57
+ 3. comparison with a known body/object.
58
+
59
+ Repeat the proof only where scale may reset after a cut.
60
+
61
+ ## Vehicles and creatures
62
+
63
+ Define:
64
+
65
+ - mass and support/contact points;
66
+ - propulsion and response delay;
67
+ - direction and speed class;
68
+ - rider/passenger balance and attachment;
69
+ - moving environment and camera relationship;
70
+ - state of wings, wheels, suspension, harness, doors, or limbs;
71
+ - safe/required clearance from surfaces.
72
+
73
+ For water contact, specify which exact body/object touches, where the rest remains, and the resulting spray/wake origin.
74
+
75
+ ## Transformations and destruction
76
+
77
+ Name material progression, origin, direction, conservation of mass, debris behavior, and what remains recognizable. Separate a transformation into causal beats rather than adjective escalation.
78
+
79
+ ## Failure threshold
80
+
81
+ Track attempts. After repeated variants fail for the same reason, stop wording iteration and change the production design. Common rescues:
82
+
83
+ - one action instead of three;
84
+ - one subject instead of a crowd;
85
+ - a tighter corner instead of a whole room;
86
+ - a new asset state;
87
+ - a different camera angle;
88
+ - a cut at the hard transition;
89
+ - another model or generation mode.
90
+
91
+ ## Audit failures
92
+
93
+ Flag floating mass, frictionless feet, teleporting props, duplicated objects, impossible reach/contact, wings or wheels in contradictory states, water reacting to the wrong body, action without causal force, camera motion that erases the physical read, and time windows overloaded with incompatible actions.
@@ -0,0 +1,108 @@
1
+ # Production Bible and Continuity State
2
+
3
+ Use durable project state for any recurring cast, world, location, prop, voice, visual register, or multi-shot production.
4
+
5
+ ## Sources of truth
6
+
7
+ Maintain these layers:
8
+
9
+ 1. **Production bible** — project-wide creative and technical truth.
10
+ 2. **Asset registry** — every approved character, state, location, prop, vehicle, creature, audio, diagram, and motion reference.
11
+ 3. **Scene card** — dramatic event, geography, active states, coverage plan, and scene-level constants.
12
+ 4. **Shot card** — one generation's exact inputs, intent, timing, final state, and edit relationship.
13
+ 5. **Continuity ledger** — state entering and leaving each approved shot.
14
+ 6. **Generation log** — prompt version, one change, result, verdict, and selected take.
15
+
16
+ Use the JSON/CSV templates in `assets/` as starting artifacts. Keep project-owned files outside this skill folder.
17
+
18
+ ## Production bible
19
+
20
+ Capture only facts that should survive many scenes:
21
+
22
+ - project ID, title, format, runtime target, genre, tone, logline, story goal;
23
+ - period and world laws, including forbidden anachronisms;
24
+ - visual worlds/registers, palette logic, light laws, texture, capture grammar;
25
+ - character IDs, immutable identity anchors, performance engine, voice identity, state variants;
26
+ - location IDs, material/geography anchors, light direction, time/weather variants, available angles;
27
+ - prop/vehicle/creature IDs, scale, material, states, ownership, action limitations;
28
+ - audio policy, score policy, language/accent rules, subtitle policy;
29
+ - default model adapters and verified capability snapshot;
30
+ - naming/version policy and approval gates.
31
+
32
+ Do not store shot-specific improvisation as global truth.
33
+
34
+ ## Asset identity and states
35
+
36
+ Treat identity and state separately.
37
+
38
+ - Identity answers: who/what is this across the project?
39
+ - State answers: what exact version appears now—wardrobe, wetness, wound, dirt, damage, age phase, prop configuration, upside-down orientation?
40
+
41
+ Create a new immutable state asset when a meaningful visible condition changes. Never overload one tag with mutually exclusive states. Preserve prior approved states.
42
+
43
+ Prefer a stable naming pattern:
44
+
45
+ ```text
46
+ @char_<PROJECT>_<name>_<state>_vN
47
+ @loc_<PROJECT>_<name>_<time-weather>_sN_vN
48
+ @prop_<PROJECT>_<name>_<state>_sN_vN
49
+ @vehicle_<PROJECT>_<name>_<view-state>_vN
50
+ @staging_<PROJECT>_<scene-shot>_vN
51
+ @audio_<PROJECT>_<character-or-track>_<section>_vN
52
+ ```
53
+
54
+ Use only legal identifiers supported by the destination platform. One asset has one canonical active tag.
55
+
56
+ ## Scene card
57
+
58
+ Record:
59
+
60
+ - structural goal, open jeopardy, event/reversal/value shift;
61
+ - shared acting direction and each character's motive/task;
62
+ - location variant, map, landmarks, camera side, 180-degree axis, light law;
63
+ - entering character/prop/environment states;
64
+ - planned coverage and edit arc;
65
+ - scene-level audio bed and score intention;
66
+ - unresolved assets or risks.
67
+
68
+ ## Shot card
69
+
70
+ Record:
71
+
72
+ - shot ID and scene ID;
73
+ - editorial job and dramatic beat;
74
+ - generation family/mode, model, duration, aspect, control density;
75
+ - active assets and exact state tags;
76
+ - first frame, blocking, camera side, eyelines, action/timing;
77
+ - acting tasks, dialogue/audio ownership;
78
+ - physics and light constraints;
79
+ - final frame/state and intended cut relationship;
80
+ - prompt path/version, output candidates, approval/QC state.
81
+
82
+ A shot card is the compiler input. The model prompt is a derived artifact, not the source of production truth.
83
+
84
+ ## Continuity ledger
85
+
86
+ Track explicit entering and leaving values for:
87
+
88
+ - character position, facing, eyeline, posture, breath, emotional pressure;
89
+ - wardrobe, hair, dirt, wetness, blood, injury, transformation;
90
+ - prop owner, hand, orientation, open/closed/loaded/broken state;
91
+ - vehicle/creature position, motion vector, damage, occupants;
92
+ - location time, weather, light direction, practical states, debris;
93
+ - camera side, screen direction, lens family, motion state;
94
+ - last spoken line, mouth state, ambience, score/SFX tail.
95
+
96
+ Update only from an approved take or deliberate story change. Do not let an accidental generation artifact become canon without explicit approval.
97
+
98
+ ## Version and change discipline
99
+
100
+ - Never overwrite an approved asset state or prompt version.
101
+ - Change one causal variable per diagnostic iteration whenever possible.
102
+ - Record the observed result, not only “failed.”
103
+ - Preserve the selected take and the exact prompt/model/settings that created it.
104
+ - After repeated identical failures, reclassify the problem as asset, shot design, capability, or model mismatch.
105
+
106
+ ## Compilation rule
107
+
108
+ Compile the current shot from the bible, asset registry, scene card, shot card, and incoming continuity state. Include only active facts. Re-anchor all details the model cannot infer from attached inputs; omit lore the shot cannot show or hear.
@@ -0,0 +1,140 @@
1
+ # Prompt Contracts
2
+
3
+ Compile from approved project/shot state. Keep explanatory notes outside the generation prompt.
4
+
5
+ ## Strict shot contract
6
+
7
+ Use for dialogue, continuity, complex blocking, exact synchronization, or failure recovery.
8
+
9
+ ```text
10
+ SCENE CONTEXT
11
+ <dramatic event, exact active count, duration, editorial job>
12
+
13
+ ACTIVE REFERENCES
14
+ <tag: role, state, action-critical anchors, reference authority>
15
+
16
+ LOCATION MAP
17
+ <landmarks, marks, axis, light direction>
18
+
19
+ FIRST FRAME AND SPATIAL BLOCKING
20
+ <frame-one positions, facing, eyelines, contact, prop/hand state>
21
+
22
+ FORMAT MODE
23
+ <single take or exact cuts, duration, speed, aspect if adapter requires>
24
+
25
+ OPTICS
26
+ <content-matched FOV/signature, focus plan>
27
+
28
+ CAMERA
29
+ <operator position/movement and motivation>
30
+
31
+ ACTION TIMING / SHOTS
32
+ <light executable beats with explicit state bridges>
33
+
34
+ PHYSICS
35
+ <only relevant mass/contact/material laws>
36
+
37
+ LIGHTING
38
+ <source, direction, exposure priority, continuity>
39
+
40
+ ACTING TASKS
41
+ <shared direction and playable tactic/listening behavior>
42
+
43
+ DIALOGUE
44
+ <speaker, exact text, timing, silence/mouth ownership>
45
+
46
+ AUDIO / MUSIC
47
+ <lane, source, ownership, ambience/SFX/score relationship>
48
+
49
+ STYLE
50
+ <project register; do not override identity or geography>
51
+
52
+ POSITIVE LOCKS
53
+ <short restatement of failure-critical facts>
54
+ ```
55
+
56
+ Omit empty sections. Do not duplicate all reference descriptions again in final locks.
57
+
58
+ ## Anchored spectacle contract
59
+
60
+ Use when the model should discover coverage inside fixed truth:
61
+
62
+ ```text
63
+ GOAL / SIGNATURE MOMENT
64
+ ACTIVE REFERENCES AND STATES
65
+ WORLD / GEOGRAPHY ANCHORS
66
+ START STATE
67
+ MANDATORY BEAT ORDER
68
+ PHYSICS / SCALE LAWS
69
+ FINAL STATE
70
+ CAMERA FREEDOM: <dimensions allowed to vary>
71
+ AUDIO LANE
72
+ FAILURE-CRITICAL LOCKS
73
+ ```
74
+
75
+ State what is fixed and what is free. Avoid locking one camera path while simultaneously asking for bold variation.
76
+
77
+ ## Exploratory coverage contract
78
+
79
+ Use for b-roll, montage, music inserts, or alternative coverage:
80
+
81
+ ```text
82
+ EDITORIAL PURPOSE
83
+ IDENTITY / WORLD CONSTANTS
84
+ PERFORMANCE OR ACTION LANGUAGE
85
+ VISUAL / AUDIO REGISTER
86
+ ALLOWED VARIATIONS
87
+ EXCLUSIONS ONLY WHEN FAILURE-CRITICAL
88
+ ```
89
+
90
+ Request separate variations rather than contradictory camera moves inside one take.
91
+
92
+ ## Dialogue contract
93
+
94
+ Include:
95
+
96
+ - current shared event;
97
+ - each speaker's tactic;
98
+ - listener task;
99
+ - exact line ownership and time;
100
+ - voice identity plus scene delivery;
101
+ - breath/reaction tail;
102
+ - eyeline and mouth state;
103
+ - ambience behavior under speech.
104
+
105
+ One short line per clip is often reliable, but do not impose that as a universal model law. Use actual duration/capability and the user's editorial plan.
106
+
107
+ ## Exact-song contract
108
+
109
+ Include:
110
+
111
+ - authoritative source audio tag;
112
+ - performers and non-performers;
113
+ - lyric fragment and waveform-wins rule;
114
+ - choreography/beat hits;
115
+ - breath seam and final pose/state;
116
+ - returned-audio/post-audio policy.
117
+
118
+ ## Workbench patch contract
119
+
120
+ Return:
121
+
122
+ ```text
123
+ ROOT CAUSE
124
+ <one causal owner>
125
+
126
+ PATCH
127
+ <only changed section or exact diff>
128
+
129
+ PRESERVE
130
+ <sections/lines that remain unchanged>
131
+
132
+ EXPECTED PROOF
133
+ <visible/audible outcome that confirms the fix>
134
+ ```
135
+
136
+ Do not rewrite the whole prompt when one block owns the failure.
137
+
138
+ ## Prompt-card routing
139
+
140
+ When the caller supports Kolbo prompt cards, tag the final fenced block with the generation mode selected from inputs. Keep all internal shots of one generation inside one card. Keep multiple separate generations as separate cards only when the user requested multiple outputs or the adapter requires a split.