# delete-no-email-contacts

Скилл находит в HubSpot CRM контакты без email, сохраняет аудит и удаляет их через API. Нужен для очистки базы перед работой с контактами.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · ★ 78
- Автор: tomgranot
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/TomGranot/hubspot-admin-skills/tree/HEAD/skills/delete-no-email-contacts/SKILL.md
- Обновлён: 2026-10-13
- HTML: https://affpapa.org/nevibecode/skills/delete-no-email-contacts

## Что делает

Скилл ищет контакты HubSpot CRM без свойства email через CRM Search API. Перед удалением он считает записи и сохраняет исходное состояние, затем собирает все ID постранично и записывает CSV-аудит в `data/audit-logs/deleted-no-email-contacts.csv`.

Работа разбита на этапы Plan → Before → Execute → After. Скрипты `scripts/before.py`, `scripts/execute.py` и `scripts/after.py` запускаются через `uv run`. Удаление выполняется пакетами по 100 записей через Batch Archive API, с подтверждением и защитным порогом 500 контактов.

Нужны Python 3.10+, `uv`, файл `.env` с `HUBSPOT_ACCESS_TOKEN` и права `crm.objects.contacts.read` и `crm.objects.contacts.write`. Без токена HubSpot скрипты не запустятся. Удалённые контакты можно восстановить в HubSpot в течение 90 дней.

## Требования
- Работает с: HubSpot

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add TomGranot/hubspot-admin-skills --skill delete-no-email-contacts -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/delete-no-email-contacts/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/delete-no-email-contacts/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add TomGranot/hubspot-admin-skills --skill delete-no-email-contacts -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/delete-no-email-contacts/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add TomGranot/hubspot-admin-skills --skill delete-no-email-contacts -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/delete-no-email-contacts/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install TomGranot/hubspot-admin-skills delete-no-email-contacts
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/delete-no-email-contacts/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add TomGranot/hubspot-admin-skills --skill delete-no-email-contacts -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/TomGranot/hubspot-admin-skills --path skills/delete-no-email-contacts
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/delete-no-email-contacts/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add TomGranot/hubspot-admin-skills --skill delete-no-email-contacts -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/TomGranot/hubspot-admin-skills/tree/HEAD/skills/delete-no-email-contacts/SKILL.md

## Когда брать
- найти контакты HubSpot без email
- сохранить исходный список перед удалением
- удалить записи пакетами через API
- проверить, что такие контакты больше не остались

## Примеры запросов агенту
- Проведи плановую проверку контактов HubSpot без email и покажи результаты перед удалением.
- Запусти `scripts/before.py`, затем подготовь аудит и дождись моего подтверждения.
- Выполни очистку через `scripts/execute.py`, а после проверь результат с помощью `scripts/after.py`.

## Похожие
- [xlsx](https://affpapa.org/nevibecode/skills/xlsx.md) — скилл · 187223 установки
- [google-agents-cli-observability](https://affpapa.org/nevibecode/skills/google-agents-cli-observability.md) — скилл · 511300 установок
- [caveman-evidence-review](https://affpapa.org/nevibecode/skills/caveman-evidence-review.md) — скилл · 104500 установок
- [migration](https://affpapa.org/nevibecode/skills/migration.md) — скилл · 103900 установок
- [performance-optimization](https://affpapa.org/nevibecode/skills/performance-optimization.md) — скилл · 65200 установок
- [supabase](https://affpapa.org/nevibecode/skills/supabase.md) — скилл · 8 установок

Из того же набора: [tomgranot/hubspot-admin-skills](https://affpapa.org/nevibecode/by/tomgranot/hubspot-admin-skills.md) — 21 карточка

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
