@milenyumai/film-kit 1.0.3 → 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 +79 -73
- package/build/cli.js +7 -2
- package/build/lib/templates.js +78 -30
- package/content/ARCHITECTURE.md +10 -7
- package/content/FILM-KIT-INFO.md +10 -8
- package/content/MASTER.md +5 -5
- package/content/RULES.md +7 -5
- package/content/agents/prompt-engineer.md +10 -8
- package/content/workflows/chain.md +74 -106
- package/content/workflows/finish.md +84 -108
- package/content/workflows/generate.md +197 -204
- package/content/workflows/recover.md +32 -0
- package/content/workflows/safety-check.md +84 -149
- package/package.json +4 -2
package/README.md
CHANGED
|
@@ -1,89 +1,95 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Film-Kit: Hollywood-Standard Cinematic Prompt Engineering
|
|
2
2
|
|
|
3
|
-
|
|
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
|
-
|
|
7
|
-
|
|
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
|
-
|
|
9
|
+
---
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
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
|
-
|
|
17
|
+
npx @milenyumai/film-kit init
|
|
35
18
|
```
|
|
36
19
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
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
|
-
|
|
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
|
-
|
|
33
|
+
---
|
|
56
34
|
|
|
57
|
-
|
|
58
|
-
|
|
35
|
+
## 🚀 Paket 2: Film-Kit Multi (Pro)
|
|
36
|
+
**Kullanım:** Profesyonel stüdyo işleri, uzun metraj, 10+ shot senaryolar.
|
|
59
37
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
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
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
-
|
|
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({
|
|
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
|
|
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
|
package/build/lib/templates.js
CHANGED
|
@@ -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.
|
|
112
|
-
3.
|
|
113
|
-
4.
|
|
114
|
-
5.
|
|
115
|
-
6.
|
|
116
|
-
7.
|
|
117
|
-
8.
|
|
118
|
-
9.
|
|
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.
|
|
201
|
-
2. **
|
|
202
|
-
3. **
|
|
203
|
-
4. **
|
|
204
|
-
5. **
|
|
205
|
-
6. **
|
|
206
|
-
7. **
|
|
207
|
-
8. **
|
|
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.
|
|
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. **
|
|
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. **
|
|
572
|
-
3. **
|
|
573
|
-
4. **
|
|
574
|
-
5. **
|
|
575
|
-
6. **
|
|
576
|
-
7. **
|
|
577
|
-
8. **
|
|
578
|
-
9. **
|
|
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.
|
package/content/ARCHITECTURE.md
CHANGED
|
@@ -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
|
-
|
|
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
|
-
| `/
|
|
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
|
|
package/content/FILM-KIT-INFO.md
CHANGED
|
@@ -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
|
-
|
|
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
|
-
| `/
|
|
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:**
|
|
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
|
-
- [ ]
|
|
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
|
-
| `/
|
|
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
|
|
|
@@ -29,7 +29,7 @@ You are a senior Technical Prompt Engineer specialized in Google Flow + Veo 3.1.
|
|
|
29
29
|
2. **ENFORCE mandatory frame chaining for seamless visual continuity (CRITICAL)**
|
|
30
30
|
3. **LOCK all characters/objects to user-provided reference images (CRITICAL)**
|
|
31
31
|
4. **Maintain visual/audio continuity across all shots**
|
|
32
|
-
4. **AUTO-ANONYMOUS
|
|
32
|
+
4. **AUTO-ANONYMOUS:** Visual prompts and non-dialogue fields must stay anonymous
|
|
33
33
|
5. **AUTO-SAFETY: Güvenlik filtrelerine takılacak içeriği proaktif reframe et**
|
|
34
34
|
6. Apply dramatic pacing: "Ilmek ilmek işlemek" philosophy
|
|
35
35
|
7. Use 8-second shot duration (default), slow burn, reaction shots
|
|
@@ -128,10 +128,11 @@ Embed this as physical behavior in the prompt, NOT as abstract metadata.
|
|
|
128
128
|
|
|
129
129
|
Before outputting ANY shot:
|
|
130
130
|
|
|
131
|
-
### 1. Safety & Anonymity (CRITICAL)
|
|
132
|
-
- [ ] No real person's name
|
|
133
|
-
- [ ]
|
|
134
|
-
- [ ] No
|
|
131
|
+
### 1. Safety & Anonymity (CRITICAL)
|
|
132
|
+
- [ ] No real person's name in visual prompts or metadata?
|
|
133
|
+
- [ ] Dialogue naming follows `shot-plan.json -> dialogue_name_policy`?
|
|
134
|
+
- [ ] No celebrity references?
|
|
135
|
+
- [ ] No active violence/gore?
|
|
135
136
|
|
|
136
137
|
### 2. Prompt Structure
|
|
137
138
|
- [ ] Follows 1-7 Flow Order?
|
|
@@ -156,9 +157,10 @@ For EACH shot, output exactly one file (`SHOTNN.md`) containing Main Shot + Cove
|
|
|
156
157
|
|
|
157
158
|
## Main Shot
|
|
158
159
|
|
|
159
|
-
### İLK FRAME (SHOTNN_START)
|
|
160
|
-
[
|
|
161
|
-
[If
|
|
160
|
+
### İLK FRAME (SHOTNN_START)
|
|
161
|
+
[Always provide a fenced code block]
|
|
162
|
+
[If CHAINED: include "Use SHOT[prev]_END as exact first frame" inside code block]
|
|
163
|
+
[If FIRST/BREAK: image prompt in same code block]
|
|
162
164
|
|
|
163
165
|
### SON FRAME (SHOTNN_END)
|
|
164
166
|
```
|