Theme Manager
Manage the full lifecycle of visual themes and structural templates without requiring a design editor or image-generation provider.
Natural-language routing
Use this skill for requests such as:
- “pick a visual theme”
- “create five hero directions”
- “manage design templates”
- “stop repeating the same aesthetic”
- “adapt this theme for social and presentations”
Theme versus template
| Theme |
Template |
| Visual idea, mood, palette, imagery, texture, typography and motion direction, metaphor, constraints, prohibited motifs |
Content slots, hierarchy, responsive layout, safe zones, dimensions, component mapping, exports and channel variants |
Validated by schemas/theme.schema.json |
Validated by schemas/design-template.schema.json |
Default workflow: choose-theme
- Create or inspect
.aiwg/design/ and link any applicable .aiwg/marketing/ campaign.
- Capture brand, audience, season, channel, content, accessibility, licensing, production, and “do not repeat” constraints in a theme brief.
- Read the registry and audit the most recent six uses. Call
auditThemeRotation from scripts/theme-manager.mjs for every candidate.
- Research timely and evergreen visual evidence. Every research item records URL, publication date when known, access date, evidence type, and license status. Clearly label subjective recommendations.
- Produce five meaningfully different candidates by default. Keep source copy, content density, dimensions, and sample fidelity constant.
- Score brand fit, audience fit, channel fit, accessibility, production feasibility, and distinctiveness. Explain trade-offs; do not select solely by numeric rank.
- Detect provider capability:
- image tool available: create one comparable sample per candidate plus generation metadata;
- unavailable: create one production-grade prompt and layout specification per candidate.
- Present the comparison and pause for human selection or revision. Never infer approval from silence.
- Persist the chosen theme as JSON plus Markdown, selection decision, sources, accessibility notes, usage boundaries, and registry history.
- Hand the selected theme to
template-from-theme or asset-production, then run brand, accessibility, licensing, and technical QA.
Detailed state transitions and gates are in flows/choose-theme.md.
Candidate contract
Each candidate must contain:
- stable ID and distinct name;
- visual language and metaphor;
- palette and typography direction;
- imagery, texture, graphic, and motion direction;
- prohibited motifs and usage boundaries;
- applicability and trade-offs;
- research citations with dates;
- comparable sample specification;
- weighted scores and theme-rotation audit.
Provider fallback
Call selectSampleMode({ imageGeneration: <capability> }) from the bundled script. Specification-only mode is a complete supported outcome, not an error. Both modes must produce a visual sample specification. Generated samples must disclose that production readiness still requires brand, accessibility, licensing, and technical QA.
Persistence
Initialize the workspace:
aiwg run skill theme-manager -- init .
Record an approved selection:
aiwg run skill theme-manager -- record selected-theme.json .
Record a structural template separately:
aiwg run skill theme-manager -- record-template design-template.json .
Audit a candidate against recent history:
aiwg run skill theme-manager -- audit candidate.json .
Registry updates are append-only for usage history. Theme IDs are stable; revisions increment semantic versions.
Web and graphic-production gates
Web deliverables must state breakpoints/reflow, text safe areas, focal-point behavior, 4.5:1 normal-text contrast unless a stricter target applies, non-text contrast, reduced motion, responsive image formats, and performance budgets.
Graphic and print deliverables must state physical/pixel dimensions, RGB/CMYK, resolution, bleed, safe zones, export formats, source format, and naming convention when applicable.
Flow routing
See flows/design-operations.md for all supported flows and explicit mappings to existing roles and asset-production.
Required templates
Use templates/design-operations/ for the brief, candidate card, comparison matrix, visual sample specification, selected theme card, template specification, cross-channel matrix, QA checklist, and registry/history view.
Completion
1---2namespace: aiwg3name: theme-manager4platforms: [all]5description: Research, compare, sample, select, persist, adapt, rotate, and archive reusable visual themes and design templates6triggers:7 - "pick a visual theme"8 - "create five hero directions"9 - "manage design templates"10 - "stop repeating the same aesthetic"11 - "choose a theme for this campaign"12 - "adapt this theme across channels"13 - "audit recent themes for repetition"14script:15 entrypoint: scripts/theme-manager.mjs16 runtime: node17 cwd: project-root18commandHint:19 argumentHint: '<project> [--flow choose-theme|theme-from-brand|template-from-theme|refresh-existing-theme|campaign-visual-direction|web-hero|landing-page-visual-system|social-asset-family|presentation-theme|report-publication-theme|design-review|theme-rotation|archive-theme] [--candidates 5] [--interactive]'20 category: design-operations21 orchestration: true22---2324# Theme Manager2526Manage the full lifecycle of visual themes and structural templates without requiring a design editor or image-generation provider.2728## Natural-language routing2930Use this skill for requests such as:3132- “pick a visual theme”33- “create five hero directions”34- “manage design templates”35- “stop repeating the same aesthetic”36- “adapt this theme for social and presentations”3738## Theme versus template3940| Theme | Template |41|---|---|42| Visual idea, mood, palette, imagery, texture, typography and motion direction, metaphor, constraints, prohibited motifs | Content slots, hierarchy, responsive layout, safe zones, dimensions, component mapping, exports and channel variants |43| Validated by `schemas/theme.schema.json` | Validated by `schemas/design-template.schema.json` |4445## Default workflow: choose-theme46471. Create or inspect `.aiwg/design/` and link any applicable `.aiwg/marketing/` campaign.482. Capture brand, audience, season, channel, content, accessibility, licensing, production, and “do not repeat” constraints in a theme brief.493. Read the registry and audit the most recent six uses. Call `auditThemeRotation` from `scripts/theme-manager.mjs` for every candidate.504. Research timely and evergreen visual evidence. Every research item records URL, publication date when known, access date, evidence type, and license status. Clearly label subjective recommendations.515. Produce five meaningfully different candidates by default. Keep source copy, content density, dimensions, and sample fidelity constant.526. Score brand fit, audience fit, channel fit, accessibility, production feasibility, and distinctiveness. Explain trade-offs; do not select solely by numeric rank.537. Detect provider capability:54 - image tool available: create one comparable sample per candidate plus generation metadata;55 - unavailable: create one production-grade prompt and layout specification per candidate.568. Present the comparison and pause for human selection or revision. Never infer approval from silence.579. Persist the chosen theme as JSON plus Markdown, selection decision, sources, accessibility notes, usage boundaries, and registry history.5810. Hand the selected theme to `template-from-theme` or `asset-production`, then run brand, accessibility, licensing, and technical QA.5960Detailed state transitions and gates are in `flows/choose-theme.md`.6162## Candidate contract6364Each candidate must contain:6566- stable ID and distinct name;67- visual language and metaphor;68- palette and typography direction;69- imagery, texture, graphic, and motion direction;70- prohibited motifs and usage boundaries;71- applicability and trade-offs;72- research citations with dates;73- comparable sample specification;74- weighted scores and theme-rotation audit.7576## Provider fallback7778Call `selectSampleMode({ imageGeneration: <capability> })` from the bundled script. Specification-only mode is a complete supported outcome, not an error. Both modes must produce a visual sample specification. Generated samples must disclose that production readiness still requires brand, accessibility, licensing, and technical QA.7980## Persistence8182Initialize the workspace:8384```bash85aiwg run skill theme-manager -- init .86```8788Record an approved selection:8990```bash91aiwg run skill theme-manager -- record selected-theme.json .92```9394Record a structural template separately:9596```bash97aiwg run skill theme-manager -- record-template design-template.json .98```99100Audit a candidate against recent history:101102```bash103aiwg run skill theme-manager -- audit candidate.json .104```105106Registry updates are append-only for usage history. Theme IDs are stable; revisions increment semantic versions.107108## Web and graphic-production gates109110Web deliverables must state breakpoints/reflow, text safe areas, focal-point behavior, 4.5:1 normal-text contrast unless a stricter target applies, non-text contrast, reduced motion, responsive image formats, and performance budgets.111112Graphic and print deliverables must state physical/pixel dimensions, RGB/CMYK, resolution, bleed, safe zones, export formats, source format, and naming convention when applicable.113114## Flow routing115116See `flows/design-operations.md` for all supported flows and explicit mappings to existing roles and `asset-production`.117118## Required templates119120Use `templates/design-operations/` for the brief, candidate card, comparison matrix, visual sample specification, selected theme card, template specification, cross-channel matrix, QA checklist, and registry/history view.121122## Completion123124- [ ] Five comparable candidates produced unless the operator changed the count125- [ ] Research claims cited and dated126- [ ] Rotation audit completed127- [ ] Human selection recorded128- [ ] Theme and template persisted separately129- [ ] Provider mode disclosed130- [ ] Brand, accessibility, licensing, and technical QA recorded131- [ ] Usage history updated