@event4u/agent-config 2.23.0 → 2.24.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/.agent-src/commands/video/from-script.md +123 -0
- package/.agent-src/commands/video/scene.md +92 -0
- package/.agent-src/commands/video/stitch.md +83 -0
- package/.agent-src/commands/video/storyboard.md +95 -0
- package/.agent-src/commands/video.md +59 -0
- package/.agent-src/personas/README.md +3 -0
- package/.agent-src/personas/ai-video-technical-director.md +81 -0
- package/.agent-src/personas/hollywood-director.md +99 -0
- package/.agent-src/personas/pixar-storyboard-artist.md +98 -0
- package/.agent-src/skills/character-consistency/SKILL.md +120 -0
- package/.agent-src/skills/motion-choreographer/SKILL.md +149 -0
- package/.agent-src/skills/pixar-storyteller/SKILL.md +107 -0
- package/.agent-src/skills/scene-expander/SKILL.md +122 -0
- package/.agent-src/skills/scene-expander/scene-blueprint.schema.yaml +108 -0
- package/.agent-src/skills/subagent-orchestration/SKILL.md +17 -15
- package/.agent-src/skills/video-director/SKILL.md +113 -0
- package/.agent-src/templates/agent-settings.md +19 -0
- package/.agent-src/templates/agents/agent-project-settings.example.yml +1 -1
- package/.claude-plugin/marketplace.json +11 -1
- package/CHANGELOG.md +22 -0
- package/README.md +4 -4
- package/config/agent-settings.template.yml +28 -0
- package/docs/adrs/caveman/0001-default-off-until-bench.md +2 -2
- package/docs/adrs/cost/0001-hard-stop-hook.md +1 -1
- package/docs/adrs/smoke/0001-per-tier-smoke-scripts.md +2 -2
- package/docs/architecture.md +2 -2
- package/docs/catalog.md +14 -4
- package/docs/contracts/command-clusters.md +1 -0
- package/docs/contracts/compression-default-kill-criterion.md +1 -1
- package/docs/contracts/file-ownership-matrix.json +337 -0
- package/docs/getting-started.md +1 -1
- package/docs/parity/ruflo.md +3 -3
- package/package.json +1 -1
- package/scripts/ai-video/adapters/gemini-veo.sh +57 -0
- package/scripts/ai-video/adapters/higgsfield.sh +82 -0
- package/scripts/ai-video/adapters/kling.sh +54 -0
- package/scripts/ai-video/adapters/openai-images.sh +52 -0
- package/scripts/ai-video/adapters/sora.sh +54 -0
- package/scripts/ai-video/lib/adapter-common.sh +116 -0
- package/scripts/ai-video/lib/adapter-contract.md +163 -0
- package/scripts/ai-video/lib/fixtures/gemini-veo/result.json +1 -0
- package/scripts/ai-video/lib/fixtures/gemini-veo/scene-0001.mp4 +1 -0
- package/scripts/ai-video/lib/fixtures/higgsfield/result.json +1 -0
- package/scripts/ai-video/lib/fixtures/higgsfield/scene-0001.mp4 +1 -0
- package/scripts/ai-video/lib/fixtures/kling/result.json +1 -0
- package/scripts/ai-video/lib/fixtures/kling/scene-0001.mp4 +1 -0
- package/scripts/ai-video/lib/fixtures/openai-images/result.json +1 -0
- package/scripts/ai-video/lib/fixtures/openai-images/scene-0001.png +3 -0
- package/scripts/ai-video/lib/fixtures/sora/result.json +1 -0
- package/scripts/ai-video/lib/fixtures/sora/scene-0001.mp4 +1 -0
- package/scripts/ai-video/lib/load-config.sh +140 -0
- package/scripts/ai-video/lib/operator-pick.sh +119 -0
- package/scripts/ai-video/lib/parse-blueprint.sh +122 -0
- package/scripts/ai-video/lib/redact.sh +85 -0
- package/scripts/ai-video/lib/validate-deps.sh +132 -0
- package/scripts/ai-video/stitch.sh +154 -0
- package/scripts/ai-video/test-pipeline.sh +169 -0
- package/scripts/schemas/command.schema.json +8 -0
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
# Scene Blueprint Schema (v1)
|
|
2
|
+
#
|
|
3
|
+
# Maps the 12 labeled blocks emitted by `scene-expander` to the
|
|
4
|
+
# adapter-contract JSON consumed by every adapter under
|
|
5
|
+
# `scripts/ai-video/adapters/`. Validation lives in
|
|
6
|
+
# `scripts/ai-video/lib/parse-blueprint.sh`.
|
|
7
|
+
#
|
|
8
|
+
# Source format: plain-text, one labeled block per line OR per
|
|
9
|
+
# heading. Labels are case-insensitive; whitespace around `:` is
|
|
10
|
+
# tolerated. Block order is the canonical order below — out-of-order
|
|
11
|
+
# blocks are accepted but logged as a warning.
|
|
12
|
+
|
|
13
|
+
version: 1
|
|
14
|
+
|
|
15
|
+
blocks:
|
|
16
|
+
STYLE:
|
|
17
|
+
required: true
|
|
18
|
+
target: prompt.style
|
|
19
|
+
description: "Film stock + decade (live-action) or film title + year (animated)."
|
|
20
|
+
|
|
21
|
+
SUBJECT:
|
|
22
|
+
required: true
|
|
23
|
+
target: prompt.subject
|
|
24
|
+
description: "Character read. Verbatim from character.json when locked."
|
|
25
|
+
|
|
26
|
+
ENVIRONMENT:
|
|
27
|
+
required: true
|
|
28
|
+
target: prompt.environment
|
|
29
|
+
description: "Location, time-of-day, weather, era; world reaction."
|
|
30
|
+
|
|
31
|
+
ACTION:
|
|
32
|
+
required: true
|
|
33
|
+
target: prompt.action
|
|
34
|
+
description: "Anticipation / action / reaction with beat counts."
|
|
35
|
+
|
|
36
|
+
CAMERA:
|
|
37
|
+
required: true
|
|
38
|
+
target: prompt.camera
|
|
39
|
+
description: "Position, height, distance, move."
|
|
40
|
+
|
|
41
|
+
LENS:
|
|
42
|
+
required: true
|
|
43
|
+
target: prompt.lens
|
|
44
|
+
description: "Focal length in mm + aperture intent (live-action). Animated runs may emit 'n/a' but the block must be present."
|
|
45
|
+
|
|
46
|
+
LIGHTING:
|
|
47
|
+
required: true
|
|
48
|
+
target: prompt.lighting
|
|
49
|
+
description: "Key / fill / back / practical with direction."
|
|
50
|
+
|
|
51
|
+
MOOD:
|
|
52
|
+
required: true
|
|
53
|
+
target: prompt.mood
|
|
54
|
+
description: "Single emotional read."
|
|
55
|
+
|
|
56
|
+
DIALOGUE:
|
|
57
|
+
required: false
|
|
58
|
+
target: audio.dialogue
|
|
59
|
+
description: "Optional. Marks audio.native requirement when present."
|
|
60
|
+
null_when_absent: true
|
|
61
|
+
|
|
62
|
+
AMBIENT SOUND:
|
|
63
|
+
required: false
|
|
64
|
+
target: audio.ambient
|
|
65
|
+
description: "Optional ambient layer list."
|
|
66
|
+
null_when_absent: true
|
|
67
|
+
|
|
68
|
+
DURATION:
|
|
69
|
+
required: true
|
|
70
|
+
target: duration
|
|
71
|
+
type: number
|
|
72
|
+
description: "Seconds. Integer or one decimal."
|
|
73
|
+
|
|
74
|
+
NEGATIVE:
|
|
75
|
+
required: true
|
|
76
|
+
target: negative
|
|
77
|
+
description: "Clichés to reject, load-bearing top-first."
|
|
78
|
+
|
|
79
|
+
# Adapter-contract JSON shape produced by parse-blueprint.sh
|
|
80
|
+
output_shape: |
|
|
81
|
+
{
|
|
82
|
+
"prompt": {
|
|
83
|
+
"style": "...",
|
|
84
|
+
"subject": "...",
|
|
85
|
+
"environment": "...",
|
|
86
|
+
"action": "...",
|
|
87
|
+
"camera": "...",
|
|
88
|
+
"lens": "...",
|
|
89
|
+
"lighting": "...",
|
|
90
|
+
"mood": "..."
|
|
91
|
+
},
|
|
92
|
+
"audio": {
|
|
93
|
+
"dialogue": [...] | null,
|
|
94
|
+
"ambient": [...] | null,
|
|
95
|
+
"enable_native_audio": true | false
|
|
96
|
+
},
|
|
97
|
+
"duration": 5.0,
|
|
98
|
+
"negative": ["...", "..."],
|
|
99
|
+
"requires": {
|
|
100
|
+
"audio_native": true | false
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
# `enable_native_audio` derives from: DIALOGUE present OR AMBIENT SOUND present.
|
|
105
|
+
# Orchestrator uses `requires.audio_native` to pick an adapter with
|
|
106
|
+
# `audio: native` capability (Phase 4 Step 1). When no native adapter
|
|
107
|
+
# is available the orchestrator routes audio.* to ffmpeg mux at
|
|
108
|
+
# stitch time (Phase 4 Step 7) and clears `enable_native_audio`.
|
|
@@ -56,7 +56,7 @@ model pairing. Defaults come from
|
|
|
56
56
|
Descriptive, not enforced. Documents the **expected agent-to-agent
|
|
57
57
|
communication topology** so consumers can predict latency, failure
|
|
58
58
|
modes, and where consensus is required. Cited from
|
|
59
|
-
[`external-findings.md § 2`](../../../agents/audit-2026-05-14-north-star/external-findings.md)
|
|
59
|
+
[`external-findings.md § 2`](../../../agents/council-sessions/audit-2026-05-14-north-star/external-findings.md) <!-- council-ref-allowed: ADR decision trace for topology anti-drift defaults -->
|
|
60
60
|
row 7 (Ruflo's `hierarchical, 6–8 agents, raft consensus` anti-drift
|
|
61
61
|
default).
|
|
62
62
|
|
|
@@ -72,8 +72,8 @@ default).
|
|
|
72
72
|
|
|
73
73
|
**Anti-drift default** (Ruflo convention, descriptive only):
|
|
74
74
|
`hierarchical, 6–8 agents, raft consensus`. Consumers free to
|
|
75
|
-
override per orchestration — table is **starting point**,
|
|
76
|
-
constraint. Topology is metadata for capacity planning, not
|
|
75
|
+
override per orchestration — the table is the **starting point**,
|
|
76
|
+
not a constraint. Topology is metadata for capacity planning, not
|
|
77
77
|
runtime-enforced.
|
|
78
78
|
|
|
79
79
|
**Glossary:**
|
|
@@ -81,7 +81,7 @@ runtime-enforced.
|
|
|
81
81
|
- `mesh` — agents see each other's outputs (e.g. competing diffs).
|
|
82
82
|
- `hierarchical-mesh` — peer debate followed by hub reconciliation.
|
|
83
83
|
- `ring` — output of step N feeds input of step N+1 in order.
|
|
84
|
-
- `star` — N agents fan out from single hub; no peer comms.
|
|
84
|
+
- `star` — N agents fan out from a single hub; no peer comms.
|
|
85
85
|
- `adaptive` — topology shifts per step; outer chain remains hub.
|
|
86
86
|
|
|
87
87
|
### 1. do-and-judge
|
|
@@ -193,17 +193,19 @@ step is under ~30 minutes. The branch-creation, context-switch, and
|
|
|
193
193
|
worktree-cleanup cost dominates. Stick with mode 1 (do-and-judge)
|
|
194
194
|
or mode 3 (do-in-steps) for those.
|
|
195
195
|
|
|
196
|
-
**Competitive variant — per-candidate isolation.**
|
|
197
|
-
(`do-competitively`)
|
|
198
|
-
worktree (
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
-
|
|
206
|
-
|
|
196
|
+
**Competitive variant — per-candidate isolation.** When mode 5
|
|
197
|
+
(`do-competitively`) is combined with worktrees, each candidate
|
|
198
|
+
implementer runs in its own worktree (so candidates cannot read each
|
|
199
|
+
other's open files or branch state). Selection rules:
|
|
200
|
+
|
|
201
|
+
- **No auto-merge.** The orchestrator never merges a candidate
|
|
202
|
+
branch. Hard Floor per [`non-destructive-by-default`](../../rules/non-destructive-by-default.md) —
|
|
203
|
+
applies even under standing autonomy. ADR-005 records the reasoning.
|
|
204
|
+
- **Ranked presentation.** Judge ranks candidates (1..N) with a
|
|
205
|
+
one-line justification per rank; user picks the winner.
|
|
206
|
+
- **Loser worktrees stay.** The orchestrator does not delete losing
|
|
207
|
+
worktrees automatically — the user keeps the option to harvest a
|
|
208
|
+
partial idea before cleanup.
|
|
207
209
|
|
|
208
210
|
## Status taxonomy — every subagent return uses one envelope
|
|
209
211
|
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: video-director
|
|
3
|
+
description: "Use when turning a scene idea into the 11-block cinematic prompt for live-action AI video — lens, lighting, blocking, motion, negatives. Triggers 'cinematic prompt', 'film-grade scene'."
|
|
4
|
+
personas:
|
|
5
|
+
- hollywood-director
|
|
6
|
+
source: package
|
|
7
|
+
domain: product
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# video-director
|
|
11
|
+
|
|
12
|
+
> Turn a scene idea into the **11-block cinematic prompt** the
|
|
13
|
+
> `hollywood-director` persona ships. Output is provider-agnostic
|
|
14
|
+
> prose; provider-specific tuning is handed off to
|
|
15
|
+
> [`motion-choreographer`](../motion-choreographer/SKILL.md).
|
|
16
|
+
|
|
17
|
+
## When to use
|
|
18
|
+
|
|
19
|
+
- A scene idea, beat, or script line needs to become a cinematic
|
|
20
|
+
prompt ready to feed an image+video pipeline.
|
|
21
|
+
- A draft prompt reads as "AI video" — flat, centered, generic
|
|
22
|
+
golden-hour — and needs directorial choices on the page.
|
|
23
|
+
- Live-action / photoreal scenes. For animation acting beats, route
|
|
24
|
+
to [`pixar-storyteller`](../pixar-storyteller/SKILL.md).
|
|
25
|
+
|
|
26
|
+
Do NOT use when:
|
|
27
|
+
|
|
28
|
+
- The deliverable is a still graphic or poster → `canvas-design`.
|
|
29
|
+
- The work is provider-specific token tuning →
|
|
30
|
+
`motion-choreographer` after this skill has produced the blocks.
|
|
31
|
+
- A character identity must be re-used across scenes → run
|
|
32
|
+
[`character-consistency`](../character-consistency/SKILL.md) first
|
|
33
|
+
to lock identity tokens, then call this skill.
|
|
34
|
+
|
|
35
|
+
## Procedure
|
|
36
|
+
|
|
37
|
+
### Step 0: Inspect
|
|
38
|
+
|
|
39
|
+
1. Confirm the input is a live-action / photoreal beat (not animation).
|
|
40
|
+
2. If a `character.json` exists under `agents/ai-video/<project>/characters/`,
|
|
41
|
+
read the identity tokens — they are reused verbatim.
|
|
42
|
+
3. Read the scene's intent in one sentence — what is the camera
|
|
43
|
+
witnessing, and why now?
|
|
44
|
+
|
|
45
|
+
### Step 1: Draft the 11 blocks
|
|
46
|
+
|
|
47
|
+
Emit each block on its own labeled line. Blocks are mandatory and
|
|
48
|
+
in this order:
|
|
49
|
+
|
|
50
|
+
1. **SCENE** — location, time-of-day, weather, era.
|
|
51
|
+
2. **CHARACTER** — verbatim identity tokens from `character.json`
|
|
52
|
+
when present; otherwise silhouette + wardrobe + signature prop.
|
|
53
|
+
3. **ACTION** — verbs and beats. Anticipation → action → reaction
|
|
54
|
+
named separately. No "doing things" prose.
|
|
55
|
+
4. **CAMERA** — position, height, distance, move (lock-off, dolly,
|
|
56
|
+
handheld, push, pull). Off-axis when on-axis is the AI default.
|
|
57
|
+
5. **LENS** — focal length in mm (24 / 35 / 50 / 85 / 200) and
|
|
58
|
+
aperture intent (deep / shallow). "Cinematic" alone fails.
|
|
59
|
+
6. **LIGHTING** — key, fill, back, practical sources named. "Golden
|
|
60
|
+
hour" requires an angle (low-east 15°, etc.).
|
|
61
|
+
7. **ENVIRONMENT MOTION** — what the world does (wind, water,
|
|
62
|
+
crowd, traffic) and on which beat.
|
|
63
|
+
8. **SECONDARY MOTION** — hair, cloth, dust, breath. Names the
|
|
64
|
+
reactive layer that sells the primary action.
|
|
65
|
+
9. **MOOD** — one emotional read; no compound moods.
|
|
66
|
+
10. **DURATION** — seconds. Integer or one decimal.
|
|
67
|
+
11. **NEGATIVE CONSTRAINTS** — clichés to reject, in load-bearing
|
|
68
|
+
order (top survives truncation). Always names: centered framing,
|
|
69
|
+
symmetric composition, generic "cinematic", soap-opera contrast.
|
|
70
|
+
|
|
71
|
+
### Step 2: Self-review
|
|
72
|
+
|
|
73
|
+
1. Lens length present? "Cinematic" without mm → fail.
|
|
74
|
+
2. Lighting direction present? "Golden hour" without angle → fail.
|
|
75
|
+
3. ACTION names beats, not adjectives?
|
|
76
|
+
4. NEGATIVE block has at least 4 entries, load-bearing on top?
|
|
77
|
+
5. CHARACTER block reuses identity tokens verbatim when a lock exists?
|
|
78
|
+
|
|
79
|
+
Any "no" → revise that block before handing off.
|
|
80
|
+
|
|
81
|
+
### Step 3: Validate
|
|
82
|
+
|
|
83
|
+
1. Output is plain text, one labeled block per line, ready for
|
|
84
|
+
`scripts/ai-video/lib/parse-blueprint.sh` (Phase 3 Step 5).
|
|
85
|
+
2. No provider tokens (no `--aspect`, no `--model`). That is
|
|
86
|
+
`motion-choreographer`'s job.
|
|
87
|
+
|
|
88
|
+
## Output format
|
|
89
|
+
|
|
90
|
+
1. **`scenes/<id>/prompt.txt`** — 11 labeled blocks, one per line,
|
|
91
|
+
ready for the blueprint parser.
|
|
92
|
+
2. **`scenes/<id>/review.md`** — one-paragraph rationale per
|
|
93
|
+
non-obvious directorial choice (lens, light angle, camera move).
|
|
94
|
+
|
|
95
|
+
## Gotcha
|
|
96
|
+
|
|
97
|
+
- The model defaults to centered, on-axis, symmetric — name an
|
|
98
|
+
off-axis or rule-of-thirds camera or it will silently center.
|
|
99
|
+
- "Golden hour" alone reads as a sunset GIF; require a sun angle.
|
|
100
|
+
- ACTION written as a paragraph of adjectives ("dynamically", "powerfully")
|
|
101
|
+
fails — adapters need verbs with beat counts.
|
|
102
|
+
- When `character.json` exists, paraphrasing identity tokens breaks
|
|
103
|
+
Character Lock — copy them verbatim.
|
|
104
|
+
- Negative constraints in the truncated tail get dropped — load-
|
|
105
|
+
bearing ones go first.
|
|
106
|
+
|
|
107
|
+
## Do NOT
|
|
108
|
+
|
|
109
|
+
- Do NOT emit provider-specific tokens (aspect ratio, model id,
|
|
110
|
+
duration flags) — that is `motion-choreographer`'s scope.
|
|
111
|
+
- Do NOT collapse anticipation / action / reaction into one verb.
|
|
112
|
+
- Do NOT use "cinematic" without lens + lighting + camera move.
|
|
113
|
+
- Do NOT invent character details when a `character.json` exists.
|
|
@@ -217,6 +217,23 @@ roadmap:
|
|
|
217
217
|
# mandatory before any "roadmap complete" claim, regardless of cadence.
|
|
218
218
|
quality_cadence: end_of_roadmap
|
|
219
219
|
|
|
220
|
+
# --- Quality / CI execution ---
|
|
221
|
+
quality:
|
|
222
|
+
# Run local quality / CI tasks and tests autonomously (true, false)
|
|
223
|
+
# true = agent runs the quality pipeline whenever work is ready
|
|
224
|
+
# for verification, without asking (default)
|
|
225
|
+
# false = agent asks before running quality tools / tests locally
|
|
226
|
+
# Carve-out: NEW CI gates / smoke tests / test files MUST run
|
|
227
|
+
# locally regardless of this flag — without execution the gate is
|
|
228
|
+
# unverified evidence. Iron Law `verify-before-complete` still applies.
|
|
229
|
+
local_auto_run: true
|
|
230
|
+
|
|
231
|
+
# Wait for remote CI to finish on the PR / pipeline (true, false)
|
|
232
|
+
# true = poll GitHub check-runs / pipeline after push and report
|
|
233
|
+
# green / red before handing back
|
|
234
|
+
# false = push and hand back immediately (default)
|
|
235
|
+
wait_for_remote_ci: false
|
|
236
|
+
|
|
220
237
|
# --- Subagent orchestration ---
|
|
221
238
|
subagents:
|
|
222
239
|
# Model for implementer subagents (empty = same tier as the session model)
|
|
@@ -447,6 +464,8 @@ the canonical narrative lives in
|
|
|
447
464
|
| `hooks.chat_history.script` | path | `scripts/chat_history.py` | Override path to the chat-history CLI. Set only when the script lives outside the standard location. |
|
|
448
465
|
| `pipelines.skill_improvement` | `true`, `false` | `true` | When `true`: propose learning capture after meaningful tasks. When `false`: silent. Included in every profile except `custom`. |
|
|
449
466
|
| `roadmap.quality_cadence` | `end_of_roadmap`, `per_phase`, `per_step` | `end_of_roadmap` | When `/roadmap:process-step|phase|full` runs the project's quality pipeline. Default skips per-step / per-phase runs and gates only the final archival. `per_phase` runs once after every phase; `per_step` is the legacy verbose mode. Step checkboxes and the dashboard are always updated regardless. `verify-before-complete` still requires fresh output before any "roadmap complete" claim. |
|
|
467
|
+
| `quality.local_auto_run` | `true`, `false` | `true` | When `true`: agent runs the project's quality pipeline (`task ci`, `make test`, `npm run check`, PHPStan, ECS, Rector, test suites) autonomously when work is ready for verification. When `false`: agent asks before running locally. **Carve-out**: NEW CI gates / smoke tests / test files MUST run locally regardless of this flag — without execution the new gate is unverified evidence. Iron Law `verify-before-complete` still applies; suppressed runs require the agent to surface the gap before claiming completion. |
|
|
468
|
+
| `quality.wait_for_remote_ci` | `true`, `false` | `false` | When `true`: after `git push`, the agent polls GitHub check-runs / pipeline status on the PR and reports green / red before handing back. When `false`: agent pushes and hands back immediately; the user inspects CI themselves (default — saves agent runtime and tokens). |
|
|
450
469
|
| `subagents.implementer_model` | model alias or empty | _(empty)_ | Model for implementer subagents. Empty = same tier as session model. See [subagent-configuration](../contexts/subagent-configuration.md). |
|
|
451
470
|
| `subagents.judge_model` | model alias or empty | _(empty)_ | Model for judge subagents. Empty = one tier above implementer (opus if sonnet, sonnet if haiku). |
|
|
452
471
|
| `subagents.max_parallel` | integer | `3` | Maximum parallel subagent invocations. `1` serializes. |
|
|
@@ -39,7 +39,7 @@ schema_version: 1
|
|
|
39
39
|
# CI guard: a release bump of `package.json` must update this value
|
|
40
40
|
# in lockstep — see scripts/check_template_pin_drift.py (road-to-
|
|
41
41
|
# portable-runtime-and-update-check P3.3).
|
|
42
|
-
agent_config_version: "2.
|
|
42
|
+
agent_config_version: "2.23.0"
|
|
43
43
|
|
|
44
44
|
# --- Project identity ---
|
|
45
45
|
project:
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
},
|
|
7
7
|
"metadata": {
|
|
8
8
|
"description": "Shared agent configuration \u2014 skills for AI coding tools (Claude Code, Augment, Cursor, Cline, Windsurf, Gemini CLI).",
|
|
9
|
-
"version": "2.
|
|
9
|
+
"version": "2.24.0",
|
|
10
10
|
"keywords": [
|
|
11
11
|
"agent-config",
|
|
12
12
|
"skills",
|
|
@@ -85,6 +85,7 @@
|
|
|
85
85
|
"./.claude/skills/chat-history-import",
|
|
86
86
|
"./.claude/skills/chat-history-learn",
|
|
87
87
|
"./.claude/skills/chat-history-show",
|
|
88
|
+
"./.claude/skills/character-consistency",
|
|
88
89
|
"./.claude/skills/check-current-md",
|
|
89
90
|
"./.claude/skills/check-refs",
|
|
90
91
|
"./.claude/skills/churn-prevention",
|
|
@@ -236,6 +237,7 @@
|
|
|
236
237
|
"./.claude/skills/module-create",
|
|
237
238
|
"./.claude/skills/module-explore",
|
|
238
239
|
"./.claude/skills/module-management",
|
|
240
|
+
"./.claude/skills/motion-choreographer",
|
|
239
241
|
"./.claude/skills/multi-tenancy",
|
|
240
242
|
"./.claude/skills/nextjs-patterns",
|
|
241
243
|
"./.claude/skills/okr-tree-modeling",
|
|
@@ -267,6 +269,7 @@
|
|
|
267
269
|
"./.claude/skills/php-debugging",
|
|
268
270
|
"./.claude/skills/php-service",
|
|
269
271
|
"./.claude/skills/pipeline-strategy",
|
|
272
|
+
"./.claude/skills/pixar-storyteller",
|
|
270
273
|
"./.claude/skills/playwright-architect",
|
|
271
274
|
"./.claude/skills/playwright-testing",
|
|
272
275
|
"./.claude/skills/po-discovery",
|
|
@@ -324,6 +327,7 @@
|
|
|
324
327
|
"./.claude/skills/rule-writing",
|
|
325
328
|
"./.claude/skills/runway-cognition",
|
|
326
329
|
"./.claude/skills/scenario-modeling",
|
|
330
|
+
"./.claude/skills/scene-expander",
|
|
327
331
|
"./.claude/skills/script-writing",
|
|
328
332
|
"./.claude/skills/secrets-management",
|
|
329
333
|
"./.claude/skills/security",
|
|
@@ -367,6 +371,12 @@
|
|
|
367
371
|
"./.claude/skills/using-git-worktrees",
|
|
368
372
|
"./.claude/skills/validate-feature-fit",
|
|
369
373
|
"./.claude/skills/verify-completion-evidence",
|
|
374
|
+
"./.claude/skills/video",
|
|
375
|
+
"./.claude/skills/video-director",
|
|
376
|
+
"./.claude/skills/video-from-script",
|
|
377
|
+
"./.claude/skills/video-scene",
|
|
378
|
+
"./.claude/skills/video-stitch",
|
|
379
|
+
"./.claude/skills/video-storyboard",
|
|
370
380
|
"./.claude/skills/vision-articulation",
|
|
371
381
|
"./.claude/skills/voc-extract",
|
|
372
382
|
"./.claude/skills/voice-and-tone-design",
|
package/CHANGELOG.md
CHANGED
|
@@ -702,6 +702,28 @@ our recommendation order, not its support status.
|
|
|
702
702
|
> that forces a new era split (`# Era: 2.21.x`, etc.) — see
|
|
703
703
|
> [`docs/contracts/CHANGELOG-conventions.md § Era splits`](docs/contracts/CHANGELOG-conventions.md).
|
|
704
704
|
|
|
705
|
+
## [2.24.0](https://github.com/event4u-app/agent-config/compare/2.23.0...2.24.0) (2026-05-17)
|
|
706
|
+
|
|
707
|
+
### Features
|
|
708
|
+
|
|
709
|
+
* **settings:** add quality.local_auto_run / wait_for_remote_ci ([a463bf1](https://github.com/event4u-app/agent-config/commit/a463bf1925a7fb192707a80c696740ba73c30ff9))
|
|
710
|
+
* **ai-video:** banana-arc reference project + shared prompt library ([f3afc6d](https://github.com/event4u-app/agent-config/commit/f3afc6dddff8d70cc17572d43a4839a157d62296))
|
|
711
|
+
* **ai-video:** /video:* command cluster (from-script, scene, storyboard, stitch) ([272f2ec](https://github.com/event4u-app/agent-config/commit/272f2ec82539e58a0b8d14c63bf0806618d88c88))
|
|
712
|
+
* **ai-video:** 3 specialist personas (hollywood-director, pixar-storyboard-artist, ai-video-technical-director) ([b16fb50](https://github.com/event4u-app/agent-config/commit/b16fb50c47336da6d0ad6d3864f9aaf489f91f68))
|
|
713
|
+
* **ai-video:** 5 specialist skills + scene-blueprint schema ([b77ecd9](https://github.com/event4u-app/agent-config/commit/b77ecd9df6d894826f172739d534db54969f9818))
|
|
714
|
+
* **ai-video:** adapter contract + 5 provider adapters + smoke test ([b86f1e5](https://github.com/event4u-app/agent-config/commit/b86f1e53661d6ff0e2a7154eee0136fe77ed6d24))
|
|
715
|
+
|
|
716
|
+
### Bug Fixes
|
|
717
|
+
|
|
718
|
+
* **schema:** trim ai-video-technical-director persona description to 148 chars ([b1afbb1](https://github.com/event4u-app/agent-config/commit/b1afbb1d8d94b62cb49e306d104ae33d84d06f09))
|
|
719
|
+
|
|
720
|
+
### Chores
|
|
721
|
+
|
|
722
|
+
* **ai-video:** wire pipeline into docs, ownership, schemas, marketplace ([18a98fa](https://github.com/event4u-app/agent-config/commit/18a98fa9098d9cc7a07782e9a6a07cf47e63d842))
|
|
723
|
+
* move council audit ([54074f1](https://github.com/event4u-app/agent-config/commit/54074f18db69682f656719b4de231ea8b1cbd152))
|
|
724
|
+
|
|
725
|
+
Tests: 4569 (+10 since 2.23.0)
|
|
726
|
+
|
|
705
727
|
## [2.23.0](https://github.com/event4u-app/agent-config/compare/2.21.0...2.23.0) (2026-05-17)
|
|
706
728
|
|
|
707
729
|
### Features
|
package/README.md
CHANGED
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
# Agent Config — Universal AI Agent OS
|
|
4
4
|
|
|
5
|
-
[](.augment/skills/) [](.augment/rules/) [](.augment/commands/) [](docs/guidelines/) [](docs/personas.md) [](docs/profiles.md) [](docs/architecture.md) [](LICENSE)
|
|
6
6
|
|
|
7
7
|
> **A deterministic orchestration contract for AI agents — audited skills, governance rules, replayable state — usable by developers, founders, and creators alike.**
|
|
8
8
|
|
|
9
|
-
Give your AI agents an audit-disciplined execution layer: **210 skills**, **79 governance rules**, **
|
|
9
|
+
Give your AI agents an audit-disciplined execution layer: **210 skills**, **79 governance rules**, **129 commands**, and a replayable state machine that turns any host agent (Claude Code, Augment, Cursor, Copilot, Windsurf) into a reliable team member.
|
|
10
10
|
|
|
11
11
|
### Pick your profile — six entry paths
|
|
12
12
|
|
|
@@ -543,7 +543,7 @@ Deep version of the profile table above (audience · first commands ·
|
|
|
543
543
|
first skills · preset default per profile):
|
|
544
544
|
[`docs/profiles.md`](docs/profiles.md). Curated featured-commands
|
|
545
545
|
subset: [`docs/featured-commands.md`](docs/featured-commands.md).
|
|
546
|
-
[Browse all
|
|
546
|
+
[Browse all 129 active commands](.agent-src/commands/) · full catalog:
|
|
547
547
|
[`docs/catalog.md`](docs/catalog.md) ·
|
|
548
548
|
[skills only](docs/skills-catalog.md) · [`llms.txt`](llms.txt).
|
|
549
549
|
|
|
@@ -577,7 +577,7 @@ slash-commands) 📌 = informational marker only (no auto-discovery
|
|
|
577
577
|
or manual wiring required)
|
|
578
578
|
|
|
579
579
|
> **What this means in practice:** Claude Code gets the full project-scoped
|
|
580
|
-
> package (rules +
|
|
580
|
+
> package (rules + 216 skills + 129 native commands); Augment Code gets the
|
|
581
581
|
> same content but only from a single global install at `~/.augment/`.
|
|
582
582
|
> Cursor, Cline, Windsurf, Gemini CLI, GitHub Copilot, Roo Code, Codex CLI,
|
|
583
583
|
> and Continue.dev only get the **rules** natively; skills and commands are
|
|
@@ -225,6 +225,34 @@ roadmap:
|
|
|
225
225
|
# only if your team genuinely commits work on a calendar plate.
|
|
226
226
|
horizon_weeks: 0
|
|
227
227
|
|
|
228
|
+
# --- Quality / CI execution ---
|
|
229
|
+
#
|
|
230
|
+
# Controls whether the agent runs the project's quality pipeline
|
|
231
|
+
# (`task ci`, `make test`, `npm run check`, PHPStan, ECS, Rector,
|
|
232
|
+
# test suites) and whether it waits on remote CI after pushing.
|
|
233
|
+
# Iron Law `verify-before-complete` still applies — when these
|
|
234
|
+
# toggles suppress automatic runs, the agent MUST surface that and
|
|
235
|
+
# ask before claiming completion rather than silently skipping
|
|
236
|
+
# verification.
|
|
237
|
+
quality:
|
|
238
|
+
# Run local quality / CI tasks and tests autonomously (true, false)
|
|
239
|
+
# true = agent runs the quality pipeline whenever work is ready
|
|
240
|
+
# for verification, without asking (default)
|
|
241
|
+
# false = agent asks before running quality tools / tests locally
|
|
242
|
+
#
|
|
243
|
+
# Carve-out (always runs regardless of this flag): when the change
|
|
244
|
+
# introduces a NEW CI gate, smoke test, or test file, the agent
|
|
245
|
+
# MUST execute it locally to prove the gate works. Without that
|
|
246
|
+
# execution the new gate is unverified evidence.
|
|
247
|
+
local_auto_run: true
|
|
248
|
+
|
|
249
|
+
# Wait for remote CI to finish on the PR / pipeline (true, false)
|
|
250
|
+
# true = after push, poll GitHub check-runs / pipeline status and
|
|
251
|
+
# report green / red before handing back
|
|
252
|
+
# false = push and hand back immediately; user inspects CI
|
|
253
|
+
# themselves (default — saves agent runtime and tokens)
|
|
254
|
+
wait_for_remote_ci: false
|
|
255
|
+
|
|
228
256
|
# --- Subagent orchestration ---
|
|
229
257
|
#
|
|
230
258
|
# Controls model selection and parallelism for subagent-based workflows
|
|
@@ -12,7 +12,7 @@ grammar for tokens. The dialect is documented in
|
|
|
12
12
|
the question this ADR records is **whether the dialect should default
|
|
13
13
|
ON for all consumers**.
|
|
14
14
|
|
|
15
|
-
The North-Star council ([`council-synthesis.md` § 7](../../../agents/audit-2026-05-14-north-star/council-synthesis.md))
|
|
15
|
+
The North-Star council ([`council-synthesis.md` § 7](../../../agents/council-sessions/audit-2026-05-14-north-star/council-synthesis.md))
|
|
16
16
|
landed split: two voices (token-efficiency, ops) argued default-ON
|
|
17
17
|
saves 40 %+ tokens on long sessions; two voices (UX, governance)
|
|
18
18
|
argued default-ON degrades novice readability and locks in a dialect
|
|
@@ -89,5 +89,5 @@ either ships default-on or gets deprecated. No middle state.
|
|
|
89
89
|
- [`docs/contracts/compression-default-kill-criterion.md`](../../contracts/compression-default-kill-criterion.md) — kill-criterion contract.
|
|
90
90
|
- [`.agent-src.uncompressed/rules/caveman-speak.md`](../../../.agent-src.uncompressed/rules/caveman-speak.md) — dialect definition.
|
|
91
91
|
- [`agents/roadmaps/step-4-measurement-and-benchmark.md`](../../../agents/roadmaps/step-4-measurement-and-benchmark.md) — bench owner.
|
|
92
|
-
- [`agents/audit-2026-05-14-north-star/council-synthesis.md`](../../../agents/audit-2026-05-14-north-star/council-synthesis.md) § 7 — council split.
|
|
92
|
+
- [`agents/audit-2026-05-14-north-star/council-synthesis.md`](../../../agents/council-sessions/audit-2026-05-14-north-star/council-synthesis.md) § 7 — council split.
|
|
93
93
|
- [`agents/roadmaps/step-11-ruflo-parity.md`](../../../agents/roadmaps/step-11-ruflo-parity.md) Phase 4 Step 3 — origin.
|
|
@@ -111,4 +111,4 @@ governance-layer charter.
|
|
|
111
111
|
- [`scripts/cost/budget.mjs`](../../../scripts/cost/budget.mjs) — evaluator.
|
|
112
112
|
- [`scripts/cost/preflight.mjs`](../../../scripts/cost/preflight.mjs) — this hook.
|
|
113
113
|
- [`agents/roadmaps/step-11-ruflo-parity.md`](../../../agents/roadmaps/step-11-ruflo-parity.md) Phase 2 Step 3 — origin.
|
|
114
|
-
- [`agents/audit-2026-05-14-north-star/external-findings.md`](../../../agents/audit-2026-05-14-north-star/external-findings.md) § 2 row "hard stop" — upstream Ruflo pattern this absorbs.
|
|
114
|
+
- [`agents/audit-2026-05-14-north-star/external-findings.md`](../../../agents/council-sessions/audit-2026-05-14-north-star/external-findings.md) § 2 row "hard stop" — upstream Ruflo pattern this absorbs.
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
## Context
|
|
8
8
|
|
|
9
9
|
The North-Star audit
|
|
10
|
-
([`external-findings.md § 5`](../../../agents/audit-2026-05-14-north-star/external-findings.md))
|
|
10
|
+
([`external-findings.md § 5`](../../../agents/council-sessions/audit-2026-05-14-north-star/external-findings.md))
|
|
11
11
|
flagged "smoke contracts" as an absorbed Ruflo pattern: every
|
|
12
12
|
high-traffic tier needs a fast, deterministic, measurable check that
|
|
13
13
|
runs in CI and surfaces regressions before they reach the rules /
|
|
@@ -95,5 +95,5 @@ baseline, CI-dispatched on path-trigger.
|
|
|
95
95
|
- [`scripts/smoke/`](../../../scripts/smoke/) — four scripts.
|
|
96
96
|
- [`.github/workflows/smoke.yml`](../../../.github/workflows/smoke.yml) — CI dispatch.
|
|
97
97
|
- [`taskfiles/engine.yml`](../../../taskfiles/engine.yml) — local aggregator.
|
|
98
|
-
- [`agents/audit-2026-05-14-north-star/external-findings.md`](../../../agents/audit-2026-05-14-north-star/external-findings.md) § 5 — origin pattern.
|
|
98
|
+
- [`agents/audit-2026-05-14-north-star/external-findings.md`](../../../agents/council-sessions/audit-2026-05-14-north-star/external-findings.md) § 5 — origin pattern.
|
|
99
99
|
- [`agents/roadmaps/step-11-ruflo-parity.md`](../../../agents/roadmaps/step-11-ruflo-parity.md) Phase 3 (delivery) + Phase 4 Step 3 (this ADR).
|
package/docs/architecture.md
CHANGED
|
@@ -141,9 +141,9 @@ note, package-internal path-swap, description budget, and the
|
|
|
141
141
|
|
|
142
142
|
| Layer | Count | Purpose |
|
|
143
143
|
|---|---|---|
|
|
144
|
-
| **Skills** |
|
|
144
|
+
| **Skills** | 216 | On-demand expertise — stack analysis (Laravel · Symfony · Zend / Laminas · Next.js · React · Node), testing, Docker, API design, security, observability, … |
|
|
145
145
|
| **Rules** | 79 | Always-active constraints — coding standards, scope control, verification, language-and-tone, agent-authority |
|
|
146
|
-
| **Commands** |
|
|
146
|
+
| **Commands** | 129 | Slash-command workflows — `/commit`, `/create-pr`, `/fix ci`, `/optimize skills`, `/feature plan`, `/work`, `/implement-ticket`, `/compress`, … |
|
|
147
147
|
| **Guidelines** | 73 | Reference material cited by skills — PHP patterns, Eloquent, Playwright, agent-infra, … |
|
|
148
148
|
| **Templates** | 7 | Scaffolds for features, roadmaps, contexts, skills, overrides |
|
|
149
149
|
| **Contexts** | 5 | Shared knowledge about the system itself |
|
package/docs/catalog.md
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
# agent-config — Public Catalog
|
|
2
2
|
|
|
3
|
-
Consumer-facing catalog of all **
|
|
3
|
+
Consumer-facing catalog of all **494 public artefacts** shipped by
|
|
4
4
|
this package. Internal package-maintenance rules and deprecation shims
|
|
5
5
|
are excluded.
|
|
6
6
|
|
|
7
7
|
> **Regenerate:** `python3 scripts/generate_index.py`
|
|
8
8
|
> Auto-generated — do not edit manually.
|
|
9
9
|
|
|
10
|
-
## Skills (
|
|
10
|
+
## Skills (216)
|
|
11
11
|
|
|
12
12
|
| kind | name | extra | description |
|
|
13
13
|
|---|---|---|---|
|
|
14
14
|
| skill | [`accessibility-auditor`](../.agent-src/skills/accessibility-auditor/SKILL.md) | | Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'. |
|
|
15
15
|
| skill | [`activation-design`](../.agent-src/skills/activation-design/SKILL.md) | | Use when defining or auditing the activation event — aha-moment selection, retention correlation, falsifiable definition. Triggers on 'what is our aha moment', 'redefine activation'. |
|
|
16
16
|
| skill | [`adr-create`](../.agent-src/skills/adr-create/SKILL.md) | | Use when capturing an architectural decision — naming the file, picking the next ADR number, filling Status / Context / Decision / Consequences, and regenerating the index — even without saying 'ADR'. |
|
|
17
|
-
| skill | [`adversarial-review`](../.agent-src/skills/adversarial-review/SKILL.md) | | ONLY when user
|
|
17
|
+
| skill | [`adversarial-review`](../.agent-src/skills/adversarial-review/SKILL.md) | | ONLY when user requests adversarial review, devil's advocate, stress-test, OR honest critique of finished work ('poke holes', 'be brutal', 'was hältst du davon') — NOT for routine code/design review. |
|
|
18
18
|
| skill | [`agent-docs-writing`](../.agent-src/skills/agent-docs-writing/SKILL.md) | | Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure. |
|
|
19
19
|
| skill | [`agents-md-thin-root`](../.agent-src/skills/agents-md-thin-root/SKILL.md) | | Use when editing AGENTS.md (package root) or templates/AGENTS.md (consumer) — enforces Thin-Root contract: hard char ceilings, ≥40% pointer ratio, mandatory emergency-triage block. |
|
|
20
20
|
| skill | [`ai-council`](../.agent-src/skills/ai-council/SKILL.md) | | Use when polling external AIs (OpenAI, Anthropic) outside the host session for a neutral second opinion on a roadmap, diff, prompt, or file set — or 'cross-check with another model'. |
|
|
@@ -33,6 +33,7 @@ are excluded.
|
|
|
33
33
|
| skill | [`bug-analyzer`](../.agent-src/skills/bug-analyzer/SKILL.md) | | Use when the user shares a Sentry error, Jira bug ticket, or error description and wants root cause analysis. Also for proactive bug hunting and code audits for hidden bugs. |
|
|
34
34
|
| skill | [`build-buy-partner`](../.agent-src/skills/build-buy-partner/SKILL.md) | | Use when deciding insource vs outsource vs acquire — integration-cost analysis, dependency-risk, optionality preservation. Triggers on 'should we build', 'buy vs partner'. |
|
|
35
35
|
| skill | [`canvas-design`](../.agent-src/skills/canvas-design/SKILL.md) | | Use when creating static visual art — posters, marketing visuals, brand assets, PDF/PNG design pieces — even if the user just says 'design a poster' or 'mach uns ein Visual'. |
|
|
36
|
+
| skill | [`character-consistency`](../.agent-src/skills/character-consistency/SKILL.md) | | Use when a character must stay visually identical across AI video scenes — locks identity tokens (silhouette, palette, wardrobe, prop) in JSON. Triggers 'character lock', 'same character'. |
|
|
36
37
|
| skill | [`check-refs`](../.agent-src/skills/check-refs/SKILL.md) | | Use when verifying cross-references between skills, rules, commands, guidelines, and context documents are not broken after edits, renames, or deletions. |
|
|
37
38
|
| skill | [`churn-prevention`](../.agent-src/skills/churn-prevention/SKILL.md) | | Use when designing churn defence — health-score signals, churn-cause split (involuntary / value / relationship / fit), early-warning loop. Triggers on 'why are accounts leaving'. |
|
|
38
39
|
| skill | [`code-refactoring`](../.agent-src/skills/code-refactoring/SKILL.md) | | Use when the user says "refactor this", "rename class", or "move method". Safely refactors PHP code — finds all callers, updates downstream dependencies, and verifies with quality tools. |
|
|
@@ -127,6 +128,7 @@ are excluded.
|
|
|
127
128
|
| skill | [`migration-creator`](../.agent-src/skills/migration-creator/SKILL.md) | | Use when the user says "create migration", "add column", or "new table". Creates migrations with correct table prefixes, column naming, and multi-tenant awareness. |
|
|
128
129
|
| skill | [`mobile-e2e-strategy`](../.agent-src/skills/mobile-e2e-strategy/SKILL.md) | | Use when picking a mobile E2E framework — Detox / Appium / Maestro / XCUITest / Espresso — or planning iOS Simulator / Android Emulator coverage in CI for RN, Expo, or native apps. |
|
|
129
130
|
| skill | [`module-management`](../.agent-src/skills/module-management/SKILL.md) | | Use when the user says "create module", "explore module", or works within app/Modules/. Understands module structure, auto-loading, route registration, and namespace conventions. |
|
|
131
|
+
| skill | [`motion-choreographer`](../.agent-src/skills/motion-choreographer/SKILL.md) | | Use when turning a locked still + blueprint into a provider-tuned motion prompt — camera, primary + secondary motion, physics, native-audio sync. Triggers 'motion prompt for Veo/Kling/Sora'. |
|
|
130
132
|
| skill | [`multi-tenancy`](../.agent-src/skills/multi-tenancy/SKILL.md) | | Use when working with the multi-tenant architecture — customer DB switching, FQDN routing, tenant isolation, or cross-tenant operations. |
|
|
131
133
|
| skill | [`nextjs-patterns`](../.agent-src/skills/nextjs-patterns/SKILL.md) | | Writes Next.js App Router code — Server Components, Server Actions, RSC boundaries, route handlers, caching, and streaming — matching framework conventions and project architecture. |
|
|
132
134
|
| skill | [`okr-tree-modeling`](../.agent-src/skills/okr-tree-modeling/SKILL.md) | | Use when decomposing a company objective into team OKRs, auditing a draft OKR tree, or stress-testing an existing one for measurability and laddering. |
|
|
@@ -145,6 +147,7 @@ are excluded.
|
|
|
145
147
|
| skill | [`php-debugging`](../.agent-src/skills/php-debugging/SKILL.md) | | Use when debugging PHP with Xdebug — breakpoints, step-through, dual-container setup, IDE configuration, header-based routing — even when the user just says 'why does this blow up on request X'. |
|
|
146
148
|
| skill | [`php-service`](../.agent-src/skills/php-service/SKILL.md) | | Use when the user says 'create service', 'new service class', or needs a PHP service following SOLID principles with proper DI and repository usage. |
|
|
147
149
|
| skill | [`pipeline-strategy`](../.agent-src/skills/pipeline-strategy/SKILL.md) | | Use when designing or auditing a sales pipeline — stage exit criteria, per-cell conversion, coverage reasoning, leak detection. Triggers on 'tighten our pipeline', 'where is the leak'. |
|
|
150
|
+
| skill | [`pixar-storyteller`](../.agent-src/skills/pixar-storyteller/SKILL.md) | | Use when turning an idea into a Pixar-style animation prompt — character sheet, scene, image, video — anchored in emotional beat, want, obstacle. Triggers 'Pixar prompt', 'animated scene'. |
|
|
148
151
|
| skill | [`playwright-architect`](../.agent-src/skills/playwright-architect/SKILL.md) | | Use when shaping a Playwright suite — locator strategy, Page Object boundaries, fixture composition, flake-prevention architecture, CI-vs-local split — even on 'design our E2E tests'. |
|
|
149
152
|
| skill | [`playwright-testing`](../.agent-src/skills/playwright-testing/SKILL.md) | | Use when writing Playwright E2E tests — browser automation, visual regression testing, Page Objects, fixtures, and reliable test patterns. |
|
|
150
153
|
| skill | [`po-discovery`](../.agent-src/skills/po-discovery/SKILL.md) | | Use when shaping a fuzzy product ask into a refined backlog item — problem framing, user-story rewrite, AC tightening — even if the user just says 'help me write this ticket'. |
|
|
@@ -184,6 +187,7 @@ are excluded.
|
|
|
184
187
|
| skill | [`rule-writing`](../.agent-src/skills/rule-writing/SKILL.md) | | Use when creating or editing a rule in .agent-src.uncompressed/rules/ — trigger wording, always vs auto classification, size budget — even when the user just says 'add a rule for X'. |
|
|
185
188
|
| skill | [`runway-cognition`](../.agent-src/skills/runway-cognition/SKILL.md) | | Use when reasoning about cash runway — burn shape, fundraise triggers, layoff-vs-cut-vs-grow decisions. Triggers on 'how long do we have', 'should we raise', 'cut or grow'. |
|
|
186
189
|
| skill | [`scenario-modeling`](../.agent-src/skills/scenario-modeling/SKILL.md) | | Use when constructing base / upside / downside scenarios — three-statement modeling, sensitivity analysis, optionality reasoning. Triggers on 'model the scenarios', 'what if growth halves'. |
|
|
190
|
+
| skill | [`scene-expander`](../.agent-src/skills/scene-expander/SKILL.md) | | Use when expanding a one-line idea into the 12-block Cinematic Scene Blueprint — provider-agnostic, includes optional dialogue + ambient. Triggers 'expand this scene', 'blueprint for X'. |
|
|
187
191
|
| skill | [`script-writing`](../.agent-src/skills/script-writing/SKILL.md) | | Use when adding or editing any script under `scripts/` — `--quiet` flag, `_lib/script_output` helpers, silent Taskfile wiring, Iron-Law carve-outs — even when you just say 'add a check script for X'. |
|
|
188
192
|
| skill | [`secrets-management`](../.agent-src/skills/secrets-management/SKILL.md) | | Use when picking a secrets store, designing rotation, or wiring scanning gates — multi-cloud (Vault, AWS, Azure, GCP), CI, and Kubernetes — decision framework, provider deep-dives externalized. |
|
|
189
193
|
| skill | [`security`](../.agent-src/skills/security/SKILL.md) | | Use when applying security best practices — authentication, authorization via Policies, CSRF protection, input sanitization, rate limiting, or secure coding. |
|
|
@@ -218,6 +222,7 @@ are excluded.
|
|
|
218
222
|
| skill | [`using-git-worktrees`](../.agent-src/skills/using-git-worktrees/SKILL.md) | | Use when starting parallel work in isolation from the current branch — spawn a git worktree with ignore-safety checks and a clean test baseline — even when the user says 'try this on the side'. |
|
|
219
223
|
| skill | [`validate-feature-fit`](../.agent-src/skills/validate-feature-fit/SKILL.md) | | Validate whether a feature request fits the existing codebase — check for duplicates, contradictions, scope creep, and architectural misfit |
|
|
220
224
|
| skill | [`verify-completion-evidence`](../.agent-src/skills/verify-completion-evidence/SKILL.md) | | Use when claiming 'done', suggesting a commit, push, or PR — runs the evidence gate so completion claims come from fresh output in this message, not memory or earlier runs. |
|
|
225
|
+
| skill | [`video-director`](../.agent-src/skills/video-director/SKILL.md) | | Use when turning a scene idea into the 11-block cinematic prompt for live-action AI video — lens, lighting, blocking, motion, negatives. Triggers 'cinematic prompt', 'film-grade scene'. |
|
|
221
226
|
| skill | [`vision-articulation`](../.agent-src/skills/vision-articulation/SKILL.md) | | Use when articulating internal vision — where we're going / why now / why us, founder-mode anchor, distinct from fundraising pitch. Triggers on 'what's our vision', 'why are we doing this'. |
|
|
222
227
|
| skill | [`voc-extract`](../.agent-src/skills/voc-extract/SKILL.md) | | Use when extracting Voice-of-Customer themes from existing artefacts — GH issues, PR threads, Sentry patterns. Triggers on 'what are users saying', 'recurring complaints', 'top themes'. |
|
|
223
228
|
| skill | [`voice-and-tone-design`](../.agent-src/skills/voice-and-tone-design/SKILL.md) | | Use when shaping brand voice — voice attributes, tone-by-context matrix, consistency review. Triggers on 'define our voice', 'why does our copy sound different on every surface'. |
|
|
@@ -304,7 +309,7 @@ are excluded.
|
|
|
304
309
|
| rule | [`user-interaction`](../.agent-src/rules/user-interaction.md) | auto | Asking the user a question, presenting options, or summarizing progress — numbered-options Iron Law, single-recommendation rule, progress indicators |
|
|
305
310
|
| rule | [`verify-before-complete`](../.agent-src/rules/verify-before-complete.md) | always | Verify before completion — run tests and quality tools before claiming done |
|
|
306
311
|
|
|
307
|
-
## Commands (
|
|
312
|
+
## Commands (129)
|
|
308
313
|
|
|
309
314
|
| kind | name | cluster | description |
|
|
310
315
|
|---|---|---|---|
|
|
@@ -431,6 +436,11 @@ are excluded.
|
|
|
431
436
|
| command | [`threat-model`](../.agent-src/commands/threat-model.md) | | Run a pre-implementation threat model on a proposed change — enumerates abuse cases, trust boundaries, and authorization gaps before the first line of code is written |
|
|
432
437
|
| command | [`update-form-request-messages`](../.agent-src/commands/update-form-request-messages.md) | | Sync the messages() method of a FormRequest class — add missing entries, link them to language keys, and clean up stale ones |
|
|
433
438
|
| command | [`upstream-contribute`](../.agent-src/commands/upstream-contribute.md) | | Contribute a learning, skill, rule, or fix from a consumer project back to the shared agent-config package |
|
|
439
|
+
| command | [`video:from-script`](../.agent-src/commands/video/from-script.md) | cluster: video | Drive a script end-to-end through the AI video pipeline — scenes → blueprint → image → operator pick → motion → video → stitch. Dry-run default; network calls require explicit per-turn confirmation. |
|
|
440
|
+
| command | [`video:scene`](../.agent-src/commands/video/scene.md) | cluster: video | Render a single scene from a one-line idea — scene-expander → blueprint → image → operator pick → motion → video. Dry-run default; live calls require explicit per-turn confirmation. |
|
|
441
|
+
| command | [`video:stitch`](../.agent-src/commands/video/stitch.md) | cluster: video | Re-stitch existing clips in `<project>/scenes/*/` after operator edits — no re-render. ffmpeg concat driven by manifest.json. |
|
|
442
|
+
| command | [`video:storyboard`](../.agent-src/commands/video/storyboard.md) | cluster: video | Image-only storyboard — script → scenes → blueprint → image render → contact-sheet PNG via ffmpeg montage. No video calls. |
|
|
443
|
+
| command | [`video`](../.agent-src/commands/video.md) | cluster: video | Video-creation orchestrator — Hollywood-level AI video pipeline. Routes to from-script, scene, storyboard, stitch. |
|
|
434
444
|
| command | [`work`](../.agent-src/commands/work.md) | | Drive a free-form prompt end-to-end through refine → score → plan → implement → test → verify → report — Option-A loop over the `work_engine` Python engine, confidence-band gated, no auto-git. |
|
|
435
445
|
|
|
436
446
|
## Guidelines (73)
|