@milenyumai/film-kit 1.0.0
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/LICENSE +21 -0
- package/README.md +89 -0
- package/build/index.d.ts +2 -0
- package/build/index.js +1 -0
- package/build/lib/configure.d.ts +2 -0
- package/build/lib/configure.js +119 -0
- package/build/lib/defaults.d.ts +2 -0
- package/build/lib/defaults.js +12 -0
- package/build/lib/fs.d.ts +3 -0
- package/build/lib/fs.js +23 -0
- package/build/lib/templates.d.ts +2 -0
- package/build/lib/templates.js +583 -0
- package/build/lib/types.d.ts +25 -0
- package/build/lib/types.js +1 -0
- package/build/postinstall.js +22 -0
- package/content/ARCHITECTURE.md +132 -0
- package/content/FILM-KIT-INFO.md +116 -0
- package/content/MASTER.md +689 -0
- package/content/RULES.md +233 -0
- package/content/agents/prompt-engineer.md +258 -0
- package/content/skills/audio-design/SKILL.md +307 -0
- package/content/skills/coverage-system/SKILL.md +681 -0
- package/content/skills/frame-chaining/SKILL.md +342 -0
- package/content/skills/prompt-structure/SKILL.md +429 -0
- package/content/skills/reference-locking/SKILL.md +303 -0
- package/content/skills/safety-compliance/SKILL.md +242 -0
- package/content/skills/visual-modes/SKILL.md +294 -0
- package/content/workflows/chain.md +106 -0
- package/content/workflows/finish.md +108 -0
- package/content/workflows/generate.md +207 -0
- package/content/workflows/safety-check.md +149 -0
- package/package.json +58 -0
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: visual-modes
|
|
3
|
+
description: Ultra Realism default mode and stylization triggers. Defines quality standards for human appearance, materials, lighting, and anti-AI artifact rules. Includes style mode detection.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Visual Modes System
|
|
7
|
+
|
|
8
|
+
> **Philosophy:** Reality is the default. Style is the exception.
|
|
9
|
+
> **Core Principle:** Ultra Realism unless user EXPLICITLY requests stylization.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## 🎯 DEFAULT: ULTRA REALISM MODE (LOCKED)
|
|
14
|
+
|
|
15
|
+
Apply UNLESS user explicitly requests stylization with keywords.
|
|
16
|
+
|
|
17
|
+
### Style Trigger Keywords
|
|
18
|
+
|
|
19
|
+
If user mentions ANY of these, switch to appropriate style:
|
|
20
|
+
- "anime" / "cartoon" → Animation Style
|
|
21
|
+
- "noir" / "black and white" → Film Noir
|
|
22
|
+
- "vintage" / "retro" → Period Aesthetic
|
|
23
|
+
- "cyberpunk" / "neon" → Cyberpunk
|
|
24
|
+
- "fantasy" / "magical" → Fantasy
|
|
25
|
+
- "dream" / "surreal" → Dreamlike
|
|
26
|
+
- "stylized" / "illustration" → Artistic
|
|
27
|
+
|
|
28
|
+
**No trigger keywords = ULTRA REALISM (default)**
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Ultra Realism Requirements
|
|
33
|
+
|
|
34
|
+
### Human Appearance
|
|
35
|
+
|
|
36
|
+
| Element | Requirements |
|
|
37
|
+
|---------|--------------|
|
|
38
|
+
| **SKIN** | Visible pores, natural imperfections, subsurface scattering, realistic sheen, no airbrushing |
|
|
39
|
+
| **HAIR** | Individual strands visible, natural flyaways, realistic scalp line, wind-affected movement |
|
|
40
|
+
| **EYES** | Accurate iris detail, realistic catchlights, natural moisture, proper lashes |
|
|
41
|
+
| **BODY** | Anatomically correct proportions, natural body language, weight/gravity affect posture |
|
|
42
|
+
| **HANDS** | Five fingers, correct joints, natural positioning, accurate proportions |
|
|
43
|
+
| **FACE** | Slight asymmetry (natural), age-appropriate features, realistic expressions |
|
|
44
|
+
|
|
45
|
+
### Materials & Textures
|
|
46
|
+
|
|
47
|
+
| Material | Requirements |
|
|
48
|
+
|----------|--------------|
|
|
49
|
+
| **FABRIC** | Weave patterns visible, realistic wrinkles at joints, proper drape physics |
|
|
50
|
+
| **METAL** | Correct reflection, fingerprints/smudges where appropriate, realistic patina |
|
|
51
|
+
| **LEATHER** | Natural cracks, wear patterns, authentic aging |
|
|
52
|
+
| **WOOD** | Grain patterns, realistic knots, appropriate polish/weathering |
|
|
53
|
+
| **STONE** | Porosity visible, appropriate weathering, realistic shadows in crevices |
|
|
54
|
+
| **GLASS** | Proper refraction, realistic smudges/droplets, edge distortion |
|
|
55
|
+
|
|
56
|
+
### Military/Historical Materials
|
|
57
|
+
|
|
58
|
+
| Material | Requirements |
|
|
59
|
+
|----------|--------------|
|
|
60
|
+
| **UNIFORM FABRIC** | Period-accurate weave, appropriate wear and dust |
|
|
61
|
+
| **BRASS/BRONZE** | Authentic patina, realistic polish levels |
|
|
62
|
+
| **CANNON METAL** | Heat discoloration, smoke residue, authentic weathering |
|
|
63
|
+
| **AMMUNITION** | Accurate brass casing, weight appearance, realistic handling marks |
|
|
64
|
+
|
|
65
|
+
### Lighting & Atmosphere
|
|
66
|
+
|
|
67
|
+
| Element | Requirements |
|
|
68
|
+
|---------|--------------|
|
|
69
|
+
| **SHADOWS** | Physically correct (hard sun vs soft overcast) |
|
|
70
|
+
| **COLOR TEMPERATURE** | Daylight 5600K, tungsten 3200K, fire warm orange |
|
|
71
|
+
| **ATMOSPHERIC PERSPECTIVE** | Distant objects desaturate, lose contrast |
|
|
72
|
+
| **VOLUMETRIC EFFECTS** | Dust in sunlight, fog density, smoke behavior |
|
|
73
|
+
| **FIRE/EXPLOSION** | Realistic glow, heat distortion, smoke dynamics |
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## Anti-AI Artifacts (PROHIBITED)
|
|
78
|
+
|
|
79
|
+
These artifacts identify AI-generated content. AVOID them absolutely:
|
|
80
|
+
|
|
81
|
+
| Artifact | Description |
|
|
82
|
+
|----------|-------------|
|
|
83
|
+
| **Plastic/waxy skin** | Over-smooth, unrealistic skin texture |
|
|
84
|
+
| **Symmetrical faces** | Perfectly symmetrical = unnatural |
|
|
85
|
+
| **Floating objects** | Physics violations |
|
|
86
|
+
| **Merged fingers** | Fingers fused together |
|
|
87
|
+
| **Extra limbs** | More than normal limbs/fingers |
|
|
88
|
+
| **Limb anomalies** | Wrong angles, impossible positions |
|
|
89
|
+
| **Text/watermarks** | Any on-screen text |
|
|
90
|
+
| **Beauty filter look** | Over-smoothed, porcelain appearance |
|
|
91
|
+
| **Uncanny expressions** | Mechanical, robotic facial movements |
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## IMAGE AVOID LINE (Ultra Realism)
|
|
96
|
+
|
|
97
|
+
Include at end of EVERY image prompt:
|
|
98
|
+
|
|
99
|
+
```
|
|
100
|
+
Avoid: blurry, low-res, noise, jpeg artifacts, motion blur, out of focus, distorted faces, bad anatomy, extra limbs/fingers, deformed hands, mismatched eyes, warped perspective, inconsistent lighting, banding, over-sharpening, plastic skin, waxy skin, airbrushed skin, beauty filter, porcelain doll look, symmetrical face, duplicate people, floating artifacts, on-screen text, captions/subtitles, watermark, logo, UI elements, cartoon/anime style, illustration style, CGI look, video game graphics, 3D render look, artificial lighting, synthetic appearance.
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
## VIDEO AVOID LINE (Ultra Realism)
|
|
106
|
+
|
|
107
|
+
Include at end of EVERY video prompt:
|
|
108
|
+
|
|
109
|
+
```
|
|
110
|
+
Avoid: distorted faces, morphing, bad anatomy, extra limbs/fingers, blurry, flickering, frame drops, inconsistent lighting, unnatural motion, warping, rolling shutter artifacts, camera jitter, on-screen text, captions/subtitles, watermark, logo, cartoon/anime style, CGI motion, synthetic appearance, robotic movement, puppet-like animation, uncanny valley expressions.
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## Scenario-Specific Visual Modes
|
|
116
|
+
|
|
117
|
+
### WAR/MILITARY (Historical)
|
|
118
|
+
|
|
119
|
+
```
|
|
120
|
+
Documentary realism approach. Period-accurate equipment and uniforms.
|
|
121
|
+
Gritty, authentic atmosphere. Smoke, dust, debris as environmental elements.
|
|
122
|
+
High contrast for dramatic effect. Desaturated color palette.
|
|
123
|
+
Focus on human determination and scale of equipment.
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
### DRAMA/INTIMATE
|
|
127
|
+
|
|
128
|
+
```
|
|
129
|
+
Soft, cinematic lighting. Shallow depth of field for emotional focus.
|
|
130
|
+
Warm color grading for emotional scenes. Cool for tension.
|
|
131
|
+
Natural skin tones, no stylization. Authentic expressions.
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### ACTION/THRILLER
|
|
135
|
+
|
|
136
|
+
```
|
|
137
|
+
High energy lighting. Dynamic contrast. Sharp focus on action.
|
|
138
|
+
Slight desaturation for intensity. Motion implies speed without blur in stills.
|
|
139
|
+
Gritty, visceral texture.
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## Ottoman/WWI Period Visuals
|
|
145
|
+
|
|
146
|
+
### Color Palette
|
|
147
|
+
|
|
148
|
+
```
|
|
149
|
+
Desaturated earth tones: khaki, olive, brown, grey
|
|
150
|
+
Accent: Ottoman red (fez), brass/bronze equipment
|
|
151
|
+
Sky: Dramatic clouds, smoke-tinged
|
|
152
|
+
Water: Deep blue-green, foam white
|
|
153
|
+
Fire: Warm orange, realistic glow
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
### Uniform Accuracy
|
|
157
|
+
|
|
158
|
+
```
|
|
159
|
+
Ottoman soldiers: Mustached, red fez (where specified), khaki/olive uniforms
|
|
160
|
+
British Navy: White/blue naval uniforms, peaked caps
|
|
161
|
+
Officers: More ornate uniforms, medals, commanding presence
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
### Environmental Elements
|
|
165
|
+
|
|
166
|
+
```
|
|
167
|
+
Smoke: Volumetric, realistic dispersion, wind-affected
|
|
168
|
+
Dust: Sun-lit particles, authentic battle atmosphere
|
|
169
|
+
Fire: Realistic flame behavior, smoke plumes
|
|
170
|
+
Water spray: Naval combat mist, realistic physics
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
---
|
|
174
|
+
|
|
175
|
+
## Style Mode Templates
|
|
176
|
+
|
|
177
|
+
### If Animation Requested
|
|
178
|
+
|
|
179
|
+
```
|
|
180
|
+
Stylized animation aesthetic. Bold lines, simplified forms.
|
|
181
|
+
Vibrant color palette. Exaggerated expressions for emotion.
|
|
182
|
+
Consistent art style throughout.
|
|
183
|
+
|
|
184
|
+
Avoid: photorealistic elements, realistic textures, natural lighting simulation.
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
### If Noir Requested
|
|
188
|
+
|
|
189
|
+
```
|
|
190
|
+
High contrast black and white. Deep shadows, bright highlights.
|
|
191
|
+
Dramatic lighting angles. Atmospheric fog or smoke.
|
|
192
|
+
1940s aesthetic if period appropriate.
|
|
193
|
+
|
|
194
|
+
Avoid: color, flat lighting, modern elements.
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
### If Vintage/Period Requested
|
|
198
|
+
|
|
199
|
+
```
|
|
200
|
+
Period-appropriate color grading. Film grain appropriate to era.
|
|
201
|
+
Authentic lighting for time period. Costume and production design accuracy.
|
|
202
|
+
|
|
203
|
+
Avoid: modern elements, anachronisms, contemporary styling.
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
---
|
|
207
|
+
|
|
208
|
+
## Quality Assurance Checklist
|
|
209
|
+
|
|
210
|
+
Before finalizing any prompt:
|
|
211
|
+
|
|
212
|
+
- [ ] Realistic skin textures specified?
|
|
213
|
+
- [ ] Materials described with authentic properties?
|
|
214
|
+
- [ ] Lighting physically accurate?
|
|
215
|
+
- [ ] No AI artifacts in requirements?
|
|
216
|
+
- [ ] Avoid line included?
|
|
217
|
+
- [ ] Period accuracy maintained (if historical)?
|
|
218
|
+
- [ ] Atmospheric elements realistic?
|
|
219
|
+
|
|
220
|
+
---
|
|
221
|
+
|
|
222
|
+
## 🎨 Color Continuity Protocol (Renk Sürekliliği)
|
|
223
|
+
|
|
224
|
+
Aynı sahnedeki shot'lar **aynı renk sıcaklığı ve paleti** paylaşmalıdır.
|
|
225
|
+
|
|
226
|
+
### Sahne Bazlı Renk Takibi
|
|
227
|
+
|
|
228
|
+
Her sahne için şunları sabitle:
|
|
229
|
+
|
|
230
|
+
| Parametre | İç Mekan Örneği | Dış Mekan Örneği |
|
|
231
|
+
|-----------|-----------------|------------------|
|
|
232
|
+
| **Color temp** | Warm (3200K, oil lamp) | Cool (5600K, overcast) |
|
|
233
|
+
| **Palette** | Orange-amber tones | Blue-grey tones |
|
|
234
|
+
| **Contrast** | Low-medium (soft shadows) | High (harsh shadows) |
|
|
235
|
+
| **Saturation** | Slightly desaturated | Natural |
|
|
236
|
+
|
|
237
|
+
### Renk Geçiş Kuralları
|
|
238
|
+
|
|
239
|
+
| Geçiş | Renk Stratejisi |
|
|
240
|
+
|-------|----------------|
|
|
241
|
+
| Aynı sahne, farklı açı | **Aynı** renk sıcaklığı — değişiklik YOK |
|
|
242
|
+
| Aynı mekan, farklı zaman | Kademeli geçiş (gündüz→gece = warm→cool) |
|
|
243
|
+
| Farklı mekan | Yeni palette başlat, chain break'te belirt |
|
|
244
|
+
| Flashback | Ayrı palette (bkz. aşağı) |
|
|
245
|
+
|
|
246
|
+
### Prompt'ta Renk Kontrolü
|
|
247
|
+
|
|
248
|
+
```
|
|
249
|
+
✅ DOĞRU (renk tutarlı):
|
|
250
|
+
"Warm amber lighting from oil lamp, color temperature 3200K,
|
|
251
|
+
slightly desaturated period look, shadows deep orange-brown."
|
|
252
|
+
|
|
253
|
+
❌ YANLIŞ (renk belirtilmemiş):
|
|
254
|
+
"Interior scene with some lighting."
|
|
255
|
+
(Model her shot'ta farklı renk seçebilir)
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
---
|
|
259
|
+
|
|
260
|
+
## 🌅 Magic Hour / Golden Hour Protokolü
|
|
261
|
+
|
|
262
|
+
Dış mekan çekimlerinde zaman bazlı ışık rehberi:
|
|
263
|
+
|
|
264
|
+
| Zaman | İngilizce | Prompt Tanımı | Renk |
|
|
265
|
+
|-------|-----------|---------------|------|
|
|
266
|
+
| **Altın saat** | Golden Hour | "Low sun, long warm shadows, golden backlight" | Warm amber |
|
|
267
|
+
| **Mavi saat** | Blue Hour | "Pre-dawn/post-sunset, deep blue sky, no direct sun" | Cool blue |
|
|
268
|
+
| **Öğle** | High Noon | "Harsh overhead sun, minimal shadows, bleached" | Neutral-warm |
|
|
269
|
+
| **Gece** | Night | "Moonlight, practical lights only, deep shadows" | Cool blue-silver |
|
|
270
|
+
| **Gündüz-gece** | Day-for-Night | "Underexposed, blue-tinted, simulated moonlight" | Heavy cool blue |
|
|
271
|
+
|
|
272
|
+
---
|
|
273
|
+
|
|
274
|
+
## 🌀 Flashback / Rüya Görsel Ayrımı
|
|
275
|
+
|
|
276
|
+
Flashback ve rüya sahneleri **görsel olarak mevcut zamandan FARKLI** olmalıdır.
|
|
277
|
+
|
|
278
|
+
| Mod | Görsel Fark | Prompt Eklentisi |
|
|
279
|
+
|-----|------------|------------------|
|
|
280
|
+
| **Flashback** | Desatüre, sıcak, hafif soft focus | "Slightly desaturated warm tones, subtle soft glow, dreamlike haze at edges" |
|
|
281
|
+
| **Rüya** | Aşırı soft, puslu, düşük kontrast | "Ethereal soft focus, heavy lens diffusion, low contrast, surreal glow" |
|
|
282
|
+
| **Anı (Memory)** | Vintage film grain, sıcak | "Vintage 16mm film grain, warm amber tint, slightly overexposed highlights" |
|
|
283
|
+
| **Hayal (Fantasy)** | Yüksek saturasyon, canlı | "Vivid saturated colors, slightly hyperreal, crisp dreamy quality" |
|
|
284
|
+
|
|
285
|
+
**Chain Break ile birlikte kullan:**
|
|
286
|
+
```
|
|
287
|
+
CHAIN BREAK - Flashback (10 years ago)
|
|
288
|
+
Transition: CROSS-DISSOLVE
|
|
289
|
+
Visual Mode: FLASHBACK → desaturated warm tones, soft glow, film grain
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
---
|
|
293
|
+
|
|
294
|
+
> **Remember:** Ultra Realism is the default. Every deviation must be intentional. Quality is non-negotiable. Every element must pass the "could this be real footage?" test. When in doubt, add more realistic detail.
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Continue generating from previous shots. Reads last shot file to maintain perfect chain continuity.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /chain - Continue From Previous (File-Based)
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Task
|
|
12
|
+
|
|
13
|
+
Continue generating shots by reading the last saved shot file for perfect continuity.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Steps
|
|
18
|
+
|
|
19
|
+
### 1. Find Last Shot
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
READ $OUTPUT_DIR/_index.md
|
|
23
|
+
→ Find highest shot number (e.g., SHOT05)
|
|
24
|
+
→ Note its status (complete/incomplete)
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### 2. Read Last Shot Details
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
READ $OUTPUT_DIR/shots/SHOT[last].md
|
|
31
|
+
→ Extract SON FRAME (end frame) description
|
|
32
|
+
→ Note any character/location details
|
|
33
|
+
→ Understand current scene context
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### 3. Continue Generation
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
Next shot = SHOT[last + 1]
|
|
40
|
+
Chain status = "CHAINED from SHOT[last]_END"
|
|
41
|
+
First frame = "→ Use SHOT[last]_END as first frame"
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### 4. Write New Shots
|
|
45
|
+
|
|
46
|
+
Continue with same logic as /generate:
|
|
47
|
+
- Write each shot to `$OUTPUT_DIR/shots/SHOT[NN].md`
|
|
48
|
+
- Update `$OUTPUT_DIR/_index.md`
|
|
49
|
+
- Maintain chain continuity
|
|
50
|
+
- Each SHOTNN.md includes main shot + coverage (ONE FILE PER SHOT)
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## Usage
|
|
55
|
+
|
|
56
|
+
| Command | Action |
|
|
57
|
+
|---------|--------|
|
|
58
|
+
| `/chain` | Continue with previously set batch size |
|
|
59
|
+
| `/chain 3` | Continue with 3 more shots |
|
|
60
|
+
| `/chain all` | Generate remaining shots |
|
|
61
|
+
| `devam et` | Same as /chain |
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Chain Break Detection
|
|
66
|
+
|
|
67
|
+
If scenario indicates location/time change:
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
1. Declare CHAIN BREAK in new shot file
|
|
71
|
+
2. Generate NEW first frame (not reusing previous)
|
|
72
|
+
3. Note reason: "CHAIN BREAK - [Location change / Time jump / etc.]"
|
|
73
|
+
4. Resume chaining from new shot's end frame
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## File Update
|
|
79
|
+
|
|
80
|
+
After each continuation:
|
|
81
|
+
|
|
82
|
+
### Update _index.md
|
|
83
|
+
|
|
84
|
+
```markdown
|
|
85
|
+
## Shot Index
|
|
86
|
+
|
|
87
|
+
| Shot | Status | Chain | Description |
|
|
88
|
+
|------|--------|-------|-------------|
|
|
89
|
+
| SHOT01 | ✅ | FIRST | Bunker interior |
|
|
90
|
+
| SHOT02 | ✅ | 🔗 SHOT01 | Officer on phone |
|
|
91
|
+
| SHOT03 | ✅ | 🔗 SHOT02 | Soldiers rising |
|
|
92
|
+
| SHOT04 | ✅ | 🔗 SHOT03 | Rush to positions |
|
|
93
|
+
| SHOT05 | ✅ | 🔗 SHOT04 | Artillery ready |
|
|
94
|
+
| SHOT06 | 🔄 | 🔗 SHOT05 | [In progress...] |
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## Error Recovery
|
|
100
|
+
|
|
101
|
+
| Issue | Solution |
|
|
102
|
+
|-------|----------|
|
|
103
|
+
| No previous shots found | Start with /generate first |
|
|
104
|
+
| Last shot incomplete | Complete it before continuing |
|
|
105
|
+
| Chain confusion | Read last 2-3 shot files for context |
|
|
106
|
+
| User wants to redo | "SHOT05'i yeniden yap" → Overwrite SHOT05.md |
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Finalize project, compile all shots, create final summary.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /finish - Complete Project
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Task
|
|
12
|
+
|
|
13
|
+
Finalize the shot generation project and create comprehensive summary.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Steps
|
|
18
|
+
|
|
19
|
+
### 1. Validate All Shots
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
READ all files in $OUTPUT_DIR/shots/
|
|
23
|
+
→ Check each shot has main shot (İLK FRAME, SON FRAME, VİDEO)
|
|
24
|
+
→ Check each shot has coverage (2-3 sub-shots with image + video each)
|
|
25
|
+
→ Verify chain continuity
|
|
26
|
+
→ Verify Avoid line on EVERY prompt (main + coverage)
|
|
27
|
+
→ Flag any incomplete shots
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
### 2. Run Safety Check
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
FOR each shot file:
|
|
34
|
+
→ Check for celebrity names → Flag if found
|
|
35
|
+
→ Verify reference locks → Flag if missing
|
|
36
|
+
→ Check avoid lines → Flag if missing
|
|
37
|
+
→ Check coverage presence → Flag if missing
|
|
38
|
+
→ Check audio direction blocks → Flag if incomplete
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### 3. Create Final Summary
|
|
42
|
+
|
|
43
|
+
Write to `$OUTPUT_DIR/FINAL-SUMMARY.md`:
|
|
44
|
+
|
|
45
|
+
```markdown
|
|
46
|
+
# Project Summary
|
|
47
|
+
|
|
48
|
+
## Overview
|
|
49
|
+
- **Total Main Shots:** [N]
|
|
50
|
+
- **Total Coverage Shots:** [M]
|
|
51
|
+
- **Total Production Shots:** [N + M]
|
|
52
|
+
- **Total Duration:** [N × duration]s (main only)
|
|
53
|
+
- **Genre:** [Detected genre]
|
|
54
|
+
- **Characters:** [List with ref status]
|
|
55
|
+
|
|
56
|
+
## Shot List
|
|
57
|
+
|
|
58
|
+
| # | Duration | Chain | Coverage | Scene Description |
|
|
59
|
+
|---|----------|-------|----------|-------------------|
|
|
60
|
+
| SHOT01 | 8s | FIRST | A+B | [Description] |
|
|
61
|
+
| SHOT02 | 8s | 🔗 SHOT01 | A+B+C | [Description] |
|
|
62
|
+
...
|
|
63
|
+
|
|
64
|
+
## Reference Images Used
|
|
65
|
+
- Character 1: [ref status]
|
|
66
|
+
- Character 2: [ref status]
|
|
67
|
+
- Object/Prop: [ref status]
|
|
68
|
+
|
|
69
|
+
## Chain Breaks
|
|
70
|
+
- SHOT08: Location change to British ship
|
|
71
|
+
- SHOT15: Time jump to next morning
|
|
72
|
+
|
|
73
|
+
## Ready for Flow
|
|
74
|
+
All [N] shots are ready for Google Flow.
|
|
75
|
+
Copy prompts from $OUTPUT_DIR/shots/SHOTNN.md files.
|
|
76
|
+
|
|
77
|
+
Generated: [timestamp]
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### 4. Notify User
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
"✅ Proje tamamlandı!
|
|
84
|
+
|
|
85
|
+
📁 $OUTPUT_DIR/FINAL-SUMMARY.md oluşturuldu
|
|
86
|
+
📂 $OUTPUT_DIR/shots/ klasöründe [N] shot dosyası var
|
|
87
|
+
Her dosya: ana shot + 2-3 coverage (image + video)
|
|
88
|
+
|
|
89
|
+
Sonraki adımlar:
|
|
90
|
+
1. Her shot dosyasını aç
|
|
91
|
+
2. Promptları Google Flow'a kopyala
|
|
92
|
+
3. Referans görsellerini yükle
|
|
93
|
+
4. Üret!
|
|
94
|
+
|
|
95
|
+
İyi çekimler! 🎬"
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## Error Handling
|
|
101
|
+
|
|
102
|
+
| Issue | Action |
|
|
103
|
+
|-------|--------|
|
|
104
|
+
| Incomplete shots found | List them, offer to complete |
|
|
105
|
+
| Safety issues found | List violations, offer to fix |
|
|
106
|
+
| Chain breaks not declared | Flag and ask for confirmation |
|
|
107
|
+
| Missing coverage | Generate missing coverage for flagged shots |
|
|
108
|
+
| Missing audio direction | Add full audio block to flagged video prompts |
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Generate shot prompts from scenario and SAVE TO FILES. Auto-detects optimal batch size. Creates organized output structure.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /generate - Generate Shot Prompts (File Output)
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Task
|
|
12
|
+
|
|
13
|
+
Generate production-ready shot prompts from scenario and **SAVE TO FILES**.
|
|
14
|
+
|
|
15
|
+
## Scenario Source
|
|
16
|
+
|
|
17
|
+
- Preferred scenario file: `$SCENARIO_HINT`
|
|
18
|
+
- If an active/selected editor file exists, use it first.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Output Directory Structure
|
|
23
|
+
|
|
24
|
+
```
|
|
25
|
+
$OUTPUT_DIR/
|
|
26
|
+
├── project-info.md # Scenario, characters, settings
|
|
27
|
+
├── shots/
|
|
28
|
+
│ ├── SHOT01.md # First shot (main + coverage)
|
|
29
|
+
│ ├── SHOT02.md # Second shot
|
|
30
|
+
│ ├── SHOT03.md # ...continues
|
|
31
|
+
│ └── ...
|
|
32
|
+
└── _index.md # Shot list with status
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Steps
|
|
38
|
+
|
|
39
|
+
### 1. Scenario Analysis (Senaryo Analizi)
|
|
40
|
+
|
|
41
|
+
1. Read scenario type → **Auto-detect genre**
|
|
42
|
+
2. Identify principal characters and locations
|
|
43
|
+
3. **AUTO-ANONYMOUS:** Tüm gerçek isimleri otomatik fiziksel tanıma çevir
|
|
44
|
+
4. **AUTO-SAFETY:** Güvenlik filtrelerine takılacak içeriği proaktif reframe et
|
|
45
|
+
5. Determine total shot count (based on action beats)
|
|
46
|
+
6. **Emotional Arc:** Her shot'a gerilim seviyesi (1-5) ata
|
|
47
|
+
7. Create `$OUTPUT_DIR/project-info.md` with character descriptions, settings, and arc mapping
|
|
48
|
+
8. Ask user for batch preference (if `$OUTPUT_DIR/` doesn't exist, create it and `$OUTPUT_DIR/shots/`, and `$OUTPUT_DIR/_index.md` empty shot list)
|
|
49
|
+
|
|
50
|
+
### 2. Batch Strategy
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
Read scenario → Count total shots needed
|
|
54
|
+
│
|
|
55
|
+
├── 1-10 shots → Generate ALL at once
|
|
56
|
+
├── 11-30 shots → Generate in batches of 5
|
|
57
|
+
└── 30+ shots → Generate in batches of 3 (more control)
|
|
58
|
+
|
|
59
|
+
Report: "Bu senaryoda yaklaşık [N] shot var. [Batch/Tümü] şeklinde ilerleyeceğim."
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### 3. Shot Generation (With Mandatory Coverage)
|
|
63
|
+
|
|
64
|
+
For EACH shot:
|
|
65
|
+
|
|
66
|
+
1. **Analyze scene type** (Dialogue / Action / Emotional / Establishing)
|
|
67
|
+
2. **Dramaturji analizi** (Dialogue sahneleri için):
|
|
68
|
+
- Karakterlerin amacı, engeli, riski belirle
|
|
69
|
+
- Alt metin ve beat dönüşlerini planla
|
|
70
|
+
- Oyunculuk davranışlarını prompt'a göm (MASTER.md TIER 0.5)
|
|
71
|
+
3. **Generate main shot prompts** (İLK FRAME, SON FRAME, VİDEO)
|
|
72
|
+
- Image prompts: MIN 60 words + Avoid line
|
|
73
|
+
- Video prompts: MIN 80 words + Audio direction + Avoid line
|
|
74
|
+
- **🇹🇷 Türkçe özet:** Her shot başlığına 1 cümlelik Türkçe özet yaz
|
|
75
|
+
4. **Select coverage types** based on scene type:
|
|
76
|
+
- Dialogue → Reaction (A) + OTS (B)
|
|
77
|
+
- Action → Insert (A) + ECU (B)
|
|
78
|
+
- Emotional → Reaction (A) + ECU (B)
|
|
79
|
+
- Establishing → Wide (A) + Cutaway (B)
|
|
80
|
+
5. **30° kuralı kontrolü:** Coverage açıları ana shot'tan en az 30° farklı mı?
|
|
81
|
+
6. **Seed stratejisi:** Aynı sahne → aynı seed; farklı lokasyon → farklı seed
|
|
82
|
+
7. **Generate coverage prompts** (2-3 per main shot)
|
|
83
|
+
- **❗ Coverage = ana shot kalitesinde: MIN 60 kelime**
|
|
84
|
+
- Her coverage için de 🇹🇷 Türkçe özet ekle
|
|
85
|
+
8. **Write to file:** `$OUTPUT_DIR/shots/SHOT[NN].md` (includes main + coverage)
|
|
86
|
+
9. **Update index:** Add to `$OUTPUT_DIR/_index.md`
|
|
87
|
+
10. **Chain tracking:** Note chain status in file
|
|
88
|
+
|
|
89
|
+
### 4. File Format Per Shot (With Coverage)
|
|
90
|
+
|
|
91
|
+
Each `$OUTPUT_DIR/shots/SHOTNN.md` file:
|
|
92
|
+
|
|
93
|
+
```markdown
|
|
94
|
+
# SHOT[NN] | [Duration]s | 🎭 Tension: [1-5]
|
|
95
|
+
|
|
96
|
+
## 🇹🇷 Türkçe Özet
|
|
97
|
+
[1-2 cümle Türkçe açıklama]
|
|
98
|
+
|
|
99
|
+
## Chain Status
|
|
100
|
+
🔗 [FIRST SHOT / CHAINED from SHOT[prev]_END / CHAIN BREAK - Reason]
|
|
101
|
+
|
|
102
|
+
## Main Shot
|
|
103
|
+
|
|
104
|
+
### İLK FRAME (SHOTNN_START)
|
|
105
|
+
[If chained: "→ Use SHOT[prev]_END as first frame"]
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
[Image prompt - if first shot or chain break]
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### SON FRAME (SHOTNN_END)
|
|
112
|
+
|
|
113
|
+
```
|
|
114
|
+
[Image prompt - ALWAYS]
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### VİDEO
|
|
118
|
+
|
|
119
|
+
```
|
|
120
|
+
[Video prompt with audio direction]
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## Coverage Shots (Kurgu Detayları)
|
|
126
|
+
|
|
127
|
+
### SHOT[NN]A - [Type] | [Duration]s | [Icon] [Label]
|
|
128
|
+
|
|
129
|
+
🇹🇷 [Türkçe coverage özeti]
|
|
130
|
+
|
|
131
|
+
```
|
|
132
|
+
[Standalone image prompt — min 60 words + Avoid line]
|
|
133
|
+
```
|
|
134
|
+
```
|
|
135
|
+
[Video prompt with audio direction — min 60 words + Avoid line]
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
### SHOT[NN]B - [Type] | [Duration]s | [Icon] [Label]
|
|
141
|
+
|
|
142
|
+
🇹🇷 [Türkçe coverage özeti]
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
[Standalone image prompt — min 60 words + Avoid line]
|
|
146
|
+
```
|
|
147
|
+
```
|
|
148
|
+
[Video prompt with audio direction — min 60 words + Avoid line]
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
### SHOT[NN]C - [Type] | [Duration]s | [Icon] [Label] (optional)
|
|
154
|
+
|
|
155
|
+
🇹🇷 [Türkçe coverage özeti]
|
|
156
|
+
|
|
157
|
+
```
|
|
158
|
+
[Standalone image prompt — min 60 words + Avoid line]
|
|
159
|
+
```
|
|
160
|
+
```
|
|
161
|
+
[Video prompt with audio direction — min 60 words + Avoid line]
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
---
|
|
165
|
+
Generated: [timestamp]
|
|
166
|
+
Total: 1 main + [N] coverage = [N+1] production shots
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
## Batch Logic (Recommended)
|
|
172
|
+
|
|
173
|
+
| Scenario Size | Strategy | Why |
|
|
174
|
+
|---------------|----------|-----|
|
|
175
|
+
| **1-10 shots** | All at once | Fast, coherent |
|
|
176
|
+
| **11-30 shots** | 5 per batch | Balanced control |
|
|
177
|
+
| **30+ shots** | 3 per batch | Quality over speed |
|
|
178
|
+
| **User says "tek tek"** | 1 at a time | Maximum control |
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## After Generation
|
|
183
|
+
|
|
184
|
+
Notify user:
|
|
185
|
+
```
|
|
186
|
+
"[N] shot oluşturuldu ve $OUTPUT_DIR/shots/ klasörüne kaydedildi.
|
|
187
|
+
Her shot için 2-3 coverage eklenmiştir.
|
|
188
|
+
|
|
189
|
+
Özet:
|
|
190
|
+
- SHOT01: [brief description] + [N] coverage (SHOT01A, SHOT01B, SHOT01C)
|
|
191
|
+
- SHOT02: [brief description] + [N] coverage (SHOT02A, SHOT02B)
|
|
192
|
+
...
|
|
193
|
+
|
|
194
|
+
Toplam: [N] ana shot + [M] coverage = [N+M] prodüksiyon çekimi
|
|
195
|
+
|
|
196
|
+
Devam etmek için: 'devam et' veya '/chain'
|
|
197
|
+
Tamamlandı mı: 'bitti' veya '/finish'"
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## Resume Capability
|
|
203
|
+
|
|
204
|
+
When user says "devam et":
|
|
205
|
+
1. READ `$OUTPUT_DIR/_index.md` → Find last shot number
|
|
206
|
+
2. READ `$OUTPUT_DIR/shots/SHOT[last].md` → Get end frame details
|
|
207
|
+
3. CONTINUE from SHOT[last+1] with proper chaining
|