Salta al contenuto principale

Dai un libro mastro al tuo agente AI: è arrivata la CLI contabile bea

Pubblicato 8 minuti di letturaMike ThriftMike Thrift
Dai un libro mastro al tuo agente AI: è arrivata la CLI contabile bea

Affidi già al tuo agente AI il tuo codebase, il tuo terminale e le tue sessioni di debug più difficili. Ora affidagli anche i tuoi libri contabili — con ogni registrazione che propone che passa attraverso un'anteprima che approvi e un validatore che controlla i calcoli. Lo strumento a riga di comando bea si installa con due comandi, funziona su file di libro mastro in testo semplice sul tuo computer e non richiede un account per la contabilità locale.

Installalo in due comandi

Ci sono due modi pubblicati per ottenere lo stesso comando. Scegli quello adatto alla tua macchina, poi verifica che risponda con la sua versione:

$ uv tool install beancount-io
$ brew install bex-co/tap/bea
$ bea --version
bea 0.1.0

La distribuzione Python è beancount-io e l'eseguibile che installa è bea, attualmente alla versione 0.1.0. Il percorso uv funziona ovunque con Python 3.12 o successivo; il percorso Homebrew copre macOS e Linux. La guida completa è nella pagina di installazione, con gli stessi passaggi nell'avvio rapido della CLI.

Il primo compito del tuo agente richiede pochi minuti

Non ti serve un nuovo agente, un plugin o una migrazione di piattaforma. Incolla questo nell'agente AI con accesso alla shell che usi già, in una nuova directory demo vuota:

Hai accesso alla shell e la CLI bea installata. Prima esegui bea --help e leggi cosa offre. Poi, in una NUOVA directory demo vuota (non toccare alcun libro mastro esistente): 1) crea un libro mastro in USD aprendo Assets:Checking a 1000 il 2026-08-01; 2) aggiungi un acquisto di 12,50 USD con descrizione "Caffè" a Expenses:Dining il 2026-08-02; 3) esegui bea check; 4) riporta il saldo di Assets:Checking insieme alla query BQL esatta che hai usato. Risultato atteso: 987,50 USD.

Gli stessi passaggi come semplici comandi:

$ bea --no-input init demo-books --currency USD --date 2026-08-01 --opening-balance "Assets:Checking 1000"
$ cd demo-books
$ bea add transaction --date 2026-08-02 --narration "Coffee" --posting "Expenses:Dining 12.50" --posting "Assets:Checking"
$ bea check
$ bea query "SELECT account, sum(position) WHERE account = 'Assets:Checking' GROUP BY account"

Risultato atteso: Assets:Checking contiene 987,50 USD — 1000 meno 12,50, validato da check e riportato con la query che lo ha calcolato. Quando il tuo agente ti consegna quel numero, ha completato il suo primo ciclo chiuso: bozza, validazione, report. La guida per agenti si basa sullo stesso ciclo con due ricette più complete — importazione di un CSV bancario con revisione anteprima-first e risposta a una domanda sul saldo a partire dall'output delle query.

Cosa ti serve e a chi è rivolto

Un terminale, una connessione di rete e Homebrew o uv con Python 3.12 o successivo. I comandi locali di importazione, query, report e controllo non richiedono un account Beancount.io, e i tuoi file di libro mastro restano in una directory che scegli tu, come testo semplice che puoi confrontare, copiare e mettere sotto controllo di versione.

È pensato per fondatori tecnici che tengono i libri contabili della propria startup, sviluppatori indipendenti che vivono già nel terminale e costruttori di agenti che cercano un libro mastro contro cui un'AI possa proporre modifiche senza scritture silenziose. Se i tuoi libri sono già in un prodotto cloud, la risposta onesta è diversa — vedi la sezione di confronto qui sotto.

Il percorso ospitato è opzionale e separato

Nulla di quanto sopra richiede un account o invia il tuo libro mastro da qualche parte. Due elementi extra lo fanno, ed entrambi sono volutamente separati dall'installazione della CLI:

  • bea ask risponde a domande su un libro mastro locale tramite il servizio AI ospitato. Richiede l'extra ask — uv tool install 'beancount-io[ask]' — oltre alle tue credenziali Beancount.io. L'installazione predefinita omette le dipendenze AI finché non le richiedi.
  • Il server MCP e i libri mastro ospitati accedono anch'essi con il tuo account Beancount.io per autorizzare l'accesso. Le competenze dell'agente per Beancount vivono nel repository del prodotto e si caricano nel tuo agente separatamente — installare la CLI non le installa né le configura.

Inizia in locale; connetti l'hosting solo se lo vuoi.

Prova: un agente, tre righe, libri verificati

Un'affermazione di lancio vale quanto la sua riproducibilità. Quindi, insieme alla CLI, arriva una sfida sintetica a tre righe con una risposta derivata dall'aritmetica prima che qualsiasi report venga eseguito: i libri si aprono il 2026-09-01 con 1000 USD in checking, l'estratto conto riporta un pagamento cliente di 2000,00 USD, una bolletta di hosting di −29,00 USD e una visita al bar di −12,50 USD, e le risposte attese sono 2958,50 USD in checking (1000 + 2000 − 29 − 12,50) e 1958,50 USD di profitto di settembre (2000 − 29 − 12,50).

Un verificatore con CLI installata esegue l'intero ciclo in una nuova directory temporanea: l'anteprima riporta 3 pronti e non scrive nulla, la prima applicazione scrive 3 registrazioni, una reimportazione identica scrive 0 con i byte del libro mastro preservati, una scrittura sbilanciata (−5 in checking contro +4 in dining) esce con codice 1 e byte preservati, e check restituisce valido. Gli input esatti sono scaricabili come main.bean, statement.csv e rules.toml.

Poi un agente reale ha eseguito la stessa sfida: client muse 1.1.1 (Muse Code) con modello muse-spark-1.3-contributor, headless, 22 chiamate di strumenti, uscita 0, nessun intervento umano — e, cosa fondamentale, nessun rules.toml fornito, quindi l'agente ha derivato la propria categorizzazione. Ha visualizzato in anteprima 3 pronti, applicato 3 registrazioni, eseguito un controllo pulito e riportato 2958,50 USD in checking e 1958,50 USD di profitto di settembre, entrambi riverificati successivamente rispetto ai valori attesi indipendenti. La registrazione completa — il prompt effettivo, ogni chiamata di strumento e l'unico vero errore che ha diagnosticato da sé (un blocco della cache in sandbox, risolto puntando XDG_CACHE_HOME dentro la directory di lavoro) — è pubblicata come sessione registrata, con la trascrizione grezza accanto.

La sessione di terminale qui sotto è una riproduzione deterministica del percorso di lavoro di quella sessione, ricostruita dai download canonici tramite demo-replay.sh — riattua i comandi, quindi incorpora le regole di categorizzazione per la determinismo piuttosto che ri-derivarle. L'output catturato in demo-replay.txt contiene le stesse informazioni di guardarlo:

$ 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.

Due limiti onesti accompagnano questa evidenza. È una verifica tramite output CLI di una singola sessione di un singolo client su dati sintetici — non un benchmark di modelli, e non rivendica nulla su altri client o sull'uso di produzione non presidiato. E un check superato prova che il libro mastro è bilanciato, mai che l'agente abbia scelto l'account giusto per il bar: il giudizio di categoria è dell'agente, la validazione strutturale è di bea. Un giocattolo a tre righe testa il ciclo, non il giudizio.

Scegliere tra gli strumenti

Se stai scegliendo un libro mastro per flussi di lavoro con agenti piuttosto che convinto da questo, leggi il confronto a cinque strumenti: Beancount.io, Xero, QuickBooks Online, Puzzle e hledger valutati sugli stessi sette criteri per flussi di lavoro con agenti — installazione, autenticazione, ambito di lettura/scrittura, dati locali versus cloud, anteprima e validazione, output strutturato e comportamento di importazione ripetuta — con fonti ufficiali datate verificate il 2026-09-10. Beancount.io è l'unico strumento lì con una sessione end-to-end osservata alle spalle; la pagina lo dichiara, nomina il suo editore ed etichetta ciò che non ha testato.

Dove andare da qui

Semplifica la tua gestione finanziaria

Il modo più veloce per giudicare tutto questo è la demo qui sopra: installa bea, incolla il compito nell'agente che già usi e verifica tu stesso i 987,50 USD. Beancount.io offre contabilità a testo semplice che mantiene ogni saldo riproducibile e ogni modifica revisionabile — niente scatole nere, nessun vincolo al fornitore. Dai al tuo agente il suo primo libro mastro e guarda cosa ti restituisce.

Condividi questo articolo

Fonte: https://beancount.io/it/blog/2026/09/10/bea-accounting-cli-for-ai-agents

Pubblicato: 10 settembre 2026