Един записан агентски прогон преведе синтетична счетоводна книга с три реда от банков CSV до проверени сметки. Началното салдо беше 1000 USD, извлечението съдържаше три реда, а очакваните отговори бяха изведени от аритметиката, преди да е стартирал какъвто и да е отчет: проверката приключва на 2958.50 USD, септемврийската печалба е 1958.50 USD. Прогонът уцели точно тези числа, след един реален неуспех, който сам си диагностицира.
Входни данни
Предизвикателството е три публикувани файла в /downloads/agent-accounting/, с пълния сценарий в ръководството за агенти по счетоводство. Сметките се откриват на 2026-09-01 в USD с 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, като всяка сметка, която правилата назовават, е открита в началната счетоводна книга на необходимата дата.
Очакванията идват от редовете плюс началното салдо, независимо от какъвто и да е отчетен изход: 1000 + 2000 - 29 - 12.50 е 2958.50 USD от проверката, а 2000 - 29 - 12.50 е 1958.50 USD от септемврийската печалба. Променен вход или грешно очакване проваля проверката, вместо да отпечата правдоподобен отчет.
Методология
Два слоя, държани разделени. Първо, инсталиран CLI верификатор (scripts/check-agent-accounting.py, фиксиран към bea 0.1.0) изпълнява заявки за преглед, прилагане, повторно прилагане, проверка, баланс и отчет за приходите и разходите в нова временна директория с изолирана конфигурация. Той потвърждава, че прегледът отчита 3 готови и не записва нищо, първото прилагане записва 3 записа, повторното прилагане отчита 0 готови с 3 точни дубликата и не записва нищо, байтовата идентичност се запазва след преглед и отхвърлени записи, проверката е чиста, а и двата общи сборове съвпадат с горната аритметика. Също така се опитва да извърши небалансирана транзакция (Assets:Checking -5 USD срещу Expenses:Dining 4 USD), изисква изходен код 1 и проверява дали байтовете на счетоводната книга са непроменени.
Второ, един реален агентски прогон върху свежо копие на файловете за изтегляне. Клиентът беше muse 1.1.1 (Muse Code) с модел muse-spark-1.3-contributor, стартиран без глава с инструменти за shell и запис на файлове в работната директория, уеб инструментите бяха изключени и нямаше човешки намеси по време на прогона. От решаващо значение е, че не беше предоставен rules.toml — агентът сам изведе категоризацията си от откритите сметки в счетоводната книга.
Наблюдавани резултати
Агентът направи 22 инструментални повиквания (21 shell плюс 1 запис на файл) и завърши с код 0. Той разгледа CSV файла и 16-те открити сметки, прочете CLI помощния интерфейс, написа свой собствен rules.toml (буквални съвпадения с главни букви, еквивалентни на каноничните модели, тъй като сравнението не прави разлика между главни и малки букви), прегледа 3 готови без нищо записано, приложи 3 записа и изпълни чиста проверка. Отчетените му общи сборове бяха 2958.50 USD в проверката и 1958.50 USD от септемврийската печалба. Операторът повторно изпълни и двете заявки само за четене срещу счетоводната книга на агента след това и потвърди същите числа спрямо независимите очаквани стойности.
Кратката демонстрация по-долу пресъздава детерминистично този работещ път от каноничните файлове за изтегляне. Това е преиграване, а не текущият прогон:
$ 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 записа, които прегледът беше показал, и премахна временния кеш след това. Никоя счетоводна книга не беше редактирана ръчно; всеки запис дойде от bea import --apply. Намеси по време на прогона: никакви — той беше без глава с изключено одобрение, а човек прегледа журнала на събитията едва след факта.
Ограничения
Това е CLI-изходна проверка на един прогон на един клиент върху синтетични данни — а не моделен бенчмарк. Тя не твърди нищо за други клиенти, за счетоводната точност като цяло или за работа без надзор в производствена среда. Две разлики са от значение. Първо, преценка на категориите срещу структурна валидация: агентът избра към коя сметка принадлежи всеки ред, а тази преценка е толкова добра, колкото и разчитането му на три недвусмислени реда. Всичко, което bea провери след това — балансът, структурата с нулева сума, откриването на дубликати — е структурно: успешната проверка доказва, че счетоводната книга се балансира, но никога, че Expenses:Dining е била правилната сметка за кафенето. Второ, счетоводната книга е играчка: три реда, една валута, без неяснота в категоризацията, без противоречива история. По-трудно извлечение би тествало преценката; това тества цикъла.
Файлове за изтегляне
Всички входни данни за предизвикателството и пълният запис на прогона, като статични файлове, споделяни за всеки език:
- main.bean — начална счетоводна книга, валидира се както е публикувана
- statement.csv — трите синтетични реда
- rules.toml — детерминистични категории
- agent-run.transcript.md — действителната подкана, пълната инструментална последователност с неуспехите запазени и независимата проверка
- demo-replay.sh — обозначено детерминистично преиграване на работещия път (изисква
bea 0.1.0на PATH) - demo-replay.txt — записан изход от преиграването с надпис, текстовата алтернатива на гледане на демонстрацията
Възпроизведете го: изтеглете трите входни файла, прегледайте първо, приложете и проверете двата общи сбора спрямо 1000 + 2000 - 29 - 12.50. Ръководството за агенти преминава през същите стъпки на ръка.





