К основному содержанию
скилл CX Codex

cleanup-lists — скилл для Claude Code: аудит списков HubSpot

Скилл проверяет списки HubSpot на пустые, неиспользуемые и похожие друг на друга записи. Помогает подготовить список кандидатов на удаление и перепроверить его перед очисткой.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add TomGranot/hubspot-admin-skills --skill cleanup-lists -a claude-code
Открыть на GitHub

Что делает cleanup-lists

Скилл собирает сведения о списках HubSpot через Lists API: ID, название, тип, число участников и даты создания и обновления. Он предлагает выгрузить инвентаризацию в CSV, а затем найти пустые, неиспользуемые, тестовые и похожие списки, а также давно не обновлявшиеся статические списки. Кандидатов нужно сверить с рабочими процессами, письмами и рекламными аудиториями: даже список без участников может служить триггером.

Для доступа нужен токен HubSpot в HUBSPOT_ACCESS_TOKEN с разрешениями crm.lists.read и crm.lists.write, Python 3.10+ и uv. Перед удалением скилл требует показать список кандидатов и получить явное подтверждение. Удалённые списки нельзя восстановить через корзину HubSpot, поэтому заранее экспортируйте их критерии; для статических списков также можно сохранить ID участников.

Если Lists API возвращает 403 на вашем тарифе, аудит придётся провести вручную в интерфейсе HubSpot. Скилл также предлагает повторно проверить инвентаризацию после удаления и записать результат в журнал очистки.

Какие задачи решает

  • найти списки HubSpot без участников и давние статические списки
  • проверить, какие списки не используются в рабочих процессах и письмах
  • выявить списки с дублирующими названиями или похожими фильтрами
  • подготовить кандидатов на удаление и зафиксировать результат очистки

Примеры запросов агенту

  • Проведи аудит списков HubSpot и сохрани инвентаризацию в CSV.
  • Найди списки, которые не используются в рабочих процессах, письмах или рекламных аудиториях.
  • Покажи кандидатов на удаление и дождись моего подтверждения; ничего не удаляй заранее.

Как установить cleanup-lists

1Через Skills CLI (Vercel)

npx skills add TomGranot/hubspot-admin-skills --skill cleanup-lists -a claude-code

2Вручную: положить файлы

~/.claude/skills/cleanup-lists/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/cleanup-lists/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о cleanup-lists

Как установить cleanup-lists в Claude Code?

Выполните npx skills add TomGranot/hubspot-admin-skills --skill cleanup-lists -a claude-code. Файл скилла появится по пути ~/.claude/skills/cleanup-lists/SKILL.md.

Что делает cleanup-lists?

Он собирает инвентаризацию списков HubSpot, находит возможные дубликаты и неиспользуемые записи, а затем готовит кандидатов на удаление. Перед удалением требуется подтверждение пользователя.

Что нужно для работы cleanup-lists?

Нужен токен HubSpot в HUBSPOT_ACCESS_TOKEN с разрешениями crm.lists.read и crm.lists.write, а также Python 3.10+ и uv. Если Lists API возвращает 403 на вашем тарифе, аудит проводят вручную в интерфейсе.

Исходный текст

SKILL.md · MIT
---
name: cleanup-lists
description: "Audit and remove unused, empty, or duplicate list definitions from HubSpot. Identifies lists with zero members, lists not used by any workflow or email, and overlapping list criteria."
license: MIT
metadata:
  author: tomgranot
  version: "1.1"
  category: ongoing-maintenance
---

# Cleanup Lists

Audit HubSpot lists to remove clutter. Unused lists slow down the UI, confuse team members, and can mask the lists that actually matter.

## Prerequisites

- A HubSpot service key (`HUBSPOT_ACCESS_TOKEN` in `.env`; an existing legacy private app token also works) with `crm.lists.read` (and `crm.lists.write` for deletion)
- Python 3.10+ with [`uv`](https://github.com/astral-sh/uv)
- Note: Lists API access may return 403 on some plan tiers. If so, perform the audit manually in the UI.

## Step-by-Step Instructions

### Stage 1: Plan

Confirm with the user before starting:

1. Delete outright, or prefix with "[ARCHIVE]" first and delete next quarter?
2. Any lists that must never be touched (suppression lists, compliance segments, active campaign audiences)?

### Stage 2: Before

Inventory all lists via the Lists API (v3):

```python
import os, requests
from dotenv import load_dotenv

load_dotenv()
TOKEN = os.environ["HUBSPOT_ACCESS_TOKEN"]
BASE = "https://api.hubapi.com"
HEADERS = {"Authorization": f"Bearer {TOKEN}", "Content-Type": "application/json"}

lists, offset = [], 0
while True:
    resp = requests.post(f"{BASE}/crm/v3/lists/search", headers=HEADERS,
                         json={"offset": offset, "count": 100})
    resp.raise_for_status()
    data = resp.json()
    lists.extend(data.get("lists", []))
    if not data.get("hasMore"):
        break
    offset = data.get("offset", offset + 100)
```

For each list, record: list ID, name, processing type (DYNAMIC/MANUAL), member count (`additionalProperties`), created date, last updated date.

Export to CSV for review.

### Stage 3: Execute

Flag lists matching any of these criteria:

1. **Zero members** and created more than 30 days ago
2. **Not referenced** by any workflow, email, or ad audience
3. **Duplicate names** or nearly identical filter criteria
4. **Test/temp lists** (names containing "test", "temp", "copy of", "old")
5. **Static lists** that have not been updated in 6+ months

Cross-reference with workflows and email campaigns before deleting — a list with zero members might still be used as an enrollment trigger.

Present the candidate list to the user and wait for explicit confirmation, then delete via `DELETE /crm/v3/lists/{listId}` or the UI.

### Stage 4: After

1. Re-run the inventory and confirm the deleted lists are gone.
2. Document what was deleted (list name, ID, reason) in a cleanup log.
3. Inform team members if any lists they created were removed.

## Rollback

- HubSpot does not have a list recycle bin. Deleted lists cannot be restored.
- Before deleting, export the list definition (filters/criteria) so it can be recreated if needed.
- Static lists: export member IDs before deletion if the membership data matters.

## Tips

- Run this quarterly as part of the database cleanup routine.
- Establish a naming convention going forward (e.g., prefix with team name or purpose).
- Archive lists by prefixing with "[ARCHIVE]" instead of deleting if you are unsure.

© tomgranot · MIT · TomGranot/hubspot-admin-skills

Похожие скиллы

Каталог скиллов SKILL.md →
find-skills vercel-labs Ищет и устанавливает готовые скиллы для ИИ-агентов через каталог skills.sh. Пригодится, когда для рабочей задачи нужен специализированный воркфлоу. CX Codex +1 4 000 000установок frontend-design официальный anthropics Скилл задаёт осмысленное визуальное направление для новых интерфейсов и редизайна. Подойдёт, когда стандартный шаблонный UI не устраивает. 1 025 790установок grill-me Matt Pocock Скилл проводит жёсткое интервью по плану или дизайну, чтобы найти пробелы и уточнить решения. Подойдёт перед началом разработки. 1 424 476установок grill-with-docs Matt Pocock Скилл проводит жёсткое интервью по плану или дизайну и по ходу создаёт ADR и глоссарий. Подойдёт перед началом сложной разработки. 1 219 756установок improve-codebase-architecture Matt Pocock Скилл ищет архитектурные узкие места в кодовой базе и показывает варианты углубления модулей в HTML-отчёте. Подойдёт для ревью перед рефакторингом. 1 163 035установок design-taste-frontend Leonxlnx Скилл задаёт арт-дирекцию для публичных страниц и рабочих экранов, а затем проверяет результат в браузере по скриншотам. Нужен, когда интерфейс выглядит шаблонным или недоработанным. CX Codex +1 678 700установок

Из того же набора37

create-icp-tiers Сегментирует компании в HubSpot по отраслям и размеру штата. Создаёт выпадающее свойство через API и готовит логику для четырёх воркфлоу. CX Codex +1 ★ 78звёзд репо connect-hubspot-mcp Подключает Claude Code к удалённому MCP-серверу HubSpot для поиска записей, проверки результатов и небольших подтверждённых изменений в CRM. CX Codex +1 ★ 78звёзд репо cleanup-workflows Находит в HubSpot воркфлоу, которые никогда не запускались, отключены больше 90 дней или остались от тестов, и помогает их удалить. CX Codex +1 ★ 78звёзд репо cleanup-properties Находит и архивирует неиспользуемые пользовательские поля в сделках, контактах и компаниях HubSpot. Защищает от переполнения свойств CRM. CX Codex +1 ★ 78звёзд репо cleanup-lead-owners Убирает из HubSpot уволенных сотрудников и переназначает их контакты, компании и сделки. Нужен, когда человек уходит, а его записи остаются висеть. CX Codex +1 ★ 78звёзд репо cleanup-forms Находит и удаляет неиспользуемые, тестовые и устаревшие формы в HubSpot через Forms API. Помогает навести порядок в панели маркетинга и отчётах. CX Codex +1 ★ 78звёзд репо cleanup-deals Находит проблемные сделки HubSpot и передаёт их владельцам на проверку. Удаление тестовых сделок возможно только после отметки человека в CSV. CX Codex +1 ★ 78звёзд репо cleanup-dashboards Наводит порядок в дашбордах HubSpot: находит заброшенные, дубли и тестовые, помогает свести отчёты к нескольким рабочим экранам. CX Codex +1 ★ 78звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой