New to Claude Skills? Learn how to install them →

Canthropics on GitHub

CRM Maintenance

OfficialFree

Automate HubSpot updates from your calendar and emails.

Get this skill

Free · Opens the source repo

What CRM Maintenance does

CRM Maintenance is designed to streamline the process of keeping your HubSpot CRM up to date without requiring manual input from the user. By leveraging context from recent emails and calendar events, this skill can automatically create and update contacts and deals, log calls, and identify stale records that need attention. This reduces the time spent on data entry and helps maintain the integrity of your CRM data.

The skill operates by first identifying the user’s intent based on their input, determining whether they want to log a call, update a deal, or clean up their HubSpot records. Once the intent is established, it gathers the necessary context from the relevant email threads or calendar events. For instance, if a user asks to log a call, the skill will read the most recent calendar event, confirm the attendees, and then log the call activity on the appropriate deal. This ensures that all actions taken are relevant and accurate.

One of the key features of this skill is its emphasis on user approval before executing any changes. It will announce any new contact creations and present a side-by-side comparison of proposed changes during a deal cleanup, allowing the user to approve or reject modifications. This careful approach minimizes errors and ensures that the user retains control over their CRM data.

Overall, CRM Maintenance is ideal for sales professionals and teams who frequently interact with HubSpot and want to automate routine tasks while ensuring data accuracy. It is particularly useful for those who manage multiple deals and contacts and need a reliable way to keep their CRM updated without the overhead of manual data entry.

When to use it

Use this skill when you want to log calls, update deals, or clean up your HubSpot CRM based on recent email and calendar activities.

When not to use it

This skill is not suitable for tasks that require deleting records or making changes without user approval.

What you can build with it

Logging a Call

A user asks to log a call related to a specific deal. The skill reads the latest calendar event, confirms attendees, and logs the call activity accordingly.

Updating a Deal

A user wants to update a deal based on recent email interactions. The skill audits the deal and proposes changes for the user to approve.

Cleaning Up HubSpot Records

A user requests a cleanup of their HubSpot records. The skill reviews the relevant deals and contacts, identifying stale records and presenting proposed updates.

How to install CRM Maintenance

View source

1. Install with the skills CLI

npx skills add anthropics/knowledge-work-plugins/crm-maintenance --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by anthropics

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

Frequently asked questions about CRM Maintenance

Similar skills