@fredcallagan/arn-spark 5.1.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.
Files changed (130) hide show
  1. package/.claude-plugin/plugin.json +9 -0
  2. package/.opencode/plugins/arn-spark.js +272 -0
  3. package/package.json +17 -0
  4. package/plugins/arn-spark/.claude-plugin/plugin.json +9 -0
  5. package/plugins/arn-spark/LICENSE +21 -0
  6. package/plugins/arn-spark/README.md +25 -0
  7. package/plugins/arn-spark/agents/arn-spark-brand-strategist.md +299 -0
  8. package/plugins/arn-spark/agents/arn-spark-dev-env-builder.md +228 -0
  9. package/plugins/arn-spark/agents/arn-spark-doctor.md +92 -0
  10. package/plugins/arn-spark/agents/arn-spark-forensic-investigator.md +181 -0
  11. package/plugins/arn-spark/agents/arn-spark-market-researcher.md +232 -0
  12. package/plugins/arn-spark/agents/arn-spark-marketing-pm.md +225 -0
  13. package/plugins/arn-spark/agents/arn-spark-persona-architect.md +259 -0
  14. package/plugins/arn-spark/agents/arn-spark-persona-impersonator.md +183 -0
  15. package/plugins/arn-spark/agents/arn-spark-product-strategist.md +191 -0
  16. package/plugins/arn-spark/agents/arn-spark-prototype-builder.md +497 -0
  17. package/plugins/arn-spark/agents/arn-spark-scaffolder.md +228 -0
  18. package/plugins/arn-spark/agents/arn-spark-spike-runner.md +209 -0
  19. package/plugins/arn-spark/agents/arn-spark-style-capture.md +196 -0
  20. package/plugins/arn-spark/agents/arn-spark-tech-evaluator.md +229 -0
  21. package/plugins/arn-spark/agents/arn-spark-ui-interactor.md +235 -0
  22. package/plugins/arn-spark/agents/arn-spark-use-case-writer.md +280 -0
  23. package/plugins/arn-spark/agents/arn-spark-ux-judge.md +215 -0
  24. package/plugins/arn-spark/agents/arn-spark-ux-specialist.md +200 -0
  25. package/plugins/arn-spark/agents/arn-spark-visual-sketcher.md +285 -0
  26. package/plugins/arn-spark/agents/arn-spark-visual-test-engineer.md +224 -0
  27. package/plugins/arn-spark/references/copilot-tools.md +62 -0
  28. package/plugins/arn-spark/skills/arn-brainstorming/SKILL.md +520 -0
  29. package/plugins/arn-spark/skills/arn-brainstorming/references/add-feature-flow.md +155 -0
  30. package/plugins/arn-spark/skills/arn-spark-arch-vision/SKILL.md +226 -0
  31. package/plugins/arn-spark/skills/arn-spark-arch-vision/references/architecture-vision-template.md +153 -0
  32. package/plugins/arn-spark/skills/arn-spark-arch-vision/references/technology-evaluation-guide.md +86 -0
  33. package/plugins/arn-spark/skills/arn-spark-clickable-prototype/SKILL.md +471 -0
  34. package/plugins/arn-spark/skills/arn-spark-clickable-prototype/references/clickable-prototype-criteria.md +65 -0
  35. package/plugins/arn-spark/skills/arn-spark-clickable-prototype/references/journey-template.md +62 -0
  36. package/plugins/arn-spark/skills/arn-spark-clickable-prototype/references/review-report-template.md +75 -0
  37. package/plugins/arn-spark/skills/arn-spark-clickable-prototype/references/showcase-capture-guide.md +213 -0
  38. package/plugins/arn-spark/skills/arn-spark-clickable-prototype-teams/SKILL.md +642 -0
  39. package/plugins/arn-spark/skills/arn-spark-clickable-prototype-teams/references/debate-protocol.md +242 -0
  40. package/plugins/arn-spark/skills/arn-spark-clickable-prototype-teams/references/debate-review-report-template.md +161 -0
  41. package/plugins/arn-spark/skills/arn-spark-clickable-prototype-teams/references/expert-interaction-review-template.md +152 -0
  42. package/plugins/arn-spark/skills/arn-spark-concept-review/SKILL.md +350 -0
  43. package/plugins/arn-spark/skills/arn-spark-concept-review/references/conflict-resolution-protocol.md +145 -0
  44. package/plugins/arn-spark/skills/arn-spark-concept-review/references/review-report-template.md +185 -0
  45. package/plugins/arn-spark/skills/arn-spark-dev-setup/SKILL.md +366 -0
  46. package/plugins/arn-spark/skills/arn-spark-dev-setup/references/dev-setup-checklist.md +84 -0
  47. package/plugins/arn-spark/skills/arn-spark-dev-setup/references/dev-setup-template.md +205 -0
  48. package/plugins/arn-spark/skills/arn-spark-discover/SKILL.md +303 -0
  49. package/plugins/arn-spark/skills/arn-spark-discover/references/competitive-landscape-template.md +87 -0
  50. package/plugins/arn-spark/skills/arn-spark-discover/references/discovery-questions.md +120 -0
  51. package/plugins/arn-spark/skills/arn-spark-discover/references/persona-profile-template.md +97 -0
  52. package/plugins/arn-spark/skills/arn-spark-discover/references/product-concept-template.md +253 -0
  53. package/plugins/arn-spark/skills/arn-spark-ensure-config/SKILL.md +23 -0
  54. package/plugins/arn-spark/skills/arn-spark-ensure-config/references/ensure-config.md +388 -0
  55. package/plugins/arn-spark/skills/arn-spark-ensure-config/references/step-0-fast-path.md +25 -0
  56. package/plugins/arn-spark/skills/arn-spark-ensure-config/scripts/cache-check.sh +127 -0
  57. package/plugins/arn-spark/skills/arn-spark-feature-extract/SKILL.md +483 -0
  58. package/plugins/arn-spark/skills/arn-spark-feature-extract/references/feature-backlog-template.md +176 -0
  59. package/plugins/arn-spark/skills/arn-spark-feature-extract/references/feature-entry-template.md +209 -0
  60. package/plugins/arn-spark/skills/arn-spark-help/SKILL.md +149 -0
  61. package/plugins/arn-spark/skills/arn-spark-help/references/pipeline-map.md +211 -0
  62. package/plugins/arn-spark/skills/arn-spark-init/SKILL.md +312 -0
  63. package/plugins/arn-spark/skills/arn-spark-init/references/agent-models-presets/all-opus.md +23 -0
  64. package/plugins/arn-spark/skills/arn-spark-init/references/agent-models-presets/balanced.md +23 -0
  65. package/plugins/arn-spark/skills/arn-spark-init/references/bkt-setup.md +55 -0
  66. package/plugins/arn-spark/skills/arn-spark-init/references/jira-mcp-setup.md +61 -0
  67. package/plugins/arn-spark/skills/arn-spark-init/references/platform-labels.md +97 -0
  68. package/plugins/arn-spark/skills/arn-spark-naming/SKILL.md +275 -0
  69. package/plugins/arn-spark/skills/arn-spark-naming/references/creative-brief-template.md +146 -0
  70. package/plugins/arn-spark/skills/arn-spark-naming/references/naming-methodology.md +237 -0
  71. package/plugins/arn-spark/skills/arn-spark-naming/references/naming-report-template.md +122 -0
  72. package/plugins/arn-spark/skills/arn-spark-naming/references/trademark-databases.md +88 -0
  73. package/plugins/arn-spark/skills/arn-spark-naming/references/whois-server-map.md +164 -0
  74. package/plugins/arn-spark/skills/arn-spark-naming/scripts/whois-check.js +502 -0
  75. package/plugins/arn-spark/skills/arn-spark-naming/scripts/whois-check.py +533 -0
  76. package/plugins/arn-spark/skills/arn-spark-prototype-lock/SKILL.md +260 -0
  77. package/plugins/arn-spark/skills/arn-spark-prototype-lock/references/lock-report-template.md +68 -0
  78. package/plugins/arn-spark/skills/arn-spark-prototype-lock/references/pretooluse-hook-template.json +35 -0
  79. package/plugins/arn-spark/skills/arn-spark-prototype-lock/references/prototype-guardrail-rules.md +38 -0
  80. package/plugins/arn-spark/skills/arn-spark-report/SKILL.md +144 -0
  81. package/plugins/arn-spark/skills/arn-spark-report/references/issue-template.md +81 -0
  82. package/plugins/arn-spark/skills/arn-spark-report/references/spark-knowledge-base.md +293 -0
  83. package/plugins/arn-spark/skills/arn-spark-scaffold/SKILL.md +239 -0
  84. package/plugins/arn-spark/skills/arn-spark-scaffold/references/scaffold-checklist.md +79 -0
  85. package/plugins/arn-spark/skills/arn-spark-scaffold/references/scaffold-summary-template.md +74 -0
  86. package/plugins/arn-spark/skills/arn-spark-spike/SKILL.md +209 -0
  87. package/plugins/arn-spark/skills/arn-spark-spike/references/spike-report-template.md +123 -0
  88. package/plugins/arn-spark/skills/arn-spark-static-prototype/SKILL.md +362 -0
  89. package/plugins/arn-spark/skills/arn-spark-static-prototype/references/review-report-template.md +65 -0
  90. package/plugins/arn-spark/skills/arn-spark-static-prototype/references/showcase-capture-guide.md +153 -0
  91. package/plugins/arn-spark/skills/arn-spark-static-prototype/references/static-prototype-criteria.md +54 -0
  92. package/plugins/arn-spark/skills/arn-spark-static-prototype-teams/SKILL.md +518 -0
  93. package/plugins/arn-spark/skills/arn-spark-static-prototype-teams/references/debate-protocol.md +230 -0
  94. package/plugins/arn-spark/skills/arn-spark-static-prototype-teams/references/debate-review-report-template.md +148 -0
  95. package/plugins/arn-spark/skills/arn-spark-static-prototype-teams/references/expert-visual-review-template.md +130 -0
  96. package/plugins/arn-spark/skills/arn-spark-stress-competitive/SKILL.md +166 -0
  97. package/plugins/arn-spark/skills/arn-spark-stress-competitive/references/competitive-report-template.md +139 -0
  98. package/plugins/arn-spark/skills/arn-spark-stress-competitive/references/gap-analysis-framework.md +111 -0
  99. package/plugins/arn-spark/skills/arn-spark-stress-interview/SKILL.md +257 -0
  100. package/plugins/arn-spark/skills/arn-spark-stress-interview/references/interview-protocol.md +140 -0
  101. package/plugins/arn-spark/skills/arn-spark-stress-interview/references/interview-report-template.md +165 -0
  102. package/plugins/arn-spark/skills/arn-spark-stress-interview/references/persona-casting-spec.md +138 -0
  103. package/plugins/arn-spark/skills/arn-spark-stress-premortem/SKILL.md +181 -0
  104. package/plugins/arn-spark/skills/arn-spark-stress-premortem/references/premortem-protocol.md +112 -0
  105. package/plugins/arn-spark/skills/arn-spark-stress-premortem/references/premortem-report-template.md +158 -0
  106. package/plugins/arn-spark/skills/arn-spark-stress-prfaq/SKILL.md +206 -0
  107. package/plugins/arn-spark/skills/arn-spark-stress-prfaq/references/prfaq-report-template.md +139 -0
  108. package/plugins/arn-spark/skills/arn-spark-stress-prfaq/references/prfaq-workflow.md +118 -0
  109. package/plugins/arn-spark/skills/arn-spark-style-explore/SKILL.md +281 -0
  110. package/plugins/arn-spark/skills/arn-spark-style-explore/references/style-brief-template.md +198 -0
  111. package/plugins/arn-spark/skills/arn-spark-use-cases/SKILL.md +359 -0
  112. package/plugins/arn-spark/skills/arn-spark-use-cases/references/expert-review-template.md +94 -0
  113. package/plugins/arn-spark/skills/arn-spark-use-cases/references/review-protocol.md +150 -0
  114. package/plugins/arn-spark/skills/arn-spark-use-cases/references/use-case-index-template.md +108 -0
  115. package/plugins/arn-spark/skills/arn-spark-use-cases/references/use-case-template.md +125 -0
  116. package/plugins/arn-spark/skills/arn-spark-use-cases-teams/SKILL.md +306 -0
  117. package/plugins/arn-spark/skills/arn-spark-use-cases-teams/references/debate-protocol.md +272 -0
  118. package/plugins/arn-spark/skills/arn-spark-use-cases-teams/references/review-report-template.md +112 -0
  119. package/plugins/arn-spark/skills/arn-spark-visual-readiness/SKILL.md +293 -0
  120. package/plugins/arn-spark/skills/arn-spark-visual-readiness/references/readiness-checklist.md +196 -0
  121. package/plugins/arn-spark/skills/arn-spark-visual-sketch/SKILL.md +376 -0
  122. package/plugins/arn-spark/skills/arn-spark-visual-sketch/references/aesthetic-philosophy.md +210 -0
  123. package/plugins/arn-spark/skills/arn-spark-visual-sketch/references/sketch-gallery-guide.md +282 -0
  124. package/plugins/arn-spark/skills/arn-spark-visual-sketch/references/visual-direction-template.md +174 -0
  125. package/plugins/arn-spark/skills/arn-spark-visual-strategy/SKILL.md +447 -0
  126. package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/baseline-capture-script-template.js +89 -0
  127. package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/journey-schema.md +375 -0
  128. package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/spike-checklist.md +122 -0
  129. package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/strategy-layers-guide.md +132 -0
  130. package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/visual-strategy-template.md +141 -0
@@ -0,0 +1,118 @@
1
+ # PR/FAQ Workflow
2
+
3
+ Two-phase workflow for the Amazon PR/FAQ stress test method. This document is consumed by the `arn-spark-stress-prfaq` skill to orchestrate the marketing PM agent across draft and critique modes.
4
+
5
+ ## Overview
6
+
7
+ The PR/FAQ method forces a product concept to pass two tests:
8
+
9
+ 1. **Can you tell a compelling story about this product?** If the press release is unconvincing, the product concept has messaging problems that likely trace to concept clarity problems.
10
+ 2. **Does the story hold up under scrutiny?** If adversarial questions expose crack points, the product concept has structural weaknesses that need addressing before architecture commitment.
11
+
12
+ The two phases use **separate agent invocations** by design. Same-context self-critique tends toward rubber-stamping -- the critic unconsciously defends what the drafter wrote. Separate invocations force genuine adversarial evaluation.
13
+
14
+ ---
15
+
16
+ ## Phase 1: Draft Mode
17
+
18
+ ### Goal
19
+
20
+ Produce a genuinely compelling press release and FAQ that represents the best possible public story of the product. The draft must be good enough that a real reader would want to try the product -- not a placeholder exercise with bracketed terms.
21
+
22
+ ### Agent Invocation
23
+
24
+ Invoke the `arn-spark-marketing-pm` agent in **draft mode** via the Task tool, passing the model from `.arness/agent-models/spark.md` as the `model` parameter (see `plugins/arn-spark/skills/arn-spark-ensure-config/references/ensure-config.md` "Dispatch convention" for fallback). Context:
25
+ - Full product concept
26
+ - Product pillars (to anchor messaging)
27
+ - Operating mode: `draft`
28
+
29
+ ### Expected Output
30
+
31
+ 1. **Press Release (400-600 words)** following Amazon PR/FAQ format:
32
+ - Headline -- news-worthy, not a tagline
33
+ - Subheading -- who this is for and what it changes
34
+ - Problem paragraph -- specific, grounded in real scenarios
35
+ - Solution paragraph -- user experience focused, not technology focused
36
+ - Customer quote -- realistic, from a target persona, referencing a specific workflow scenario
37
+ - Product details paragraph -- features organized by value, not architecture
38
+ - Call to action -- specific next step
39
+
40
+ 2. **Customer FAQ (5-8 entries)** -- questions a potential customer would ask:
41
+ - Practical usage (how it works in their workflow)
42
+ - Pricing and access
43
+ - Migration and onboarding
44
+ - Data handling and privacy
45
+ - Integration with existing tools
46
+ - Scope boundaries framed as focus, not limitation
47
+
48
+ 3. **Internal FAQ (3-5 entries)** -- harder questions the team asks themselves:
49
+ - Why this will succeed where competitors failed
50
+ - Biggest technical risk
51
+ - Go-to-market strategy for first 1000 users
52
+ - Key assumption risk
53
+ - Success metrics for first 90 days
54
+
55
+ ### Quality Check
56
+
57
+ Before proceeding to Phase 2, verify the draft is substantive:
58
+ - Press release should be 400-600 words, not a skeleton
59
+ - Customer FAQ answers should be concrete, not "it depends"
60
+ - Internal FAQ questions should be genuinely hard, not softballs
61
+ - Customer quote should sound like a real person, not a marketing team
62
+
63
+ If the draft is too thin or generic, retry with more specific context from the product concept -- highlight specific features, personas, and competitive positioning to ground the draft.
64
+
65
+ ---
66
+
67
+ ## Phase 2: Critique Mode
68
+
69
+ ### Goal
70
+
71
+ Adversarially evaluate the draft to find every place where the messaging makes a claim the product concept cannot fully support. The critique is not about copywriting quality -- it is about concept integrity.
72
+
73
+ ### Agent Invocation
74
+
75
+ Invoke the `arn-spark-marketing-pm` agent in **critique mode** via the Task tool, passing the model from `.arness/agent-models/spark.md` as the `model` parameter (see `plugins/arn-spark/skills/arn-spark-ensure-config/references/ensure-config.md` "Dispatch convention" for fallback). Context:
76
+ - Full product concept (same as Phase 1)
77
+ - Product pillars (same as Phase 1)
78
+ - Operating mode: `critique`
79
+ - Draft output from Phase 1 (complete press release + both FAQs)
80
+
81
+ **Critical:** This MUST be a separate invocation from Phase 1. Do not pass Phase 1 context or conversation history. The critic has no memory of being the drafter.
82
+
83
+ ### Expected Output
84
+
85
+ 1. **Adversarial Questions (5-8)** -- questions the PR dodges:
86
+ - Each with: the question, why the PR dodges it, damage potential (High/Medium/Low)
87
+ - Focus on questions that expose concept weaknesses, not messaging weaknesses
88
+
89
+ 2. **Crack Points (3-5)** -- gaps between messaging claims and concept substance:
90
+ - What the concept claims (from the PR/FAQ)
91
+ - What the question reveals (the gap or contradiction)
92
+ - What needs strengthening (actionable recommendation for the concept, not the copy)
93
+
94
+ 3. **Recommended Concept Updates** -- standardized table derived from crack points
95
+
96
+ 4. **Unresolved Questions** -- questions the critique raised that need real data to answer
97
+
98
+ ### Quality Check
99
+
100
+ Verify the critique is genuinely adversarial:
101
+ - Adversarial questions should target concept substance, not word choice
102
+ - Crack points should identify real gaps, not cosmetic issues
103
+ - Damage potential ratings should be justified, not all "Medium"
104
+ - Recommendations should change the product concept, not the press release
105
+
106
+ If the critique is too soft, retry with explicit instruction: "The critique should make the product team uncomfortable. If no crack point makes someone say 'we need to address that before we build this,' the critique is too gentle."
107
+
108
+ ---
109
+
110
+ ## Rationale for Separate Invocations
111
+
112
+ The two-mode architecture exists because of a well-documented cognitive bias: **consistency bias in self-evaluation.** When the same agent drafts and critiques in a single context:
113
+
114
+ 1. The critic has access to the drafter's reasoning and intent, making it harder to challenge assumptions that "obviously" made sense during drafting
115
+ 2. The critic unconsciously defends claims it just wrote, finding reasons they work rather than reasons they fail
116
+ 3. Questions tend to be answerable (because the critic already knows the answers) rather than genuinely probing
117
+
118
+ Separate invocations break this pattern by forcing the critic to evaluate the draft as an outsider -- the same way a real journalist, competitor, or skeptical customer would encounter the messaging.
@@ -0,0 +1,281 @@
1
+ ---
2
+ name: arn-spark-style-explore
3
+ description: >-
4
+ This skill should be used when the user says "style explore", "arn style",
5
+ "visual style", "explore styles", "UI style", "look and feel",
6
+ "design direction", "pick a style", "choose colors", "theme the app",
7
+ "visual direction", "style guide", or wants to explore and define the visual
8
+ design direction for their project through guided conversation, producing a
9
+ style brief document with implementable toolkit configuration.
10
+ version: 1.0.0
11
+ ---
12
+
13
+ # Arness Style Explore
14
+
15
+ Explore visual style direction for the project through iterative conversation, aided by the `arn-spark-ux-specialist` agent (a greenfield agent in this plugin) for design guidance, optionally the `arn-spark-style-capture` agent for capturing reference website screenshots, and optionally the `arn-spark-prototype-builder` agent for sample screens. This is a conversational skill that runs in normal conversation (NOT plan mode). The primary artifact is a **style brief document** with implementable toolkit configuration.
16
+
17
+ This skill covers the visual identity of the product: colors, typography, spacing, component customization, and animation approach. It translates these into concrete configuration for the project's CSS framework and component library. It does not create full application screens -- that is `/arn-spark-static-prototype` and `/arn-spark-clickable-prototype`'s job.
18
+
19
+ ## Prerequisites
20
+
21
+ A product concept document should exist for context on target users and product personality. Check in order:
22
+
23
+ 1. Read the project's `arness.md` for a `## Arness` section. If found, check the configured Vision directory for `product-concept.md`
24
+ 2. If no `## Arness` section found, check `.arness/vision/product-concept.md` at the project root
25
+
26
+ **If a product concept is found:** Read it to inform style recommendations.
27
+
28
+ **If no product concept is found:** Proceed with the user's description of the product. Style exploration does not hard-require a product concept.
29
+
30
+ **Visual direction (recommended):**
31
+ 1. Check the configured Vision directory for `visual-direction.md`
32
+ 2. If no `## Arness` section found, check `.arness/vision/visual-direction.md` at the project root
33
+
34
+ **If a visual direction is found:** Read it. The visual direction provides primary visual grounding from `/arn-spark-visual-sketch`: selected direction characteristics (color mood, typography feel, component style, layout density), approximate color palette with hex values, CSS variables used in the sketch, screenshot paths in the visual grounding `designs/` directory, **creative anchors** — tone commitment, differentiation anchor, and Design Thinking answers that capture the creative intent behind the direction, and **animation and motion context** — motion philosophy, key patterns, animation approach used, and whether animation is integral to the direction's identity. Use this as the starting point for style exploration rather than asking the user to describe a direction from scratch. The creative anchors are the direction's DNA — preserve them through token refinement rather than diluting them into generic defaults.
35
+
36
+ **If no visual direction is found:** Proceed normally with the user's verbal description. Visual direction is optional -- style exploration works without it.
37
+
38
+ The project should be scaffolded with a UI toolkit already configured (CSS framework and component library installed via `/arn-spark-scaffold`). Check:
39
+
40
+ 1. Read the project's `package.json` to identify installed CSS framework and component library
41
+ 2. Read the architecture vision for UI framework and toolkit choices
42
+
43
+ **If the project is scaffolded:** Use the installed toolkit for style configuration.
44
+
45
+ **If the project is NOT scaffolded:** Inform the user: "The project does not appear to be scaffolded yet. I can explore style direction conceptually, but the toolkit configuration section will be more useful after running `/arn-spark-scaffold`." Proceed with the exploration -- the style brief can be written without toolkit config and updated later.
46
+
47
+ Determine the output directory:
48
+ 1. Read the project's `arness.md` and check for a `## Arness` section
49
+ 2. If found, extract the configured Vision directory path — this is the source of truth
50
+ 3. If no `## Arness` section exists or Arness Spark fields are missing, inform the user: "Arness Spark is not configured for this project yet. Run `/arn-brainstorming` to get started — it will set everything up automatically." Do not proceed without it.
51
+ 4. If the output directory does not exist, create it
52
+
53
+ Determine the visual grounding directory:
54
+ 1. Read the project's `arness.md` `## Arness` section
55
+ 2. If found, extract the Visual grounding directory path
56
+ 3. If not found, fall back to `.arness/visual-grounding`
57
+ 4. Create the directory and subfolders (`references/`, `designs/`, `brand/`) if they do not exist
58
+
59
+ Check for design tool integration:
60
+ 1. Read the `## Arness` section for `Figma` and `Canva` fields
61
+ 2. Only offer Figma/Canva integration in Step 1 if the corresponding field is `yes`
62
+ 3. If the field is `no` or missing, do not mention or attempt to use that design tool
63
+
64
+ ## Workflow
65
+
66
+ ### Step 1: Gather Context
67
+
68
+ Load available context:
69
+
70
+ - **Product concept:** Target users, core experience, product personality
71
+ - **Architecture vision:** UI framework, platform (desktop, web, mobile)
72
+ - **Scaffold results:** Installed CSS framework, component library, icon library
73
+ - **Visual direction (if found):** Selected direction characteristics, approximate color palette, CSS variables used in the sketch, screenshot paths, creative anchors (tone commitment, differentiation anchor, Design Thinking), animation context (motion philosophy, key patterns, animation approach, role)
74
+
75
+ Present the context to the user:
76
+
77
+ **If a visual direction exists:**
78
+
79
+ "Your project uses **[UI framework]** with **[CSS framework]** and **[component library]**. The product is [brief description from product concept, targeting audience].
80
+
81
+ A visual direction was established via `/arn-spark-visual-sketch`. The selected direction is: [summary from visual-direction.md — overall feel, color mood, typography, layout approach]. The creative anchors are: **Tone:** [tone commitment], **Differentiation:** [differentiation anchor].
82
+
83
+ [If screenshots exist:] Screenshots of the sketched screens are available at [paths].
84
+
85
+ I will use this as the starting point for the style brief."
86
+
87
+ Ask the user:
88
+
89
+ > **How would you like to proceed with this visual direction?**
90
+ > 1. **Proceed** — Build a style proposal based on this direction
91
+ > 2. **Adjust** — Refine specific aspects before proceeding
92
+ > 3. **Different direction** — Take it in a completely different direction
93
+
94
+ **If no visual direction exists:**
95
+
96
+ "Your project uses **[UI framework]** with **[CSS framework]** and **[component library]**. The product is [brief description from product concept, targeting audience].
97
+
98
+ Adapt the context summary based on what was found. If the project is not scaffolded, omit toolkit details and present only what is known (e.g., product description and platform context).
99
+
100
+ Describe the visual feel you want. You can:
101
+ - **Use words:** minimal, dark, playful, professional, etc.
102
+ - **Reference other apps:** 'I like how Linear looks' or 'something like Discord'
103
+ - **Share URLs:** Paste a URL and I can capture a screenshot to analyze the design
104
+ - **Share screenshots:** Paste or reference image files
105
+
106
+ Some starting points if you are not sure:
107
+ - **Minimal and clean** -- lots of whitespace, muted colors, thin borders
108
+ - **Dark with neon accents** -- dark backgrounds, vibrant accent colors, tech feel
109
+ - **Warm and approachable** -- rounded corners, warm colors, friendly tone
110
+ - **Professional and dense** -- compact layout, neutral palette, data-focused
111
+
112
+ Or describe your own direction."
113
+
114
+ After the user describes their initial direction, ask about visual assets:
115
+
116
+ Ask the user:
117
+
118
+ **"Do you have any visual assets to guide the style direction?"**
119
+
120
+ Options:
121
+ 1. **Reference images** — Screenshots or URLs of apps/sites you admire (inspirational)
122
+ 2. **Design mockups** — Figma, Canva, or exported screen designs (specification)
123
+ 3. **Brand assets** — Logos, brand guidelines, color specs (constraints)
124
+ 4. **None** — We will work from verbal descriptions
125
+
126
+ **Handle each asset type:**
127
+
128
+ | User has | Action |
129
+ |----------|--------|
130
+ | Reference URLs | Invoke `arn-spark-style-capture` → save to `[visual-grounding]/references/` |
131
+ | Reference image files | User provides paths → copy to `[visual-grounding]/references/` |
132
+ | Figma designs (Figma enabled in config) | Use Figma MCP to read selected designs, export screenshots → save to `[visual-grounding]/designs/` |
133
+ | Figma designs (Figma not enabled) | Do not offer Figma integration. If user mentions Figma, suggest re-running `/arn-spark-init` to enable it. User can export as PNG/PDF manually → save to `[visual-grounding]/designs/` |
134
+ | Canva designs (Canva enabled in config) | Use Canva MCP to export designs → save to `[visual-grounding]/designs/` |
135
+ | Canva designs (Canva not enabled) | Same as Figma — suggest re-running init or manual export → save to `[visual-grounding]/designs/` |
136
+ | Hand-drawn wireframes | User provides photos → save to `[visual-grounding]/designs/` |
137
+ | Brand assets (logos, guidelines) | User provides files → save to `[visual-grounding]/brand/` |
138
+
139
+ **If the user provides one or more URLs:** Invoke the `arn-spark-style-capture` agent via the Task tool, passing the model from `.arness/agent-models/spark.md` as the `model` parameter (see `plugins/arn-spark/skills/arn-spark-ensure-config/references/ensure-config.md` "Dispatch convention" for fallback), with the URLs and save screenshots to the visual grounding directory (under `references/`). If the agent reports Playwright is not available, inform the user:
140
+
141
+ "Playwright is not installed in this environment, so I cannot automatically capture that URL. You can either:
142
+ 1. Install Playwright (`npm install -D playwright && npx playwright install chromium`) and try again
143
+ 2. Take a screenshot yourself and share it
144
+ 3. Describe what you like about the referenced site and I will work from that"
145
+
146
+ If capture succeeds, use the agent's extracted design characteristics (colors, typography, layout, spacing) as input to the `arn-spark-ux-specialist` alongside the user's verbal description.
147
+
148
+ ### Step 2: Initial Style Proposal
149
+
150
+ Invoke the `arn-spark-ux-specialist` agent (greenfield agent) via the Task tool, passing the model from `.arness/agent-models/spark.md` as the `model` parameter (see `plugins/arn-spark/skills/arn-spark-ensure-config/references/ensure-config.md` "Dispatch convention" for fallback). Context:
151
+
152
+ - The user's style description or preferences
153
+ - Product concept context (target users, product personality)
154
+ - UI toolkit context (CSS framework, component library)
155
+ - Platform context (desktop app, web app, mobile)
156
+ - **Visual direction context (if found):** Include the visual direction's characteristics, approximate color palette, CSS variables, screenshot paths, and creative anchors (tone commitment, differentiation anchor, Design Thinking answers). Instruct the specialist: "A visual direction has been established via /arn-spark-visual-sketch. Use it as the primary input for the style proposal. The screenshots show the selected visual approach applied to real product screens. The tone commitment is '[tone]' and the differentiation anchor is '[differentiation]' — these are the creative DNA of the direction. Translate the direction into precise design tokens while preserving its character. Every token decision should support the tone commitment and keep the differentiation anchor intact. Do not flatten distinctive choices into generic defaults during refinement."
157
+ - **Visual direction animation context (if found):** If the visual direction includes an Animation & Motion section, pass it to the specialist: "The visual direction includes animation context: [motion philosophy], with key patterns [patterns], using [animation approach]. Animation is [integral/decorative/none] to the direction. Build the style brief's Animation and Motion section grounded in these choices — do not reinvent the motion approach from scratch. Describe animation in platform-agnostic intent language."
158
+ - **All available visual grounding assets.** Provide images from all three subfolders with category context so the specialist knows the intent:
159
+ - **References** (`[visual-grounding]/references/`): "These reference images are inspirational direction — they inform the overall feel but are not pixel-level targets."
160
+ - **Designs** (`[visual-grounding]/designs/`): "These design mockups are specification targets — match them for layout, spacing, and proportions where applicable."
161
+ - **Brand** (`[visual-grounding]/brand/`): "These brand assets are fixed constraints — logos, colors, and typefaces must be incorporated as-is."
162
+
163
+ Visual references provide nuances that text descriptions alone cannot convey — the UX specialist should see the actual images alongside the extracted design characteristics.
164
+
165
+ Request that the agent provide recommendations covering: color palette (with hex values for all roles), typography (specific font families and sizes), spacing and sizing tokens, border radius values, component style characteristics, and animation approach. These map directly to the style brief template sections.
166
+
167
+ The agent returns design recommendations:
168
+
169
+ - Color palette with specific values
170
+ - Typography recommendations
171
+ - Spacing and sizing tokens
172
+ - Component customization approach for the chosen library
173
+ - Animation and motion philosophy
174
+
175
+ Present the proposal to the user. Frame it as a starting point:
176
+
177
+ "Here is an initial style direction based on your description:
178
+
179
+ **Colors:** [Brief summary with primary, background, and accent colors]
180
+ **Typography:** [Font families and general sizing]
181
+ **Components:** [Overall feel -- rounded, sharp, shadows, borders]
182
+ **Animation:** [Approach -- minimal, moderate, expressive]
183
+
184
+ What do you think? We can adjust colors, change the overall feel, or try a completely different direction."
185
+
186
+ ### Step 3: Iterative Refinement
187
+
188
+ Enter a conversation loop. The user may want to:
189
+
190
+ | User Request | Action |
191
+ |-------------|--------|
192
+ | "Make it darker" / "warmer" / "more playful" | Re-invoke `arn-spark-ux-specialist` with adjusted direction |
193
+ | "I like the colors but change the typography" | Re-invoke `arn-spark-ux-specialist` with partial update request |
194
+ | "Show me what it looks like" | Invoke `arn-spark-prototype-builder` to create 1-2 sample screens |
195
+ | "Compare two directions" | Invoke `arn-spark-ux-specialist` for both, present side-by-side |
196
+ | "Use [specific color/font]" | Record directly, adjust the proposal |
197
+ | "What would [reference app] style look like?" | Invoke `arn-spark-ux-specialist` with the reference for interpretation |
198
+ | User provides a URL to reference | Invoke `arn-spark-style-capture` with the URL, save to `[visual-grounding]/references/`. Feed results to `arn-spark-ux-specialist`. |
199
+ | User provides multiple URLs to compare | Invoke `arn-spark-style-capture` with all URLs, save to `[visual-grounding]/references/`. Present the comparison and feed results to `arn-spark-ux-specialist`. |
200
+ | User provides design mockups (Figma/Canva/manual) | Save to `[visual-grounding]/designs/`. Feed to `arn-spark-ux-specialist` as specification targets. |
201
+ | User provides brand assets | Save to `[visual-grounding]/brand/`. Feed to `arn-spark-ux-specialist` as fixed constraints. |
202
+ | User is happy with the direction | Proceed to Step 4 |
203
+
204
+ **Sample screens (optional):** If the user wants to see the style applied, invoke the `arn-spark-prototype-builder` agent to create 1-2 representative screens (e.g., the main screen and a settings screen). These use the actual component library with the proposed style configuration. If visual grounding assets are available, include them so the builder can visually match the intended direction — especially design mockups (specification targets) and brand assets (fixed constraints).
205
+
206
+ **Readiness check:** When the style direction seems settled:
207
+
208
+ "I think we have a solid visual direction. Here is a summary:
209
+
210
+ **Primary:** [color] | **Background:** [color] | **Accent:** [color]
211
+ **Font:** [family] | **Corners:** [radius] | **Animation:** [approach]
212
+
213
+ Ask the user:
214
+
215
+ > **Ready to write the style brief?**
216
+ > 1. **Yes, write it** — Generate the style brief document
217
+ > 2. **Keep adjusting** — I want to refine more before writing"
218
+
219
+ ### Step 4: Write the Style Brief
220
+
221
+ When the user is ready:
222
+
223
+ 1. Read the template:
224
+ > Read `${CLAUDE_PLUGIN_ROOT}/skills/arn-spark-style-explore/references/style-brief-template.md`
225
+
226
+ 2. Populate the template with all decisions from the conversation:
227
+ - Specific color values (hex/HSL) for all palette roles
228
+ - Typography with actual font families and sizes
229
+ - Spacing and sizing tokens
230
+ - Component style characteristics
231
+ - Animation approach and specific animations if discussed
232
+ - **Toolkit Configuration section:** Translate all design tokens into the project's CSS framework config (e.g., Tailwind theme extensions) and component library theme (e.g., shadcn CSS custom properties)
233
+
234
+ 3. Write the document to the output directory as `style-brief.md`
235
+
236
+ 4. Present a summary:
237
+ - Document path
238
+ - Color palette overview
239
+ - Font choices
240
+ - Note whether toolkit configuration was included or deferred
241
+
242
+ ### Step 5: Recommend Next Steps
243
+
244
+ "Style brief saved to `[path]/style-brief.md`.
245
+
246
+ Recommended next steps:
247
+ 1. **Build static prototype:** Run `/arn-spark-static-prototype` to validate visual fidelity with component showcases
248
+ 2. **Apply toolkit config:** The style brief includes [CSS framework] and [component library] configuration that will be applied during prototyping
249
+
250
+ The prototype will use the style brief to ensure all screens share a consistent visual language."
251
+
252
+ ## Agent Invocation Guide
253
+
254
+ | Situation | Action |
255
+ |-----------|--------|
256
+ | User provides reference URL(s) (Step 1 or Step 3) | Invoke `arn-spark-style-capture` with URLs, save to `[visual-grounding]/references/`. If Playwright unavailable, fall back to user-provided screenshots or verbal description. |
257
+ | User provides design mockups or brand assets | Save to `[visual-grounding]/designs/` or `[visual-grounding]/brand/` respectively. For Figma/Canva exports, use the MCP only if the corresponding flag is `yes` in `## Arness` config. |
258
+ | Initial style proposal (Step 2) | Invoke `arn-spark-ux-specialist` with user's direction + product context + toolkit context + ALL visual grounding assets (with category context: references=inspirational, designs=specification, brand=constraints) |
259
+ | User wants style adjustments | Invoke `arn-spark-ux-specialist` with updated direction + all visual grounding assets. Always provide images alongside text when they exist — visual nuances matter. |
260
+ | User wants to see sample screens | Invoke `arn-spark-prototype-builder` with: screen list (1-2 screens), navigation flow (minimal), style brief (current direction), UI framework + component library, project root path, and visual grounding assets (especially design mockups and brand assets) |
261
+ | User asks which CSS framework to use | Defer: "CSS framework is chosen during `/arn-spark-scaffold`. If you want to change it, re-run scaffold." |
262
+ | User asks about specific component APIs | Defer: "Component implementation details come during feature development. The style brief defines how components should look." |
263
+ | User asks about features or architecture | Defer to the appropriate skill |
264
+
265
+ ## Error Handling
266
+
267
+ - **No product concept found:** Proceed with the user's verbal description. The style can be explored without a formal product concept.
268
+ - **Project not scaffolded:** Explore style conceptually. Write the style brief without the Toolkit Configuration section, note it for later.
269
+ - **UX specialist returns unhelpful response:** Summarize the issue and continue the conversation directly. Try a more specific request on the next invocation.
270
+ - **User cannot describe a style direction:** Offer the curated archetypes from Step 1. If still stuck, ask: "What apps do you use and enjoy the look of?" and use those as reference points.
271
+ - **Writing the document fails:** Print the full content in the conversation so the user can copy it.
272
+ - **Style brief already exists:**
273
+
274
+ Ask the user:
275
+
276
+ > **A style brief already exists at `[path]`. How would you like to proceed?**
277
+ > 1. **Replace** — Start fresh with a new style brief
278
+ > 2. **Update** — Update specific sections of the existing brief
279
+ - **Sample screen build fails:** Note the issue, continue with the style exploration. The prototype build is optional during style exploration.
280
+ - **Playwright not available for URL capture:** Inform the user and offer alternatives: install Playwright, provide manual screenshots, or describe the reference verbally. Do not block the style exploration -- URL capture is optional.
281
+ - **URL capture fails (timeout, auth wall):** Report which URL failed. Ask the user to provide a manual screenshot or describe what they like about the site. Continue with the exploration.
@@ -0,0 +1,198 @@
1
+ # Style Brief Template
2
+
3
+ This template defines the structure for visual style documents written by the `arn-spark-style-explore` skill. The document is saved to the project's vision directory as `style-brief.md`.
4
+
5
+ A style brief captures the visual design direction for the project: colors, typography, spacing, component customization, and toolkit-specific configuration. It serves as the visual contract between design decisions and implementation, ensuring the prototype and production code share the same visual language.
6
+
7
+ ## Instructions for arn-spark-style-explore
8
+
9
+ When populating this template:
10
+
11
+ - Replace all bracketed placeholders with concrete values from the style exploration conversation
12
+ - Color values must be specific (hex, HSL, or RGB) -- not vague descriptions like "blue"
13
+ - Typography must specify actual font families, not categories like "sans-serif"
14
+ - The Toolkit Configuration section is critical -- it translates the design into implementable code
15
+ - If using a component library (shadcn, Skeleton UI, etc.), include the library-specific theme configuration
16
+ - Dark/light mode: specify both palettes if the project supports both, or note that only one mode is in scope for v1
17
+ - Visual grounding assets (references, designs, brand) are optional but helpful for communicating intent and enabling downstream fidelity comparison
18
+
19
+ ---
20
+
21
+ ## Template
22
+
23
+ ```markdown
24
+ # [Product Name] - Style Brief
25
+
26
+ ## Design Direction
27
+
28
+ [2-3 sentences describing the overall visual feel. Reference the target audience and product personality from the product concept. E.g., "Warm and approachable, reflecting a tool used between family members and close friends. Clean but not clinical -- soft edges, gentle shadows, and a color palette that feels inviting rather than corporate."]
29
+
30
+ ## Color Palette
31
+
32
+ ### Primary Colors
33
+
34
+ | Role | Color | Hex | Usage |
35
+ |------|-------|-----|-------|
36
+ | Primary | [Name] | [#hex] | [Primary actions, key UI elements] |
37
+ | Primary Hover | [Name] | [#hex] | [Hover/active state for primary] |
38
+ | Primary Foreground | [Name] | [#hex] | [Text on primary background] |
39
+
40
+ ### Neutral Colors
41
+
42
+ | Role | Color | Hex | Usage |
43
+ |------|-------|-----|-------|
44
+ | Background | [Name] | [#hex] | [Page background] |
45
+ | Surface | [Name] | [#hex] | [Card/panel backgrounds] |
46
+ | Border | [Name] | [#hex] | [Borders, dividers] |
47
+ | Text Primary | [Name] | [#hex] | [Main body text] |
48
+ | Text Secondary | [Name] | [#hex] | [Secondary/muted text] |
49
+ | Text Disabled | [Name] | [#hex] | [Disabled state text] |
50
+
51
+ ### Semantic Colors
52
+
53
+ | Role | Color | Hex | Usage |
54
+ |------|-------|-----|-------|
55
+ | Success | [Name] | [#hex] | [Connected, active, confirmed] |
56
+ | Warning | [Name] | [#hex] | [Attention needed, degraded state] |
57
+ | Error | [Name] | [#hex] | [Disconnected, failed, destructive] |
58
+ | Info | [Name] | [#hex] | [Informational, neutral status] |
59
+
60
+ ### Dark Mode (if applicable)
61
+
62
+ [If dark mode is in scope: provide the equivalent palette for dark mode. If not: note "Dark mode deferred to post-v1."]
63
+
64
+ ## Typography
65
+
66
+ | Role | Font Family | Weight | Size | Line Height |
67
+ |------|-------------|--------|------|-------------|
68
+ | Heading 1 | [Family] | [Weight] | [Size] | [Line height] |
69
+ | Heading 2 | [Family] | [Weight] | [Size] | [Line height] |
70
+ | Heading 3 | [Family] | [Weight] | [Size] | [Line height] |
71
+ | Body | [Family] | [Weight] | [Size] | [Line height] |
72
+ | Body Small | [Family] | [Weight] | [Size] | [Line height] |
73
+ | Caption | [Family] | [Weight] | [Size] | [Line height] |
74
+ | Monospace | [Family] | [Weight] | [Size] | [Line height] |
75
+
76
+ **Font loading:** [How fonts are loaded -- Google Fonts, local files, system fonts, etc.]
77
+
78
+ ## Spacing and Sizing
79
+
80
+ | Token | Value | Usage |
81
+ |-------|-------|-------|
82
+ | spacing-xs | [value] | [Tight gaps, icon padding] |
83
+ | spacing-sm | [value] | [Inner padding, form gaps] |
84
+ | spacing-md | [value] | [Section padding, card padding] |
85
+ | spacing-lg | [value] | [Section margins, major gaps] |
86
+ | spacing-xl | [value] | [Page margins, hero spacing] |
87
+
88
+ ### Border Radius
89
+
90
+ | Token | Value | Usage |
91
+ |-------|-------|-------|
92
+ | radius-sm | [value] | [Badges, small elements] |
93
+ | radius-md | [value] | [Buttons, inputs, cards] |
94
+ | radius-lg | [value] | [Modals, large containers] |
95
+ | radius-full | 9999px | [Avatars, circular elements] |
96
+
97
+ ## Component Style
98
+
99
+ ### General Characteristics
100
+
101
+ - **Edges:** [Rounded / Sharp / Mixed -- describe the approach]
102
+ - **Shadows:** [None / Subtle / Prominent -- describe the approach and when shadows are used]
103
+ - **Borders:** [Visible / Minimal / None -- describe when borders appear]
104
+ - **Density:** [Compact / Comfortable / Spacious -- describe the information density]
105
+
106
+ ### Buttons
107
+
108
+ - **Primary:** [Description: fill color, text color, hover behavior, border radius]
109
+ - **Secondary:** [Description: outline/ghost style, hover behavior]
110
+ - **Destructive:** [Description: color treatment for destructive actions]
111
+ - **Disabled:** [Description: opacity, cursor, color changes]
112
+
113
+ ### Inputs
114
+
115
+ - **Default:** [Description: border style, background, focus ring, placeholder color]
116
+ - **Focus:** [Description: ring color, border change, animation]
117
+ - **Error:** [Description: border color, helper text color]
118
+
119
+ ### Cards / Panels
120
+
121
+ - **Background:** [Surface color, border, shadow, radius]
122
+ - **Hover:** [If interactive: hover effect description]
123
+
124
+ ## Animation and Motion
125
+
126
+ - **Approach:** [Minimal / Moderate / Expressive -- describe the philosophy]
127
+ - **Transitions:** [Duration and easing for standard transitions, e.g., "150ms ease-out for hover, 200ms ease-in-out for layout changes"]
128
+ - **Specific animations:** [List any product-specific animations, e.g., "Pulse animation on incoming knock", "Fade-in for new device discovery"]
129
+
130
+ ## Toolkit Configuration
131
+
132
+ This section translates the design decisions above into implementable configuration for the project's specific CSS framework and component library.
133
+
134
+ ### [CSS Framework] Configuration
135
+
136
+ [E.g., "Tailwind CSS Configuration" -- provide the actual config values]
137
+
138
+ ```[language]
139
+ // [config file name, e.g., tailwind.config.js theme extend section]
140
+ [Actual configuration code that implements the color palette, typography, spacing, and border radius defined above]
141
+ ```
142
+
143
+ ### [Component Library] Theme
144
+
145
+ [E.g., "shadcn-svelte Theme Variables" -- provide the actual CSS custom properties or theme config]
146
+
147
+ ```css
148
+ /* [Description of where these variables live, e.g., app.css :root block] */
149
+ [Actual CSS custom properties or theme configuration that customizes the component library]
150
+ ```
151
+
152
+ ### Global CSS
153
+
154
+ ```css
155
+ /* Base styles applied globally */
156
+ [Any global CSS needed: font imports, base resets, custom utility classes]
157
+ ```
158
+
159
+ ## Visual Grounding
160
+
161
+ ### References
162
+ [Inspirational images that informed the style direction. These guide the overall feel but are not pixel-level targets.]
163
+
164
+ | Source | Path | What it informs |
165
+ |--------|------|-----------------|
166
+ | [URL or description] | [visual-grounding/references/filename.png] | [colors / layout / feel] |
167
+
168
+ ### Designs
169
+ [Design mockups that serve as specification targets. These are the ground truth for visual fidelity.]
170
+
171
+ | Source | Path | Screens covered |
172
+ |--------|------|----------------|
173
+ | [Figma / Canva / hand-drawn] | [visual-grounding/designs/filename.png] | [which screens or components] |
174
+
175
+ ### Brand
176
+ [Fixed brand assets that must be incorporated.]
177
+
178
+ | Asset | Path | Constraint |
179
+ |-------|------|-----------|
180
+ | [Logo / color spec / typeface] | [visual-grounding/brand/filename.png] | [how it constrains the design] |
181
+
182
+ [If no visual grounding assets were provided, note: "No visual grounding assets. Style derived from verbal description only."]
183
+ ```
184
+
185
+ ---
186
+
187
+ ## Section Guidance
188
+
189
+ | Section | Source | Depth |
190
+ |---------|--------|-------|
191
+ | Design Direction | User's description + UX specialist analysis | 2-3 sentences capturing the feel |
192
+ | Color Palette | UX specialist recommendation + user refinement | Exact values, all roles covered |
193
+ | Typography | UX specialist recommendation + user refinement | Exact values for all text roles |
194
+ | Spacing and Sizing | UX specialist recommendation | Token table with concrete values |
195
+ | Component Style | UX specialist recommendation + user preferences | Descriptive characteristics per component type |
196
+ | Animation and Motion | User preferences + UX specialist guidance | Philosophy + specific animations |
197
+ | Toolkit Configuration | Translated from design tokens by skill | Actual code that can be copy-pasted into config files |
198
+ | Visual Grounding | User-provided + MCP exports + URL captures | Three categories: references (inspirational), designs (specification), brand (constraints). Paths to files in visual grounding directory. |