home/skills/communication/office-intercom-automation

Intercom Automation

Claude Office Skills

Automate Intercom customer messaging, bots, and support workflows.

๐ŸŸข pass (100)skillCommunicationsms-messaginggithubSource โ†’skill.md โ†’
intercomsupportmessaging
# Intercom Automation

Comprehensive skill for automating Intercom customer communication and support workflows.

## Core Workflows

### 1. Conversation Flow

```
CUSTOMER CONVERSATION FLOW:
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  User Message   โ”‚
โ”‚   (Inbound)     โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
         โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚   Bot Triage    โ”‚
โ”‚  - Intent       โ”‚
โ”‚  - Route        โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
         โ”‚
    โ”Œโ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”
    โ–ผ         โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Bot  โ”‚ โ”‚ Human โ”‚
โ”‚ Reply โ”‚ โ”‚ Agent โ”‚
โ””โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”˜
    โ”‚         โ”‚
    โ””โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”˜
         โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚   Resolution    โ”‚
โ”‚  - Close        โ”‚
โ”‚  - Follow-up    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
```

### 2. Automation Rules

```yaml
automations:
  - name: welcome_new_users
    trigger:
      event: user.created
      conditions:
        - signed_up_at: within_last_hour
    action:
      send_message:
        type: chat
        delay: 5_minutes
        message: |
          Hey {{first_name}}! ๐Ÿ‘‹
          
          Welcome to {{company_name}}! I'm here to help you 
          get started. What brings you here today?
        buttons:
          - "Explore features"
          - "I have a question"
          - "Just looking around"
          
  - name: trial_expiring
    trigger:
      event: user.attribute_changed
      attribute: trial_days_remaining
      value: 3
    action:
      send_message:
        type: email
        template: trial_expiring
        
  - name: feature_announcement
    trigger:
      segment: power_users
      event: feature_released
    action:
      send_message:
        type: in_app
        message: "๐ŸŽ‰ New Feature: {{feature_name}}"
```

## User Segmentation

### Segment Definitions

```yaml
segments:
  - name: trial_users
    filter:
      subscription_status: trial
      
  - name: power_users
    filter:
      sessions_count: "> 50"
      last_seen: "< 7 days"
      features_used: "> 5"
      
  - name: at_risk_users
    filter:
      subscription_status: active
      last_seen: "> 30 days"
      
  - name: enterprise_prospects
    filter:
      company_size: "> 100"
      plan: free
      
  - name: feature_requesters
    filter:
      tag: feature_request
      conversations_count: "> 0"
```

### Dynamic Attributes

```yaml
custom_attributes:
  - name: health_score
    type: number
    compute: |
      (sessions_last_30_days * 2) +
      (features_used * 3) +
      (team_members_active * 5)
      
  - name: lifecycle_stage
    type: string
    rules:
      - condition: signed_up_at < 7_days
        value: "onboarding"
      - condition: subscription_status == "trial"
        value: "trial"
      - condition: subscription_status == "active"
        value: "customer"
      - condition: subscription_status == "cancelled"
        value: "churned"
        
  - name: account_tier
    type: string
    source: company.plan
```

## Messaging Campaigns

### Onboarding Series

```yaml
onboarding_campaign:
  name: "New User Onboarding"
  audience: 
    segment: new_signups
    
  messages:
    - day: 0
      channel: in_app
      content: |
        Welcome to {{company}}! ๐ŸŽ‰
        
        Let me show you around. Click below to take a 
        quick 2-minute tour.
      cta: "Start Tour"
      
    - day: 1
      channel: email
      subject: "Quick tip: {{feature_1}}"
      content: |
        Hi {{first_name}},
        
        Did you know you can {{feature_1_benefit}}?
        
        Here's how: {{feature_1_tutorial_link}}
        
    - day: 3
      channel: in_app
      trigger: 
        not_completed: "setup_wizard"
      content: |
        Hey {{first_name}}, I noticed you haven't 
        finished setting up. Need any help?
        
    - day: 7
      channel: email
      subject: "How's it going?"
      content: |
        Hi {{first_name}},
        
        You've been using {{company}} for a week now.
        
        Any questions or feedback? Just reply to this email!
```

### Product Tours

```yaml
product_tours:
  - name: "Welcome Tour"
    trigger:
      event: first_login
    steps:
      - element: "#dashboard"
        title: "Your Dashboard"
        body: "This is where you'll see your key metrics"
        position: bottom
        
      - element: "#create-button"
        title: "Create New"
        body: "Click here to create your first project"
        position: left
        
      - element: "#help-menu"
        title: "Need Help?"
        body: "Find docs and contact support here"
        position: bottom
        
  - name: "Feature Tour: Reports"
    trigger:
      event: page_viewed
      url: "/reports"
      first_time: true
    steps:
      - element: "#date-picker"
        title: "Date Range"
        body: "Select your reporting period"
```

## Support Workflows

### Conversation Routing

```yaml
routing_rules:
  - name: vip_priority
    conditions:
      - company.plan: enterprise
    actions:
      - set_priority: urgent
      - assign_team: enterprise_support
      - send_notification: slack_vip
      
  - name: billing_issues
    conditions:
      - message_contains: ["billing", "charge", "invoice", "refund"]
    actions:
      - add_tag: billing
      - assign_team: billing_support
      
  - name: technical_support
    conditions:
      - message_contains: ["error", "bug", "not working", "broken"]
    actions:
      - add_tag: technical
      - assign_team: tech_support
      - create_ticket: jira
```

### Bot Responses

```yaml
bot_responses:
  - intent: greeting
    patterns: ["hi", "hello", "hey"]
    response: |
      Hi there! ๐Ÿ‘‹ How can I help you today?
      
  - intent: pricing
    patterns: ["pricing", "cost", "how much", "plans"]
    response: |
      Great question! Here's our pricing:
      
      โ€ข **Starter**: $29/mo
      โ€ข **Growth**: $79/mo
      โ€ข **Enterprise**: Custom
      
      Would you like me to connect you with sales?
    buttons:
      - "Yes, talk to sales"
      - "See full comparison"
      
  - intent: password_reset
    patterns: ["forgot password", "reset password", "can't login"]
    response: |
      No problem! You can reset your password here:
      {{password_reset_link}}
      
      The link will expire in 24 hours.
    auto_close: true
```

## Analytics & Reporting

### Conversation Metrics

```
SUPPORT METRICS - THIS WEEK
โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

Conversations:
New:          234 (+12%)
Closed:       256 (+8%)
Open:         45

Response Times:
First Reply:  2.3 min (target: 5 min) โœ“
Median:       8 min
Resolution:   2.4 hours

CSAT Score:   4.7/5 โญ (+0.2)

BY CHANNEL:
Chat      โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘ 156
Email     โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘ 58
In-App    โ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘ 20

TOP TOPICS:
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Topic              โ”‚ Count โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ Billing questions  โ”‚ 45    โ”‚
โ”‚ Feature requests   โ”‚ 38    โ”‚
โ”‚ Bug reports        โ”‚ 32    โ”‚
โ”‚ How-to questions   โ”‚ 28    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
```

### Engagement Dashboard

```yaml
engagement_metrics:
  - name: message_open_rate
    formula: opened / sent * 100
    target: 40%
    
  - name: click_through_rate
    formula: clicked / opened * 100
    target: 10%
    
  - name: tour_completion_rate
    formula: completed / started * 100
    target: 60%
    
  - name: bot_resolution_rate
    formula: resolved_by_bot / total * 100
    target: 30%
```

## Integration Workflows

### CRM Sync

```yaml
crm_integration:
  salesforce:
    sync_fields:
      - intercom: company.name
        salesforce: Account.Name
      - intercom: user.email
        salesforce: Contact.Email
      - intercom: custom.mrr
        salesforce: Account.MRR__c
        
    events:
      - trigger: conversation_closed
        action: log_activity
        type: "Support Interaction"
        
      - trigger: user.tag_added
        tag: "sales_qualified"
        action: create_lead
```

### Slack Integration

```yaml
slack_integration:
  notifications:
    - trigger: new_conversation
      channel: "#support-inbox"
      conditions:
        - priority: urgent
      message: "๐Ÿšจ Urgent: {{user.name}} needs help"
      
    - trigger: conversation_assigned
      notify: assignee_dm
      message: "New conversation assigned to you"
      
  commands:
    /intercom:
      - lookup_user
      - send_message
      - add_tag
```

## API Examples

### Create or Update User

```javascript
// Create/Update User
const user = await intercom.users.create({
  user_id: "12345",
  email: "user@example.com",
  name: "John Doe",
  signed_up_at: Math.floor(Date.now() / 1000),
  custom_attributes: {
    plan: "pro",
    team_size: 10,
    onboarding_complete: true
  }
});

// Send Message
await intercom.messages.create({
  message_type: "inapp",
  body: "Hey! New feature alert ๐ŸŽ‰",
  from: {
    type: "admin",
    id: "admin_id"
  },
  to: {
    type: "user",
    user_id: "12345"
  }
});

// Search Conversations
const conversations = await intercom.conversations.search({
  query: {
    field: "state",
    operator: "=",
    value: "open"
  }
});
```

## Best Practices

1. **Personalize Messages**: Use user attributes
2. **Time Appropriately**: Consider user timezone
3. **Don't Over-Message**: Respect frequency limits
4. **Bot + Human**: Know when to escalate
5. **Track Everything**: Measure message effectiveness
6. **Segment Thoughtfully**: Target the right users
7. **A/B Test**: Optimize message content
8. **Quick Resolution**: Minimize response time
๐Ÿงช Found this useful?
The $SKILL experiment is building the agent skill distribution layer. Every skill you discover through this directory is part of the experiment.