Keep · astra-grok SKILL.md
Parallel asset swarm
WhenUse when the asset list is large enough to split across parallel workers (props, characters, VFX, modular kits) and collisions are likely without a shared look-lock and naming contract.
StopDo not start the swarm without a shared look-lock and naming convention. Conflict = re-lock look or escalate to integrator — never silent merge of incompatible art. Do not let every worker invent their own palette, scale, or folder layout. Do not merge binary assets without a human or designated integrator pass when overlap exists.
Steps
- Lock look once (look-lock-first). Publish plate paths + `LOOK-LOCK.md` to all workers.
- Write `swarm/CONTRACT.md`: naming (`SM_`, `M_`, `T_`), unit scale, folder layout, poly/texture budgets, delivery format (glTF/FBX/png).
- Split the asset list into non-overlapping work packets. Assign one owner per packet; name an **integrator**.
- Launch parallel workers. Each worker: pull lock + contract → produce asset → Screenshot against look → push to `inbox/<worker>/`.
- Integrator merges on a schedule: verify names, scale, and look; run a quick screenshot-match spot check.
- On conflict (style drift, name collision, scale mismatch): stop the merge, list deltas, either re-lock look formally or send packet back — no silent overwrite.
- Publish `swarm/MERGED.md` with final paths and open conflicts.
Oven
Default: Grok Bot tools — GenerateImage / computerUse / browserUse / Shell / Blender MCP if connected / Screenshot. (Swap this one line for Astra / Fable / Claude.) Parallelism uses a task/executor swarm pattern (multiple workers, one integrator) without relying on internal runner IDs.
Done when
- All packets delivered or explicitly deferred.
- Merged tree follows CONTRACT naming and folders.
- Conflicts documented; none silently absorbed.
- Shared look-lock still authoritative (or a versioned re-lock exists).
Cross-model
Recipe is fixed: one look-lock, contract, parallel packets, integrator merge, conflicts re-lock not silent. Only the OVEN line swaps — how the host spawns workers differs; the contract and anti-silent-merge rule stay identical across Astra, Grok Bot, Fable, and Claude.
LoadOVEN: Default: Grok Bot tools — GenerateImage / computerUse / browserUse / Shell / Blender MCP if connected / Screenshot. (Swap this one line for Astra / Fable / Claude.) Parallelism uses a task/executor swarm pattern (multiple workers, one integrator) without relying on internal runner IDs. Done when: - All packets delivered or explicitly deferred. - Merged tree follows CONTRACT naming and folder
--- name: "Parallel asset swarm" description: "Use when props, characters, or VFX should be built in parallel under one shared look-lock with a single merge owner." --- # Parallel asset swarm ## When Use when the asset list is large enough to split across parallel workers (props, characters, VFX, modular kits) and collisions are likely without a shared look-lock and naming contract. ## Stop - Do not start the swarm without a shared look-lock and naming convention. - Conflict = re-lock look or escalate to integrator — never silent merge of incompatible art. - Do not let every worker invent their own palette, scale, or folder layout. - Do not merge binary assets without a human or designated integrator pass when overlap exists. ## OVEN Default: Grok Bot tools — GenerateImage / computerUse / browserUse / Shell / Blender MCP if connected / Screenshot. (Swap this one line for Astra / Fable / Claude.) Parallelism uses a task/executor swarm pattern (multiple workers, one integrator) without relying on internal runner IDs. ## Steps 1. Lock look once (look-lock-first). Publish plate paths + `LOOK-LOCK.md` to all workers. 2. Write `swarm/CONTRACT.md`: naming (`SM_`, `M_`, `T_`), unit scale, folder layout, poly/texture budgets, delivery format (glTF/FBX/png). 3. Split the asset list into non-overlapping work packets. Assign one owner per packet; name an **integrator**. 4. Launch parallel workers. Each worker: pull lock + contract → produce asset → Screenshot against look → push to `inbox/<worker>/`. 5. Integrator merges on a schedule: verify names, scale, and look; run a quick screenshot-match spot check. 6. On conflict (style drift, name collision, scale mismatch): stop the merge, list deltas, either re-lock look formally or send packet back — no silent overwrite. 7. Publish `swarm/MERGED.md` with final paths and open conflicts. ## Done when - All packets delivered or explicitly deferred. - Merged tree follows CONTRACT naming and folders. - Conflicts documented; none silently absorbed. - Shared look-lock still authoritative (or a versioned re-lock exists). ## Cross-model Recipe is fixed: one look-lock, contract, parallel packets, integrator merge, conflicts re-lock not silent. Only the OVEN line swaps — how the host spawns workers differs; the contract and anti-silent-merge rule stay identical across Astra, Grok Bot, Fable, and Claude.
