PluginBench
Skill
Official
Pass
Audit score 90

crm-maintenance

anthropics/knowledge-work-plugins

Keep HubSpot current without manual data entry—log calls, emails, and deal updates from your calendar and inbox.

What is crm-maintenance?

Automates CRM maintenance by creating and updating HubSpot contacts and deals from email and calendar context, logging activities, and flagging stale records. Use when you need to update the CRM, log a call, clean up HubSpot, or add context to a deal without opening HubSpot directly.

  • Log email threads as activities on deals with automatic contact and deal resolution
  • Log completed calendar events as call activities with attendee mapping
  • Audit deals against recent email and calendar activity and propose updates
  • Create missing contacts from email signatures and calendar invite data
  • Flag stale deal records and surface what needs updating

How to install crm-maintenance

npx skills add https://github.com/anthropics/knowledge-work-plugins --skill crm-maintenance
Prerequisites
  • HubSpot account with API access
  • Access to email threads and calendar events referenced in requests
Claude Code
Cursor
Windsurf
Cline

How to use crm-maintenance

  1. 1.Specify your intent: update from an email, log a call, or clean up a deal
  2. 2.The skill will read the relevant email thread or calendar event
  3. 3.Confirm the contact and deal resolution when prompted
  4. 4.Review proposed changes (especially for deal cleanup) and approve before writing
  5. 5.Check the HubSpot link in the confirmation to verify the update

Use cases

Good for
  • Log a sales call to a deal immediately after a meeting ends
  • Add an email thread to a deal without switching to HubSpot
  • Audit a deal's stage, amount, and close date against recent customer communication
  • Create a contact from an inbound email and associate it to the right deal
  • Clean up outdated deal information based on recent activity
Who it's for
  • Sales professionals managing multiple deals
  • Account executives logging customer interactions
  • Sales operations teams auditing deal hygiene
  • Anyone using HubSpot who wants to reduce manual CRM data entry

crm-maintenance FAQ

Will this create deals automatically?

No. The skill will ask you to confirm or specify the right deal rather than auto-create one.

Can it delete or close deals?

No. The skill cannot delete records or close deals without explicit approval, and will flag these actions for you to complete in HubSpot.

What if a contact doesn't exist in HubSpot?

The skill will announce the new contact and create it from email signature or calendar data before writing, so you can catch any typos or duplicates.

How does it handle ambiguous deal matches?

It uses the contact's sole open deal, fuzzy matching against email/meeting titles, or asks you to confirm if multiple matches exist.

What fields does it check during a deal cleanup?

It audits stage, amount, close date, next steps, associated contacts, and recent activities against email and calendar evidence.

Full instructions (SKILL.md)

Source of truth, from anthropics/knowledge-work-plugins.


name: crm-maintenance description: > Keeps HubSpot current without the owner opening it: creates and updates contacts and deals from email and calendar context, logs notes and calls, and flags stale records. The "stop doing data entry" skill. Use when the user asks to update the CRM, log a call, clean up HubSpot, or add context to a deal.

CRM Maintenance

Quick start

Pull context from the referenced email or calendar event, resolve the right HubSpot contact and deal, log the activity, and surface what changed. For a deal cleanup, audit the deal against recent email/calendar activity and propose updates — never apply them without approval.

User: "log this call to the Acme deal"
→ Read the most recent completed calendar event
→ Confirm attendees map to the Acme deal's contacts
→ Write a call activity on the Acme deal
→ Report: "Logged call to Acme Q2 Expansion. [deal link]"

Workflow

  1. Identify intent. Decide which of three paths applies from the user's message and context:

    • Email path — "update my CRM", "add this to the deal", or any reference to an email thread
    • Call path — "log this call", "log the meeting", or any reference to a calendar event
    • Cleanup path — "clean up HubSpot", "is this deal up to date", or any request to audit a specific deal If the intent is ambiguous (e.g. "update HubSpot" with no referenced email/meeting/deal), ask which path before proceeding.
  2. Gather context.

    • Email path: read the thread (subject, participants, last 1–3 messages). Identify the primary external contact.
    • Call path: read the calendar event (title, attendees, time, description). If no event was specified, use the most recent completed meeting in the last 24 hours and confirm with the user before proceeding.
    • Cleanup path: pull the deal (stage, amount, close date, next-step, associated contacts, activities in last 60 days), plus the last 14 days of email threads and calendar events involving the deal's contacts.
  3. Resolve the HubSpot contact and deal. For email/call paths:

    • Search HubSpot contacts by email address. If a contact is missing, create it from email signature or calendar invite data — announce creation in chat before writing.
    • Find the right deal in this order: (a) explicit match if the user named one, (b) the contact's sole open deal, (c) fuzzy match across the contact's open deals against the email subject or meeting title — confirm before writing, (d) ask the user if no match. Never auto-create a deal.
    • For field names, activity types, and association rules, read reference/hubspot-fields.md before writing anything to HubSpot.
    • If deduplication or deal-resolution feels ambiguous, check reference/gotchas.md before proceeding — it covers the most common failure modes.
  4. Execute the action.

  5. Approval gate — every externally visible write. For contact creation and activity logging, announce before writing and surface the result after. For cleanup edits, do not write anything until the user approves the specific changes.

  6. Report what happened. Tell the user what was written and what's pending. Include a HubSpot link to the affected deal when possible. Keep it short.

Approval gates

  • Never delete records. Not contacts, not deals, not activities. If the user asks, say the skill cannot and direct them to HubSpot.
  • Never change deal stage or close a deal without explicit user approval. Even if evidence is strong. Flag and defer.
  • Never create a new deal unprompted. Ask if the right deal can't be resolved.
  • Announce contact creation before writing. One line — lets the user catch typos or duplicates.
  • Side-by-side diffs for cleanup. Show current value and proposed value; wait for approval per item.

Reference