@milenyumai/film-kit 1.0.2 → 1.0.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/README.md CHANGED
@@ -1,89 +1,95 @@
1
- # ShotForge Agent Configuration
1
+ # Film-Kit: Hollywood-Standard Cinematic Prompt Engineering
2
2
 
3
- ShotForge artık bir **agent configuration npm paketi**dir.
4
- Amaç: Cursor, Claude Code, VS Code Copilot ve Google Antigravity için proje içinde doğru kural/skill dosyalarını otomatik oluşturmak.
3
+ **Film-Kit**, Google Veo 3.1 ve Flow için optimize edilmiş, profesyonel "Prompt Engineering" ajanlarını (Claude Code, Cursor) projenize kuran bir araç setidir.
5
4
 
6
- Bu paket **shot üreten bir CLI değildir**.
7
- Editördeki AI ajanlarına `/generate` davranışını öğreten yapı dosyalarını yazar.
5
+ İki versiyonu vardır:
6
+ 1. **Film-Kit (Core):** Tek ajanlı, manuel kontrollü üretim.
7
+ 2. **Film-Kit Multi (Pro):** Çok ajanlı, paralel üretim ve uzman denetimi.
8
8
 
9
- ## Ne Oluşturur?
9
+ ---
10
10
 
11
- ### Cursor
12
- - `./.cursorrules` (legacy)
13
- - `./.cursor/rules/global.mdc`
14
- - (ortak sözleşme) `./AGENTS.md`
15
-
16
- ### Claude Code
17
- - `./CLAUDE.md`
18
- - `./.claude/CLAUDE.md`
19
- - `./.claude/rules/generate-flow.md`
20
- - `./.claude/rules/output-contract.md`
21
- - `./.claude/settings.json`
22
- - `./.claude/settings.local.json`
23
-
24
- ### VS Code Copilot
25
- - `./.github/copilot-instructions.md`
26
- - `./.github/instructions/shotforge.instructions.md`
27
-
28
- ### Google Antigravity
29
- - `./.agent/skills/shotforge-generate/SKILL.md`
30
-
31
- ## Kurulum
11
+ ## 📦 Paket 1: Film-Kit (Core)
12
+ **Kullanım:** Bireysel projeler, öğrenme, <10 shot senaryolar.
32
13
 
14
+ ### Kurulum (Tek Komut)
15
+ Boş bir klasörde terminali açın:
33
16
  ```bash
34
- npm i -D @your-scope/shotforge-agent-config
17
+ npx @milenyumai/film-kit init
35
18
  ```
36
19
 
37
- Kurulumdan sonra paket `postinstall` ile proje köküne dosyaları yazmaya çalışır.
38
-
39
- ## Opsiyonel Proje Konfigürasyonu
40
-
41
- Proje köküne `shotforge-agent.config.json` koyarsan varsayılanları özelleştirebilirsin:
42
-
43
- ```json
44
- {
45
- "outputDir": "./shots",
46
- "scenarioHint": "scenario.md",
47
- "platforms": ["cursor", "claude", "copilot", "antigravity"],
48
- "overwrite": false,
49
- "includeAgentsMd": true
50
- }
20
+ ### Kullanım
21
+ Claude Code içinde:
22
+ ```text
23
+ /generate
51
24
  ```
25
+ Tek bir ajan ("Prompt Engineer") senaryoyu okur, analiz eder ve shotları sırayla üretir.
52
26
 
53
- ## Programatik Kullanım (CLI yok)
27
+ **Özellikler:**
28
+ - Veo 3.1 Prompt Flow (Subject > Action > Camera > Light)
29
+ - Profesyonel Audio Blocks (Dialogue, SFX, Mix)
30
+ - Zorunlu Avoid Line
31
+ - Auto-Safety & Auto-Anonymous
54
32
 
55
- İstersen Node içinden direkt çağırabilirsin:
33
+ ---
56
34
 
57
- ```ts
58
- import { configureAgents } from "@your-scope/shotforge-agent-config";
35
+ ## 🚀 Paket 2: Film-Kit Multi (Pro)
36
+ **Kullanım:** Profesyonel stüdyo işleri, uzun metraj, 10+ shot senaryolar.
59
37
 
60
- await configureAgents({
61
- rootDir: process.cwd(),
62
- outputDir: "./shots",
63
- scenarioHint: "scenario.md",
64
- platforms: ["cursor", "claude", "copilot", "antigravity"],
65
- overwrite: false
66
- });
38
+ ### Kurulum (Tek Komut)
39
+ Boş bir klasörde terminali açın:
40
+ ```bash
41
+ npx @milenyumai/film-kit-multi init
67
42
  ```
68
43
 
69
- ## Editör Davranış Sözleşmesi
70
-
71
- Yazılan dosyalar editör AI'ına şu kontratı verir:
72
- - Kullanıcı `/generate` dediğinde seçili/aktif senaryo dosyasını oku.
73
- - `./shots/bible.md` ve `./shots/S01.md ...` formatında markdown çıktısı üret.
74
- - Shot dosyalarında prompt + cinematography + continuity bilgisi olsun.
75
-
76
- ## Global Skill Notu (Antigravity)
77
-
78
- Bu paket varsayılan olarak sadece workspace içine yazar.
79
- Global skill yolu bilgi amaçlı:
80
- - `~/.gemini/antigravity/skills/<skill-adı>/SKILL.md`
81
-
82
- ## Geliştirme
83
-
84
- ```bash
85
- npm install
86
- npm run typecheck
87
- npm test
88
- npm run build
44
+ ### Kullanım
45
+ Claude Code içinde:
46
+ ```text
47
+ /generate-multi
89
48
  ```
49
+ **Lead Director** ajanı ekibi kurar ve yönetir.
50
+
51
+ **Süreç:**
52
+ 1. **Planning:** Lead Director senaryoyu analiz eder, `team-plan.json` oluşturur.
53
+ 2. **Casting:** İhtiyaca göre 5'e kadar **Shot Generator** ajanı spawn eder.
54
+ 3. **Execution:** Ajanlar shotları (Min 60 kelime + coverage) paralel üretir.
55
+ 4. **Validation:** 3 Uzman Ajan devreye girer:
56
+ - `continuity-editor`: Zincirleme (chain) hatalarını yakalar.
57
+ - `safety-auditor`: Güvenlik ve anonimlik ihlallerini tarar.
58
+ - `delivery-editor`: Dosya bütünlüğünü ve formatı denetler.
59
+ 5. **Recovery:** Hata varsa `/recover` workflow'u otomatik düzeltir.
60
+
61
+ ---
62
+
63
+ ## ⚡ Komut Referansı (Slash Commands)
64
+
65
+ | Komut | Paket | İşlev |
66
+ |-------|-------|-------|
67
+ | `/generate` | Core | Tek ajanla sıralı üretim başlatır. |
68
+ | `/generate-multi` | Multi | Multi-ajan takımıyla paralel üretim başlatır. |
69
+ | `/chain` | Her İkisi | Son üretilen shot'ın bitiş karesinden devam eder. |
70
+ | `/finish` | Her İkisi | Projeyi sonlandırır ve `FINAL-SUMMARY.md` yazar. |
71
+ | `/recover` | Multi | Başarısız batch'leri veya kalite kontrol takılanları onarır. |
72
+ | `/safety-check` | Her İkisi | Manuel güvenlik taraması yapar. |
73
+
74
+ ---
75
+
76
+ ## 🆚 Karşılaştırma
77
+
78
+ | Özellik | Film-Kit (Core) | Film-Kit Multi (Pro) |
79
+ |---------|-----------------|----------------------|
80
+ | **Mimari** | Tek Ajan | Lead + Teammates + Specialists |
81
+ | **Hız (20 Shot)** | ~60 dk | ~20 dk (Paralel) |
82
+ | **Tutarlılık** | Manuel Kontrol | `continuity-editor` Denetimi |
83
+ | **Güvenlik** | Prompt İçi Filtre | `safety-auditor` Taraması |
84
+ | **Planlama** | Yok | `team-plan.json` Kontratlı |
85
+ | **Recovery** | Manuel | Otomatik `/recover` |
86
+
87
+ ---
88
+
89
+ ## 🛠 Gereksinimler
90
+ - **Node.js:** v18+
91
+ - **Claude Code:** `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` (Sadece Multi için)
92
+ - **Editör:** VS Code, Cursor veya Terminal
93
+
94
+ ## 📄 Lisans
95
+ MIT
package/build/cli.js CHANGED
@@ -2,10 +2,14 @@
2
2
  import { configureAgents } from "./lib/configure.js";
3
3
  const args = process.argv.slice(2);
4
4
  const command = args[0];
5
+ const overwrite = args.includes("--overwrite") || args.includes("-f");
5
6
  if (command === "init") {
6
7
  console.log("🎬 Film-Kit: Configuring AI agents...\n");
7
8
  try {
8
- const result = await configureAgents({ rootDir: process.cwd() });
9
+ const result = await configureAgents({
10
+ rootDir: process.cwd(),
11
+ overwrite
12
+ });
9
13
  if (result.written.length > 0) {
10
14
  console.log(`✅ Files written: ${result.written.length}`);
11
15
  result.written.forEach(f => console.log(` ${f}`));
@@ -26,7 +30,8 @@ else {
26
30
  🎬 @milenyumai/film-kit — Hollywood-grade prompt engineering for Veo 3.1
27
31
 
28
32
  Usage:
29
- npx @milenyumai/film-kit init Configure AI agents in current directory
33
+ npx @milenyumai/film-kit init Configure AI agents in current directory
34
+ npx @milenyumai/film-kit init --overwrite Force update existing .agent content files
30
35
 
31
36
  Or install as a dependency (auto-configures on install):
32
37
  npm install --save-dev @milenyumai/film-kit
@@ -57,12 +57,16 @@ All rules, skills, and workflows are located under \`.agent/\`.
57
57
  | \`/generate\` | \`.agent/workflows/generate.md\` |
58
58
  | \`/chain\` | \`.agent/workflows/chain.md\` |
59
59
  | \`/safety-check\` | \`.agent/workflows/safety-check.md\` |
60
+ | \`/recover\` | \`.agent/workflows/recover.md\` |
60
61
  | \`/finish\` | \`.agent/workflows/finish.md\` |
61
62
 
62
63
  ## Goal
63
64
  When the user asks \`/generate\`, convert the scenario into:
64
65
  - \`${config.outputDir}/project-info.md\` — Characters, settings, arc mapping
66
+ - \`${config.outputDir}/shot-plan.json\` — Single-agent plan + policy contract
65
67
  - \`${config.outputDir}/shots/SHOT01.md, SHOT02.md, ...\` — Production shot files (with coverage included)
68
+ - \`${config.outputDir}/reports/SAFETY-REPORT.md\` — Safety gate result
69
+ - \`${config.outputDir}/reports/DELIVERY-REPORT.md\` — Delivery gate result
66
70
  - \`${config.outputDir}/_index.md\` — Shot list with chain & status tracking
67
71
 
68
72
  ## Input
@@ -81,6 +85,7 @@ Each \`SHOTNN.md\` is a **single file** containing ALL shot details:
81
85
 
82
86
  ## Critical Rules
83
87
  - **AUTO-ANONYMOUS:** Replace ALL real person names with physical descriptions automatically
88
+ - **Name Policy:** Visual prompts must stay anonymous. Dialogue naming follows \`shot-plan.json\` policy.
84
89
  - **AUTO-SAFETY:** Proactively reframe content that may trigger safety filters
85
90
  - **Frame Chaining:** Last frame of SHOT[N] = First frame of SHOT[N+1]
86
91
  - **Coverage Mandatory:** Every main shot includes 2-3 coverage sub-shots in same file
@@ -107,20 +112,23 @@ Before generating ANY prompts, read the appropriate skill files from .agent/skil
107
112
  | Prompt Structure | .agent/skills/prompt-structure/SKILL.md | ALWAYS |
108
113
 
109
114
  ## UNIVERSAL RULES
110
- 1. AUTO-ANONYMOUS: Replace ALL real person names with physical descriptions. NEVER use celebrity names.
111
- 2. AUTO-SAFETY: Proactively reframe content that may trigger safety filters.
112
- 3. Prompts ALWAYS in English. Headers in Turkish allowed. Dialogue preserved in original language.
113
- 4. SLOW BURN: 8s default duration. Split actions into multiple shots. "Ilmek ilmek islemek."
114
- 5. Music: NONE by default. User must explicitly request.
115
- 6. EVERY prompt must have an Avoid line. No exceptions.
116
- 7. Coverage shots mandatory (2-3 per main shot, min 60 words each, included in same file).
117
- 8. Frame chaining: Last frame of SHOT[N] = First frame of SHOT[N+1].
118
- 9. ONE FILE PER SHOT: Each SHOTNN.md contains main shot + all coverage shots.
115
+ 1. AUTO-ANONYMOUS: Replace ALL real person names in visual prompts with physical descriptions. NEVER use celebrity names.
116
+ 2. Dialogue Name Policy: Follow ${config.outputDir}/shot-plan.json -> dialogue_name_policy.
117
+ 3. AUTO-SAFETY: Proactively reframe content that may trigger safety filters.
118
+ 4. Prompts ALWAYS in English. Headers in Turkish allowed. Dialogue preserved in original language.
119
+ 5. SLOW BURN: 8s default duration. Split actions into multiple shots. "Ilmek ilmek islemek."
120
+ 6. Music: NONE by default. User must explicitly request.
121
+ 7. EVERY prompt must have an Avoid line. No exceptions.
122
+ 8. Coverage shots mandatory (2-3 per main shot, min 60 words each, included in same file).
123
+ 9. Frame chaining: Last frame of SHOT[N] = First frame of SHOT[N+1].
124
+ 10. ILK/İLK FRAME section must contain a code block even for chained shots.
125
+ 11. ONE FILE PER SHOT: Each SHOTNN.md contains main shot + all coverage shots.
119
126
 
120
127
  ## WORKFLOWS
121
128
  - /generate → Read .agent/workflows/generate.md
122
129
  - /chain → Read .agent/workflows/chain.md
123
130
  - /safety-check → Read .agent/workflows/safety-check.md
131
+ - /recover → Read .agent/workflows/recover.md
124
132
  - /finish → Read .agent/workflows/finish.md
125
133
 
126
134
  ## OUTPUT
@@ -157,16 +165,19 @@ All skills at: \`.agent/skills/[name]/SKILL.md\`
157
165
  | /generate | Generate shots → Read \`.agent/workflows/generate.md\` |
158
166
  | /chain | Continue from last → Read \`.agent/workflows/chain.md\` |
159
167
  | /safety-check | Validate prompts → Read \`.agent/workflows/safety-check.md\` |
168
+ | /recover | Recover failed gates → Read \`.agent/workflows/recover.md\` |
160
169
  | /finish | Complete project → Read \`.agent/workflows/finish.md\` |
161
170
 
162
171
  ## CRITICAL RULES
163
172
  - AUTO-ANONYMOUS: Replace ALL real names with physical descriptions
173
+ - Dialogue naming follows \`${config.outputDir}/shot-plan.json\` policy
164
174
  - AUTO-SAFETY: Proactively reframe sensitive content
165
175
  - Frame chaining: Last frame SHOT[N] = First frame SHOT[N+1]
166
176
  - Coverage: 2-3 sub-shots per main shot (min 60 words each, in same file)
167
177
  - Avoid line: MANDATORY on every prompt
168
178
  - Music: NONE by default
169
179
  - Duration: 8s default, slow burn pacing
180
+ - ILK/İLK FRAME section always contains a code block
170
181
  - ONE FILE PER SHOT: SHOTNN.md contains everything
171
182
 
172
183
  ## Output
@@ -197,14 +208,16 @@ Before generating ANY prompts, read skills from \`.agent/skills/\`:
197
208
  - \`prompt-structure/SKILL.md\` — ALWAYS (P5)
198
209
 
199
210
  ## Universal Rules (Always Active)
200
- 1. **AUTO-ANONYMOUS:** Replace ALL real person names with physical descriptions. NEVER use celebrity names.
201
- 2. **AUTO-SAFETY:** Proactively reframe content that may trigger safety filters.
202
- 3. **Language:** Prompts ALWAYS in English. Dialogue preserved in original.
203
- 4. **Pacing:** 8s default, slow burn. "Ilmek ilmek islemek."
204
- 5. **Music:** NONE by default.
205
- 6. **Avoid line:** MANDATORY on every prompt (image, video, coverage).
206
- 7. **Coverage:** 2-3 sub-shots within same SHOTNN.md file, min 60 words each.
207
- 8. **ONE FILE PER SHOT:** No separate coverage files.
211
+ 1. **AUTO-ANONYMOUS:** Replace ALL real person names in visual prompts with physical descriptions.
212
+ 2. **Dialogue Name Policy:** Follow \`${config.outputDir}/shot-plan.json\` policy.
213
+ 3. **AUTO-SAFETY:** Proactively reframe content that may trigger safety filters.
214
+ 4. **Language:** Prompts ALWAYS in English. Dialogue preserved in original.
215
+ 5. **Pacing:** 8s default, slow burn. "Ilmek ilmek islemek."
216
+ 6. **Music:** NONE by default.
217
+ 7. **Avoid line:** MANDATORY on every prompt (image, video, coverage).
218
+ 8. **Coverage:** 2-3 sub-shots within same SHOTNN.md file, min 60 words each.
219
+ 9. **ILK/İLK FRAME:** Always include a fenced code block, even when chained.
220
+ 10. **ONE FILE PER SHOT:** No separate coverage files.
208
221
 
209
222
  ## Workflows
210
223
  | Command | Workflow |
@@ -212,6 +225,7 @@ Before generating ANY prompts, read skills from \`.agent/skills/\`:
212
225
  | \`/generate\` | \`.agent/workflows/generate.md\` |
213
226
  | \`/chain\` | \`.agent/workflows/chain.md\` |
214
227
  | \`/safety-check\` | \`.agent/workflows/safety-check.md\` |
228
+ | \`/recover\` | \`.agent/workflows/recover.md\` |
215
229
  | \`/finish\` | \`.agent/workflows/finish.md\` |
216
230
 
217
231
  ## I/O
@@ -219,6 +233,8 @@ Before generating ANY prompts, read skills from \`.agent/skills/\`:
219
233
  - Output: \`${config.outputDir}/shots/SHOTNN.md\` per shot (single file with coverage)
220
234
  - Index: \`${config.outputDir}/_index.md\`
221
235
  - Project info: \`${config.outputDir}/project-info.md\`
236
+ - Plan: \`${config.outputDir}/shot-plan.json\`
237
+ - Reports: \`${config.outputDir}/reports/SAFETY-REPORT.md\`, \`${config.outputDir}/reports/DELIVERY-REPORT.md\`
222
238
 
223
239
  Follow rules under \`.claude/rules/\`.
224
240
  `;
@@ -234,7 +250,9 @@ All production rules are in \`.agent/MASTER.md\`.
234
250
  2. Analyze scenario, auto-anonymize, apply safety
235
251
  3. Generate shot files at \`${config.outputDir}/shots/SHOTNN.md\`
236
252
  4. Each SHOTNN.md: İLK FRAME + SON FRAME + VİDEO + 2-3 Coverage (ALL IN ONE FILE)
237
- 5. Maintain frame chaining continuity
253
+ 5. Keep İLK FRAME as a fenced code block even when chained
254
+ 6. Maintain visual anonymity; apply dialogue name policy from \`${config.outputDir}/shot-plan.json\`
255
+ 7. Generate/refresh reports in \`${config.outputDir}/reports/\` before finish
238
256
 
239
257
  ## Priority Hierarchy
240
258
  | Priority | Rule |
@@ -256,10 +274,12 @@ Read \`.agent/workflows/generate.md\` for the complete generation workflow.
256
274
  1. **Scenario Analysis:**
257
275
  - Read scenario, auto-detect genre
258
276
  - Identify characters and locations
259
- - AUTO-ANONYMOUS: Replace all real names with physical descriptions
277
+ - AUTO-ANONYMOUS: Replace all real names in visual prompts with physical descriptions
278
+ - Dialogue names follow \`${config.outputDir}/shot-plan.json\` policy
260
279
  - AUTO-SAFETY: Proactively reframe sensitive content
261
280
  - Determine shot count based on action beats
262
281
  - Create \`${config.outputDir}/project-info.md\`
282
+ - Create \`${config.outputDir}/shot-plan.json\`
263
283
 
264
284
  2. **Batch Strategy:**
265
285
  - 1-10 shots → Generate all at once
@@ -269,11 +289,18 @@ Read \`.agent/workflows/generate.md\` for the complete generation workflow.
269
289
  3. **Per Shot (SINGLE FILE: SHOTNN.md):**
270
290
  - Analyze scene type (Dialogue / Action / Emotional / Establishing)
271
291
  - Generate main shot (İLK FRAME + SON FRAME + VİDEO)
292
+ - Keep İLK FRAME as fenced code block even when chained
272
293
  - Generate 2-3 coverage shots (in same file)
273
294
  - Write to \`${config.outputDir}/shots/SHOT[NN].md\`
274
295
  - Update \`${config.outputDir}/_index.md\`
275
296
 
276
- 4. **Coverage Selection Matrix:**
297
+ 4. **Validation Gates:**
298
+ - Run /safety-check
299
+ - Write \`${config.outputDir}/reports/SAFETY-REPORT.md\`
300
+ - Write \`${config.outputDir}/reports/DELIVERY-REPORT.md\`
301
+ - If any gate fails, run \`.agent/workflows/recover.md\`
302
+
303
+ 5. **Coverage Selection Matrix:**
277
304
  - Dialogue → Reaction (A) + OTS (B)
278
305
  - Action → Insert (A) + ECU (B)
279
306
  - Emotional → Reaction (A) + ECU (B)
@@ -287,8 +314,11 @@ function buildClaudeRuleOutputContract(config) {
287
314
 
288
315
  ## Required Files
289
316
  - \`${config.outputDir}/project-info.md\` — Characters, settings, emotional arc mapping, tension levels
317
+ - \`${config.outputDir}/shot-plan.json\` — Name policy, shot plan, and validation contract
290
318
  - \`${config.outputDir}/_index.md\` — Shot tracking with chain & status
291
319
  - \`${config.outputDir}/shots/SHOT01.md ... SHOTNN.md\` — Individual shot files (one file per shot)
320
+ - \`${config.outputDir}/reports/SAFETY-REPORT.md\` — Safety gate report
321
+ - \`${config.outputDir}/reports/DELIVERY-REPORT.md\` — Delivery gate report
292
322
 
293
323
  ## Prompt Flow Order (Veo Optimization — MANDATORY)
294
324
 
@@ -320,6 +350,9 @@ FIRST SHOT / CHAINED from SHOT[prev]_END / CHAIN BREAK - Reason
320
350
  ### İLK FRAME (SHOTNN_START)
321
351
  [If chained: "→ Use SHOT[prev]_END as first frame"]
322
352
 
353
+ > NOTE: Even when chained, this section MUST contain a fenced code block.
354
+ > If chained, include: "Use SHOT[prev]_END as exact first frame."
355
+
323
356
  \\\`\\\`\\\`
324
357
  [Image prompt — min 60 words, following prompt flow order]
325
358
  Avoid: blurry, low-res, noise, distorted faces, bad anatomy, extra limbs/fingers,
@@ -429,6 +462,10 @@ Total: 1 main + [N] coverage = [N+1] production shots
429
462
  - Main shots chain: SON FRAME of SHOT[N] = İLK FRAME of SHOT[N+1]
430
463
  - Coverage exists in parallel, not in sequence
431
464
 
465
+ ### Name Rule
466
+ - Visual prompts and non-dialogue fields: no real names
467
+ - Dialogue transcript naming follows \`shot-plan.json.dialogue_name_policy\`
468
+
432
469
  ### 30° Rule
433
470
  Coverage camera angles MUST differ from main shot by at least 30°.
434
471
  Insert shots are exempt (different subject entirely).
@@ -490,9 +527,12 @@ Before generating ANY prompts, read skills from \`.agent/skills/\`:
490
527
  3. Generate shot files: \`${config.outputDir}/shots/SHOT01.md, SHOT02.md, ...\`
491
528
  4. Create index: \`${config.outputDir}/_index.md\`
492
529
  5. Create project info: \`${config.outputDir}/project-info.md\`
530
+ 6. Create plan: \`${config.outputDir}/shot-plan.json\`
531
+ 7. Write reports: \`${config.outputDir}/reports/SAFETY-REPORT.md\`, \`${config.outputDir}/reports/DELIVERY-REPORT.md\`
493
532
 
494
533
  ### Critical Rules
495
534
  - **AUTO-ANONYMOUS:** Replace ALL real names with physical descriptions
535
+ - **Name Policy:** Dialogue naming follows \`${config.outputDir}/shot-plan.json\` policy
496
536
  - **AUTO-SAFETY:** Proactively reframe sensitive content
497
537
  - **Frame Chaining:** Last frame of SHOT[N] = First frame of SHOT[N+1]
498
538
  - **Coverage:** 2-3 sub-shots per main shot (in same file, min 60 words each)
@@ -500,11 +540,13 @@ Before generating ANY prompts, read skills from \`.agent/skills/\`:
500
540
  - **Music:** NONE by default
501
541
  - **Duration:** 8s default, slow burn pacing
502
542
  - **Language:** Prompts in English, dialogue preserved
543
+ - **ILK/İLK FRAME:** keep fenced code block even when chained
503
544
  - **ONE FILE PER SHOT:** SHOTNN.md contains main shot + all coverage
504
545
 
505
546
  ### Other Workflows
506
547
  - \`/chain\` → \`.agent/workflows/chain.md\`
507
548
  - \`/safety-check\` → \`.agent/workflows/safety-check.md\`
549
+ - \`/recover\` → \`.agent/workflows/recover.md\`
508
550
  - \`/finish\` → \`.agent/workflows/finish.md\`
509
551
 
510
552
  ### Input
@@ -521,9 +563,10 @@ When request is /generate, follow the Film-Kit Hollywood production system:
521
563
  1. Read \`.agent/workflows/generate.md\` for full procedure
522
564
  2. Load required skills from \`.agent/skills/\`
523
565
  3. Transform scenario into production shot package at \`${config.outputDir}\`
524
- 4. Generate: project-info.md, _index.md, shots/SHOT01.md..SHOTNN.md
566
+ 4. Generate: project-info.md, shot-plan.json, _index.md, shots/SHOT01.md..SHOTNN.md
525
567
  5. Each SHOTNN.md: İLK FRAME + SON FRAME + VİDEO + 2-3 Coverage (ALL IN ONE FILE)
526
- 6. Enforce: auto-anonymous, auto-safety, frame chaining, avoid lines
568
+ 6. Enforce: auto-anonymous, dialogue name policy, auto-safety, frame chaining, avoid lines
569
+ 7. Write reports to \`${config.outputDir}/reports/\` before /finish
527
570
  `;
528
571
  }
529
572
  /* ---------- ANTIGRAVITY ---------- */
@@ -555,6 +598,7 @@ Before generating ANY prompts, read these skills:
555
598
  | /generate | \`.agent/workflows/generate.md\` — Generate shots from scenario |
556
599
  | /chain | \`.agent/workflows/chain.md\` — Continue from last shot |
557
600
  | /safety-check | \`.agent/workflows/safety-check.md\` — Validate before delivery |
601
+ | /recover | \`.agent/workflows/recover.md\` — Recover failed gates |
558
602
  | /finish | \`.agent/workflows/finish.md\` — Complete project, create summary |
559
603
 
560
604
  ## Input
@@ -565,17 +609,21 @@ Before generating ANY prompts, read these skills:
565
609
  - Per-shot files: \`${config.outputDir}/shots/SHOTNN.md\` (single file per shot with coverage)
566
610
  - Shot index: \`${config.outputDir}/_index.md\`
567
611
  - Project info: \`${config.outputDir}/project-info.md\`
612
+ - Plan: \`${config.outputDir}/shot-plan.json\`
613
+ - Reports: \`${config.outputDir}/reports/SAFETY-REPORT.md\`, \`${config.outputDir}/reports/DELIVERY-REPORT.md\`
568
614
 
569
615
  ## Critical Rules
570
616
  1. **AUTO-ANONYMOUS:** Replace ALL real person names with physical descriptions
571
- 2. **AUTO-SAFETY:** Proactively reframe sensitive content
572
- 3. **Frame Chaining:** Last frame of SHOT[N] becomes first frame of SHOT[N+1]
573
- 4. **Coverage Mandatory:** 2-3 sub-shots per main shot (in same file, min 60 words each)
574
- 5. **Avoid Line:** MANDATORY on every prompt (image + video + coverage)
575
- 6. **Music: NONE** by default
576
- 7. **Ultra Realism** default visual mode
577
- 8. **8s duration** default, slow burn pacing
578
- 9. **ONE FILE PER SHOT:** SHOTNN.md contains main shot + all coverage
617
+ 2. **Name Policy:** Dialogue naming follows \`${config.outputDir}/shot-plan.json\` policy
618
+ 3. **AUTO-SAFETY:** Proactively reframe sensitive content
619
+ 4. **Frame Chaining:** Last frame of SHOT[N] becomes first frame of SHOT[N+1]
620
+ 5. **Coverage Mandatory:** 2-3 sub-shots per main shot (in same file, min 60 words each)
621
+ 6. **Avoid Line:** MANDATORY on every prompt (image + video + coverage)
622
+ 7. **Music: NONE** by default
623
+ 8. **Ultra Realism** default visual mode
624
+ 9. **8s duration** default, slow burn pacing
625
+ 10. **ILK/İLK FRAME:** always keep fenced code block
626
+ 11. **ONE FILE PER SHOT:** SHOTNN.md contains main shot + all coverage
579
627
 
580
628
  ## Quality Standard
581
629
  HOLLYWOOD PRODUCTION GRADE — Every frame museum-worthy, every chain seamless.
@@ -31,9 +31,11 @@ Modular system consisting of:
31
31
  │ ├── audio-design/ # Sound design rules
32
32
  │ └── prompt-structure/ # Prompt engineering patterns
33
33
  └── workflows/
34
- ├── generate.md # /generate command
35
- ├── chain.md # /chain command
36
- └── safety-check.md # /safety-check command
34
+ ├── generate.md # /generate command
35
+ ├── chain.md # /chain command
36
+ ├── safety-check.md # /safety-check command
37
+ ├── recover.md # /recover command
38
+ └── finish.md # /finish command
37
39
  ```
38
40
 
39
41
  ---
@@ -64,10 +66,11 @@ Modular system consisting of:
64
66
 
65
67
  | Command | Description |
66
68
  |---------|-------------|
67
- | `/generate` | Generate shots and SAVE TO FILES |
68
- | `/chain` | Continue from last shot file |
69
- | `/safety-check` | Validate prompts before delivery |
70
- | `/finish` | Complete project, create summary |
69
+ | `/generate` | Generate shots and SAVE TO FILES |
70
+ | `/chain` | Continue from last shot file |
71
+ | `/safety-check` | Validate prompts before delivery |
72
+ | `/recover` | Recover failed safety/delivery gates |
73
+ | `/finish` | Complete project, create summary |
71
74
 
72
75
  ---
73
76
 
@@ -30,10 +30,11 @@
30
30
  │ ├── audio-design/ ← Ses tasarımı
31
31
  │ └── prompt-structure/ ← Prompt şablonları
32
32
  └── workflows/ ← İş akışları
33
- ├── generate.md ← /generate komutu
34
- ├── chain.md ← /chain komutu
35
- ├── safety-check.md ← /safety-check komutu
36
- └── finish.md ← /finish komutu
33
+ ├── generate.md ← /generate komutu
34
+ ├── chain.md ← /chain komutu
35
+ ├── safety-check.md ← /safety-check komutu
36
+ ├── recover.md ← /recover komutu
37
+ └── finish.md ← /finish komutu
37
38
 
38
39
  RULES.md ← AI editörler için kurallar (otomatik okunur)
39
40
  ```
@@ -44,10 +45,11 @@ RULES.md ← AI editörler için kurallar (otomatik okunur)
44
45
 
45
46
  | Komut | Ne Yapar |
46
47
  |-------|----------|
47
- | `/generate` | Senaryodan shot'lar üretir, dosyaya kaydeder |
48
- | `/chain` | Önceki shot'tan devam eder |
49
- | `/safety-check` | Tüm promptları güvenlik kontrolünden geçirir |
50
- | `/finish` | Projeyi tamamlar, özet oluşturur |
48
+ | `/generate` | Senaryodan shot'lar üretir, dosyaya kaydeder |
49
+ | `/chain` | Önceki shot'tan devam eder |
50
+ | `/safety-check` | Tüm promptları güvenlik kontrolünden geçirir |
51
+ | `/recover` | Hata/fail durumunda kurtarma akışı çalıştırır |
52
+ | `/finish` | Projeyi tamamlar, özet oluşturur |
51
53
 
52
54
  ---
53
55
 
package/content/MASTER.md CHANGED
@@ -48,7 +48,7 @@ Scenario Received → Check for elements:
48
48
 
49
49
  > 🚨 **CRITICAL:** Bu kuralı kullanıcının hatırlatmasını BEKLEME. PROAKTİF olarak uygula.
50
50
 
51
- **MUTLAK KURAL:** Senaryoda geçen TÜM gerçek kişi adlarını **otomatik olarak** fiziksel tanımlarla değiştir.
51
+ **MUTLAK KURAL:** Senaryodaki gerçek kişi adlarını, **gorsel prompt ve metadata alanlarinda** otomatik fiziksel tanimlarla degistir.
52
52
 
53
53
  ```
54
54
  SENARYO GELİNCE:
@@ -581,10 +581,10 @@ Total: 1 main + [N] coverage = [N+1] production shots
581
581
 
582
582
  Before outputting, validate EVERY shot. **Bu kontrol otomatiktir, kullanıcı hatırlatması gerekmez.**
583
583
 
584
- ### 1️⃣ AUTO-ANONYMOUS (EN ÖNCE)
585
- - [ ] TÜM isimler fiziksel tanımla değiştirildi mi? **Otomatik yapılmalı**
586
- - [ ] Dolaylı ünlü atıfları temizlendi mi?
587
- - [ ] Tarihi kişi rolleri anonim mi?
584
+ ### 1️⃣ AUTO-ANONYMOUS (EN ÖNCE)
585
+ - [ ] Gorsel prompt ve metadata icindeki tum isimler fiziksel tanimla degistirildi mi? -> **Otomatik yapilmali**
586
+ - [ ] Dolaylı ünlü atıfları temizlendi mi?
587
+ - [ ] Tarihi kişi rolleri anonim mi?
588
588
 
589
589
  ### 2️⃣ AUTO-SAFETY
590
590
  - [ ] Platform filtrelerine takılacak içerik var mı? → **Otomatik optimize et**
package/content/RULES.md CHANGED
@@ -50,7 +50,8 @@ Film/Video request detected → Activate prompt-engineer agent
50
50
  | **Single shot** | "bir sahne", "one shot" | Generate 1 shot |
51
51
  | **Batch generation** | "3 shot", "5 sahne" | Generate N shots |
52
52
  | **Continue** | "devam et", "continue" | Chain from previous |
53
- | **Safety check** | /safety-check | Validate prompts |
53
+ | **Safety check** | /safety-check | Validate prompts |
54
+ | **Recover** | /recover | Recover failed safety/delivery gates |
54
55
 
55
56
  ---
56
57
 
@@ -207,10 +208,11 @@ Color: LUT, grade, desaturated, warm/cool, high/low key
207
208
 
208
209
  | Command | Purpose |
209
210
  |---------|--------|
210
- | `/generate` | Generate shots and SAVE TO FILES |
211
- | `/chain` | Continue from last shot file |
212
- | `/safety-check` | Validate before delivery |
213
- | `/finish` | Complete project, create summary |
211
+ | `/generate` | Generate shots and SAVE TO FILES |
212
+ | `/chain` | Continue from last shot file |
213
+ | `/safety-check` | Validate before delivery |
214
+ | `/recover` | Recover failed quality gates |
215
+ | `/finish` | Complete project, create summary |
214
216
 
215
217
  ---
216
218