crm-cleanup — Claude Code skill: CRM hygiene pass
Scans your CRM for stalled deals, duplicate contacts and empty fields, then applies only the fixes you approve.
npx skills add ilyautov/small-business-ru --skill crm-cleanup -a claude-codeWhat crm-cleanup does
The skill runs three checks over your CRM: open deals with no activity for 14 days, likely duplicate contacts, and missing required fields. Each stalled deal comes back with its name, stage, last activity date, linked contacts and amount in ₽. Duplicate pairs are shown side by side — name, email or phone, company, deals.
Nothing changes until you say so. Every edit needs explicit approval, one item at a time, and the skill shows a side-by-side diff of the current and proposed value. It never deletes records, never moves a deal stage or closes a deal on its own, and never merges contacts automatically.
Scope comes from the --scope argument: deals audits deals only, contacts handles dedup only, all does both and is the default. The CRM has to be reachable, because it is the data source. If it is not, the run stops and you can export deals and contacts to CSV instead.
What it helps with
- spot deals that have gone quiet for weeks
- line up duplicate contact pairs and pick which record to keep
- check open deals for missing required fields
- apply CRM edits only after per-item approval
- get a closing tally of updated deals, merged contacts and filled fields
Example prompts for the agent
- Run a CRM hygiene pass on deals: /crm-cleanup --scope deals
- Check for duplicate contacts and show the pairs side by side: /crm-cleanup --scope contacts
- Do a full pass over deals and contacts: /crm-cleanup
How to install crm-cleanup
1Skills CLI (Vercel)
npx skills add ilyautov/small-business-ru --skill crm-cleanup -a claude-code2Manually: put the files in place
~/.claude/skills/crm-cleanup/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/crm-cleanup/
1Skills CLI (Vercel)
npx skills add ilyautov/small-business-ru --skill crm-cleanup -a codex2Manually: put the files in place
.agents/skills/crm-cleanup/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add ilyautov/small-business-ru --skill crm-cleanup -a cursor2Manually: put the files in place
.cursor/skills/crm-cleanup/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install ilyautov/small-business-ru crm-cleanup2Manually: put the files in place
.github/skills/crm-cleanup/SKILL.md1Skills CLI (Vercel)
npx skills add ilyautov/small-business-ru --skill crm-cleanup -a gemini-cli2Platform CLI
gemini skills install https://github.com/ilyautov/small-business-ru --path small-business-ru/skills/crm-cleanupManually: put the files in place
.devin/skills/crm-cleanup/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add ilyautov/small-business-ru --skill crm-cleanup -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about crm-cleanup
How do I install crm-cleanup in Claude Code?
Run npx skills add ilyautov/small-business-ru --skill crm-cleanup -a claude-code. The skill file lands at ~/.claude/skills/crm-cleanup/SKILL.md.
What does crm-cleanup do?
It scans the CRM for stalled deals, duplicate contacts and empty fields, lists what it finds, and applies only the changes you approve.
Does crm-cleanup work without a connected CRM?
No. The CRM is the data source, so the run stops when it is unreachable. You can export deals and contacts to CSV and connect the CRM in Cowork settings, then restart the command.
Source text
SKILL.md · Apache-2.0
--- name: crm-cleanup description: > Сканирует CRM на зависшие сделки, дубли контактов и незаполненные поля, затем чинит то, что собственник одобрил. Принимает необязательный аргумент области: сделки, контакты или всё. Командная форма: вызывается по имени. allowed-tools: Read, WebFetch --- <!-- Производное от Anthropic knowledge-work-plugins / small-business (Apache-2.0, (c) Anthropic). Локализовано под РФ, файл изменён. См. /NOTICE и /LICENSE. --> Мёртвые сделки, задвоенные контакты и пустые поля копятся месяцами, и однажды по такой CRM уже нельзя принять ни одного решения. Скилл находит зависшее, дубли и дыры в данных, показывает всё списком и чинит только то, что ты одобрил — без удалений и автослияний. Запусти проход по гигиене `~~crm` через рабочий процесс очистки скилла `crm-maintenance`. Действуй сразу — собственник набрал /crm-cleanup, поэтому пропусти шаг определения намерения. Разбери аргументы: - `--scope` (по умолчанию: `all`) — `deals` только аудит сделок, `contacts` только дедуп контактов, `all` оба ## Шаг 1 — Скан зависших сделок Если область включает сделки: 1. Подтяни все открытые сделки из `~~crm`. 2. Пометь сделки без активности (письмо, звонок, встреча, примечание) за последние 14 дней. 3. Для каждой зависшей сделки покажи: название сделки, стадию, дату последней активности, связанные контакты и сумму в ₽. 4. Предложи действия по сделке: обновить следующий шаг, сменить стадию, добавить примечание или закрыть как проигранную. Покажи полный список зависших сделок, прежде чем вносить изменения. ## Шаг 2 — Скан дублей контактов Если область включает контакты: 1. Найди в контактах `~~crm` вероятные дубли (один email/телефон, похожие имена, одна компания + похожее имя). 2. Для каждой пары дублей покажи обе записи рядом — имя, email/телефон, компания, сделки, последняя активность. 3. Предложи, какую запись оставить и какие поля объединить. Покажи все пары дублей, прежде чем что-либо объединять. ## Шаг 3 — Скан незаполненных обязательных полей 1. Проверь все открытые сделки на незаполненные поля: дата закрытия, сумма, стадия сделки, связанный контакт, следующий шаг/примечания. 2. Проверь контакты, связанные с открытыми сделками, на незаполненные поля: email, компания, телефон. 3. Покажи таблицу записей с незаполненными полями и тем, чего не хватает. ## Шаг 4 — Применить одобренные правки 1. Пройди по каждой находке из Шагов 1–3. 2. Применяй только те изменения, которые собственник явно одобрил. 3. Отчитайся по каждому изменению по мере внесения, со ссылкой на запись в CRM. ## Сбои коннекторов Если `~~crm` недоступна, остановись — этой команде нужна CRM как источник данных. Скажи собственнику: «CRM не подключена. Подключите её в настройках Cowork (или выгрузите сделки и контакты в CSV), затем перезапустите /crm-cleanup». ## Точки подтверждения (approval gates) - **Никогда не удаляй записи.** Ни контакты, ни сделки, ни активности. Если собственник просит — скажи, что скилл этого не делает, и направь его в CRM. - **Никогда не меняй стадию сделки и не закрывай сделку без явного одобрения.** Даже если доказательства сильные. Пометь и отложи. - **Никогда не объединяй дубли контактов автоматически.** Покажи записи рядом и жди одобрения по каждой паре. - **Side-by-side diff для всех изменений.** Покажи текущее значение и предлагаемое; жди одобрения по каждому пункту. ## Вывод Заверши итогом: X сделок обновлено, Y контактов объединено, Z полей заполнено. Добавь ссылки на затронутые записи.
© ilyautov · Apache-2.0 · ilyautov/small-business-ru