BC claude-code-hooks
Пишет, тестирует, регистрирует и отлаживает хуки Claude Code (PreToolUse, PostToolUse, SessionStart, Stop), которые превращают правило, которое модель постоянно нарушает, в жесткое ограничение. Используйте, когда пользователь хочет заблокировать или перехватить вызов инструмента, добавить защитный механизм, исправить неисправный хук или говорит 拦截 / 守卫 / 钩子 — включая "make it stop doing X".
машинный переводПоказать оригиналСкрыть оригинал«Writes, tests, registers and debugs Claude Code hooks (PreToolUse, Pos…»
Writes, tests, registers and debugs Claude Code hooks (PreToolUse, PostToolUse, SessionStart, Stop) that turn a rule the model keeps breaking into a hard gate. Use when the user wants to block or intercept a tool call, add a guard rail, fix a misfiring hook, or says 拦截 / 守卫 / 钩子 — including "make it stop doing X".
Пишет, тестирует, регистрирует и отлаживает хуки Claude Code (PreToolUse, PostToolUse, SessionStart, Stop), которые превращают правило, которое модель…
Как процесс C 59/100 · Есть пробелы — слабые места: результат и критерий готовности, входы и предусловия, стоимость исполнения
Как улучшить
- Тело SKILL.md длиннее 5 000 токенов: вынесите справочные детали в references/ и подключайте по необходимости.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 0
✓ Критических и высоких находок нет
Просканировано файлов: 6. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
body-longтело SKILL.md ≈ 24201 токенов (рекомендуется < 5000); вынесите детали в references/ - заметка
edit-residueв тексте есть пометки об устаревшем (строки 1215): проверьте, не остались ли старые правила рядом с новыми — полная проверка читает текст на противоречия
Процессный рейтинг: все десять параметров 59/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 10Стоимость исполнения. Тело инструкции 24201 токенов: вытесняет саму задачу из окна
- 60Инструменты и файлы. Используются инструменты (bash, web, git, python), но во frontmatter они не объявлены
- 70Когда включается. Сказано, когда применять, но не сказано, когда не стоит
- 100Шаги. Шагов: 67
- 100Ошибки и развилки. Развилок: 3, есть раздел про ошибки
- 100Согласованность. Имя и обязательные поля на месте
- 100Повторный запуск. Изменяющие операции проверяют текущее состояние
- 100Отчётность по ходу. Скилл сообщает о ходе работы
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
- low Ответ описан самодельной разметкой (15 тегов): типизированный вызов надёжнее
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- +1Лицензия не указана
- +2Инструкции на одном языке
- +3Длина description 315 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 19 заголовков
- +3Пошаговые инструкции: 67 пунктов
- +4Есть примеры (11 блоков кода)
- +4Справочные файлы упоминаются в инструкциях (3 из 3)
- +3Все 2 скриптов описаны в инструкциях
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 81.