A Slack-native creative production pipeline for animation/VFX concepts. Woodpecker (the orchestrator) chains up to 16 specialist Sparks based on an entropy dial (1–16) — from a quick single-pass script draft to a full production-ready package covering story, style, branding, casting, budget, and trend-aware creative direction.
🪵 The orchestrator is named Woodpecker. Throughout this project — code, docs, and Slack messages — "Woodpecker" always refers to the orchestrator that decides which Sparks to run and chains them together.
Built for the Slack Agent Builder Challenge (New Slack Agent track).
Each Spark is a specialist persona-agent with its own role in the creative pipeline. Woodpecker (the orchestrator) chains them together based on your chosen entropy level — low entropy runs just the core 4, high entropy runs all 16 in sequence, each one building on the last.
The essential creative loop. Every pipeline run includes these four.
| Spark | Role | What it does |
|---|---|---|
| Oak | Script / Story Writer | Turns your concept into a tight, vivid scene or story beat (150–250 words) with a clear emotional hook. |
| Willow | Style Advisor | Suggests a specific animation/VFX visual direction (2D cel-shaded, stop-motion, painterly 3D, etc.) and why it fits. |
| Birch | Dialogue Polisher | Extracts or writes natural, character-driven dialogue lines from the scene. |
| Cedar | Critic / Reviewer | Gives a short, honest review — one strength, one weakness, a 1–10 rating. |
Adds character and craft depth on top of the core loop.
| Spark | Role | What it does |
|---|---|---|
| Maple | Character Designer | Proposes a central character — appearance, silhouette, defining trait. |
| Elm | Color Palette Generator | Builds a 4–5 color palette (with hex codes) and the mood it creates. |
| Aspen | Pacing Analyst | Reviews the scene's rhythm and suggests a concrete pacing fix. |
| Rowan | Genre Classifier | Tags the concept with a primary + secondary genre and a comparable existing work. |
Moves the concept toward something pitch-ready.
| Spark | Role | What it does |
|---|---|---|
| Hazel | Target Audience Fit | Identifies the primary age range/audience type and why it resonates. |
| Juniper | Interactive Story Branch | Writes a scene beat and presents 5 lettered choices (A–E) — a real choose-your-path moment, repeatable over multiple rounds. |
| Sandal | Logo / Brand Concept | Describes a simple logo mark concept — shape, motif, typography feel. |
| Larch | Tagline / Marketing Copy | Writes 3 short, punchy taglines for a poster or trailer. |
The deep-cut agents for a full production package.
| Spark | Role | What it does |
|---|---|---|
| Alder | Trend Scout | Flags 1–2 current animation/VFX industry trends the concept could tie into. (MCP-connected: real-time search for live trend data) |
| Mahogany | Voice Casting Suggester | Suggests a voice tone/quality profile for the character (not real actor names). |
| Chestnut | Budget / Scope Estimator | Gives a rough production complexity estimate and key cost driver. |
| Agar | Wildcard / Remix Agent | Injects one unexpected creative twist to make the concept more surprising or memorable. |
Not one of the 16 creative Sparks and not part of any entropy chain. Pinecone runs after every single Spark output, at every entropy level, no exceptions — hardcoded directly into the orchestrator itself, so it can't be skipped by chain configuration. It's rating-only: it never contributes creative content, only a SAFE or BLOCK verdict. A BLOCK verdict halts the entire pipeline immediately and posts a notice instead of the flagged content.
Pinecone is the hard, code-level half of a two-layer safety system — the
soft half is a content ceiling instruction automatically prepended to all
16 Sparks' prompts. See ARCHITECTURE.md for the full design.
entropy 1–4 → Oak, Willow, Birch, Cedar (4 Sparks)
entropy 5–8 → + Maple, Elm, Aspen, Rowan (8 Sparks)
entropy 9–12 → + Hazel, Juniper, Sandal, Larch (12 Sparks)
entropy 13–16 → + Alder, Mahogany, Chestnut, Agar (16 Sparks)
Each Spark's output feeds forward as context into the next Spark in the chain — so by the time Cedar (the critic) runs, it's reviewing the combined output of everything before it, not just the raw concept.
You can also skip the chain entirely and run one Spark on its own:
/ignite-agent oak
IgniteEngine greets first-time users automatically:
- Typing
hi,hello, orheyin a channel it's in triggers a one-time welcome guide - Or click IgniteEngine in the sidebar to open its Home tab any time for a persistent guide with the full Spark roster
This section is for anyone using IgniteEngine inside Slack — no setup or code knowledge needed.
Getting started
- Say
hi,hello, orheyin a channel IgniteEngine is in — you'll get a one-time welcome guide the first time - Or click IgniteEngine in the sidebar to open its Home tab any time for the same guide plus the full Spark roster
Basic usage
/ignite woodpecker searches for pinecone in the forest of 16 woods
Runs the default pipeline (entropy 4 — Oak, Willow, Birch, Cedar).
Controlling pipeline depth
/ignite woodpecker searches for pinecone in the forest of 16 woods --entropy 12
Higher entropy (1–16) runs more Sparks — deeper development, more angles covered, longer output. See the entropy table above for exactly which Sparks run at which level.
Interactive story mode (entropy 9+)
/ignite woodpecker searches for pinecone in the forest of 16 woods --entropy 10 --rounds 4
At entropy 9+, Juniper kicks in: you'll get a scene beat with 5 buttons
(A–E) to choose what happens next. --rounds controls how many rounds
before the story concludes (default 3, max 10). Once concluded, the
remaining Sparks in the chain (branding, tagline, critic, etc.) run
automatically using your full story as context.
Running one Spark on its own
/ignite-agent oak
Skips the full pipeline and runs just one Spark. Swap oak for any
Spark name (lowercase) — see the tables above for the full list.
Rerolling a result Every Spark's response has a 🔁 Reroll button — click it to regenerate just that one piece without rerunning the whole pipeline.
If something gets blocked If you see a ⛔ message, Pinecone flagged the content above IgniteEngine's 16+ ceiling. Rephrase your concept toward a milder direction and try again.
- MCP/AI integration: entropy-based orchestration + LLM-driven persona agents (Alder is designed as the MCP-connected trend-scout agent — wiring a real MCP server for live trend data is the next concrete step)
- Two-layer safety system: a soft prompt-level content ceiling applied to
all 16 Sparks, plus Pinecone as a hard, unbypassable code-level check
after every generation — see
ARCHITECTURE.md - Juniper's interactive story branch is a genuine pause/resume loop driven by real Slack button clicks, not a simulated multi-turn conversation
- Reroll lets you regenerate any single Spark's output without rerunning the whole pipeline
- Data templating: sandbox uses Empty template to avoid the placeholder-user invite cap issue
- Block Kit modal for
/ignite(concept + entropy slider + manual agent picker) - Real MCP server wiring for Alder (trend data) and Juniper (moderation API)
- Persistent run history (currently in-memory only)
Running this yourself or looking at how it's built? See SETUP.md for
installation/config steps and ARCHITECTURE.md for the full system design.