Reelier

официальный

Агенты делают утверждения. Reelier выписывает квитанции — записывает рабочий процесс вызова инструментов агентом один раз, воспроизводит его детерминированно с нулевым расходом токенов и сравнивает запуски для выявления отклонений.

Что можно делать с Reelier MCP?

  • Детерминированное воспроизведение записанных навыков — Попросите reelier run выполнить сохранённый .skill.md при 0 токенах, по умолчанию только для чтения, для побайтно идентичного повторного выполнения.
  • Обнаружение отклонений в запусках агента — Используйте reelier diff, чтобы сравнить повторное выполнение с оригиналом и пометить каждый шаг как SAME или DRIFTED, с выходом с кодом 1 при любом изменении.
  • Контроль PR с обновлением зависимостей — Попросите ассистента настроить CI-процесс, который воспроизводит ваш навык на PR от Dependabot/Renovate и завершается ошибкой на точном шаге с отклонением.
  • Преобразование существующих трассировок в навыки — Скомпилируйте trace.jsonl или существующий SKILL.md в воспроизводимый навык с помощью reelier compile, с честным перечислением пробелов в виде открытых вопросов.
  • Проверка подписанных квитанций офлайн — Запустите reelier verify, чтобы пересчитать каждое утверждение в лестнице отправленной квитанции, показывая, какие ступени доказаны, а какие являются честными пробелами.
  • Проверка покрытия агента перед записью — Используйте reelier init --dry-run, чтобы проверить покрытие наблюдений по путям A/B/C и кандидатов на воспроизведение без записи или изменения чего-либо.

Документация

Reelier

Reelier

Пусть ваши агенты пишут. Сохраняйте чеки.

Ваши агенты работали всю ночь. Вот что именно изменилось.

Reelier записывает запуск, который сработал, замораживает его как воспроизводимый навык и воспроизводит его детерминированно — каждый запуск возвращается как чек: доказательство того, что сделал агент и что изменилось из-за этого. Агенты делают заявления. Reelier пишет чеки.

npm version CI tests license Discord stars

Веб-сайт · Документация · SPEC.md

Reelier: Dependabot bumps a dependency, Reelier replays your recorded agent run at 0 tokens and diffs it, catching the drift on the PR before you merge

▶ смотреть со звуком (27с)

Reelier MCP server on Glama


Чеки на PR ваших агентов — установите и готово

PR, созданные агентами (Dependabot, Claude, Codex, Cursor, …), получают комментарий-чек за секунды: автор, изменённые файлы, заявленная область vs. то, что фактически изменилось, отмеченные чувствительные пути. Никакого файла workflow, никакого CLI, никакой конфигурации.

→ Установите GitHub App Reelier для чеков — бесплатно на публичных репозиториях, навсегда.

Чек Reelier — PR агента Автор: dependabot[bot] · Изменено файлов: 2 (+119 −41) Заявленная область: нет (добавьте .reelier/scope.yml для включения обнаружения неожиданных записей) Затронуты чувствительные пути: ⚠ 1 — package-lock.json Доказывает область и изменения, а не корректность

Настоящий чек из собственных репозиториев Reelier — посмотрите живой пример. Объявите область для каждого агента в .reelier/scope.yml (или в блоке reelier-scope в теле PR), и чек сообщит о неожиданных записях. Чек доказывает область и изменения, но никогда не корректность или безопасность.


Зачем

AI-агенты недетерминированы — один и тот же промпт, разный результат при каждом запуске — и они будут утверждать, что выполнили работу, независимо от того, выполнили ли они её. Reelier записывает запуск, который сработал, воспроизводит его детерминированно и пишет подписанный чек, который это доказывает. Укажите его на ваш существующий CI в одном workflow — он добавляет проверяемый чек, а не заменяет ваш стек.

Измерено на реальном сравнительном тесте, та же задача, те же данные (полный метод):

  • 1 000 / 1 000 воспроизведений побайтово идентичны
  • Каждое воспроизведение отправляет подписанный чек — доказательство того, что выполнялось и что изменилось, а не заявление
  • 0 вызовов LLM при воспроизведении — детерминированное повторное выполнение, а не повторное рассуждение

Детерминированное воспроизведение также примерно в 50× дешевле и ~59× быстрее, чем повторный запуск агента, на том же тесте.

Установка

npm i -g reelier && reelier init
# No Node install needed — same commands via Docker:
docker run --rm ghcr.io/seldonframe/reelier --help

reelier init [--dry-run] выполняет одну проверку с контрольной точкой локально по всем трём путям Reelier: покрытие наблюдения Path A, кандидаты воспроизведения/заморозки Path B и подключения и кандидаты Path C с ограничением/возможностью результата/только тенью/неподдерживаемые. Он не разворачивает, не ограничивает, не отправляет, не загружает, не копирует учётные данные и не переписывает конфигурацию хоста. --dry-run ничего не записывает; обычная команда записывает только очищенные артефакты ниже .reelier/init/.

Как плагин агента

Научите вашего кодирующего агента, когда использовать Reelier. Те же две команды, любой хост:

claude plugin marketplace add seldonframe/reelier
claude plugin install reelier@seldonframe
codex plugin marketplace add seldonframe/reelier
codex plugin add reelier@seldonframe

Это устанавливает два Agent Skills и ничего больше. reelier-replay учит вашего агента замораживать повторяемую задачу с вызовами инструментов и воспроизводить её за 0 токенов. reelier-write-safety охватывает ограничение записей агента перед тем, как вы их предоставите: что видит рекордер, что отказывает политика и что чек доказывает, а что нет. Он не поставляет MCP-серверы, поэтому не оборачивает, не наблюдает и не ограничивает ни один вызов инструмента сам по себе; это делает CLI reelier, а навыки управляют им через npx. Упакован как в формате Agent Plugins v1.0.0 (plugin/agent-plugins/), так и в формате Claude Code (plugin/claude/), сгенерирован из одного источника с помощью scripts/build-plugin-packages.mjs.

Проверено от начала до конца на codex-cli 0.147.0-alpha.1.2: оба формата устанавливаются, включаются, и навык достигает модели. Другие хосты не тестировались, и статус по каждому хосту отслеживается в docs/specs/agent-plugins-coverage-v1.md §4, а не заявляется здесь.

Как использовать

reelier init --dry-run              # inspect Path A/B/C locally; write nothing
reelier init                        # persist resumable sanitized inspection artifacts
reelier run  <name>.skill.md        # replay deterministically — 0 tokens (read-only by default)
reelier diff <name>                 # SAME or DRIFTED, per step — exit 1 on drift
reelier push <name>.skill.md        # sync receipts to your ledger (opt-in)
reelier ci                          # write a workflow: drift-CI + PR receipts, one command
  1. Проверьте, затем запишите или заморозьте. reelier init показывает наблюдаемое покрытие и локальных кандидатов без изменения маршрутов. reelier mcp --wrap "<mcp server>" проксирует живые инструменты; reelier scan/from-session замораживает поддерживаемую историю.
  2. Скомпилируйте. reelier compile превращает трассировку в SKILL.md — 0 вызовов LLM, минимальные утверждения, честные пробелы печатаются как Открытые вопросы.
  3. Воспроизведите. reelier run воспроизводит его на уровне 0 — без LLM, побайтово идентично, по умолчанию только чтение (записи требуют --allow-writes).
  4. Сравните. reelier diff сообщает SAME или DRIFTED для каждого шага, с неудачным утверждением как почему — выход 1 при дрейфе.
  5. Войдите. reelier login подключает эту машину к Reelier Cloud с кодом устройства в вашем браузере — или установите REELIER_CLOUD_URL/REELIER_CLOUD_KEY для CI и самостоятельного хостинга.
  6. Отправьте. Каждый запуск — это чек; reelier push опционально синхронизирует его с реестром для постоянной ссылки и встраиваемого значка проверенного воспроизведения.

Уже есть Agent Skill? Преобразуйте его — ваш навык, минус модель:

reelier compile trace.jsonl --from-skill ./my-skill/SKILL.md

Три теста, один навык

ТестКомандаОтветы
Детерминизмreelier run <skill.md>Делает ли это всё ещё то, что делало?
Восстановлениеreelier run <skill.md> --fail NЕсли это сломается, заметит ли навык и исправит?
Дрейфreelier run <skill.md> --wrap "<your mcp server>"Ушёл ли мир из-под этого навыка?

Таксономия благодаря рецензии Mads Hansen на пост о запуске. Полная семантика для каждого теста, включая инъекцию восстановления и защитные ограничения манифеста: docs/REFERENCE.md.

Ограничение PR с обновлениями Dependabot / Renovate

Dependabot и Renovate открывают PR и запускают ваш набор тестов — но ни один из них не знает, что ваш агент фактически делает во время выполнения, поэтому обновление зависимости, которое молча меняет форму вызова инструмента (переименованное поле, новый дефолт, другая ошибка), проходит с зелёными модульными тестами. Это проверка, которую они не запускают.

Скопируйте .github/workflows/reelier-bump-check.yml в ваш репозиторий, укажите skill: на ваши собственные записанные файлы .skill.md, и он будет: ограничивать PR от dependabot[bot]/renovate[bot] (или метки dependencies), устанавливать обновлённую зависимость, воспроизводить ваш записанный навык вживую против неё на --max-level 0 (0 токенов) и проваливать проверку на точном шаге, где произошёл дрейф.

Это тестирует поведение зависимостей и вызовов MCP-инструментов — это не тестирует обновления моделей; --max-level 0 никогда не вызывает LLM. Полная копия листинга и настройка: docs/marketplace-listing.md.

Докажите это

Отправленный чек несёт лестницу независимо проверяемых утверждений — не одно общее «проверено». В зависимости от того, что вы включите, он может быть подписан, иметь метку времени, подтверждён CI и содержать перекрёстно проверяемые идентификаторы запросов провайдера. reelier verify пересчитывает каждое утверждение офлайн, и утверждение, которое вы не включили, просто отображается как честный пробел, а не постыдный.

Посмотрите реальный пример: reelier.com/r/HWBdmGob9KeHRqXi-OEaRD0z.

Полная лестница из 8 ступеней, что каждая ступень доказывает и не доказывает: docs/REFERENCE.md.

Если ваши навыки — сотрудники

Жизненный цикл сотрудникаЭквивалент Reelier
Превратить сессию в навыкreelier from-session
Оценка эффективностиreelier run + reelier diff
Обслуживание парказапланированные воспроизведения + оповещения о дрейфе
Записьподписанные чеки

«Проверено» описывает запись, а не агента — чек доказывает, что выполнялось и что изменилось, а не то, что агент был хорош в своей работе.

Трудовой договор не делает сотрудника хорошим — он делает то, что они сделали, видимым и ограниченным. То же самое здесь: чеки доказывают область и изменения, но никогда не корректность.

Для кого это

  • Соло-разработчик / мейнтейнер OSS — снова настоящий регрессионный тест; дрейф не может пройти молча.
  • Команда, выпускающая изменения агентов — «запуск прошёл чисто» становится проверяемым артефактом PR, а не заявлением.
  • Агентство, запускающее агентов для клиентов — подписанное, с меткой времени доказательство доставки, которое клиент может проверить.
  • Покупатель или продавец на маркетплейсе — подтверждённые чеки — это отзывы, которые нельзя подделать.
  • Операции, ориентированные на аудит — подписанный, подтверждённый CI след каждой записи, включая ключ идемпотентности.

MIT, бесплатно навсегда (версии ≤0.16.0 остаются AGPL-3.0). Ваши данные — навыки, трассировки, запуски — описаны в SPEC.md, поэтому уход — это копирование папки.

Вклад: приветствуются issues и PR — SPEC.md является источником истины для форматов; исправляйте код, а не спецификацию. npm test перед PR.

Если Reelier сэкономил вам повторный запуск, поставьте звезду ⭐ — так другие разработчики найдут его.