Один задокументированный запуск агента провёл синтетический ledger из трёх строк от банковского CSV до сведённых книг. Начальный остаток был 1000 USD, в выписке было три строки, а ожидаемые ответы были выведены арифметически до любого отчёта: проверка сходится на 2958.50 USD, прибыль за сентябрь — 1958.50 USD. Запуск точно попал в эти числа, после одной реальной ошибки, которую агент сам диагностировал.
Входные данные
Задача состоит из трёх опубликованных файлов в каталоге /downloads/agent-accounting/, полный сценарий описан в руководстве по ведению учёта с ИИ-агентами. Книги открываются 2026-09-01 в долларах США с 1000 USD на счёте Assets:Checking. В выписке три строки за сентябрь: платеж клиента 2000.00 USD от 2026-09-02, счёт за хостинг -29.00 USD от 2026-09-03 и посещение кафе -12.50 USD от 2026-09-04. Правила относят клиента к Income:Consulting, хостинг — к Expenses:Software, кафе — к Expenses:Dining, и каждый счёт, упомянутый в правилах, открыт в стартовом ledger на требуемую дату.
Ожидания вытекают из строк плюс начального остатка, независимо от вывода любого отчёта: 1000 + 2000 - 29 - 12.50 даёт 2958.50 USD на checking, а 2000 - 29 - 12.50 даёт 1958.50 USD прибыли за сентябрь. Изменённый вход или неверное ожидание приводят к провалу проверки, а не к печати правдоподобного отчёта.
Методология
Два слоя, разделённые между собой. Во-первых, установленный проверочный CLI-скрипт (scripts/check-agent-accounting.py, привязанный к bea 0.1.0) выполняет запросы preview, apply, повторный apply, check, balance и income-statement в свежей временной директории с изолированной конфигурацией. Он утверждает, что preview сообщает о 3 готовых и ничего не записывает, первый apply записывает 3 записи, повторный apply сообщает о 0 готовых с 3 точными дубликатами и ничего не записывает, побайтовая идентичность сохраняется после preview и отклонённых записей, check чист, и обе суммы совпадают с приведённой выше арифметикой. Он также пытается выполнить несбалансированную транзакцию (Assets:Checking -5 USD против Expenses:Dining 4 USD), требует код выхода 1 и проверяет, что байты ledger не изменились.
Во-вторых, один реальный запуск агента на свежей копии файлов для скачивания. Клиент — muse 1.1.1 (Muse Code) с моделью muse-spark-1.3-contributor, запущенный без головы с инструментами shell и записи файлов внутри рабочей директории, веб-инструменты отключены, вмешательства человека во время запуска не было. Важно: файл rules.toml не предоставлялся — агент сам вывел свою категоризацию из открытых счетов ledger.
Наблюдаемые результаты
Агент совершил 22 вызова инструментов (21 shell плюс 1 запись файла) и завершился с кодом 0. Он изучил CSV и 16 открытых счетов, прочитал справку CLI, написал собственный rules.toml (буквальные совпадения с заглавными буквами, эквивалентные каноническим шаблонам, поскольку сравнение регистронезависимо), предварительно просмотрел 3 готовых без записи, применил 3 записи и выполнил чистый check. Его сообщённые суммы составили 2958.50 USD на checking и 1958.50 USD прибыли за сентябрь. Оператор после этого повторно выполнил оба запроса только для чтения против ledger агента и подтвердил те же цифры относительно независимых ожидаемых значений.
Короткая демонстрация ниже детерминированно воспроизводит этот рабочий путь из канонических файлов для скачивания. Это повтор, а не живой запуск:
$ bea --version
bea 0.1.0
$ bea import (preview)
csv → Assets:Checking: 3 ready, 0 exact duplicates, 0 possible duplicates
$ bea import --apply
Wrote 3 entries to $WORK/books/main.bean.
$ bea check
$WORK/books/main.bean: no errors
$ bea balance Assets:Checking
Checking 2,958.50 USD
$ bea report income-statement -t 2026-09
Net Profit: 1,958.50 USD
checking: 2958.50 USD (expected)
profit: 1958.50 USD (expected)
REPLAY OK: preview 3/0, applied 3, check clean, 2958.50 / 1958.50 USD.Ошибки и вмешательства
В транскрипте сохранена исходная последовательность, включая ошибки. Два исследовательских вызова завершились безвредно (pip не был установлен; проверка пути для устанавливаемой версии нашла источники вне site-packages), и агент двинулся дальше. Одна ошибка была реальной: первый --apply завершился с Operation not permitted на блокировке кэша вне рабочей области, потому что песочница блокировала файлы блокировки в домашнем кэше. Агент изучил исходники продукта, обнаружил, что каталог кэша учитывает XDG_CACHE_HOME, повторно запустил с указанием на рабочую директорию, записал те же 3 записи, которые показывал предпросмотр, и удалил временный кэш после. Ни один ledger никогда не редактировался вручную; каждая запись появилась через bea import --apply. Вмешательства во время запуска: нет — он работал без головы с отключённым подтверждением, и человек просмотрел журнал событий только после факта.
Ограничения
Это проверка вывода CLI одного запуска одного клиента на синтетических данных — не бенчмарк модели. Он ничего не утверждает о других клиентах, о точности учёта в целом или о неконтролируемом производственном использовании. Важны два различия. Во-первых, суждение о категориях против структурной валидации: агент выбирал, к какому счёту относится каждая строка, и это суждение настолько же хорошо, насколько хорошо его чтение трёх однозначных строк. Всё, что bea проверял после — баланс, структура нулевой суммы, обнаружение дубликатов — является структурным: прохождение проверки доказывает, что ledger сбалансирован, но никогда не доказывает, что Expenses:Dining был правильным счётом для кафе. Во-вторых, ledger — игрушечный: три строки, одна валюта, нет неоднозначности категоризации, нет конфликтующей истории. Более сложная выписка проверила бы суждение; эта проверяет цикл.
Файлы для скачивания
Все входные данные задачи и полная запись запуска, как статические файлы, общие для всех локалей:
- main.bean — стартовый ledger, проходит валидацию как опубликованный
- statement.csv — три синтетические строки
- rules.toml — детерминированные категории
- agent-run.transcript.md — фактический промпт, полная последовательность инструментов с сохранёнными ошибками и независимая проверка
- demo-replay.sh — маркированный детерминированный повтор рабочего пути (требуется
bea 0.1.0в PATH) - demo-replay.txt — захваченный вывод повтора с подписью, текстовая альтернатива просмотру демонстрации
Воспроизведите: скачайте три входных файла, сначала предпросмотр, затем apply, и проверьте две суммы против 1000 + 2000 - 29 - 12.50. В руководстве по агентам те же шаги выполняются вручную.





