ux-writing
4
总安装量
2
周安装量
#53304
全站排名
安装命令
npx skills add https://github.com/pluginagentmarketplace/custom-plugin-ux-design --skill ux-writing
Agent 安装分布
codex
2
claude-code
2
kilo
1
zencoder
1
cline
1
Skill 文档
UX Writing Skill
Atomic Skill: Craft clear, concise, and helpful content that guides users through experiences
Purpose
This skill provides frameworks for writing effective interface copy and establishing content systems.
Skill Invocation
Skill("custom-plugin-ux-design:ux-writing")
Parameter Schema
Input Parameters
interface UXWritingParams {
// Required
task: "microcopy" | "voice_tone" | "errors" | "ctas" | "audit";
context: string;
// Optional
brand_voice?: {
personality: string[];
formality: "formal" | "neutral" | "casual";
};
constraints?: {
character_limit?: number;
localization?: string[];
};
emotional_context?: "neutral" | "frustrated" | "excited" | "confused";
}
Validation Rules
task:
type: enum
required: true
values: [microcopy, voice_tone, errors, ctas, audit]
context:
type: string
required: true
min_length: 10
constraints.character_limit:
type: number
min: 1
max: 500
Execution Flow
UX WRITING EXECUTION
ââââââââââââââââââââââââââââââââââââââââââââ
Step 1: UNDERSTAND CONTEXT
âââ Identify user goal
âââ Define emotional context
âââ Note constraints
Step 2: APPLY VOICE
âââ Match brand voice
âââ Adjust tone for context
âââ Consider localization
Step 3: DRAFT CONTENT
âââ Write initial version
âââ Create alternatives
âââ Check constraints
Step 4: REFINE
âââ Simplify language
âââ Remove jargon
âââ Verify clarity
Step 5: VALIDATE
âââ Test with users
âââ Check accessibility
âââ Document patterns
ââââââââââââââââââââââââââââââââââââââââââââ
Retry Logic
retry_config:
max_attempts: 3
backoff_type: linear
initial_delay_ms: 500
max_delay_ms: 3000
retryable_errors:
- TONE_MISMATCH
- LIMIT_EXCEEDED
Logging Hooks
interface UXWritingLog {
timestamp: string;
event: "draft_created" | "refined" | "approved";
content_type: string;
character_count: number;
readability_score: number;
alternatives_generated: number;
}
Learning Modules
Module 1: Microcopy Fundamentals
MICROCOPY TYPES
âââ Button labels
âââ Form labels
âââ Placeholder text
âââ Helper text
âââ Error messages
âââ Success messages
âââ Loading states
âââ Empty states
âââ Tooltips
âââ Notifications
WRITING PRINCIPLES
âââ Clarity over cleverness
âââ Concise but complete
âââ Action-oriented
âââ User-focused
âââ Consistent
Module 2: Voice & Tone
VOICE DIMENSIONS
âââ Personality traits
â âââ Friendly vs Professional
â âââ Playful vs Serious
â âââ Casual vs Formal
âââ Vocabulary choices
â âââ Technical level
â âââ Brand-specific terms
â âââ Inclusive language
âââ Sentence structure
âââ Active voice
âââ Sentence length
âââ Punctuation style
TONE ADAPTATION
âââ Neutral context: Standard voice
âââ Frustrated user: Empathetic, helpful
âââ Excited user: Match energy
âââ Confused user: Clear, guiding
âââ Error situation: Calm, actionable
Module 3: Error Messages
ERROR MESSAGE STRUCTURE
âââ What happened (clear, honest)
âââ Why it happened (if helpful)
âââ What to do next (actionable)
ERROR TONE GUIDELINES
âââ Never blame the user
âââ Be specific, not vague
âââ Offer a solution
âââ Use plain language
âââ Keep it brief
EXAMPLES
Bad: "Error 500"
Good: "We couldn't save your changes. Please try again."
Bad: "Invalid input"
Good: "Email addresses need an @ symbol"
Bad: "Something went wrong"
Good: "We couldn't load your files. Check your connection and refresh."
Module 4: CTAs & Buttons
CTA PRINCIPLES
âââ Start with action verb
âââ Be specific about outcome
âââ Keep it short (2-4 words)
âââ Match user expectation
âââ Create appropriate urgency
ACTION VERBS BY CONTEXT
âââ Creation: Create, Add, New
âââ Continuation: Continue, Next
âââ Confirmation: Save, Submit, Confirm
âââ Navigation: Go, Open, View
âââ Communication: Send, Share, Invite
âââ Removal: Delete, Remove, Cancel
PRIMARY vs SECONDARY
âââ Primary: Main action (emphasized)
âââ Secondary: Alternative action
âââ Tertiary: Escape/cancel
Module 5: Content Strategy
CONTENT PATTERNS
âââ Consistent terminology
âââ Reusable content blocks
âââ Scalable voice system
âââ Localization-ready
CONTENT GOVERNANCE
âââ Style guide
âââ Terminology glossary
âââ Approval workflow
âââ Update process
âââ Quality metrics
Error Handling
| Error Code | Description | Recovery |
|---|---|---|
UXW-001 |
Jargon detected | Suggest plain language |
UXW-002 |
Tone mismatch | Realign with voice |
UXW-003 |
CTA unclear | Strengthen verb |
UXW-004 |
Error unhelpful | Add action steps |
UXW-005 |
Limit exceeded | Prioritize, truncate |
Writing Formulas
Error Messages
[Acknowledge] + [Explain (if helpful)] + [Action]
"We couldn't save your file. It may be too large.
Try reducing the size or contact support."
Empty States
[What would be here] + [How to add it]
"No messages yet. Start a conversation by tapping New Message."
Loading States
[What's happening] + [Progress (if known)]
"Loading your dashboard..."
"Uploading file (3 of 5)..."
Troubleshooting
Problem: Users misunderstand labels
Diagnosis:
âââ Check: Jargon usage
âââ Check: Context clarity
âââ Check: Consistency
âââ Solution: Simplify
Steps:
1. Test with real users
2. Replace technical terms
3. Add helper text
4. A/B test alternatives
Problem: CTAs have low engagement
Diagnosis:
âââ Check: Verb strength
âââ Check: Value clarity
âââ Check: Visual prominence
âââ Solution: Optimize copy
Steps:
1. Use stronger action verbs
2. Clarify the outcome
3. Test alternatives
4. Consider placement
Unit Test Templates
describe("UXWritingSkill", () => {
describe("microcopy generation", () => {
it("should meet character limit", async () => {
const result = await invoke({
task: "microcopy",
context: "button label",
constraints: { character_limit: 20 }
});
expect(result.text.length).toBeLessThanOrEqual(20);
});
});
describe("error messages", () => {
it("should include actionable step", async () => {
const result = await invoke({
task: "errors",
context: "file upload failed"
});
expect(result.message).toMatch(/try|check|contact/i);
});
it("should not blame user", async () => {
const result = await invoke({
task: "errors",
context: "invalid input"
});
expect(result.message).not.toMatch(/you|your mistake/i);
});
});
describe("readability", () => {
it("should score grade 8 or lower", async () => {
const result = await invoke({
task: "microcopy",
context: "onboarding instructions"
});
expect(result.readability.grade_level).toBeLessThanOrEqual(8);
});
});
});
Quality Metrics
| Metric | Target | Measurement |
|---|---|---|
| Readability | Grade 8 | Flesch-Kincaid |
| Task completion | > 95% | User testing |
| Error recovery | > 90% | Recovery rate |
| Consistency | 100% | Terminology audit |
Version History
| Version | Date | Changes |
|---|---|---|
| 1.0.0 | 2025-12-30 | Production-grade upgrade |