Writ — плагин
Writ превращает правила процесса в проверки при вызове инструментов: Claude Code не пишет код, пока вы не одобрили план и тесты
- 317 ★ репозитория
- Последний коммит
- MIT
Широкий доступ
Почему такой уровень
- Скрипт `bootstrap-plugin.sh` создает окружение, запускает Neo4j в Docker и правит `~/.claude/settings.json`, `~/.claude/CLAUDE.md` и слэш-команды
- Хуки видят каждый вызов инструмента, журнал `audit.jsonl` хранится в `~/.local/state/writ/logs`
- Демон слушает localhost без аутентификации и обслуживает хуки и CLI
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add plugins/writОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Скрипт `bootstrap-plugin.sh` создает окружение, запускает Neo4j в Docker и правит `~/.claude/settings.json`, `~/.claude/CLAUDE.md` и слэш-команды
- Хуки видят каждый вызов инструмента, журнал `audit.jsonl` хранится в `~/.local/state/writ/logs`
- Демон слушает localhost без аутентификации и обслуживает хуки и CLI
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Writ — плагин для Claude Code, который выносит правила рабочего процесса из подсказок в код. Он состоит из хуков на события Claude Code, локального демона и базы Neo4j в Docker, где хранятся правила и записи о решениях. Запись исходного кода до утвержденного плана блокируется на уровне хука. В режиме `work` между запросом и первой записью кода стоят два шлюза: утвержденный план в `plan.md` и утвержденные скелеты тестов. Шлюз открывает только ваш ответ `approved` на просьбу агента, сам агент одобрить себя не может. Если `plan.md` изменили после одобрения, записи снова блокируются до нового `approved`. Пути с учетными данными, например `.env`, `*.key` и `~/.ssh/`, закрыты всегда. На каждый запрос Writ подмешивает подходящие правила, методику и прошлые решения, а при коммите связывает изменения файлов с планом. Команда `writ recall` показывает записанные решения, `writ audit-session` печатает хронологию отказов и одобрений. В комплект входят пять агентов: исследователь, планировщик, исполнитель, автор тестов и ревьюер.
Для кого. Разработчикам на Claude Code, которым нужен проверяемый порядок работы агента: план, тесты, потом код. Команды получают журнал причин правок.
Подходит, если
- Агент берется за код сразу, без плана, а вы хотите прочитать план до первой правки
- Правило из `CLAUDE.md` теряется в длинной сессии, и требуется проверка, которая срабатывает при каждой записи
- В команде фиксируют, почему менялся файл, а `writ recall` должен находить решение за правкой
- Отладку надо вести от причины: режим `debug` блокирует правки кода, пока в `debug.md` не записана первопричина
- Агентам запрещено трогать `.env`, ключи и пути вне проекта, и запрет должен действовать без их согласия
Не подходит, если
- Машина на Windows или без Docker: плагину нужны Linux или macOS, Python 3.11 и Docker с запущенным демоном
- Нужен быстрый черновик или одноразовый скрипт: в режиме `work` каждая запись ждет утвержденного плана и тестов
- Агент запускается без человека, например в CI: одобрить план и тесты некому, потому что шлюзы читают ваш ответ хуком отправки промпта
Пример запроса к агенту
Добавь в `src/textutil.py` функцию `slugify()` с тестами. Сначала покажи план и жди моего approvedОграничения
- Writ ограничивает кооперативного агента и не заменяет песочницу. Проверка команд оболочки строится на шаблонах и пропускает пути из переменных, `eval` и тела `sh -c`.
- Шлюзы проверяют, что план и тесты существуют в нужной форме. Качество плана и утверждений в тестах оценивает человек.
- Демон слушает localhost без аутентификации. Часть проверок только сообщает о находках и ничего не блокирует.
- Рост качества кода от доставки правил агенту автор экспериментами не подтвердил.
Как отключить. Отключите или удалите плагин через меню `/plugin` и перезапустите Claude Code. Скрипт установки менял `~/.claude/settings.json` и `~/.claude/CLAUDE.md`, поэтому проверьте эти файлы и остановите контейнер Neo4j.
Частые вопросы
Как поставить Writ в Claude Code?
Выполните `claude plugin marketplace add infinri/Writ` и `claude plugin install writ@writ`. Откройте Claude Code в проекте, Writ напечатает команду `bash <plugin root>/scripts/bootstrap-plugin.sh`, ее запускают в терминале. После сообщения `Writ plugin is ready` перезапустите Claude Code и проверьте `writ status`.
Почему Writ заблокировал запись файла?
В режиме `work` пока нет утвержденного плана и скелетов тестов, блокируется любая запись кода. Прочитайте план, ответьте `approved` целым сообщением после просьбы агента, затем так же утвердите тесты. Причину отказа разбирает раздел «Why was I blocked?» в `docs/install.md`.
Может ли агент одобрить свой план сам?
Нет. Хук события отправки промпта читает ваш ответ и выпускает одноразовый токен под текущий шлюз и отпечаток `plan.md`. Файлы токенов и состояния сессии защищены от записи агентом, а попытка без токена отклоняется и попадает в журнал.
Чем Writ отличается от правил в `CLAUDE.md`?
Правило в `CLAUDE.md` агент должен найти, удержать и применить сам. Writ проверяет действие кодом в момент вызова инструмента и блокирует запись. Правила Writ тоже попадают в контекст, но блокируют записи только хуки, текст правила остается подсказкой.
Какие режимы есть в Writ?
Пять: `conversation`, `review`, `investigate`, `debug` и `work`. Шлюзы плана и тестов действуют только в `work`, а `debug` блокирует правки кода до записи первопричины. Режим выбирается автоматически по запросу или командой `writ mode set <режим> <session_id>`.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
ПлагиныРабочий процесс из 13 скиллов для кодового агента: идея, план, ревью, проверка безопасности, тесты и выпуск
Рабочая конфигурация Claude Code: планировщик с ревью по этапам, субагенты и скиллы анализа, рефакторинга и синхронизации документации
planr хранит задачи агентной разработки в Markdown-файлах Git и показывает, что готово, заблокировано и ждет решения
Плагин для Claude Code и Codex вводит режимы xdo, xdel и xflow: главный агент планирует, исполнитель кодит, оценщик проверяет.
Плагин Claude Code для разработки с разделением ролей: спецификация, ревью, TDD, QA и верификация разными агентами
Скилл /improve: сильная модель проверяет репозиторий и пишет самодостаточные планы правок, а исполнение отдаете более дешевой модели
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Звезды репозитория | Главное отличие |
|---|---|---|---|
| Writ (эта карточка) | нет | 317 | |
| HOL Guard | да | 1 094 | проверяет опасные команды, чтение секретов и установку пакетов, а порядок план-тесты-код не навязывает |
| TDD Guard | нет | 2 375 | блокирует код без падающего теста и не требует утвержденного плана |
| Superpowers | нет | 316 679 | набор скиллов с процессом разработки, процесс держится на подсказках, блокировок хуками в нем нет |
Коротко о README
README открывают демо на 81 секунду и таблица шлюзов со всеми кодами отказов вроде `[ENF-GATE-PLAN]`. Дальше разобран пример сессии от запроса до коммита, режимы работы и три слоя: контекст, принудительные проверки, непрерывность. Раздел о пределах приводит измерения поиска правил на 193 запросах и отмечает, что рост качества кода не подтвержден экспериментом.