
CRM Cleanup
OfficialFreeStreamline your HubSpot data hygiene process.
Free · Opens the source repo
What CRM Cleanup does
The CRM Cleanup skill automates the process of maintaining data hygiene within HubSpot, focusing on stale deals, duplicate contacts, and missing required fields. Designed for sales and marketing teams, this skill efficiently scans your HubSpot account and identifies areas that need attention, allowing users to keep their CRM data clean and actionable. By running a simple command, users can initiate a comprehensive audit of their HubSpot data, ensuring that their records are up-to-date and free of duplicates.
The skill operates in a four-step process. First, it scans for stale deals, identifying those with no activity in the last 14 days and presenting a list of these deals along with their details. Users can then choose to update the next steps or change the deal stages based on the information provided. Next, the skill searches for duplicate contacts, displaying potential duplicates side-by-side for user approval before any merging occurs. This careful approach prevents accidental data loss and ensures that users maintain control over their records.
In addition to identifying stale deals and duplicates, the skill checks for missing required fields in both deals and contacts. By presenting a clear overview of what information is lacking, users can quickly fill in gaps that could hinder their sales processes. Finally, the skill applies only the changes that the user explicitly approves, ensuring that no data is altered without consent. Each change is reported with a link back to the affected HubSpot record, providing transparency throughout the process.
Overall, the CRM Cleanup skill is an essential tool for anyone using HubSpot who needs to maintain clean and accurate data. It is particularly useful for sales and marketing professionals looking to streamline their CRM management and enhance their operational efficiency.
When to use it
Use this skill when you need to clean up your HubSpot CRM data and ensure accuracy before executing marketing or sales strategies.
When not to use it
This skill is not suitable for users who require automated deletions or changes without explicit approval, as it prioritizes user consent for all actions.
What you can build with it
Audit Stale Deals
Run the skill to identify deals with no activity in the last 14 days and propose actions.
Merge Duplicate Contacts
Use the skill to find duplicate contacts and review them side-by-side for merging.
Fill Missing Fields
Check for any missing required fields in deals and contacts to ensure data completeness.
How to install CRM Cleanup
View source1. Install with the skills CLI
npx skills add anthropics/knowledge-work-plugins/crm-cleanup --agent claude-code2. 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 anthropicsRun a HubSpot hygiene pass using the crm-maintenance skill cleanup workflow. Act immediately — the user typed /crm-cleanup, so skip the intent-detection step.
Parse arguments:
--scope(default:all) —dealsfor deal audit only,contactsfor contact dedup only,allfor both
Step 1 — Scan for stale deals
If scope includes deals:
- Pull all open deals from HubSpot.
- Flag deals with no activity (email, call, meeting, note) in the last 14 days.
- For each stale deal: show deal name, stage, last activity date, associated contacts, and amount.
- Propose actions per deal: update next-step, change stage, add a note, or close-lost.
Present the full stale-deals list before making any changes.
Step 2 — Scan for duplicate contacts
If scope includes contacts:
- Search HubSpot contacts for likely duplicates (same email, similar names, same company + similar name).
- For each duplicate set: show both records side-by-side — name, email, company, deals, last activity.
- Propose which record to keep and which fields to merge.
Present all duplicate sets before merging anything.
Step 3 — Scan for missing required fields
- Check all open deals for missing fields: close date, amount, deal stage, associated contact, next-step/notes.
- Check contacts associated with open deals for missing fields: email, company, phone.
- Present a table of records with missing fields and what's missing.
Step 4 — Apply approved fixes
- Walk through each finding from Steps 1-3.
- Apply only the changes the owner explicitly approves.
- Report each change as it's made with a HubSpot link.
Connector failures
If HubSpot is unreachable, stop — this command requires HubSpot as the data source. Tell the owner: "HubSpot isn't connected. Connect it in Cowork settings, then rerun /crm-cleanup."
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 approval. Even if evidence is strong. Flag and defer.
- Never auto-merge duplicate contacts. Show side-by-side and wait for approval per pair.
- Side-by-side diffs for all changes. Show current value and proposed value; wait for approval per item.
Output
End with a summary: X deals updated, Y contacts merged, Z fields filled. Include links to the affected records.
Frequently asked questions about CRM Cleanup
Similar skills
Agent-Browser Core
Efficient browser automation for AI agents.
Setup My IQ
Effortlessly create and update your personal context portfolio.
CRM Maintenance
Automate HubSpot updates from your calendar and emails.
Zoom MCP
Streamline access to Zoom meeting assets and recordings.
Slack Automation
Automate tasks and extract data from Slack easily.
SMB Onboard
Guides small business owners through initial tool setup.
