command-code 0.26.16 → 0.26.17
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 +2 -0
- package/dist/index.mjs +26 -26
- package/package.json +2 -1
- package/skills/design/SKILL.md +388 -0
- package/skills/design/references/border.md +155 -0
- package/skills/design/references/button.md +192 -0
- package/skills/design/references/checkup.md +160 -0
- package/skills/design/references/color.md +166 -0
- package/skills/design/references/create.md +287 -0
- package/skills/design/references/design-html.md +225 -0
- package/skills/design/references/finish.md +153 -0
- package/skills/design/references/interaction.md +168 -0
- package/skills/design/references/layout.md +158 -0
- package/skills/design/references/motion.md +202 -0
- package/skills/design/references/redesign.md +186 -0
- package/skills/design/references/refine.md +193 -0
- package/skills/design/references/relayout.md +197 -0
- package/skills/design/references/report-html.md +116 -0
- package/skills/design/references/responsive.md +179 -0
- package/skills/design/references/review.md +162 -0
- package/skills/design/references/setup.md +119 -0
- package/skills/design/references/shadow.md +137 -0
- package/skills/design/references/smell.md +197 -0
- package/skills/design/references/surface.md +163 -0
- package/skills/design/references/tokenize.md +124 -0
- package/skills/design/references/typeset.md +170 -0
- package/skills/design/references/voice.md +183 -0
- package/skills/design/references/writing.md +152 -0
- package/vsix/commandcode-vscode.vsix +0 -0
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
# Voice `/design voice`
|
|
2
|
+
|
|
3
|
+
Brand surfaces are judged before they are understood. A visitor arrives half-ready to leave. The page has to earn the next second.
|
|
4
|
+
|
|
5
|
+
Here, design is not serving a task. The design is the product.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Discipline files
|
|
10
|
+
|
|
11
|
+
Voice drives the brand identity pass — consult these when each dimension comes up, not as additional work to run on top:
|
|
12
|
+
|
|
13
|
+
- [color.md](color.md) — for correct palette construction when committing to a brand hue
|
|
14
|
+
- [typeset.md](typeset.md) — for correct type hierarchy when building the brand voice and display scale
|
|
15
|
+
- [motion.md](motion.md) — for correct timing and personality when adding expressive animation
|
|
16
|
+
- [border.md](border.md) — for correct edge language when choosing frame and art-direction treatments
|
|
17
|
+
- [shadow.md](shadow.md) — for correct depth model when adding atmospheric lighting or elevation
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Composition Starts With The Visitor's Job
|
|
22
|
+
|
|
23
|
+
A brand surface still has work to do.
|
|
24
|
+
|
|
25
|
+
If the visitor must decide, I narrow the page around claim, proof, trust, and action.
|
|
26
|
+
|
|
27
|
+
If the visitor must learn, I build editorial flow with strong pacing and readable depth.
|
|
28
|
+
|
|
29
|
+
If the visitor must explore, I make product paths, examples, filters, or galleries feel open and reversible.
|
|
30
|
+
|
|
31
|
+
If the visitor must compare, I make differences visible with matrices, side-by-side proof, or ranked value.
|
|
32
|
+
|
|
33
|
+
If the visitor must believe, I lead with evidence, artifact, image, and specificity before ornament.
|
|
34
|
+
|
|
35
|
+
The brand voice changes the skin. The visitor's job chooses the composition.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Prompt Invariants Are Sacred
|
|
40
|
+
|
|
41
|
+
If the prompt supplies a name, that name is the brand. I do not replace it with a smoother, shorter, more familiar, or previously used name.
|
|
42
|
+
|
|
43
|
+
The first viewport must prove this is the named thing. Logo, headline, artifact, copy, and call to action all belong to the current name, category, user, and job.
|
|
44
|
+
|
|
45
|
+
I do not let old examples, earlier outputs, familiar startup tropes, or category clichés rename the product or choose the artifact.
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Landing Pages Need A Specific Proof Object
|
|
50
|
+
|
|
51
|
+
A landing page is not complete because it has a headline and an abstract product panel.
|
|
52
|
+
|
|
53
|
+
I choose one proof object the visitor can inspect. It must come from the actual product world: a domain object, transaction, path, record, environment, comparison, transformation, or workflow that would be recognizable to the intended user.
|
|
54
|
+
|
|
55
|
+
That proof object drives the composition. It is not decoration beside the headline.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Application Bar
|
|
60
|
+
|
|
61
|
+
`/design voice` applies brand character across the visible surface. It is not a small garnish pass.
|
|
62
|
+
|
|
63
|
+
At minimum, I verify the first viewport, proof object, headline voice, type choice, color behavior, CTA language, imagery or artifact treatment, and one memorable brand-specific detail.
|
|
64
|
+
|
|
65
|
+
Adding a tiny logo mark, accent square, decorative pattern, or one hover flourish is not enough.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## The Register
|
|
70
|
+
|
|
71
|
+
I use this file for marketing pages, landing pages, campaign pages, portfolios, about pages, product stories, and long-form surfaces where impression is the work.
|
|
72
|
+
|
|
73
|
+
Brand does not mean one aesthetic. A developer tool, hotel, restaurant, gallery, album page, studio portfolio, and consumer product all live here. They need different lanes.
|
|
74
|
+
|
|
75
|
+
I name the lane before I design.
|
|
76
|
+
|
|
77
|
+
- Editorial, cultural, luxury
|
|
78
|
+
- Technical, developer, systems-minded
|
|
79
|
+
- Consumer, lifestyle, tactile
|
|
80
|
+
- Studio, portfolio, experimental
|
|
81
|
+
- Campaign, launch, moment-driven
|
|
82
|
+
|
|
83
|
+
If I cannot name the lane in one sentence, the surface is not ready.
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## The First 1.5 Seconds
|
|
88
|
+
|
|
89
|
+
The first viewport must commit.
|
|
90
|
+
|
|
91
|
+
The user should quickly know the category, feel the voice, and see a reason to continue. Average is not neutral anymore. Average reads generated.
|
|
92
|
+
|
|
93
|
+
Restraint is allowed only when it is visibly chosen. Timid restraint is absence.
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## Type Carries Voice
|
|
98
|
+
|
|
99
|
+
I start with physical words, not generic adjectives. Cold, precise, slightly strange. Warm, tactile, hand-stamped. Expensive, slow, cinematic.
|
|
100
|
+
|
|
101
|
+
Then I pick type that feels like an object from that world. A field guide. A receipt. A gallery label. A club poster. A terminal manual. A bottle label. A children's science kit.
|
|
102
|
+
|
|
103
|
+
I reject the obvious first pass when it smells like the current AI design pile. A serif is not automatically elegant. Mono is not automatically technical. A rounded sans is not automatically friendly.
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Color Must Commit
|
|
108
|
+
|
|
109
|
+
Brand pages can use more color than product surfaces. Statement, conversation, and flood color levels are welcome when the brief earns them.
|
|
110
|
+
|
|
111
|
+
I name a real reference before choosing a hue. Unnamed ambition turns beige.
|
|
112
|
+
|
|
113
|
+
If the brand needs voice, I do not hide behind a neutral page with one safe accent. If the brand needs quiet, I make the quiet exact.
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## Composition Has To Make A Choice
|
|
118
|
+
|
|
119
|
+
The centered stack with three feature cards is the default nobody remembers.
|
|
120
|
+
|
|
121
|
+
I choose a composition with a point of view:
|
|
122
|
+
|
|
123
|
+
- Asymmetric when the brand needs energy
|
|
124
|
+
- Strict grid when the brand needs rigor
|
|
125
|
+
- Editorial pacing when the story needs breath
|
|
126
|
+
- Full-bleed image when the subject is physical
|
|
127
|
+
- Type-led minimalism when the words are strong enough
|
|
128
|
+
- Section-by-section art direction when the narrative changes register
|
|
129
|
+
|
|
130
|
+
I do not split the difference. Half-asymmetric looks broken. Half-editorial looks like a costume.
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
## Imagery
|
|
135
|
+
|
|
136
|
+
If the subject is physical, I ship imagery. Restaurant, hotel, travel, fashion, product, photography, food, craft, hobby, venue, place. No colored rectangle can stand in for the thing itself.
|
|
137
|
+
|
|
138
|
+
One decisive image beats five filler images. I search for the specific object and situation, not the category. Alt text is part of the brand voice.
|
|
139
|
+
|
|
140
|
+
Tech and developer brands can be type-led, code-led, or diagram-led. That is a lane, not an excuse to leave the page visually empty.
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## Motion Permission
|
|
145
|
+
|
|
146
|
+
Brand can choreograph when choreography deepens the mood.
|
|
147
|
+
|
|
148
|
+
Slow editorial scroll, a single strong reveal, type that arrives with intention, section transitions that feel like pacing. These can work. Scattered motion on every card does not.
|
|
149
|
+
|
|
150
|
+
Sometimes the most confident brand motion is none.
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## What I Refuse
|
|
155
|
+
|
|
156
|
+
- Mono everywhere because the brief says engineer
|
|
157
|
+
- Calling tiny decorative touches a brand pass
|
|
158
|
+
- Brand moments that cannot be seen in the rendered page
|
|
159
|
+
- Editorial magazine styling on a brand that is not editorial
|
|
160
|
+
- Rounded-square icons above every heading
|
|
161
|
+
- Hero plus three identical cards as the whole concept
|
|
162
|
+
- A palette that is guessable from the category
|
|
163
|
+
- Zero imagery for a physical subject
|
|
164
|
+
- A font chosen because it appeared in the last generated landing page
|
|
165
|
+
- Motion that exists only to make the page feel less empty
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
## How I Know The Brand Surface Works
|
|
170
|
+
|
|
171
|
+
- Brand character is visible before I explain it
|
|
172
|
+
- The proof object belongs to this product and drives the page
|
|
173
|
+
- The first viewport has a recognizable point of view
|
|
174
|
+
- The lane fits the subject
|
|
175
|
+
- Type, color, image, and layout sound like the same brand
|
|
176
|
+
- The page would be remembered after two seconds
|
|
177
|
+
- It does not look like the median generated landing page
|
|
178
|
+
- The visitor has a reason to scroll
|
|
179
|
+
|
|
180
|
+
STRICT RULE — NEVER BREAK THIS
|
|
181
|
+
Do not create report.md, any kind of report, summary, analysis file,
|
|
182
|
+
or extra documentation. This applies every time this file is used.
|
|
183
|
+
Generate no reports unless explicitly asked.
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
# UX Writing `/design writing`
|
|
2
|
+
|
|
3
|
+
Words are interface. They label actions, lower anxiety, explain failures, and make the system feel honest.
|
|
4
|
+
|
|
5
|
+
I write like the product knows what it is doing.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Writing Follows Composition
|
|
10
|
+
|
|
11
|
+
The work pattern decides which words matter most.
|
|
12
|
+
|
|
13
|
+
Monitor writing names status, freshness, severity, and next attention.
|
|
14
|
+
|
|
15
|
+
Operate writing names commands, object state, immediate feedback, and recovery.
|
|
16
|
+
|
|
17
|
+
Compare writing names criteria, differences, ranking, and filters.
|
|
18
|
+
|
|
19
|
+
Configure writing names settings, dependencies, validation, preview, and commit.
|
|
20
|
+
|
|
21
|
+
Learn writing names progress, orientation, examples, and completion.
|
|
22
|
+
|
|
23
|
+
Decide writing names claim, proof, risk, trust, and the action.
|
|
24
|
+
|
|
25
|
+
Explore writing names search, filter, category, result, and reset.
|
|
26
|
+
|
|
27
|
+
I do not write generic card subtitles to fill a grid. Copy earns its place by helping the work.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Application Bar
|
|
32
|
+
|
|
33
|
+
`/design writing` rewrites interface copy in place. It is not advice about copy.
|
|
34
|
+
|
|
35
|
+
At minimum, I inspect buttons, navigation, headings, labels, helper text, empty states, loading states, success states, errors, destructive moments, links, alt text, and repeated terminology where they exist.
|
|
36
|
+
|
|
37
|
+
If I only rewrite a headline or tagline while operational copy remains vague, the writing pass failed.
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Buttons
|
|
42
|
+
|
|
43
|
+
A button names the action it performs.
|
|
44
|
+
|
|
45
|
+
I use a clear verb and, when needed, a clear object: save changes, delete project, create account, send invite. I avoid vague permission words like OK, Yes, Submit, Continue, and Learn more unless the destination or outcome is already explicit.
|
|
46
|
+
|
|
47
|
+
For destructive actions, I name the destruction. If five items will be deleted, the button says that.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Errors
|
|
52
|
+
|
|
53
|
+
An error is a recovery path, not a scolding.
|
|
54
|
+
|
|
55
|
+
It should tell the user what happened, why it happened when that helps, and what to do next. It keeps their input. It appears where the fix can happen. It does not blame the user.
|
|
56
|
+
|
|
57
|
+
I do not make errors cute. Frustrated users need help, not personality theater.
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Empty States
|
|
62
|
+
|
|
63
|
+
An empty state should teach the space.
|
|
64
|
+
|
|
65
|
+
It says what belongs there, why it matters, and what action fills it. Search empties suggest a different query or clearing filters. First-use empties guide setup. Permission empties explain access. Error empties offer recovery.
|
|
66
|
+
|
|
67
|
+
"No items" is almost never enough.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## Loading
|
|
72
|
+
|
|
73
|
+
Loading copy names the work being done.
|
|
74
|
+
|
|
75
|
+
Saving, uploading, analyzing, syncing, importing, checking. If the duration is knowable, I set an expectation. If progress is measurable, I show it. If the wait is long, I give useful context rather than filler.
|
|
76
|
+
|
|
77
|
+
I avoid generic machine-flavored jokes. Specific beats cute.
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## Success
|
|
82
|
+
|
|
83
|
+
Success copy confirms the action and then gets out of the way.
|
|
84
|
+
|
|
85
|
+
It can add a next implication when useful: password updated, use it next time you sign in. Project created, invite your team. Changes saved. Short, calm, done.
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## Labels And Help
|
|
90
|
+
|
|
91
|
+
Labels stay visible. Placeholders show examples or formats. Hint text explains why the system asks or what format it expects.
|
|
92
|
+
|
|
93
|
+
Icon-only controls need accessible names. Link text stands alone. Alt text describes the information the image contributes, not the fact that an image exists.
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## Voice And Tone
|
|
98
|
+
|
|
99
|
+
Voice stays consistent. Tone adapts to the moment.
|
|
100
|
+
|
|
101
|
+
Product UI is direct, calm, specific, and consistent. Brand surfaces can be more expressive, but still concrete. Errors are sober. Success can be warmer. Destructive moments are plain.
|
|
102
|
+
|
|
103
|
+
I use the same noun for the same concept everywhere. A project does not become a workspace, board, initiative, and file because variety felt nice.
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Translation
|
|
108
|
+
|
|
109
|
+
I leave room for expansion. German and Finnish get longer. Chinese may use fewer characters but not always less width. Word order changes. Plural rules change.
|
|
110
|
+
|
|
111
|
+
I keep full sentences as translation units. I avoid string fragments that assume English grammar. I avoid abbreviations when clarity matters.
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## Punctuation
|
|
116
|
+
|
|
117
|
+
Sentence case is the default. Labels usually do not need periods. Sentences do. Exclamation points are rare. Em dashes do not belong in generated UI copy for this project; I use commas, colons, semicolons, parentheses, or a shorter sentence.
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
## What I Refuse
|
|
122
|
+
|
|
123
|
+
- OK, Submit, Click here, or vague Learn more
|
|
124
|
+
- Copy advice without applying copy changes
|
|
125
|
+
- Rewriting only marketing text while UI states stay vague
|
|
126
|
+
- Placeholder-only labels
|
|
127
|
+
- "Something went wrong" with no next move
|
|
128
|
+
- Humor in errors
|
|
129
|
+
- Exclamation points as energy
|
|
130
|
+
- Jargon without context
|
|
131
|
+
- Different terms for the same object
|
|
132
|
+
- Redundant intros that restate headings
|
|
133
|
+
- Copy that explains a bad design instead of fixing it
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
## How I Know The Writing Works
|
|
138
|
+
|
|
139
|
+
- Copy changes are applied in the actual interface
|
|
140
|
+
- Critical states have specific words, not placeholders
|
|
141
|
+
- Every action says what happens
|
|
142
|
+
- Every error helps recovery
|
|
143
|
+
- Every empty state points somewhere useful
|
|
144
|
+
- Loading copy names the actual work
|
|
145
|
+
- Terminology stays consistent
|
|
146
|
+
- The tone fits the user's emotional state
|
|
147
|
+
- Translation will not shatter the layout
|
|
148
|
+
|
|
149
|
+
STRICT RULE — NEVER BREAK THIS
|
|
150
|
+
Do not create report.md, any kind of report, summary, analysis file,
|
|
151
|
+
or extra documentation. This applies every time this file is used.
|
|
152
|
+
Generate no reports unless explicitly asked.
|
|
Binary file
|