# ops

Помогает оценить радиус поражения перед выкаткой: что необратимо, что ломается в окне деплоя и как быстро откатиться.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · ★ 24
- Автор: rainmanjam
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/rainmanjam/poka-yoke/tree/HEAD/plugins/poka-yoke/skills/ops/SKILL.md
- Обновлён: 2026-10-14
- HTML: https://affpapa.org/nevibecode/skills/rainmanjam-ops

## Что делает

Скилл `ops` из набора poka-yoke разбирает операции, где ошибки не откатываются: деплой, миграции схемы, удаление бакетов и ключей. Вместо вопроса «можно ли сделать это неправильно» он задаёт другой: насколько широко разойдётся ошибка и получится ли её отменить. Сначала агент отвечает на четыре вопроса — что здесь необратимо и чем это восстановить, что ломается во время выкатки, можно ли необратимую часть выкатить отдельно, кто на связи и как быстро идёт откат. Если восстановить нечем, так и скажет.

Дальше идёт лестница радиуса поражения: от контроля, где опасная операция просто невозможна (`prevent_destroy`, защита от удаления, прогрессивная выкатка с автооткатом по ошибкам), до предупреждения, обнаружения и бесполезной строчки в ранбуке про «проверьте окружение». Миграции схемы разложены на expand, backfill, dual-write, переключение чтения за флагом и contract — каждый шаг отдельным деплоем, потому что откатываются все, кроме последнего. Ещё в скилле есть kill switches и фиче-флаги с обязательным тестом выключенного пути и сроком жизни.

Позиция простая: непроверенный бэкап — это вера, а не защита. Пока восстановление не прогоняли на реальном окружении, считайте данные не забэкапленными и оценивайте радиус поражения соответственно. Для разбора аварии, которая уже случилась, в наборе есть отдельный скилл `retro`.

## Установка

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

1. **Через Skills CLI (Vercel)**
```bash
npx skills add rainmanjam/poka-yoke --skill ops -a claude-code
```

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

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add rainmanjam/poka-yoke --skill ops -a codex
```

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

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add rainmanjam/poka-yoke --skill ops -a cursor
```

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install rainmanjam/poka-yoke ops
```

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

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add rainmanjam/poka-yoke --skill ops -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/rainmanjam/poka-yoke --path plugins/poka-yoke/skills/ops
```

### Windsurf (Devin Desktop)

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

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add rainmanjam/poka-yoke --skill ops -a opencode
```

### Claude.ai

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

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/rainmanjam/poka-yoke/tree/HEAD/plugins/poka-yoke/skills/ops/SKILL.md

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

## Примеры запросов агенту
- Можно ли выкатить это в пятницу вечером?
- Оцени радиус поражения этой миграции — она удаляет колонку
- Разложи изменение схемы на expand и contract по отдельным деплоям

## Похожие
- [deploy-checklist](https://affpapa.org/nevibecode/skills/deploy-checklist.md) — скилл · 5700 установок
- [migration-architect](https://affpapa.org/nevibecode/skills/migration-architect.md) — скилл · 632 установки
- [AMH Cloudflare Ops MCP by WT](https://affpapa.org/nevibecode/mcp/amh-cloudflare-ops-mcp-by-wt.md) — MCP-сервер · ★ 9
- [shipping-and-launch](https://affpapa.org/nevibecode/skills/shipping-and-launch.md) — скилл · 58400 установок
- [migration](https://affpapa.org/nevibecode/skills/migration.md) — скилл · 103900 установок
- [use-railway](https://affpapa.org/nevibecode/skills/use-railway.md) — скилл · 951 установка

## Другие версии с тем же именем
- [ops · adobe](https://affpapa.org/nevibecode/skills/ops.md) — 761 установка

Из того же набора: [rainmanjam/poka-yoke](https://affpapa.org/nevibecode/by/rainmanjam/poka-yoke.md) — 4 карточки

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

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