ワンクリックで
improve-microcopy
// Write or review UX microcopy for dashboard interfaces. Use when reviewing button labels, errors, empty states, dialogs, helper text, tooltips, toasts, onboarding, or any user-facing product copy.
// Write or review UX microcopy for dashboard interfaces. Use when reviewing button labels, errors, empty states, dialogs, helper text, tooltips, toasts, onboarding, or any user-facing product copy.
Structural refactoring pass on changed code. Use after implementing a feature to improve code structure, reduce duplication, and clean up APIs without changing behavior.
Self-review your own work before committing. Fight entropy, ensure quality, leave the codebase better than you found it.
Generate or update CLI commands in cmd/api/ from the OpenAPI spec and Go SDK. Use when the API spec changes or new endpoints are added.
Use this skill when writing, editing, reviewing, or improving documentation in this repository. Activates for tasks involving content in `docs/product/` or `docs/engineering/`, MDX/Markdown files, or any documentation-related request.
Reviews restate handler code in svc/ctrl/worker to find restate client calls (service calls, state access, sleep, etc.) incorrectly placed inside restate.Run, restate.RunVoid, or restate.RunAsync closures. Use when reviewing restate handlers, checking restate.Run usage, or auditing worker service code.
| name | improve-microcopy |
| description | Write or review UX microcopy for dashboard interfaces. Use when reviewing button labels, errors, empty states, dialogs, helper text, tooltips, toasts, onboarding, or any user-facing product copy. |
| disable-model-invocation | true |
| allowed-tools | ["Read","Glob","Grep","Bash"] |
Write or review UX copy for product UI. Be concise, suggestive, and light on theory.
Do not edit product files when this skill is invoked. Return recommendations first. The human chooses what to apply.
Ask only if missing and not discoverable:
For branch reviews, infer context from git diff main...HEAD and changed files under web/apps/dashboard/. Skip tests, stories, logs, comments, identifiers, and copy outside the diff. Do not patch the dashboard.
Before rewriting, ask what job the copy has:
Then check:
Start with a verb. Name the object when context is not obvious: "Create key", "Save changes", "Delete permission". Avoid "Submit", "Confirm", "Continue", and "OK".
Structure: blocker + cause + next step. Put the most useful information first. Use "Name already in use. Choose a different key name." Avoid "Something went wrong. Please try again."
Structure: what this is + why it is empty + how to start. Use "No permissions yet. Add a permission to control access to this API." Avoid "No data".
Never leave a dead end unless the user truly cannot act.
Make the action clear, describe consequences, and label buttons with the action: "Delete permission?" / "Requests that rely on this permission may fail. This action cannot be undone." / "Delete permission" and "Keep permission".
Do not mechanically rewrite a whole dialog. If the current warning is clear, keep it and add only the missing consequence or undo note. Avoid "gone for good", "destroyed forever", and "permanently destroys its analytics".
Explain why the field matters, not what the label already says. Use "Shown in logs and the dashboard." Avoid "A name to identify this item."
Tooltips should clarify unfamiliar terms, icons, limits, or hidden behavior. Loading states should set expectations only when timing matters. Onboarding should reveal one concept at a time. Persuasive copy belongs mostly in onboarding, billing, and upgrade moments, not routine dashboard workflows.
For a single screen, flow, or focused review:
## UX Copy: [Context]
### Recommended Copy
**[Element]**: [Copy]
### Alternatives
| Option | Copy | Tone | Best for |
|--------|------|------|----------|
| A | [Copy] | [Tone] | [When to use] |
| B | [Copy] | [Tone] | [When to use] |
### Rationale
[Short explanation: user context, clarity, action-orientation.]
### Localization Notes
[Anything translators should know. Omit if not relevant.]
For branch audits, group by file and keep only high-signal findings:
## UX Copy Review
### web/apps/dashboard/example.tsx
#### [Element], line 42
Current: "[Current copy]"
Recommended: "[Best rewrite]"
Alternative: "[Optional second choice]"
Why: [One short sentence.]
N recommendations across X files.
Limit alternatives to two unless the user asks for exploration. Prefer one strong recommendation over a menu of tiny variations.
After giving recommendations, offer to preview them as a small self-contained HTML page if visual context would help. Use realistic UI contexts: dialogs, toasts, empty states, form rows, or buttons. Show before and after side by side with the file, line, recommendation, optional alternative, and one short rationale.