devtronic 1.0.0 → 1.2.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/README.md +5 -3
- package/dist/{chunk-B6Q6YVID.js → chunk-V4QEAL7Y.js} +53 -23
- package/dist/index.js +1070 -220
- package/dist/{plugin-JTDPHWUF.js → plugin-SGSFVXPA.js} +5 -1
- package/package.json +1 -1
- package/templates/claude-code/.claude/agents/a11y-auditor.md +82 -0
- package/templates/claude-code/.claude/agents/design-critic.md +77 -0
- package/templates/claude-code/.claude/agents/design-system-guardian.md +78 -0
- package/templates/claude-code/.claude/agents/design-token-extractor.md +53 -0
- package/templates/claude-code/.claude/agents/ia-architect.md +81 -0
- package/templates/claude-code/.claude/agents/ux-researcher.md +69 -0
- package/templates/claude-code/.claude/agents/visual-qa.md +74 -0
- package/templates/claude-code/.claude/skills/audit/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/backlog/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/brief/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/briefing/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/checkpoint/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/create-plan/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/create-skill/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/design/SKILL.md +48 -0
- package/templates/claude-code/.claude/skills/design-audit/SKILL.md +114 -0
- package/templates/claude-code/.claude/skills/design-define/SKILL.md +109 -0
- package/templates/claude-code/.claude/skills/design-ia/SKILL.md +103 -0
- package/templates/claude-code/.claude/skills/design-research/SKILL.md +116 -0
- package/templates/claude-code/.claude/skills/design-review/SKILL.md +99 -0
- package/templates/claude-code/.claude/skills/design-spec/SKILL.md +136 -0
- package/templates/claude-code/.claude/skills/design-system/SKILL.md +39 -0
- package/templates/claude-code/.claude/skills/design-system-audit/SKILL.md +106 -0
- package/templates/claude-code/.claude/skills/design-system-define/SKILL.md +141 -0
- package/templates/claude-code/.claude/skills/design-system-sync/SKILL.md +105 -0
- package/templates/claude-code/.claude/skills/design-wireframe/SKILL.md +120 -0
- package/templates/claude-code/.claude/skills/execute-plan/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/generate-tests/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/handoff/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/investigate/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/learn/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/opensrc/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/post-review/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/quick/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/recap/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/research/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/scaffold/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/setup/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/spec/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/summary/SKILL.md +1 -1
- package/templates/claude-code/.claude/skills/worktree/SKILL.md +1 -1
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: devtronic:design-system
|
|
3
|
+
description: Design system router — delegates to define, audit, or sync based on flag. Manages design tokens, components, and style guide lifecycle.
|
|
4
|
+
allowed-tools: Task, AskUserQuestion
|
|
5
|
+
argument-hint: "[--define|--audit|--sync]"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Design:System - Design System Router
|
|
9
|
+
|
|
10
|
+
Routes to the right design system sub-skill based on the flag provided.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
- `--define`: Creating or extracting a design system for the first time
|
|
14
|
+
- `--audit`: Checking if the codebase drifts from the design system
|
|
15
|
+
- `--sync`: Updating project config files when tokens change
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Routing
|
|
20
|
+
|
|
21
|
+
| Flag | Delegates to | Purpose |
|
|
22
|
+
|------|-------------|---------|
|
|
23
|
+
| `--define` | `/design:system-define` | Create or extract design tokens and components |
|
|
24
|
+
| `--audit` | `/design:system-audit` | Find drift, unused tokens, hardcoded values |
|
|
25
|
+
| `--sync` | `/design:system-sync` | Sync design-system.md → tailwind/CSS vars/tokens.json |
|
|
26
|
+
| no flag | ask | Prompt user to choose |
|
|
27
|
+
|
|
28
|
+
## No Flag Behavior
|
|
29
|
+
|
|
30
|
+
When invoked without a flag, ask:
|
|
31
|
+
- Do you want to define a new design system or extract from existing code? → `--define`
|
|
32
|
+
- Do you want to audit for drift or inconsistencies? → `--audit`
|
|
33
|
+
- Do you want to sync tokens from the design system to project config? → `--sync`
|
|
34
|
+
|
|
35
|
+
## Source of Truth
|
|
36
|
+
|
|
37
|
+
All three sub-skills share `thoughts/design/design-system.md` as the canonical design system document.
|
|
38
|
+
|
|
39
|
+
The sync direction is always: `thoughts/design/design-system.md` → project config files (never the reverse).
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: devtronic:design-system-audit
|
|
3
|
+
description: Audits the codebase for design system drift — finds hardcoded values, unused tokens, and components that bypass the system.
|
|
4
|
+
allowed-tools: Task, Read, Glob, Grep, Write, Bash
|
|
5
|
+
argument-hint: "[--files path/to/dir]"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Design:System-Audit - Design System Drift Detection
|
|
9
|
+
|
|
10
|
+
Scans the codebase against `thoughts/design/design-system.md` to detect drift: hardcoded values, unused tokens, and components that bypass the design system.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
- Before a PR or release — catch drift before it merges
|
|
14
|
+
- After onboarding new developers — check for style habits that bypass the system
|
|
15
|
+
- Periodically on growing codebases
|
|
16
|
+
- When run from `/post-review` automatically
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Process
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
1. LOAD DESIGN SYSTEM
|
|
24
|
+
└── Read thoughts/design/design-system.md (required — abort if missing, suggest --define)
|
|
25
|
+
|
|
26
|
+
2. DISCOVER SCOPE
|
|
27
|
+
└── $ARGUMENTS --files → specific directory
|
|
28
|
+
└── No args → scan src/ or app/ or equivalent
|
|
29
|
+
|
|
30
|
+
3. INVOKE design-system-guardian
|
|
31
|
+
└── Finds violations across all files in scope
|
|
32
|
+
|
|
33
|
+
4. GENERATE REPORT
|
|
34
|
+
└── Write thoughts/design/design-system-audit.md
|
|
35
|
+
└── Print summary to console
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## What Gets Checked
|
|
39
|
+
|
|
40
|
+
### 1. Hardcoded Color Values
|
|
41
|
+
Grep for hex colors, rgb(), rgba(), hsl() that should be CSS variables or tokens.
|
|
42
|
+
|
|
43
|
+
**Violation**: `color: #3B82F6` when `--color-primary: #3B82F6` exists in design system.
|
|
44
|
+
**Fix**: Replace with `color: var(--color-primary)` or the framework equivalent.
|
|
45
|
+
|
|
46
|
+
### 2. Hardcoded Spacing
|
|
47
|
+
Grep for arbitrary px/rem values where a spacing token exists.
|
|
48
|
+
|
|
49
|
+
**Violation**: `padding: 16px` when `space.4` = 16px exists.
|
|
50
|
+
**Fix**: Replace with `p-4` (Tailwind) or `var(--space-4)` (CSS vars).
|
|
51
|
+
|
|
52
|
+
### 3. Unused Tokens
|
|
53
|
+
Tokens defined in design-system.md but never referenced in source files.
|
|
54
|
+
|
|
55
|
+
**Output**: List of unused tokens to consider removing from the design system.
|
|
56
|
+
|
|
57
|
+
### 4. Rogue Styles
|
|
58
|
+
Components with inline styles or non-token CSS for properties covered by the design system.
|
|
59
|
+
|
|
60
|
+
### 5. Component Inventory
|
|
61
|
+
For each component in design-system.md: is it actually implemented? Does it expose the correct variants/states?
|
|
62
|
+
|
|
63
|
+
## Output: `thoughts/design/design-system-audit.md`
|
|
64
|
+
|
|
65
|
+
```markdown
|
|
66
|
+
# Design System Audit: [Date]
|
|
67
|
+
|
|
68
|
+
**Design system**: thoughts/design/design-system.md
|
|
69
|
+
**Scope**: [files scanned]
|
|
70
|
+
**Status**: N violations found
|
|
71
|
+
|
|
72
|
+
## Violations
|
|
73
|
+
|
|
74
|
+
### Hardcoded Colors (N)
|
|
75
|
+
|
|
76
|
+
| File | Line | Found | Should be |
|
|
77
|
+
|------|------|-------|-----------|
|
|
78
|
+
| src/Button.tsx | 12 | #3B82F6 | var(--color-primary) |
|
|
79
|
+
|
|
80
|
+
### Hardcoded Spacing (N)
|
|
81
|
+
|
|
82
|
+
| File | Line | Found | Should be |
|
|
83
|
+
|------|------|-------|-----------|
|
|
84
|
+
| src/Card.tsx | 8 | padding: 16px | space.4 |
|
|
85
|
+
|
|
86
|
+
### Unused Tokens (N)
|
|
87
|
+
- color.secondary.light — defined but never used
|
|
88
|
+
- shadow.xl — defined but never used
|
|
89
|
+
|
|
90
|
+
### Components Missing Implementation (N)
|
|
91
|
+
- Badge — in design system but no component file found
|
|
92
|
+
|
|
93
|
+
## Coverage
|
|
94
|
+
- Files scanned: N
|
|
95
|
+
- Files with violations: M
|
|
96
|
+
- Design system compliance: X%
|
|
97
|
+
|
|
98
|
+
## Recommended Actions
|
|
99
|
+
1. [Highest priority fix]
|
|
100
|
+
2. [Second priority]
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## Tips
|
|
104
|
+
- Run `--files src/components` to audit just the component library
|
|
105
|
+
- Compliance % is a lagging indicator — track it over time
|
|
106
|
+
- Unused tokens accumulate — prune them in design:system-sync
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: devtronic:design-system-define
|
|
3
|
+
description: Creates or extracts a design system — tokens, components, and style guide — persisted to thoughts/design/design-system.md.
|
|
4
|
+
allowed-tools: Task, Read, Write, Edit, AskUserQuestion, Bash, Glob
|
|
5
|
+
argument-hint: "[--extract]"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Design:System-Define - Create or Extract Design System
|
|
9
|
+
|
|
10
|
+
Two modes:
|
|
11
|
+
- **Interactive** (default): define a design system from scratch through guided questions
|
|
12
|
+
- **Extract** (`--extract`): read existing CSS, Tailwind config, or component files and normalize into tokens
|
|
13
|
+
|
|
14
|
+
## When to Use
|
|
15
|
+
- Starting a new project with no design system
|
|
16
|
+
- Inheriting a codebase with implicit styles that need to be made explicit
|
|
17
|
+
- After `/design:wireframe` — wireframes reveal what tokens are needed
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Process
|
|
22
|
+
|
|
23
|
+
### Mode: Interactive (default)
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
1. ASK about existing constraints
|
|
27
|
+
└── Does a brand guide exist? Any existing color palette or typography?
|
|
28
|
+
|
|
29
|
+
2. GUIDED TOKEN DEFINITION
|
|
30
|
+
├── Colors: primary, secondary, neutral scale, semantic (success/error/warning/info)
|
|
31
|
+
├── Typography: font families, size scale, weight, line-height
|
|
32
|
+
├── Spacing: base unit and scale (4px, 8px, 12px, 16px, 24px, 32px, 48px, 64px)
|
|
33
|
+
├── Borders: radius scale, border widths
|
|
34
|
+
├── Shadows: elevation levels (0-5)
|
|
35
|
+
└── Motion: duration scale, easing functions
|
|
36
|
+
|
|
37
|
+
3. COMPONENT INVENTORY
|
|
38
|
+
└── From wireframes (thoughts/design/wireframes.md), list components needed
|
|
39
|
+
└── For each: variants, states (default/hover/active/disabled/focus)
|
|
40
|
+
|
|
41
|
+
4. INVOKE design-token-extractor
|
|
42
|
+
└── Normalize tokens to agnostic format
|
|
43
|
+
|
|
44
|
+
5. PERSIST → thoughts/design/design-system.md
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Mode: Extract (`--extract`)
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
1. DISCOVER project config
|
|
51
|
+
├── Glob for: tailwind.config.*, tokens.json, *.css with :root { }
|
|
52
|
+
└── Read relevant files
|
|
53
|
+
|
|
54
|
+
2. INVOKE design-token-extractor
|
|
55
|
+
└── Extract and normalize all tokens found
|
|
56
|
+
|
|
57
|
+
3. IDENTIFY GAPS
|
|
58
|
+
└── What's missing vs. what wireframes need?
|
|
59
|
+
|
|
60
|
+
4. PERSIST → thoughts/design/design-system.md
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Output: `thoughts/design/design-system.md`
|
|
64
|
+
|
|
65
|
+
```markdown
|
|
66
|
+
# Design System: [Project]
|
|
67
|
+
|
|
68
|
+
**Date**: YYYY-MM-DD
|
|
69
|
+
**Source**: defined | extracted from [files]
|
|
70
|
+
|
|
71
|
+
## Colors
|
|
72
|
+
|
|
73
|
+
| Token | Value | Usage |
|
|
74
|
+
|-------|-------|-------|
|
|
75
|
+
| color.primary | #... | Primary actions, links |
|
|
76
|
+
| color.primary.hover | #... | Hover state |
|
|
77
|
+
| color.neutral.100 | #... | Lightest background |
|
|
78
|
+
| color.neutral.900 | #... | Body text |
|
|
79
|
+
| color.success | #... | Success states |
|
|
80
|
+
| color.error | #... | Error states |
|
|
81
|
+
| color.warning | #... | Warning states |
|
|
82
|
+
|
|
83
|
+
## Typography
|
|
84
|
+
|
|
85
|
+
| Token | Value |
|
|
86
|
+
|-------|-------|
|
|
87
|
+
| font.family.base | Inter, system-ui, sans-serif |
|
|
88
|
+
| font.size.sm | 14px |
|
|
89
|
+
| font.size.md | 16px |
|
|
90
|
+
| font.size.lg | 18px |
|
|
91
|
+
| font.weight.normal | 400 |
|
|
92
|
+
| font.weight.semibold | 600 |
|
|
93
|
+
| font.weight.bold | 700 |
|
|
94
|
+
|
|
95
|
+
## Spacing
|
|
96
|
+
|
|
97
|
+
Base unit: 4px
|
|
98
|
+
|
|
99
|
+
| Token | Value |
|
|
100
|
+
|-------|-------|
|
|
101
|
+
| space.1 | 4px |
|
|
102
|
+
| space.2 | 8px |
|
|
103
|
+
| space.4 | 16px |
|
|
104
|
+
| space.6 | 24px |
|
|
105
|
+
| space.8 | 32px |
|
|
106
|
+
| space.12 | 48px |
|
|
107
|
+
|
|
108
|
+
## Borders
|
|
109
|
+
|
|
110
|
+
| Token | Value |
|
|
111
|
+
|-------|-------|
|
|
112
|
+
| radius.sm | 4px |
|
|
113
|
+
| radius.md | 8px |
|
|
114
|
+
| radius.lg | 16px |
|
|
115
|
+
| radius.full | 9999px |
|
|
116
|
+
|
|
117
|
+
## Shadows
|
|
118
|
+
|
|
119
|
+
| Token | Value |
|
|
120
|
+
|-------|-------|
|
|
121
|
+
| shadow.sm | 0 1px 2px rgba(0,0,0,0.05) |
|
|
122
|
+
| shadow.md | 0 4px 6px rgba(0,0,0,0.07) |
|
|
123
|
+
|
|
124
|
+
## Components
|
|
125
|
+
|
|
126
|
+
### [ComponentName]
|
|
127
|
+
|
|
128
|
+
**Variants**: [default, primary, secondary, ghost]
|
|
129
|
+
**States**: [default, hover, active, disabled, focus]
|
|
130
|
+
**Props**: [key configurable aspects]
|
|
131
|
+
|
|
132
|
+
## Next Steps
|
|
133
|
+
|
|
134
|
+
- Run `/design:system --sync` to apply tokens to project config files
|
|
135
|
+
- Run `/design:system --audit` to check existing code against this system
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
## Tips
|
|
139
|
+
- Start with a minimal token set — add tokens when you need them, not in advance
|
|
140
|
+
- Use semantic token names (color.error) not literal ones (color.red)
|
|
141
|
+
- Every component needs its disabled and focus states defined
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: devtronic:design-system-sync
|
|
3
|
+
description: Syncs design tokens from thoughts/design/design-system.md to project config files (Tailwind, CSS vars, tokens.json).
|
|
4
|
+
allowed-tools: Task, Read, Write, Edit, Glob, Bash, AskUserQuestion
|
|
5
|
+
argument-hint: "[--dry-run]"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Design:System-Sync - Token Synchronization
|
|
9
|
+
|
|
10
|
+
Syncs `thoughts/design/design-system.md` (source of truth) → project config files.
|
|
11
|
+
|
|
12
|
+
Use `--dry-run` to preview changes without applying them.
|
|
13
|
+
|
|
14
|
+
## When to Use
|
|
15
|
+
- After `/design:system-define` — apply newly defined tokens to project
|
|
16
|
+
- When design tokens change in the design file — propagate to code
|
|
17
|
+
- Before `/execute-plan` — ensure tokens are available before implementation starts
|
|
18
|
+
|
|
19
|
+
**Direction**: Always `design-system.md → project files`. Never reverse.
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Process
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
1. LOAD DESIGN SYSTEM
|
|
27
|
+
└── Read thoughts/design/design-system.md
|
|
28
|
+
|
|
29
|
+
2. DETECT PROJECT CONFIG FORMAT
|
|
30
|
+
├── tailwind.config.* → Tailwind format
|
|
31
|
+
├── tokens.json / style-dictionary → Style Dictionary format
|
|
32
|
+
├── CSS :root { } → CSS custom properties
|
|
33
|
+
└── Combination of above
|
|
34
|
+
|
|
35
|
+
3. INVOKE design-token-extractor
|
|
36
|
+
└── Current state of project config tokens
|
|
37
|
+
└── Compute diff: design-system.md vs current config
|
|
38
|
+
|
|
39
|
+
4. SHOW DIFF
|
|
40
|
+
└── Tokens to ADD, MODIFY, REMOVE
|
|
41
|
+
└── --dry-run: stop here
|
|
42
|
+
|
|
43
|
+
5. CONFIRM & APPLY
|
|
44
|
+
└── AskUserQuestion to confirm if changes are significant
|
|
45
|
+
└── Apply to config files
|
|
46
|
+
|
|
47
|
+
6. VERIFY
|
|
48
|
+
└── Re-read config files to confirm changes applied correctly
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## Step 2: Config Format Detection
|
|
52
|
+
|
|
53
|
+
### Tailwind
|
|
54
|
+
```javascript
|
|
55
|
+
// tailwind.config.js / tailwind.config.ts
|
|
56
|
+
module.exports = {
|
|
57
|
+
theme: {
|
|
58
|
+
extend: {
|
|
59
|
+
colors: { primary: '#...' },
|
|
60
|
+
spacing: { ... }
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### CSS Custom Properties
|
|
67
|
+
```css
|
|
68
|
+
/* globals.css or tokens.css */
|
|
69
|
+
:root {
|
|
70
|
+
--color-primary: #...;
|
|
71
|
+
--space-4: 16px;
|
|
72
|
+
}
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Style Dictionary / tokens.json
|
|
76
|
+
```json
|
|
77
|
+
{
|
|
78
|
+
"color": { "primary": { "value": "#..." } }
|
|
79
|
+
}
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Step 4: Diff Format
|
|
83
|
+
|
|
84
|
+
```
|
|
85
|
+
Design System Sync — Diff Preview
|
|
86
|
+
|
|
87
|
+
+ ADD: color.brand (new token)
|
|
88
|
+
tailwind: colors.brand → '#4F46E5'
|
|
89
|
+
CSS var: --color-brand → '#4F46E5'
|
|
90
|
+
|
|
91
|
+
~ MODIFY: color.primary
|
|
92
|
+
current: '#3B82F6' → new: '#4F46E5'
|
|
93
|
+
|
|
94
|
+
- REMOVE: color.secondary.light (unused)
|
|
95
|
+
Action: Remove from config (confirm first)
|
|
96
|
+
|
|
97
|
+
N tokens added, M modified, K removed.
|
|
98
|
+
Apply changes? [y/N]
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## Tips
|
|
102
|
+
- Always `--dry-run` first on production codebases
|
|
103
|
+
- Removing tokens can break components — search for usages before removing
|
|
104
|
+
- After sync, run the build to catch any broken references
|
|
105
|
+
- Commit the sync as a separate `chore:` commit with message "sync design tokens"
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: devtronic:design-wireframe
|
|
3
|
+
description: Wireframe specification phase — generates structured text-based wireframe specs per screen. Tool-agnostic. Reads IA and define artifacts.
|
|
4
|
+
allowed-tools: Task, Read, Write, AskUserQuestion
|
|
5
|
+
argument-hint: "[screen-name|--all]"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Design:Wireframe - Screen Wireframe Specifications
|
|
9
|
+
|
|
10
|
+
## When to Use
|
|
11
|
+
- After `/design:ia` — reads thoughts/design/ia.md for screen list
|
|
12
|
+
- Before implementation planning — wireframes inform component breakdown
|
|
13
|
+
- When: layout decisions need to be made explicit before coding
|
|
14
|
+
|
|
15
|
+
**Skip for:** Screens already designed in a design tool (use `/design:review` instead).
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Process
|
|
20
|
+
```
|
|
21
|
+
1. LOAD CONTEXT
|
|
22
|
+
├── Read thoughts/design/ia.md (screen list, hierarchy, flows)
|
|
23
|
+
├── Read thoughts/design/define.md (personas — who uses each screen)
|
|
24
|
+
└── Determine scope: all screens or specific screen from $ARGUMENTS
|
|
25
|
+
|
|
26
|
+
2. PER SCREEN — generate wireframe spec:
|
|
27
|
+
├── Layout zones (header, main, sidebar, footer, modals)
|
|
28
|
+
├── Component list (what appears and where)
|
|
29
|
+
├── Content hierarchy (order of elements)
|
|
30
|
+
├── Interactive elements (buttons, inputs, links) + their actions
|
|
31
|
+
├── States (empty, loading, error, success)
|
|
32
|
+
└── ASCII layout sketch (optional but helpful)
|
|
33
|
+
|
|
34
|
+
3. REVIEW
|
|
35
|
+
└── Ask user to confirm key layout decisions
|
|
36
|
+
|
|
37
|
+
4. PERSIST
|
|
38
|
+
└── Write thoughts/design/wireframes.md
|
|
39
|
+
└── Append to thoughts/design/design.md
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Wireframe Spec Format (per screen)
|
|
43
|
+
|
|
44
|
+
Each screen uses this structure:
|
|
45
|
+
|
|
46
|
+
```markdown
|
|
47
|
+
### Screen: [Name]
|
|
48
|
+
|
|
49
|
+
**Route/location**: [URL pattern or nav path]
|
|
50
|
+
**Primary persona**: [who uses this most]
|
|
51
|
+
**Primary action**: [the one thing users do here]
|
|
52
|
+
|
|
53
|
+
#### Layout Zones
|
|
54
|
+
- **Header**: [logo, nav, user menu, search]
|
|
55
|
+
- **Main**: [primary content area]
|
|
56
|
+
- **Sidebar**: [secondary navigation or filters — or "none"]
|
|
57
|
+
- **Footer**: [secondary links, legal — or "none"]
|
|
58
|
+
|
|
59
|
+
#### Components
|
|
60
|
+
1. [Component name] — [brief description of content/purpose]
|
|
61
|
+
2. [Component name] — [brief description]
|
|
62
|
+
...
|
|
63
|
+
|
|
64
|
+
#### Content Hierarchy
|
|
65
|
+
1. [Most prominent element]
|
|
66
|
+
2. [Secondary element]
|
|
67
|
+
3. [Supporting content]
|
|
68
|
+
|
|
69
|
+
#### Interactive Elements
|
|
70
|
+
| Element | Type | Action |
|
|
71
|
+
|---------|------|--------|
|
|
72
|
+
| [Button label] | button | [what happens] |
|
|
73
|
+
| [Field label] | input | [what it accepts] |
|
|
74
|
+
|
|
75
|
+
#### States
|
|
76
|
+
- **Empty**: [what shows when no content]
|
|
77
|
+
- **Loading**: [skeleton? spinner? what kind]
|
|
78
|
+
- **Error**: [how errors surface]
|
|
79
|
+
- **Success**: [confirmation pattern]
|
|
80
|
+
|
|
81
|
+
#### ASCII Sketch (optional)
|
|
82
|
+
\`\`\`
|
|
83
|
+
┌─────────────────────────────┐
|
|
84
|
+
│ Logo Nav [Login] │
|
|
85
|
+
├─────────────────────────────┤
|
|
86
|
+
│ [Hero content] │
|
|
87
|
+
│ │
|
|
88
|
+
│ [Card] [Card] [Card] │
|
|
89
|
+
└─────────────────────────────┘
|
|
90
|
+
\`\`\`
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
## Output: `thoughts/design/wireframes.md`
|
|
94
|
+
|
|
95
|
+
Header:
|
|
96
|
+
```markdown
|
|
97
|
+
# Wireframe Specs: [Feature/Product]
|
|
98
|
+
|
|
99
|
+
**Date**: YYYY-MM-DD
|
|
100
|
+
**Screens**: N
|
|
101
|
+
**Status**: draft
|
|
102
|
+
|
|
103
|
+
## Screens
|
|
104
|
+
[table of contents linking to each screen spec]
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
Then one section per screen using the format above.
|
|
108
|
+
|
|
109
|
+
Footer:
|
|
110
|
+
```markdown
|
|
111
|
+
## Next Steps
|
|
112
|
+
- Run `/design:system` to define design tokens and components
|
|
113
|
+
- Run `/create-plan` — wireframes inform component breakdown in implementation plan
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
## Tips
|
|
117
|
+
- Specs are tool-agnostic — no Figma required to write them
|
|
118
|
+
- ASCII sketches clarify layout faster than 100 words of description
|
|
119
|
+
- Every screen needs all 4 states defined (empty/loading/error/success)
|
|
120
|
+
- Components listed here become the component list for `/create-plan`
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: execute-plan
|
|
2
|
+
name: devtronic:execute-plan
|
|
3
3
|
description: Execute a plan in parallel phases. Reads task dependencies and runs independent tasks as concurrent subagents. Claude Code only.
|
|
4
4
|
allowed-tools: Task, Read, Write, Bash, Glob, Grep, Edit
|
|
5
5
|
argument-hint: "[plan-path|--latest]"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: generate-tests
|
|
2
|
+
name: devtronic:generate-tests
|
|
3
3
|
description: Generate failing tests from a spec before implementation (Tests-as-DoD). Creates test files encoding acceptance criteria as executable tests, plus a traceability manifest.
|
|
4
4
|
allowed-tools: Read, Write, Glob, Grep, Bash
|
|
5
5
|
argument-hint: "[--from-spec|spec-path]"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: investigate
|
|
2
|
+
name: devtronic:investigate
|
|
3
3
|
description: Deep analysis of errors and bugs. Use when you paste an error for detailed investigation. Identifies root cause, analyzes flow, and proposes fix with code.
|
|
4
4
|
allowed-tools: Read, Grep, Glob, Bash, Write, Edit
|
|
5
5
|
argument-hint: "[error or description]"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: learn
|
|
2
|
+
name: devtronic:learn
|
|
3
3
|
description: Post-task teaching breakdown. After any task, get a detailed explanation of what was done, why, and how to apply the concepts yourself. Use when you say "explain what you did" or "teach me".
|
|
4
4
|
allowed-tools: Read, Grep, Glob, AskUserQuestion
|
|
5
5
|
argument-hint: "[topic or recent task]"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: opensrc
|
|
2
|
+
name: devtronic:opensrc
|
|
3
3
|
description: Fetch source code of npm packages or GitHub repos so AI agents have full implementation context, not just type definitions. Uses vercel-labs/opensrc under the hood.
|
|
4
4
|
allowed-tools: Bash, Read, Glob, Edit
|
|
5
5
|
argument-hint: "<package[@version]|owner/repo[@ref]> [packages...]"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: post-review
|
|
2
|
+
name: devtronic:post-review
|
|
3
3
|
description: Post-feature review before PR. Checks requirements, architecture, quality, and captures lessons. Auto-invoke after completing a plan implementation. Use --strict for senior engineer mode.
|
|
4
4
|
allowed-tools: Read, Grep, Glob, Bash, Edit, Write, Task
|
|
5
5
|
argument-hint: "[--strict|--quick|files...]"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: research
|
|
2
|
+
name: devtronic:research
|
|
3
3
|
description: Codebase investigation. Quick mode (default) for fast orientation. Deep mode for thorough analysis. External mode for GitHub + user-configured MCPs.
|
|
4
4
|
allowed-tools: Read, Grep, Glob, Bash, WebFetch, Task, Write
|
|
5
5
|
argument-hint: "[topic] [--deep|--external|--all]"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: spec
|
|
2
|
+
name: devtronic:spec
|
|
3
3
|
description: Create a product specification (PRD) by interviewing the user. Captures requirements, UX decisions, edge cases, and success metrics before technical work begins.
|
|
4
4
|
allowed-tools: AskUserQuestion, Write, Read, Glob
|
|
5
5
|
argument-hint: "[feature]"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: worktree
|
|
2
|
+
name: devtronic:worktree
|
|
3
3
|
description: Manage git worktrees with intuitive flags. Create, list, remove, and prune worktrees with consistent naming and enriched status.
|
|
4
4
|
allowed-tools: Bash, AskUserQuestion, Read, Glob
|
|
5
5
|
argument-hint: "[--create|--list|--remove|--prune] [name]"
|