cleanup-deals
О программе
Этот навык стандартизирует воронки сделок в HubSpot, удаляя тестовые сделки и исправляя записи с отсутствующими суммами или датами закрытия. Он включает защитные механизмы для координации с синхронизацией Salesforce, чтобы предотвратить непреднамеренные изменения данных. Используйте его для регулярного обслуживания, чтобы обеспечить точность прогнозирования продаж и отчетности по воронке.
Быстрая установка
Claude Code
Рекомендуетсяnpx skills add TomGranot/hubspot-admin-skills -a claude-code/plugin add https://github.com/TomGranot/hubspot-admin-skillsgit clone https://github.com/TomGranot/hubspot-admin-skills.git ~/.claude/skills/cleanup-dealsСкопируйте и вставьте эту команду в Claude Code для установки этого навыка
Документация
Cleanup Deals
Standardize deal data to make pipeline reporting accurate. Test deals, missing amounts, and stale opportunities distort forecasts and pipeline metrics.
Prerequisites
- HubSpot API token in
.env - Python with
hubspot-api-clientinstalled viauv - Knowledge of which deal pipelines are active and which are synced from Salesforce
Important: Salesforce Sync Considerations
If deals are synced from Salesforce:
- Do NOT delete or modify synced deals without coordinating with the Salesforce admin.
- Changes in HubSpot may sync back to Salesforce and cause data loss.
- Identify synced deals by checking for the
hs_salesforceopportunityidproperty.
Step-by-Step Instructions
Stage 1: Before — Audit Deal Data
Pull deal metrics via the API:
from hubspot import HubSpot
from hubspot.crm.deals import PublicObjectSearchRequest
api_client = HubSpot(access_token=os.getenv("HUBSPOT_API_TOKEN"))
# Deals missing amount
no_amount = PublicObjectSearchRequest(
filter_groups=[{
"filters": [{
"propertyName": "amount",
"operator": "NOT_HAS_PROPERTY"
}]
}]
)
# Deals missing close date
no_close = PublicObjectSearchRequest(
filter_groups=[{
"filters": [{
"propertyName": "closedate",
"operator": "NOT_HAS_PROPERTY"
}]
}]
)
Record: total deals, deals per pipeline stage, deals missing amount, deals missing close date, stale deals (open with no activity in 60+ days).
Stage 2: Execute — Clean Up
- Delete test deals — search for deals with names containing "test", "demo", "sample", or with amount = $0 and no associated contacts.
- Address missing amounts — export deals without
amountand work with sales to fill in values or mark as lost. - Close stale deals — deals open with no activity in 90+ days should be reviewed with the deal owner. Set to "Closed Lost" if abandoned.
- Standardize pipeline stages — ensure all pipelines have consistent stage names and probability percentages.
- Remove unused pipelines — if a pipeline has zero active deals and is not in use, archive or delete it.
Stage 3: After — Verify
- Re-run the deal audit queries. Confirm:
- Test deals removed
- Missing amount count decreased
- Stale deal count decreased
- Check pipeline reports for accuracy.
Stage 4: Rollback
- Deleted deals can be restored from HubSpot's recycling bin within 90 days.
- Stage changes and property updates can be reverted manually but there is no bulk undo.
- For Salesforce-synced deals, check the Salesforce recycle bin as well.
Tips
- Establish a deal hygiene rule: deals without activity for 60 days get an automated reminder to the owner (build a simple workflow).
- Require
amountandclosedateas mandatory deal properties to prevent future gaps.
GitHub репозиторий
Frequently asked questions
What is the cleanup-deals skill?
cleanup-deals is a Claude Skill by TomGranot. Skills package instructions and resources that Claude loads on demand, so Claude can perform cleanup-deals-related tasks without extra prompting.
How do I install cleanup-deals?
Use the install commands on this page: add cleanup-deals to Claude Code as a plugin, or clone its repository into your skills directory, then restart Claude so it picks up the skill.
What category does cleanup-deals belong to?
cleanup-deals is in the Testing category, tagged testing.
Is cleanup-deals free to use?
Yes. cleanup-deals is listed on AIMCP and free to install. It runs inside Claude, so no separate service account is required to use the skill itself.
Похожие навыки
Этот навык Claude запускает lm-evaluation-harness для тестирования LLM на более чем 60 стандартизированных академических задачах, таких как MMLU и GSM8K. Он предназначен для разработчиков, чтобы сравнивать качество моделей, отслеживать прогресс обучения или сообщать академические результаты. Инструмент поддерживает различные бэкенды, включая модели HuggingFace и vLLM.
Этот навык предоставляет обширные знания по реализации Cloudflare Cron Triggers для планирования запуска Workers с помощью cron-выражений. Он охватывает настройку периодических задач, заданий технического обслуживания и автоматизированных рабочих процессов, а также решение распространенных проблем, таких как неверные cron-выражения и ошибки часовых поясов. Разработчики могут использовать его для настройки планировщиков обработчиков, тестирования cron-триггеров и интеграции с Workflows и Green Compute.
Этот навык Claude предоставляет инструментарий на базе Playwright для тестирования локальных веб-приложений с помощью Python-скриптов. Он позволяет проводить проверку фронтенда, отладку интерфейса, создание скриншотов и просмотр логов, одновременно управляя жизненным циклом сервера. Используйте его для задач автоматизации браузера, но запускайте скрипты напрямую, вместо чтения их исходного кода, чтобы избежать загрязнения контекста.
Этот навык помогает разработчикам завершать готовую работу, проверяя прохождение тестов и предлагая структурированные варианты интеграции. Он направляет рабочий процесс по слиянию, созданию пул-реквестов или очистке веток после завершения реализации. Используйте его, когда ваш код готов и протестирован, чтобы систематически завершать процесс разработки.
