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

cleanup-workflows — скилл для Claude Code: чистка воркфлоу в HubSpot

Находит в HubSpot воркфлоу, которые никогда не запускались, отключены больше 90 дней или остались от тестов, и помогает их удалить.

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

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

Скилл проводит аудит автоматизаций HubSpot и убирает мёртвый груз из дашборда. Сначала он выгружает все воркфлоу через v4 Automation API и записывает по каждому ID, имя, статус включения, тип, дату создания и последнего обновления. Потом помечает кандидатов на удаление: отключённые 90+ дней, с нулём зачислений за всё время, с именами вроде «test» или «copy of», заменённые новыми версиями, а также те, что стабильно падают с ошибкой.

Перед удалением скилл проверяет, не запускает ли этот воркфлоу другой воркфлоу, не задаёт ли он свойства, от которых зависят остальные, и нет ли ссылок на него в документации. Список кандидатов показывается вам, и без явного подтверждения ничего не удаляется. Дальше по умолчанию предлагается схема «сначала архив»: выключить, подождать неделю, потом удалить через DELETE /automation/v4/flows/{flowId} или в интерфейсе. Для выключения через API нужен текущий revisionId.

Понадобится сервисный ключ HubSpot с областью automation — HUBSPOT_ACCESS_TOKEN в .env, подойдёт и старый токен приватного приложения. Нужен Python 3.10+ с uv. На части тарифных планов Automation API отвечает 403 — тогда аудит придётся делать руками в разделе Automation > Workflows. Удалённые воркфлоу в HubSpot не восстанавливаются, поэтому скилл советует сначала прогнать /workflows-as-code и сохранить JSON-выгрузку: по ней воркфлоу можно пересоздать через POST /automation/v4/flows.

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

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

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

  • Проведи аудит воркфлоу HubSpot и покажи, что можно удалить
  • Выключи воркфлоу, которые отключены больше 90 дней, и подготовь их к удалению
  • Сделай выгрузку всех воркфлоу через /workflows-as-code перед чисткой

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

1Через Skills CLI (Vercel)

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

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

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

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

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

Вопросы о cleanup-workflows

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

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

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

Проводит инвентаризацию воркфлоу HubSpot через v4 Automation API, помечает неактивные, тестовые и устаревшие, а после вашего подтверждения выключает и удаляет их.

Что нужно для работы скилла?

Сервисный ключ HubSpot с областью automation в HUBSPOT_ACCESS_TOKEN и Python 3.10+ с uv. На части тарифных планов Automation API вернёт 403, и аудит придётся делать в интерфейсе HubSpot.

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

SKILL.md · MIT
---
name: cleanup-workflows
description: "Audit and remove inactive, test, or deprecated workflows from HubSpot. Identifies workflows that have never enrolled contacts, workflows turned off for 90+ days, and test workflows."
license: MIT
metadata:
  author: tomgranot
  version: "1.1"
  category: ongoing-maintenance
---

# Cleanup Workflows

Audit HubSpot workflows to remove dead weight. Unused workflows clutter the automation dashboard and make it harder to understand what is actually running.

## Prerequisites

- A HubSpot service key (`HUBSPOT_ACCESS_TOKEN` in `.env`; an existing legacy private app token also works) with the `automation` scope
- Python 3.10+ with [`uv`](https://github.com/astral-sh/uv)
- Note: The Automation API may return 403 on some plan tiers. If so, audit manually in HubSpot UI under Automation > Workflows.
- Strongly recommended: run `/workflows-as-code` first to export a JSON backup of every workflow — deleted workflows cannot be restored, but an export lets you recreate them via the API.

## Step-by-Step Instructions

### Stage 1: Plan

Confirm with the user before starting:

1. Archive-first policy: turn off, wait a week, then delete (recommended)?
2. Any workflows that must never be touched (compliance, integrations)?

### Stage 2: Before

Inventory all workflows via the v4 Automation API:

```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"}

flows, after = [], None
while True:
    params = {"limit": 100}
    if after:
        params["after"] = after
    resp = requests.get(f"{BASE}/automation/v4/flows", headers=HEADERS, params=params)
    resp.raise_for_status()
    data = resp.json()
    flows.extend(data.get("results", []))
    after = data.get("paging", {}).get("next", {}).get("after")
    if not after:
        break
```

For each workflow, record: flow ID, name, enabled status, type, created date, last updated date. Enrollment counts are visible in the UI (Automation > Workflows > Details).

### Stage 3: Execute

Flag workflows matching any of these criteria:

1. **Turned off** for 90+ days with no plans to reactivate
2. **Zero enrollments** ever (likely test or abandoned drafts)
3. **Test workflows** (names containing "test", "temp", "copy of", "draft")
4. **Superseded workflows** replaced by newer versions
5. **Error state** workflows that have been failing consistently

Before deleting, check:
- Does the workflow feed into another workflow (via enrollment trigger or go-to-workflow action)?
- Does the workflow set properties that other workflows depend on?
- Is there any documentation referencing this workflow?

Present the candidate list to the user and wait for explicit confirmation. Then, for confirmed candidates: turn each workflow off first (in the UI, or `PUT /automation/v4/flows/{flowId}` with `isEnabled: false` — the PUT requires the current `revisionId`), wait one week, then delete via `DELETE /automation/v4/flows/{flowId}` or the UI.

### Stage 4: After

1. Re-run the inventory and confirm the deleted workflows are gone.
2. Document deleted workflows in a cleanup log (name, purpose, reason for deletion).
3. Notify workflow owners.

## Rollback

- Deleted workflows cannot be restored in HubSpot.
- A `/workflows-as-code` export taken beforehand contains each workflow's full JSON definition — recreate a deleted workflow with `POST /automation/v4/flows` from its export.
- HubSpot retains workflow activity history on contact records even after the workflow is deleted.

## Tips

- Use folders in the workflows dashboard to organize by team, purpose, or status.
- Prefix draft/test workflows with "[TEST]" so they are easy to identify later.
- Review workflows quarterly as part of the database cleanup routine.

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

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

Все скиллы по теме «Автоматизация и no-code: n8n, Zapier, Make» →
remotion-render официальный Remotion Экспортирует видео и отдельные кадры из проектов Remotion через консольные команды. CX Codex GP ChatGPT 3установок recipe-share-event-materials официальный googleworkspace Скилл находит участников события Google Calendar и выдаёт им доступ читателя к файлу Google Drive. Подходит для раздачи материалов после встречи. CX Codex +1 29 700установок blogwatcher openclaw Скилл учит агента вести список блогов и RSS/Atom-лент через CLI blogwatcher: добавлять источники, сканировать обновления, отмечать прочитанное. CX Codex +1 5 400установок ego-browser citrolabs Скилл подключает Chromium-браузер ego-lite к ИИ-агенту для автоматизации сайтов, тестирования интерфейсов и сбора данных с сохранением авторизованных сессий пользователя. CX Codex +1 12 200установок composio ComposioHQ Скилл выбирает подход Composio для личного агента или продукта с пользовательскими аккаунтами и помогает настроить интеграцию, выполнить задачу или найти причину сбоя. CX Codex +1 8 100установок remote-browser browser-use Управляет изолированным облачным браузером через CLI Browser Use. Пригодится агентам на серверах без локального Chrome для автоматизации веб-задач. CX Codex +1 4 700установок

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

review-bounced-contacts Еженедельный ручной разбор контактов с 3+ отскоками: удалить или попробовать восстановить. Помогает не переусердствовать с подавлением и убрать мусор. CX Codex +1 ★ 77звёзд репо new-contact-hygiene-workflow Создаёт в HubSpot воркфлоу, который при появлении контакта ставит стадию жизненного цикла и подтягивает компанию с отраслью. CX Codex +1 ★ 77звёзд репо enrich-company-name Копирует название компании из связанной записи в пустое поле контакта HubSpot. Пригодится, если сегментация и токены персонализации ломаются из-за пустых значений. CX Codex +1 ★ 77звёзд репо create-segment-lists Собирает в HubSpot библиотеку списков сегментов: клиенты, партнёры, конкуренты, сотрудники, уровни ICP и отрасли. Нужна для таргетинга, подавления рассылок и отчётности. CX Codex +1 ★ 77звёзд репо cleanup-lead-owners Убирает из HubSpot уволенных сотрудников и переназначает их контакты, компании и сделки. Нужен, когда человек уходит, а его записи остаются висеть. CX Codex +1 ★ 77звёзд репо cleanup-dashboards Наводит порядок в дашбордах HubSpot: находит заброшенные, дубли и тестовые, помогает свести отчёты к нескольким рабочим экранам. CX Codex +1 ★ 77звёзд репо bounce-monitoring-workflow Скилл собирает в HubSpot три воркфлоу для контроля отскоков: подавляет контакты после нескольких bounce, шлёт алерты и помечает адреса на ручную проверку. CX Codex +1 ★ 77звёзд репо assign-unowned-contacts Проставляет владельца маркетинговым контактам HubSpot, у которых его нет. Пригодится, когда отчёты по владельцам не сходятся с реальной базой. CX Codex +1 ★ 77звёзд репо

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

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