# crontap-heartbeat-for-cron

Добавляет cron-задаче heartbeat в Crontap: если задача упала или перестала запускаться, приходит алерт. Для тех, у кого есть регулярные джобы без присмотра.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 883 установки · ★ 1
- Автор: Crontap
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/Crontap/skills/tree/HEAD/skills/crontap-heartbeat-for-cron/SKILL.md
- Обновлён: 2026-09-16
- HTML: https://affpapa.org/nevibecode/skills/crontap-heartbeat-for-cron

## Что делает

Скилл ставит на существующую периодическую задачу сторожевой пинг. Задача сама сообщает о себе после успешной работы, а тишина дольше периода плюс grace-окно считается пропущенным чекином. Вариант `/fail` отправляют, когда задача упала и это обработано в коде.

Внутри три инструмента: `create_heartbeat`, `get_heartbeat_pings` и `rotate_heartbeat_token`. Сначала создаётся heartbeat с нужным периодом и grace, ответ содержит секретный ping URL — его сохраняют как секрет и не выводят в логи, CI или сообщения агенту. Потом в задачу добавляют успешный пинг и пинг `/fail` в ветку обработанной ошибки, а историю смотрят по конкретному дню в UTC. Ротация токена обнуляет оба варианта старого URL сразу, поэтому задачу нужно успеть обновить до следующего дедлайна.

Перед работой скилл требует выбрать один из двух путей: подключить Crontap MCP по адресу `https://mcp.crontap.com/mcp` или задать `$CRONTAP_CLIENT_ID` и `$CRONTAP_API_KEY` для прямого API. Разница в доступе: MCP работает на любом тарифе Crontap, а сырой REST API требует Ultra. Сам heartbeat только замечает тишину — запускать или перезапускать задачу он не умеет.

## Установка

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

1. **Через Skills CLI (Vercel)**
```bash
npx skills add Crontap/skills --skill crontap-heartbeat-for-cron -a claude-code
```

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

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add Crontap/skills --skill crontap-heartbeat-for-cron -a codex
```

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

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add Crontap/skills --skill crontap-heartbeat-for-cron -a cursor
```

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install Crontap/skills crontap-heartbeat-for-cron
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/crontap-heartbeat-for-cron/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add Crontap/skills --skill crontap-heartbeat-for-cron -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/Crontap/skills --path skills/crontap-heartbeat-for-cron
```

### Windsurf (Devin Desktop)

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

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add Crontap/skills --skill crontap-heartbeat-for-cron -a opencode
```

### Claude.ai

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

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/Crontap/skills/tree/HEAD/skills/crontap-heartbeat-for-cron/SKILL.md

## Когда брать
- узнать, что ночной импорт не отработал
- отличить явное падение задачи от её молчания
- подобрать grace-окно под реальный разброс времени запуска
- посмотреть историю чекинов за конкретный день
- сменить утёкший ping URL, не потеряв мониторинг

## Примеры запросов агенту
- Добавь heartbeat в задачу ночного импорта: период 1440 минут, grace 30 минут
- Покажи чекины heartbeat `<heartbeat-id>` за 2026-09-14
- Ротируй токен heartbeat `<heartbeat-id>` после подтверждения

## Похожие
- [topic-monitor](https://affpapa.org/nevibecode/skills/topic-monitor.md) — скилл · 596 установок
- [cron-schedule](https://affpapa.org/nevibecode/skills/cron-schedule.md) — скилл · 902 установки
- [c-cron](https://affpapa.org/nevibecode/skills/c-cron.md) — скилл · ★ 173
- [render-cron-jobs](https://affpapa.org/nevibecode/skills/render-cron-jobs.md) — скилл · 439 установок
- [encore-go-cron](https://affpapa.org/nevibecode/skills/encore-go-cron.md) — скилл · 302 установки
- [cargo-observability](https://affpapa.org/nevibecode/skills/cargo-observability.md) — скилл · 6300 установок

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

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

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