devlyn-cli 0.0.6 → 0.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.
package/CLAUDE.md CHANGED
@@ -19,7 +19,16 @@ When investigating bugs, analyzing features, or exploring code:
19
19
  - Remaining unknowns
20
20
  - Recommended next steps
21
21
 
22
- For complex investigations, use `/investigate` skill or spawn parallel Task agents to explore different areas simultaneously.
22
+ For complex investigations, use `/devlyn.team-resolve` to assemble a multi-perspective investigation team, or spawn parallel Task agents to explore different areas simultaneously.
23
+
24
+ ## UI/UX Workflow
25
+
26
+ The full design-to-implementation pipeline:
27
+
28
+ 1. `/devlyn.design-ui` → Generate 5 style explorations
29
+ 2. `/devlyn.design-system [N]` → Extract tokens from chosen style
30
+ 3. `/devlyn.implement-ui` → Team implements or improves UI from design system
31
+ 4. `/devlyn.team-resolve [feature]` → Add features on top
23
32
 
24
33
  ## Feature Development
25
34
 
@@ -32,7 +41,9 @@ For complex features, use the Plan agent to design the approach before implement
32
41
 
33
42
  ## Debugging Workflow
34
43
 
35
- Use `/devlyn.resolve` for systematic bug fixing with test-driven validation.
44
+ - **Simple bugs**: Use `/devlyn.resolve` for systematic bug fixing with test-driven validation
45
+ - **Complex bugs**: Use `/devlyn.team-resolve` for multi-perspective investigation with a full agent team
46
+ - **Post-fix review**: Use `/devlyn.team-review` for thorough multi-reviewer validation
36
47
 
37
48
  ## Communication Style
38
49
 
package/README.md CHANGED
@@ -18,7 +18,7 @@
18
18
  devlyn-cli installs a curated `.claude/` configuration into any project, giving your team:
19
19
 
20
20
  - Battle-tested slash commands for debugging, code review, UI design, and more
21
- - Reusable AI agent skills for investigation and prompt engineering
21
+ - Reusable AI agent skills for debugging, code review, and UI implementation
22
22
  - Product and feature spec templates
23
23
  - Commit message conventions
24
24
 
@@ -48,8 +48,8 @@ npx devlyn-cli list
48
48
  ```
49
49
  your-project/
50
50
  ├── .claude/
51
- │ ├── commands/ # 9 slash commands
52
- │ ├── skills/ # 2 core skills + optional addons
51
+ │ ├── commands/ # 12 slash commands
52
+ │ ├── skills/ # 3 core skills + optional addons
53
53
  │ ├── templates/ # Document templates
54
54
  │ └── commit-conventions.md # Commit message standards
55
55
  └── CLAUDE.md # Project-level instructions
@@ -62,8 +62,11 @@ Slash commands are invoked directly in Claude Code conversations (e.g., `/devlyn
62
62
  | Command | Description |
63
63
  |---|---|
64
64
  | `/devlyn.resolve` | Systematic bug fixing with root-cause analysis and test-driven validation |
65
+ | `/devlyn.team-resolve` | Team-based issue resolution — spawns specialized agent teammates (root cause analyst, test engineer, security auditor, etc.) |
65
66
  | `/devlyn.review` | Post-implementation code review — security, quality, best practices |
66
- | `/devlyn.ui` | Generate 5 distinct UI style explorations from a spec or reference image |
67
+ | `/devlyn.team-review` | Team-based multi-perspective code review spawns specialized reviewers (security, quality, testing, product, performance) |
68
+ | `/devlyn.design-ui` | Generate 5 distinct UI style explorations from a spec or reference image |
69
+ | `/devlyn.implement-ui` | Team-based UI implementation/improvement — spawns component architect, UX engineer, accessibility engineer, responsive engineer, visual QA |
67
70
  | `/devlyn.feature-spec` | Transform product specs into implementable feature specifications |
68
71
  | `/devlyn.product-spec` | Generate or incrementally update product spec documents |
69
72
  | `/devlyn.discover-product` | Scan a codebase to generate feature-oriented product documentation |
@@ -77,8 +80,9 @@ Skills are triggered automatically based on conversation context.
77
80
 
78
81
  | Skill | Description |
79
82
  |---|---|
80
- | `investigate` | Parallel code exploration with structured progress checkpoints |
81
- | `feature-gap-analysis` | Identify missing features by comparing against baselines or competitors |
83
+ | `root-cause-analysis` | 5 Whys methodology, evidence standards, and no-workaround rules for debugging |
84
+ | `code-review-standards` | Severity framework, quality bar, and approval criteria for code reviews |
85
+ | `ui-implementation-standards` | Design system fidelity, accessibility, animation quality, and responsive standards for UI work |
82
86
 
83
87
  ## Templates
84
88
 
@@ -96,6 +100,7 @@ During installation, you can choose to add optional skills and third-party skill
96
100
  |---|---|---|
97
101
  | `cloudflare-nextjs-setup` | skill | Cloudflare Workers + Next.js deployment with OpenNext |
98
102
  | `prompt-engineering` | skill | Claude 4 prompt optimization using Anthropic best practices |
103
+ | `pyx-scan` | skill | Check whether an AI agent skill is safe before installing |
99
104
  | `vercel-labs/agent-skills` | pack | React, Next.js, React Native best practices |
100
105
  | `supabase/agent-skills` | pack | Supabase integration patterns |
101
106
  | `coreyhaines31/marketingskills` | pack | Marketing automation and content skills |
package/bin/devlyn.js CHANGED
@@ -61,6 +61,7 @@ const OPTIONAL_ADDONS = [
61
61
  // Local optional skills (copied to .claude/skills/)
62
62
  { name: 'cloudflare-nextjs-setup', desc: 'Cloudflare Workers + Next.js deployment with OpenNext', type: 'local' },
63
63
  { name: 'prompt-engineering', desc: 'Claude 4 prompt optimization using Anthropic best practices', type: 'local' },
64
+ { name: 'pyx-scan', desc: 'Check whether an AI agent skill is safe before installing', type: 'local' },
64
65
  // External skill packs (installed via npx skills add)
65
66
  { name: 'vercel-labs/agent-skills', desc: 'React, Next.js, React Native best practices', type: 'external' },
66
67
  { name: 'supabase/agent-skills', desc: 'Supabase integration patterns', type: 'external' },
@@ -336,6 +337,23 @@ async function init(skipPrompts = false) {
336
337
  log(' → CLAUDE.md', 'dim');
337
338
  }
338
339
 
340
+ // Enable agent teams in project settings
341
+ const settingsPath = path.join(targetDir, 'settings.json');
342
+ let settings = {};
343
+ if (fs.existsSync(settingsPath)) {
344
+ try {
345
+ settings = JSON.parse(fs.readFileSync(settingsPath, 'utf8'));
346
+ } catch {
347
+ settings = {};
348
+ }
349
+ }
350
+ if (!settings.env) settings.env = {};
351
+ if (!settings.env.CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS) {
352
+ settings.env.CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS = '1';
353
+ fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2) + '\n');
354
+ log(' → settings.json (agent teams enabled)', 'dim');
355
+ }
356
+
339
357
  log('\n✅ Core config installed!', 'green');
340
358
 
341
359
  // Skip prompts if -y flag or non-interactive
@@ -340,3 +340,8 @@ Create `docs/design/` directory if needed. Save all 5 HTML files.
340
340
  </output_format>
341
341
 
342
342
  Make bold choices. Each design should be portfolio-worthy—something you'd proudly present.
343
+
344
+ <next_step>
345
+ After the user picks a style, suggest:
346
+ → Run `/devlyn.design-system [style-number]` to extract design tokens from the chosen style into a reusable design system reference.
347
+ </next_step>
@@ -0,0 +1,466 @@
1
+ Build or improve UI by assembling a specialized Agent Team. Each teammate brings a different design and engineering perspective — component architecture, interaction design, accessibility, and visual fidelity — to produce production-quality UI that perfectly matches the design system.
2
+
3
+ Works for both:
4
+ - **New UI**: Build pages/components from scratch using the design system
5
+ - **Improve existing UI**: Audit and upgrade current implementation to match the design system
6
+
7
+ <context>
8
+ $ARGUMENTS
9
+ </context>
10
+
11
+ <prerequisites>
12
+ This command expects a design system at `docs/design-system.md`. If it doesn't exist, tell the user:
13
+ ```
14
+ No design system found at docs/design-system.md
15
+ Run the pipeline first:
16
+ 1. /devlyn.design-ui → Generate style explorations
17
+ 2. /devlyn.design-system [style-number] → Extract design tokens
18
+ 3. /devlyn.implement-ui → Build/improve UI (this command)
19
+ ```
20
+ </prerequisites>
21
+
22
+ <team_workflow>
23
+
24
+ ## Phase 1: INTAKE (You are the Build Lead — work solo first)
25
+
26
+ Before spawning any teammates, assess the scope:
27
+
28
+ 1. **Read `docs/design-system.md`** — understand all tokens, component patterns, interactive states
29
+ 2. **Detect the project framework** — read package.json, config files, existing components to identify the stack (React, Vue, Svelte, Next.js, vanilla, Flutter, etc.)
30
+ 3. **Assess build vs improve mode**:
31
+
32
+ <mode_detection>
33
+ **Build mode** (new UI):
34
+ - User explicitly asks to build/create pages or components
35
+ - No existing components match the design system
36
+ - Feature spec exists but no implementation yet
37
+
38
+ **Improve mode** (existing UI):
39
+ - User asks to improve, upgrade, or fix existing UI
40
+ - Existing components exist but don't match the design system
41
+ - UI looks outdated, inconsistent, or has accessibility gaps
42
+
43
+ **Hybrid mode** (both):
44
+ - Some components exist and need improvement
45
+ - Some new components need to be built
46
+ - Design system has been updated and implementation needs to catch up
47
+ </mode_detection>
48
+
49
+ 4. **Map the work**:
50
+ - In build mode: read feature specs (`docs/features/`) or product spec (`docs/product-spec.md`) to understand WHAT to build
51
+ - In improve mode: read existing components, identify gaps between current implementation and design system
52
+ - List all pages/components that need work
53
+ 5. **Select teammates** using the matrix below
54
+
55
+ <scope_classification>
56
+ **Always spawn** (every build/improve):
57
+ - component-architect
58
+ - ux-engineer
59
+ - accessibility-engineer
60
+
61
+ **When building for web** (React, Vue, Svelte, Next.js, vanilla HTML/CSS):
62
+ - Add: responsive-engineer
63
+
64
+ **When improving existing UI** (improve or hybrid mode):
65
+ - Add: visual-qa (to audit current implementation against design system)
66
+ </scope_classification>
67
+
68
+ Announce to the user:
69
+ ```
70
+ [Build/Improve/Hybrid] mode for: [scope summary]
71
+ Framework: [detected framework]
72
+ Design System: docs/design-system.md
73
+ Teammates: [list of roles being spawned and why]
74
+ ```
75
+
76
+ ## Phase 2: TEAM ASSEMBLY
77
+
78
+ Use the Agent Teams infrastructure:
79
+
80
+ 1. **TeamCreate** with name `build-{scope-slug}` (e.g., `build-landing-page`, `build-improve-dashboard`)
81
+ 2. **Spawn teammates** using the `Task` tool with `team_name` and `name` parameters. Each teammate is a separate Claude instance.
82
+ 3. **TaskCreate** tasks for each teammate — include the design system path, framework info, and their specific mandate.
83
+ 4. **Assign tasks** using TaskUpdate with `owner` set to the teammate name.
84
+
85
+ **IMPORTANT**: Do NOT hardcode a model. All teammates inherit the user's active model automatically.
86
+
87
+ ### Teammate Prompts
88
+
89
+ When spawning each teammate via the Task tool, use these prompts:
90
+
91
+ <component_architect_prompt>
92
+ You are the **Component Architect** on an Agent Team building/improving UI.
93
+
94
+ **Your perspective**: Frontend architect who turns design systems into component trees
95
+ **Your mandate**: Define the component hierarchy, map design tokens to framework primitives, and plan the implementation structure.
96
+
97
+ **Your process**:
98
+ 1. Read `docs/design-system.md` thoroughly — understand every token and component pattern
99
+ 2. Read the project's existing components and framework setup
100
+ 3. If **build mode**: Design the component tree from scratch
101
+ 4. If **improve mode**: Audit existing components against the design system, identify gaps
102
+
103
+ **Your deliverable**: Send a message to the team lead with:
104
+
105
+ 1. **Token mapping**: How each design token maps to the framework
106
+ - Colors → CSS variables / theme object / tokens file
107
+ - Typography → text style utilities or components
108
+ - Spacing → spacing scale or utilities
109
+ - Shadows, radii, motion → where they live in code
110
+
111
+ 2. **Component tree**: For each component pattern in the design system:
112
+ - Component name and file path
113
+ - Props/API surface
114
+ - Which design tokens it uses
115
+ - Variants (if any)
116
+ - Composition (what it's made of)
117
+
118
+ 3. **Shared patterns**:
119
+ - Base layout component (container, section wrapper)
120
+ - Animation utilities (reveal, hover, scroll-triggered)
121
+ - Theme provider / token distribution strategy
122
+
123
+ 4. **In improve mode, additionally**:
124
+ - Gap analysis: what exists vs what the design system defines
125
+ - Files to modify with specific changes needed
126
+ - Files to create
127
+
128
+ **Tools available**: Read, Grep, Glob, Bash (read-only)
129
+
130
+ Read the team config at ~/.claude/teams/{team-name}/config.json to discover teammates. Share your component tree with other teammates so they can provide feedback.
131
+ </component_architect_prompt>
132
+
133
+ <ux_engineer_prompt>
134
+ You are the **UX Engineer** on an Agent Team building/improving UI.
135
+
136
+ **Your perspective**: Interaction designer who makes interfaces feel alive and intuitive
137
+ **Your mandate**: Define every interaction pattern, state transition, animation, and micro-interaction based on the design system's motion and interactive state specs.
138
+
139
+ **Your process**:
140
+ 1. Read `docs/design-system.md` — focus on Motion, Interactive States, and Effects sections
141
+ 2. Read existing components (if improve mode) to audit current interaction quality
142
+ 3. Define interaction specifications for every interactive element
143
+
144
+ **Your deliverable**: Send a message to the team lead with:
145
+
146
+ 1. **State machine for each interactive component**:
147
+ ```
148
+ Button: idle → hover → active → focus → disabled
149
+ Card: idle → hover (lift + shadow) → active
150
+ Modal: closed → entering → open → exiting → closed
151
+ ```
152
+
153
+ 2. **Animation specs** (derived from design system motion tokens):
154
+ - Page load sequence: which elements appear in what order, with what delays
155
+ - Scroll-triggered reveals: threshold, animation type, stagger
156
+ - Hover/focus transitions: property, duration, easing (exact cubic-bezier from design system)
157
+ - Route transitions (if SPA)
158
+
159
+ 3. **UI state coverage** — for each component/page:
160
+ - Loading state: skeleton, spinner, or progressive
161
+ - Empty state: illustration + message + CTA
162
+ - Error state: inline error, toast, or error page
163
+ - Success state: confirmation feedback
164
+
165
+ 4. **Micro-interactions**:
166
+ - Form validation feedback timing
167
+ - Button click feedback
168
+ - Toast/notification enter/exit
169
+ - Scroll indicator behavior
170
+
171
+ 5. **In improve mode, additionally**:
172
+ - Current interaction gaps (missing states, jarring transitions, no loading states)
173
+ - Specific files and lines that need interaction improvements
174
+
175
+ **Tools available**: Read, Grep, Glob
176
+
177
+ Read the team config at ~/.claude/teams/{team-name}/config.json to discover teammates. Coordinate with the Component Architect on component state management.
178
+ </ux_engineer_prompt>
179
+
180
+ <accessibility_engineer_prompt>
181
+ You are the **Accessibility Engineer** on an Agent Team building/improving UI.
182
+
183
+ **Your perspective**: Accessibility specialist ensuring WCAG 2.1 AA compliance
184
+ **Your mandate**: Every component must be usable by everyone — keyboard users, screen reader users, users with low vision, motor impairments, and cognitive differences.
185
+
186
+ **Your process**:
187
+ 1. Read `docs/design-system.md` — check color contrast ratios, font sizes, touch targets
188
+ 2. Read existing components (if improve mode) to audit current accessibility
189
+ 3. Define accessibility requirements for every component
190
+
191
+ **Your deliverable**: Send a message to the team lead with:
192
+
193
+ 1. **Color contrast audit** (from design system tokens):
194
+ - text on background: ratio (PASS/FAIL AA)
195
+ - text-muted on background: ratio (PASS/FAIL AA)
196
+ - text on surface: ratio (PASS/FAIL AA)
197
+ - accent on background: ratio (PASS/FAIL AA for large text)
198
+ - If any FAIL: recommend adjusted color values that pass while staying close to design intent
199
+
200
+ 2. **Component accessibility requirements**:
201
+ For each component pattern in the design system:
202
+ - Semantic HTML element to use
203
+ - Required ARIA attributes
204
+ - Keyboard interaction pattern (what keys do what)
205
+ - Focus management (focus order, focus trapping for modals)
206
+ - Screen reader announcements (aria-live regions, status updates)
207
+
208
+ 3. **Motion accessibility**:
209
+ - `prefers-reduced-motion` handling for every animation
210
+ - Which animations are decorative (can be removed) vs functional (should simplify)
211
+
212
+ 4. **Touch and pointer**:
213
+ - Minimum touch target sizes (44x44px)
214
+ - Adequate spacing between interactive elements
215
+ - Hover-only interactions that need touch alternatives
216
+
217
+ 5. **Content accessibility**:
218
+ - Image alt text strategy
219
+ - Heading hierarchy requirements
220
+ - Link text that makes sense out of context
221
+ - Form label associations
222
+
223
+ 6. **In improve mode, additionally**:
224
+ - Current a11y violations with severity and file:line
225
+ - Quick wins vs structural fixes
226
+
227
+ **Tools available**: Read, Grep, Glob, Bash (for running any a11y audit tools)
228
+
229
+ Read the team config at ~/.claude/teams/{team-name}/config.json to discover teammates. Flag accessibility concerns that affect the Component Architect's component design.
230
+ </accessibility_engineer_prompt>
231
+
232
+ <responsive_engineer_prompt>
233
+ You are the **Responsive Engineer** on an Agent Team building/improving UI for web.
234
+
235
+ **Your perspective**: Responsive design specialist ensuring the UI works beautifully across all screen sizes
236
+ **Your mandate**: Define the responsive strategy — breakpoints, fluid typography, layout shifts, and touch adaptation.
237
+
238
+ **Your process**:
239
+ 1. Read `docs/design-system.md` — understand spacing, typography, and layout patterns
240
+ 2. Read existing components (if improve mode) to audit current responsive behavior
241
+ 3. Define responsive specifications
242
+
243
+ **Your deliverable**: Send a message to the team lead with:
244
+
245
+ 1. **Breakpoint strategy**:
246
+ - Recommended breakpoints (mobile-first: 640px, 768px, 1024px, 1280px, or project convention)
247
+ - Which components change at which breakpoints
248
+
249
+ 2. **Layout transformations**:
250
+ For each page section / component grid:
251
+ - Desktop layout (columns, gaps)
252
+ - Tablet layout (columns, gaps, reordering)
253
+ - Mobile layout (stacking, gaps, padding reduction)
254
+
255
+ 3. **Typography scaling**:
256
+ - Font size adjustments per breakpoint (use clamp() where supported)
257
+ - Line-height adjustments for mobile readability
258
+
259
+ 4. **Spacing adjustments**:
260
+ - Section padding per breakpoint
261
+ - Card padding per breakpoint
262
+ - Gap reductions for mobile
263
+
264
+ 5. **Component adaptations**:
265
+ - Navigation: desktop → hamburger/drawer
266
+ - Cards: grid → single column
267
+ - Tables: horizontal scroll or card transformation
268
+ - Modals: full-screen on mobile vs centered on desktop
269
+
270
+ 6. **Touch targets**:
271
+ - Minimum 44x44px for all interactive elements on touch devices
272
+ - Adequate spacing between tappable items
273
+
274
+ **Tools available**: Read, Grep, Glob
275
+
276
+ Read the team config at ~/.claude/teams/{team-name}/config.json to discover teammates. Coordinate with the Component Architect on responsive component variants.
277
+ </responsive_engineer_prompt>
278
+
279
+ <visual_qa_prompt>
280
+ You are the **Visual QA** on an Agent Team improving existing UI.
281
+
282
+ **Your perspective**: Design system compliance auditor who catches every deviation
283
+ **Your mandate**: Compare the current implementation against the design system and produce a detailed gap report.
284
+
285
+ **Your process**:
286
+ 1. Read `docs/design-system.md` — internalize every token value and component pattern
287
+ 2. Read ALL existing component/page files
288
+ 3. For each file, compare actual values against design system values
289
+
290
+ **Your deliverable**: Send a message to the team lead with:
291
+
292
+ 1. **Token compliance audit**:
293
+ For each design token category (colors, typography, spacing, shadows, radii, motion):
294
+ - Which tokens are correctly applied
295
+ - Which tokens are wrong (expected vs actual, file:line)
296
+ - Which tokens are missing (hardcoded values instead of tokens)
297
+
298
+ 2. **Component pattern compliance**:
299
+ For each component pattern in the design system:
300
+ - Does the implementation match the defined pattern?
301
+ - Missing hover/interactive states
302
+ - Missing animation/motion
303
+ - Wrong component structure
304
+
305
+ 3. **Consistency issues**:
306
+ - Same component styled differently in different places
307
+ - Hardcoded values that should use tokens
308
+ - Inconsistent spacing or typography
309
+
310
+ 4. **Priority ranking**:
311
+ - HIGH: Visible deviations (wrong colors, wrong fonts, missing animations)
312
+ - MEDIUM: Subtle deviations (slightly wrong spacing, missing hover states)
313
+ - LOW: Minor inconsistencies (token not used but value is correct)
314
+
315
+ **Tools available**: Read, Grep, Glob
316
+
317
+ Read the team config at ~/.claude/teams/{team-name}/config.json to discover teammates. Share your findings with the Component Architect so they can plan structural fixes.
318
+ </visual_qa_prompt>
319
+
320
+ ## Phase 3: PARALLEL ANALYSIS
321
+
322
+ All teammates work simultaneously. They will:
323
+ - Analyze from their unique perspective
324
+ - Message each other about cross-cutting concerns
325
+ - Send their final specifications/findings to you (Build Lead)
326
+
327
+ Wait for all teammates to report back. If a teammate goes idle after sending findings, that's normal — they're done with their analysis.
328
+
329
+ ## Phase 4: SYNTHESIS & PLANNING (You, Build Lead)
330
+
331
+ After receiving all teammate findings:
332
+
333
+ 1. **Read all findings** — component tree, interaction specs, accessibility requirements, responsive strategy, and visual QA gaps (if improve mode)
334
+ 2. **Resolve conflicts** — if teammates disagree (e.g., Component Architect's structure conflicts with Accessibility Engineer's semantic requirements), prioritize accessibility
335
+ 3. **Create the implementation plan**:
336
+
337
+ <implementation_plan>
338
+ Organize work into this order:
339
+
340
+ **Foundation layer** (do first):
341
+ 1. Token/theme setup — CSS variables, theme object, or tokens file from design system values
342
+ 2. Base utilities — animation helpers, layout primitives, shared styles
343
+
344
+ **Component layer** (do second):
345
+ 3. Atomic components — buttons, badges, labels, icons
346
+ 4. Composite components — cards, navigation, section headers, forms
347
+ 5. Layout components — page wrapper, section containers, grid systems
348
+
349
+ **Page layer** (do third):
350
+ 6. Page compositions — assemble components into pages
351
+ 7. Interaction wiring — state management, transitions, animations
352
+ 8. Responsive adjustments — breakpoint-specific overrides
353
+
354
+ **Polish layer** (do last):
355
+ 9. Accessibility pass — ARIA, keyboard nav, focus management, reduced motion
356
+ 10. Animation polish — page load sequences, scroll reveals, hover states
357
+ </implementation_plan>
358
+
359
+ 4. **Present the plan to the user** — enter plan mode if the scope is large (5+ components or 3+ pages). For smaller scope, proceed directly.
360
+
361
+ ## Phase 5: IMPLEMENTATION (You, Build Lead)
362
+
363
+ <implementation_standards>
364
+ Follow these standards for every component:
365
+
366
+ **Design system fidelity**:
367
+ - Use design tokens from docs/design-system.md — never hardcode values
368
+ - Match component patterns exactly as defined in the design system
369
+ - Apply interactive states with exact values from the design system's Interactive States table
370
+
371
+ **Accessibility** (non-negotiable):
372
+ - Semantic HTML first (nav, main, section, article, button, etc.)
373
+ - All ARIA attributes from the Accessibility Engineer's spec
374
+ - Keyboard navigation works for all interactive elements
375
+ - `prefers-reduced-motion` media query for all animations
376
+ - Color contrast meets WCAG 2.1 AA (fix if design system tokens fail)
377
+
378
+ **Interaction quality**:
379
+ - All UI states implemented: loading, empty, error, success
380
+ - Animations use exact easing and duration from design system
381
+ - Page load sequence with staggered reveals
382
+ - Scroll-triggered animations where specified
383
+ - Hover/focus/active states for all interactive elements
384
+
385
+ **Responsive** (if web):
386
+ - Mobile-first implementation
387
+ - Breakpoints from Responsive Engineer's spec
388
+ - Touch targets minimum 44x44px on touch devices
389
+
390
+ **Code quality**:
391
+ - Follow existing codebase patterns and conventions
392
+ - Components are composable and reusable
393
+ - No inline styles — use the token system
394
+ - Server components where possible (Next.js)
395
+ - Client components only when interactivity requires it
396
+ </implementation_standards>
397
+
398
+ Build in the order defined in the implementation plan. After each layer, verify it works before proceeding.
399
+
400
+ ## Phase 6: VALIDATION (You, Build Lead)
401
+
402
+ After implementation:
403
+ 1. Run the test suite (if tests exist)
404
+ 2. Verify all design tokens are correctly applied
405
+ 3. Verify accessibility requirements are met
406
+ 4. Check responsive behavior at key breakpoints
407
+
408
+ ## Phase 7: CLEANUP
409
+
410
+ After build is complete:
411
+ 1. Send `shutdown_request` to all teammates via SendMessage
412
+ 2. Wait for shutdown confirmations
413
+ 3. Call TeamDelete to clean up the team
414
+
415
+ </team_workflow>
416
+
417
+ <output_format>
418
+ Present the result in this format:
419
+
420
+ <team_build_summary>
421
+
422
+ ### Build Complete
423
+
424
+ **Mode**: [Build / Improve / Hybrid]
425
+ **Framework**: [detected framework]
426
+ **Design System**: docs/design-system.md
427
+
428
+ ### Team Findings
429
+ - **Component Architect**: [component tree summary — N components mapped]
430
+ - **UX Engineer**: [interaction specs — N states defined, N animations specified]
431
+ - **Accessibility Engineer**: [a11y requirements — contrast PASS/FAIL, N requirements defined]
432
+ - **Responsive Engineer**: [responsive strategy — N breakpoints, key adaptations] (if spawned)
433
+ - **Visual QA**: [N deviations found — N high, N medium, N low] (if spawned)
434
+
435
+ ### Implemented
436
+ **Foundation**:
437
+ - [token/theme file] — [N tokens mapped]
438
+
439
+ **Components**:
440
+ - [component file:line] — [what it is, key features]
441
+ - ...
442
+
443
+ **Pages** (if applicable):
444
+ - [page file] — [what it contains]
445
+
446
+ ### Design System Compliance
447
+ - [ ] All color tokens applied (no hardcoded colors)
448
+ - [ ] Typography matches design system specs
449
+ - [ ] Spacing uses design system values
450
+ - [ ] Animations use design system motion tokens
451
+ - [ ] Interactive states match design system table
452
+ - [ ] Component patterns follow design system definitions
453
+
454
+ ### Accessibility
455
+ - [ ] Color contrast WCAG 2.1 AA compliant
456
+ - [ ] Keyboard navigation works for all interactive elements
457
+ - [ ] ARIA attributes applied per spec
458
+ - [ ] `prefers-reduced-motion` handled
459
+ - [ ] Semantic HTML throughout
460
+
461
+ ### Next Steps
462
+ - Run `/devlyn.team-review` to validate code quality
463
+ - Run `/devlyn.team-resolve [feature]` to add features on top of this UI
464
+
465
+ </team_build_summary>
466
+ </output_format>