Skill: killerapp/copywriter (version 1.1.0)

--- name: copywriter description: "Write compelling UX copy, marketing content, and product messaging. Use when writing button labels, error messages, landing pages, emails, CTAs, empty states, tooltips, or any user-facing text." license: Apache-2.0 metadata: author: agentic-insights version: "1.1" --- # Copywriter Write clear, compelling copy for products, marketing, and UX. ## Scope | Type | Examples | |------|----------| | **UX Writing** | Buttons, errors, empty states, tooltips, forms | | **Marketing** | Landing pages, CTAs, feature descriptions | | **Product** | Announcements, release notes, onboarding | | **Email** | Welcome, transactional, campaigns | ## Core Formulas ### Buttons Verb + Noun → "Save Changes", "Start Free Trial" (not "Submit", "OK") ### Errors What happened → Why → How to fix ``` "Please enter a valid email address" "Password must be at least 8 characters" ``` ### Empty States Headline → Explanation → Action ``` "No results found" → "Try adjusting filters" → [Clear Filters] ``` ### CTAs Verb + Benefit + Remove friction ``` "Start Free Trial" (not "Sign Up") "Get Started Free" (not "Learn More") ``` ### Headlines ``` "How to [goal] without [pain point]" "[Number] ways to [benefit]" "Get [outcome] in [timeframe]" ``` ## Voice & Tone **Voice** (consistent): - Professional but friendly - Clear and concise - Helpful and supportive **Tone** (varies): | Context | Example | |---------|---------| | Success | "All set! Your changes are live." | | Error | "Something went wrong, but your data is safe." | | Urgency | "Action required: Suspicious login detected" | ## Power Words | Category | Words | |----------|-------| | Urgency | Now, Today, Limited, Fast | | Value | Free, Save, Bonus, Extra | | Trust | Guaranteed, Proven, Secure | | Ease | Easy, Simple, Quick, Instant | ## Checklist - [ ] Clear? (12-year-old test) - [ ] Concise? (Remove unnecessary words) - [ ] Specific? (Numbers, examples) - [ ] Actionable? (What should user do?) - [ ] Scannable? (Headings, bullets) ## References - [UX Patterns](references/ux-patterns.md) - Buttons, errors, forms, tooltips - [Marketing Copy](references/marketing-copy.md) - Landing pages, CTAs, emails

path: references/marketing-copy.md
content: # Marketing Copy Patterns

## Hero Section

```typescript
<Hero>
  {/* Headline: Main benefit */}
  <h1>Deploy your app in seconds, not hours</h1>

  {/* Subheadline: How/Who */}
  <p>Push your code and we'll handle deployment, scaling, monitoring.</p>

  {/* CTA */}
  <Button>Start Free Trial</Button>
  <Button variant="outline">Watch Demo (2 min)</Button>

  {/* Social proof */}
  <p>Trusted by 50,000+ developers at Airbnb, Netflix, Shopify</p>
</Hero>
```

## Feature Descriptions

Focus on benefits, not features. Be specific (numbers, timeframes).

```typescript
const features = [
  {
    title: 'Lightning-Fast Deploys',
    description: 'See it live in under 30 seconds. No config files.'
  },
  {
    title: 'Auto-Scaling',
    description: 'Handle any traffic spike. Scale from zero to millions.'
  }
]
```

## Call-to-Action (CTA)

| Type | Example |
|------|---------|
| Value-focused | "Start Free Trial", "Get Started Free" |
| Urgency | "Claim Your Spot", "Join 10,000 Developers" |
| Low commitment | "Browse Templates", "See How It Works" |

Formula: Verb + Benefit + Remove friction ("Free", "No credit card")

## Email Templates

### Welcome Email

```typescript
<Email>
  <Heading>Welcome, {name}!</Heading>
  <Text>Here's what to do next:</Text>
  <ol>
    <li>Connect your Git repository</li>
    <li>Deploy your first project (2 min)</li>
    <li>Invite your team</li>
  </ol>
  <Button>Deploy Your First Project</Button>
</Email>
```

### Transactional Email

```typescript
<Email>
  <Heading>Payment Successful</Heading>
  <Text>We've received your payment of {total}.</Text>
  <Text>Order: {orderNumber}</Text>
  <Button>View Order Details</Button>
</Email>
```


path: references/ux-patterns.md
content: # UX Writing Patterns

## Button Labels

```typescript
// Bad: Vague
<Button>Submit</Button>
<Button>OK</Button>

// Good: Verb + Noun, shows outcome
<Button>Create Account</Button>
<Button>Save Changes</Button>
<Button>Start Free Trial</Button>
```

## Error Messages

Formula: What happened → Why → How to fix

```typescript
// Bad
"Invalid input"
"Error 422"

// Good
"Please enter a valid email address"
"Password must be at least 8 characters"
```

## Empty States

Formula: Headline → Explanation → Action

```typescript
<EmptyState
  title="No results found"
  description="Try adjusting your search or filters"
  action={<Button>Clear Filters</Button>}
/>
```

## Form Labels

```typescript
<Label>
  Email Address
  <HelpText>We'll never share your email</HelpText>
</Label>
```

## Loading States

```typescript
// Bad: "Loading..."
// Good: "Creating your account..." / "Uploading (2/5)..."
```

## Success Messages

```typescript
<Toast
  message="Post published!"
  action={<Button>View Post</Button>}
/>
```

## Tooltips

```typescript
// Bad: Repeats label
<Tooltip content="Click to delete">

// Good: Adds context
<Tooltip content="This action cannot be undone">
```

## Confirmation Dialogs

```typescript
<Dialog
  title="Delete this post?"
  message="This will be permanently deleted."
  confirmButton="Delete Post"
  variant="destructive"
/>
```

## Placeholder Text

```typescript
// Bad: "Enter value"
// Good: "e.g., [REDACTED_SECRET]"
```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)