Превращает коррекцию пользователя «больше не делай X» в исполняемое правило (block/warn через PreToolUse-хук) без кода. Триггеры — "/hookify", "запрети X", "больше так не делай", "правило: никогда не Y", "захукай это".
Scanned 9/6/2026
Install to Claude Code
npx -y skills add andrewcigan/vibe-dev-plugin --skill hookify --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Hookify?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/andrewcigan-hookify)More formats (shields.io, HTML) on the badges page.
---
name: hookify
description: Превращает коррекцию пользователя «больше не делай X» в исполняемое правило (block/warn через PreToolUse-хук) без кода. Триггеры — "/hookify", "запрети X", "больше так не делай", "правило: никогда не Y", "захукай это".
when_to_use: Когда пользователь хочет заморозить свою коррекцию в постоянный механизм, чтобы агент не повторял ошибку — особенно сразу после того, как агент сделал нежелательное действие и пользователь поправил.
---
# /hookify — заморозить коррекцию в правило
Берёт «больше не делай X» и превращает в правило `.harness/user-rules.json`, которое
PreToolUse-хук (`hooks/checks/user-rules.sh`) применяет ко всем будущим действиям.
Непрограммист получает реальный enforcement без написания кода. Закрывает R6/H9/H18.
## Шаг 0: Граница — действие или контент сообщения?
**Хук видит ДЕЙСТВИЯ (команды Bash, пути файлов в Write/Edit), НЕ контент моих сообщений.**
- ✅ **Захукиваемо** (действие): «не делай force-push», «не правь файлы в `migrations/` без ревью», «не запускай `rm -rf` вслепую», «не ставь пакеты глобально», «не коммить прямо в main».
- ❌ **НЕ захукиваемо** (контент сообщения): «не давай технические развилки A/B без объяснения», «не используй жаргон», «не оценивай в человеко-днях», «пиши короче». Это display-only — я читаю оригинал своего текста, хук не может его enforce'ить (ограничение SDK; см. отложенный H5).
Если коррекция про **контент сообщения** — честно сказать: «это правило хуком не enforce'ится,
могу записать как discipline-заметку в SESSION.md / memory, но это не механизм, а напоминание».
**НЕ фабриковать правило-пустышку**, которое не сработает (декларация под видом enforcement).
## Шаг 1: Извлечь намерение
- **tool** — какой инструмент ловим: `Bash` (команды), `Write`/`Edit`/`MultiEdit` (файлы), или `*` (любой целевой).
- **match** — regex по subject (Bash → по тексту команды; Write/Edit → по пути файла). Паттерн ТОЧНЫЙ, чтобы не ловить лишнее.
- **action** — `warn` (по умолчанию, мягко: предупреждение, действие проходит) или `block` (жёстко: действие отменяется). `block` — только если пользователь явно хочет жёсткий запрет.
- **message** — текст при срабатывании (по-русски, по-человечески, без жаргона).
## Шаг 2: Показать правило и подтвердить
Показать готовое правило простым языком + вариант, спросить «такое записать?».
Для `block` подтверждение **обязательно** (это жёсткая отмена действий).
Пример: «Запрещу force-push: любая Bash-команда с `push … --force` будет ОТМЕНЕНА с пояснением. Записать как жёсткий запрет?»
## Шаг 3: Записать в `.harness/user-rules.json`
```bash
mkdir -p .harness
F=.harness/user-rules.json
[ -f "$F" ] || echo '[]' > "$F"
jq '. += [{"id":"<уникальный-id>","tool":"<Bash|Write|Edit|MultiEdit|*>","match":"<regex>","action":"<warn|block>","message":"<текст>"}]' "$F" > "$F.tmp" && mv "$F.tmp" "$F"
jq . "$F" # проверка: валидный JSON + правило на месте
```
## Шаг 4: Сообщить
Правило активно **СРАЗУ** — PreToolUse-проверка читает файл на каждом действии, рестарт не нужен
(событие уже подключено). Активно в профилях `standard`/`strict` (в `minimal` — off).
Сказать пользователю, что коррекция заморожена и с этого момента действует.
## Анти-паттерны
- ❌ Фабриковать правило для контент-коррекции (жаргон / A-B / человеко-дни) — хук это не ловит. Честно сказать «не механизм».
- ❌ Слишком широкий regex (ловит лишние команды) — паттерн точным.
- ❌ `block` без явного подтверждения — block отменяет действия.
- ❌ Молча записать правило — всегда показать и подтвердить.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!