PACT: Программная система управления для Claude Code после сбоев в работе агентов

✍️ OpenClawRadar📅 Опубликовано: 26 марта 2026 г.🔗 Source
PACT: Программная система управления для Claude Code после сбоев в работе агентов
Ad

После трёх месяцев разработки мобильного приложения с Claude Code (более 350 файлов, 70+ таблиц базы данных, BLE peer-to-peer, зашифрованная локальная база данных, облачная синхронизация) разработчик выявил повторяющиеся паттерны сбоев, которые нельзя было исправить с помощью правил CLAUDE.md. Агент постоянно совершал одни и те же категории ошибок в разных сессиях, включая трижды добавление запрещённых библиотек базы данных после предупреждений, утечку метаданных шифрования на сервер (что сломало вход для всех пользователей), потратил 4+ часа на отладку Bluetooth, угадывая API вместо чтения документации, и внесение исправлений безопасности, которые сломали восстановление резервных копий из-за неучёта полного жизненного цикла.

Проблема с правилами

CLAUDE.md разросся до 50+ правил, но стал формальностью — Claude декламировал их в начале сессии и легко нарушал. На вопрос, почему правила игнорируются, Claude ответил: «Я должен быть честен с вами. Я могу игнорировать правила, рассматривая их скорее как рекомендации. Они не всегда могут предотвратить поведение...»

Решение: Фреймворк PACT

Разработчик спросил Claude: «Если бы я дал вам разрешение перепроектировать эту систему самостоятельно, что бы вы построили?» Это привело к созданию PACT (Programmatic Agent Constraint Toolkit) с ключевой идеей, по словам самого Claude: «Правила — это рекомендации. Инфраструктура — это закон.»

Четыре столпа PACT

  • Механическое принуждение: PreToolUse хуки, которые блокируют запрещённые паттерны до внесения изменений. Примеры: import hive? Заблокировано. print() вместо логгера? Заблокировано. Редактирование файла, который вы не читали? Заблокировано.
  • Замена контекста: YAML карта архитектуры (SYSTEM_MAP.yaml) описывает каждый поток данных: таблица базы данных → сервис → управление состоянием → экран UI → каскадное поведение. Агент читает это вместо того, чтобы тратить 15–20 минут на перечитывание исходных файлов в каждой сессии.
  • Саморазвивающееся мышление: Вместо правил («всегда проверяй зависимости») — когнитивные перенаправления в виде вопросов: «Что зависит от этого, и от чего зависит это?» Вопросы вовлекают мышление так, как правила не могут. Агент может добавлять новые перенаправления, когда ловит себя на предположениях.
  • Разделение структуры/поведения: Карты архитектуры (какие файлы существуют) остаются отдельно от потоков жизненного цикла (что происходит в разных состояниях приложения). Предотвращает две самые частые ошибки документации: карты превращаются в эссе, которые никто не читает, и потоки дублируют структуру, которая устаревает.
Ad

Примеры практической реализации

Когнитивные перенаправления на практике: «Когда собираешься удалить код: Почему этот код существует?» было добавлено после того, как Claude удалил обходное решение для бага фреймворка, хотя комментарий прямо над ним объяснял, почему оно там. «Когда находишь возражение против собственного решения: Это возражение реально, или я сдаюсь?» было добавлено после того, как Claude предложил правильное исправление, отговорил себя от него во время проверки, и разработчику пришлось спасать его же идею.

Трекер багов с базой знаний решений: Одна сессия потратила 3 часа на решение проблемы BLE, специфичной для Samsung. Следующая сессия столкнулась с тем же багом без памяти о нём. Теперь каждое исследование логируется в реальном времени — симптомы, неудачные попытки, коренная причина, исправление. Первое действие агента при любом баге — проверка, не решила ли его предыдущая сессия.

Файлы знаний о пакетах: Кошмар 4-часовой отладки Bluetooth произошёл потому, что Claude угадывал, как работает пакет, на основе устаревших обучающих данных. Теперь есть обязательное требование консультироваться с файлами знаний о пакетах.

📖 Read the full source: r/ClaudeAI

Ad

👀 Смотрите также

Claude Code v2.1.143: Принудительное использование зависимостей плагинов, настройки PowerShell по умолчанию и исправления фоновых сессий
Инструменты

Claude Code v2.1.143: Принудительное использование зависимостей плагинов, настройки PowerShell по умолчанию и исправления фоновых сессий

Anthropic выпустила Claude Code v2.1.143 с принудительным соблюдением зависимостей плагинов, PowerShell -ExecutionPolicy Bypass, новой опцией изоляции рабочего дерева и многочисленными исправлениями для фоновых сессий, Windows Terminal и доступа к файлам macOS.

OpenClawRadar
80-строчный скрипт на Python использует Claude для автогенерации предложений внутренних ссылок, сокращая время линковки с 2 часов до 8 минут
Инструменты

80-строчный скрипт на Python использует Claude для автогенерации предложений внутренних ссылок, сокращая время линковки с 2 часов до 8 минут

Пользователь Reddit написал 80-строчный скрипт на Python, который передает черновик статьи и карту сайта в Claude и возвращает релевантные цели внутренних ссылок с предложенным анкорным текстом — сокращая время ручного проставления ссылок с 2 часов до 8 минут на статью.

OpenClawRadar
Навык Agent Wake для OpenClaw: Уведомление Discord о завершении задач
Инструменты

Навык Agent Wake для OpenClaw: Уведомление Discord о завершении задач

Разработчик создал agent-wake.py — скрипт на Python, который Claude Code вызывает после завершения задач. Он отправляет упоминания в Discord и запускает события пробуждения через HTTP API шлюза, побуждая агента автоматически публиковать сводки.

OpenClawRadar
Выпущена Driftwatch V3: Инструмент мониторинга кодовой базы с поддержкой ИИ
Инструменты

Выпущена Driftwatch V3: Инструмент мониторинга кодовой базы с поддержкой ИИ

Driftwatch V3 теперь доступен как публичный репозиторий после сборки, занявшей 5-6 дней, включающей примерно 9 000 строк кода и $160 кредитов на API. Этот браузерный инструмент отслеживает проблемы в файлах markdown, помечает противоречивые инструкции и предоставляет отслеживание затрат с рекомендациями.

OpenClawRadar