{
  "schema": "https://ai-atoms.com/schemas/skill-v1.json",
  "type": "skill",
  "id": "skill/lead-triage",
  "version": "1.0.1",
  "name": "lead-triage",
  "description": "Scores inbound HubSpot leads by engagement signals, company fit, and urgency markers to produce a \"call these 5 today\" list with talking points, drafts the follow-ups, and blocks Calendar time. Use when the user asks to prioritize leads, who to call first, or about their pipeline.",
  "system_prompt_fragment": "# Lead Triage\n\n## Quick start\n\nPull inbound leads from HubSpot, score them, and surface a ranked call list with talking points. Drafts follow-ups and proposes calendar slots — never sends or books without owner approval.\n\n```\nUser: \"prioritize my leads\"\n→ Pull contacts: lifecycle stage Lead or MQL, status ≠ Unqualified\n→ Score each across engagement, company fit, urgency, recency\n→ Return ranked list (size adapts to volume) with talking points\n→ Offer to draft follow-ups and propose calendar slots\n```\n\n## Workflow\n\n1. **Pull leads from HubSpot.** Fetch contacts with `lifecyclestage` = `Lead` or `MQL` and `hs_lead_status` ≠ `Unqualified`. Use the field list in [reference/hubspot-scoring.md](reference/hubspot-scoring.md). If HubSpot is unavailable, stop: *\"HubSpot is disconnected — connect it and try again.\"*\n\n2. **Clarify if trigger is ambiguous.** If the user said only \"pipeline\" without a qualifier, ask: *\"Quick pipeline overview (deal stages + total value) or prioritized call list?\"* — then route accordingly. Do not score leads on a bare \"pipeline.\"\n\n3. **Score each lead.** Apply the four-dimension model in [reference/hubspot-scoring.md](reference/hubspot-scoring.md):\n   - **Engagement** — email replies, opens, site visits in HubSpot (last 30 days only)\n   - **Company fit** — industry and employee count vs. owner's ICP (default: any industry, 1–50 employees)\n   - **Urgency** — lead age, stage duration, notes containing \"urgent / ASAP / deadline / budget approved\"\n   - **Recency penalty** — subtract points if last activity was <24 hours ago (already touched today)\n\n4. **Build the ranked list.** Sort descending by composite score. Adapt list size to volume:\n   - ≤10 leads → show all\n   - 11–30 leads → show top 5\n   - >30 leads → show top 8\n\n   For each lead: name, company, score, one-paragraph talking point, last activity summary. If engagement signals are all >30 days old, flag: *\"Engagement signals are stale — approach as cold outreach.\"*\n\n5. **Offer follow-up drafts.** Ask: *\"Draft follow-ups for any of these?\"* If yes, write one email per selected lead, matching the tone of their last outbound thread in Mail. Show draft; do not send.\n\n6. **Offer calendar slots.** Ask: *\"Propose call slots for any of these?\"* If yes, check Calendar for open 30-minute windows in the next two business days (avoid slots with existing events ±15 min). Propose two options per lead. Do not create events — the owner books.\n\n## Approval gates\n\n- **Never send an email.** Draft only; owner sends from their inbox.\n- **Never create calendar events.** Propose times; owner books.\n- **Never change lifecycle stage or mark a lead Unqualified** unless the owner explicitly asks.\n- **Never include `Customer` or `Evangelist` lifecycle contacts** in the lead list.\n- **If zero leads match the filter**, explain why and offer to check what lifecycle stages are in use — do not fabricate a list.\n\n## Reference\n\n- [reference/hubspot-scoring.md](reference/hubspot-scoring.md) — HubSpot field names, scoring weights, ICP defaults\n- [reference/gotchas.md](reference/gotchas.md) — edge cases: stale data, zero leads, pipeline disambiguation, customer contamination\n- [reference/examples/happy-path-triage.md](reference/examples/happy-path-triage.md) — worked output for a 7-lead list with draft and slot proposal",
  "applicable_domains": [
    "business",
    "operations"
  ],
  "invocation": [
    "/lead-triage"
  ],
  "tags": [
    "small-business",
    "anthropics",
    "knowledge-work"
  ],
  "authored_by": "anthropics",
  "source_url": "https://github.com/anthropics/knowledge-work-plugins/blob/main/small-business/skills/lead-triage/SKILL.md",
  "lifecycle": "stable",
  "category": "sales",
  "provenance": {
    "source": "anthropics/knowledge-work-plugins",
    "source_url": "https://github.com/anthropics/knowledge-work-plugins/blob/main/small-business/skills/lead-triage/SKILL.md",
    "author": "Anthropic",
    "license": "Apache-2.0",
    "notes": "Imported by scripts/import-anthropic-skills.py."
  }
}