From Sales & Deal Desk
Use this skill when scoring lead warmth from intent and engagement signals — Warmly website-visitor identification, HubSpot form fills and email engagement, and Calendly booking activity — and proposing which rep a warm lead should be routed to. Covers a practical scoring approach for "how warm is this lead" and explicit handling for when intent-signal tools (Warmly, Calendly) aren't connected, falling back to CRM-only engagement signals rather than failing outright.
How this skill is triggered — by the user, by Claude, or both
Slash command
/sales-pack:warm-lead-routingWhen to use
When identifying which leads are showing real buying intent right now and who should follow up on them. Use when: warm leads, hot leads, who should follow up on this lead, lead routing, lead scoring, which leads are engaged, intent signals, website visitor identification.
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Most inbound lead volume is noise — a form fill from a student researching a
Most inbound lead volume is noise — a form fill from a student researching a term paper looks identical in a CRM to a form fill from an IT director who just had an outage. Warmth is what separates the two, and it comes from signals CRM stage alone doesn't capture: is this account revisiting the pricing page, did the same person book a call, did an email actually get opened. This skill combines those signals into a practical warmth score and turns that into a routing recommendation — the right rep, contacted soon enough to matter, with the reasoning shown so a sales manager can override it.
This skill is explicitly tiered: the richer the connected tool set, the more precise the scoring, but a CRM alone (no Warmly, no Calendly) still produces a usable, if coarser, read. Never treat missing intent tools as a reason to skip lead scoring entirely — degrade the signal set, not the output.
| Signal source | Signal | Weight (relative) |
|---|---|---|
| Warmly (if connected) | Anonymous or identified website-visitor activity — repeat visits, pricing/product-page views, session recency | High — this is the earliest, least-solicited intent signal available |
| Calendly (if connected) | A booked call/meeting — the strongest possible intent signal, since the lead took a deliberate action | Highest — a booking should almost always push a lead into "warm" regardless of other signals |
| HubSpot (or connected CRM) form fills | A submitted form — contact info plus whatever context the form captured (use case, company size, urgency language) | Medium — real intent, but lower-effort than a booking |
| HubSpot (or connected CRM) email engagement | Opens, clicks, and replies on marketing or sales sequence emails | Medium-low individually, but a rising trend (multiple opens/clicks over a short window) is a meaningful signal |
| HubSpot (or connected CRM) lifecycle/lead status | Existing lead score or lifecycle stage, if the CRM tracks one | Contextual — use as a prior, not a replacement for the signals above |
Before scoring anything, call conduit__search_tools to determine which of
Warmly, Calendly, and a CRM (typically HubSpot) are actually connected for
this org. Do not assume all three — this is the skill in this pack most
likely to run with partial coverage, since Warmly and Calendly are both
explicitly optional enrichments per this pack's README. Scope scoring to
whatever is actually live, and state which signal sources were used (and
which weren't available) in every output.
Keep this explainable rather than a black-box formula — a rep or sales manager needs to see why a lead is scored warm to trust routing it.
Start from a base tier using the strongest available signal:
Adjust up or down based on secondary signals:
Only "Hot" and "Warm" tiers get a routing recommendation in normal output; "Warm-Cool" and "Cool" can be included in a fuller sweep if asked, but shouldn't clutter a default "who's warm right now" answer.
Once a lead clears the Warm threshold, propose an assignee:
Do not write the assignment back to the CRM unless the operator explicitly asks for it — default to a proposal, matching this pack's other skills.
| Missing / Unavailable | Handling |
|---|---|
| Warmly not connected | Skip website-visitor signals; score from CRM form fills/email engagement and Calendly (if connected) only. State plainly that anonymous visitor intent isn't visible. |
| Calendly not connected | Skip booking signal; the "Hot" tier can then only be reached via strongly convergent Warmly + CRM signals — state that bookings can't be checked. |
| No CRM connected | This skill cannot run meaningfully — form fills, email engagement, and owner/routing data all live in the CRM. State this plainly and stop, the same way pipeline-health does. |
| Only a CRM connected (no Warmly, no Calendly) | Score from form fills and email engagement only; state explicitly that the warmth read is CRM-only and coarser than it would be with intent-signal tools connected. |
| No routing rule available in the CRM | Propose round-robin by open-deal capacity and say so explicitly, rather than presenting round-robin as a documented policy. |
State plainly that warm-lead routing requires at least a CRM to be connected, and that none was found. Do not fabricate leads or scores.
Report that no leads currently meet the Warm threshold, rather than lowering the bar to force a result — an empty warm-leads list is itself useful information.
npx claudepluginhub wyre-technology/msp-claude-plugins --plugin sales-packCreates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.