Salta al contingut principal

Referència de la CLI de Beancount

Troba les ordres bea, les opcions, el comportament dels informes, la sortida JSON, els codis de sortida i les correccions per a errors habituals del llibre local.

Utilitzeu aquesta referència per consultar les ordres de bea i el seu comportament. Per al vostre primer llibre, seguiu la guia ràpida de la CLI. Per tancar un mes sencer de principi a fi, consulteu El vostre primer mes amb bea. Per als fitxers bancaris, utilitzeu el tutorial d'importació.

Comandes d’un cop d’ull​

OrdrePropòsit
bea init [DIRECTORY]Crea un llibre amb comptes habituals
bea add TYPEAfegeix una directiva amb data
bea add transactions --from FILE.jsonAfegeix un lot de transaccions
bea import SOURCEPrevisualitza una exportació; afegiu --apply per escriure
bea list TYPELlista i filtra directives
bea checkValida el llibre complet
bea format PATHAlinea un fitxer o formata un directori de manera recursiva
bea query [BQL]Executa una consulta o obre l'intèrpret de consultes interactiu
bea report TYPEGenera informes financers
bea balance [ACCOUNT...]Mostra els saldos dels comptes coincidents
bea ask [QUESTION]Utilitza l'assistència d'IA allotjada opcional amb un llibre local
bea cloud …Inicia sessió i gestiona llibres allotjats
bea doctor COMMANDInspecciona el context i els diagnòstics del llibre
bea example [OPTIONS]Genera un llibre d'exemple
bea treeify [INPUT]Renderitza els noms dels comptes com un arbre de text
bea ingest COMMANDIdentifica, extreu o arxiva amb una configuració de Beangulp
bea price [OPTIONS]Inspecciona, actualitza o exporta preus gestionats; altrament, obté cotitzacions mitjançant el Beanprice opcional
bea engine COMMANDInspecciona el motor gestionat o habilita funcions opcionals
bea upgrade [--check]Actualitza amb el gestor de paquets propietari, o comprova si hi ha actualitzacions

Opcions globals i rutes​

Les opcions globals van abans de l'ordre:

bea --file ~/my-books/main.bean check
bea --json list transaction --limit 100
OpcióComportament
--file / -f PATHSelecciona el llibre arrel; substitueix BEA_FILE i ./main.bean
--jsonSortida estructurada; també desactiva les indicacions de la CLI
--no-inputDesactiva les indicacions; si falta una entrada obligatòria, surt amb codi 2
--yes / -yConfirma operacions com l'eliminació al núvol; no atorga permís d'escriptura a la IA
--debugInclou la traça de les excepcions
--offlineResol els preus gestionats des de la memòria cau local sense fer cap petició
--strict-pricesFa fallar la càrrega quan una font gestionada està obsoleta o no disponible
--strictRebutja les respostes parcials fins i tot en un terminal; l'opció --allow-errors d'una ordre ho torna a permetre
--versionMostra la versió instal·lada sense cap petició de xarxa
--help / -hMostra l'ajuda; també disponible a les subordres
--show-completionMostra la compleció de l'intèrpret de comandes
--install-completionInstal·la la compleció de l'intèrpret de comandes
--shell NAMESelecciona bash, zsh, fish, powershell o pwsh en lloc de detectar l'intèrpret

init crea el seu propi directori o fitxer de destinació i ignora BEA_FILE. Accepta l'opció global --file en lloc del seu argument de directori. format utilitza la seva pròpia destinació posicional. Proporcioneu un nom de fitxer o un directori. L'opció global --file no determina la destinació del formatatge.

Crear un llibre comptable​

bea init [DIRECTORY] per defecte utilitza el directori actual. Un directori crea main.bean; una ruta .bean o .beancount dóna nom directament al fitxer nou.

OpcióComportament
--currency / -c SYMBOLMoneda operativa; obligatòria sense interacció, per defecte interactiu USD
--date YYYY-MM-DDData d'inici de l'historial o d'obertura més antiga; altrament una indicació o avui
--opening-balance "ACCOUNT NUMBER"Repetiu per als comptes plantilla d'actiu o passiu; els imports utilitzen la moneda operativa

La plantilla obre Assets:Checking, Assets:Savings, Assets:Cash, Liabilities:CreditCard, Income:Salary, Income:Interest, Expenses:Groceries, Expenses:Dining, Expenses:Rent, Expenses:Transport, Expenses:Utilities, Expenses:Fees, Expenses:Uncategorized i Equity:OpeningBalances.

Els saldos d'obertura es compensen contra Equity:OpeningBalances. El deute és negatiu. L'entrada de moneda es converteix a majúscules. Es permeten símbols personalitzats; un símbol que no sigui tres lletres majúscules genera un avís d'error tipogràfic. Aquesta no és una comprovació del registre de monedes ISO.

Els fitxers existents no se sobreescriuen mai. Els fitxers nous utilitzen permisos només per al propietari, mode 0600 a POSIX. Les escriptures posteriors d'addició i importació conserven els permisos i respecten les destinacions de només lectura. El formatatge in situ utilitza el formatador natiu i informa dels seus propis errors del sistema de fitxers.

Afegir transaccions​

bea add transaction -n "Groceries" --payee "Corner Market" \
  -p "Expenses:Groceries 30" -p "Assets:Checking" \
  --flag '!' --tag household --link receipt-42 --meta 'receipt:IMG_42.jpg'
OpcióComportament
--posting / -p POSTINGObligatori; repetiu per a cada apunt
--date YYYY-MM-DDPer defecte avui
--flag CHARACTERPer defecte *; utilitzeu ! per marcar una transacció per revisar
--payee TEXTAltra part opcional
--narration / -n TEXTPropòsit opcional; el text omès es llista com a (no narration)
--tag TAG, --link LINKRepetible; s'accepta un # o ^ inicial opcional
--meta KEY:VALUEMetadades de transacció repetibles
--into FILEEscriu un fitxer inclòs mentre valida l'arrel
--allow-errorsPermet explícitament errors de validació semàntica; la sintaxi encara s'ha d'analitzar

Un apunt pot ometre el seu import. Els apunts numerats poden ometre la moneda quan un compte té una única moneda permesa o el llibre té una única moneda operativa compatible. En cas contrari, proporcioneu el símbol.

La sintaxi nativa d'apunts admet aritmètica com 84/2 EUR, costos com {100 USD}, costos totals {{1000 USD}} i preus @ o @@. Utilitzeu imports decimals com 1000, no notació exponencial com 1e3.

Un intercanvi de moneda necessita el seu tipus de canvi real de la transacció. Per exemple, apunteu 100 EUR @ 1.08 USD a un compte obert en EUR i -108 USD al compte corrent. Una compra d'inversió pot apuntar 2 AAPL {100 USD} a un compte obert en AAPL i -200 USD al compte corrent. Afegiu cotitzacions price amb data quan els informes necessitin valoració de mercat.

Les metadades accepten cadenes simples com --meta 'receipt:IMG_42.jpg'. Els nombres, booleans, dates i imports natius conserven els seus tipus. Els exemples inclouen --meta 'reviewed:TRUE', --meta 'received:2026-08-03' i --meta 'fee:2.50 USD'. Les cometes internes forcen una cadena: --meta 'code:"1234"'. Les claus han de ser diferents; filename i lineno estan reservades.

Les addicions individuals, les addicions massives i les importacions substitueixen els salts de línia en beneficiaris, narracions i metadades de cadena per espais. Les cometes i les barres invertides conserven el seu contingut.

Afegir altres directius​

Totes aquestes ordres requereixen --date YYYY-MM-DD. També accepten --into FILE i --allow-errors.

TipusCamps obligatorisOpcions addicionals
open--account / -aRepetiu --currency / -c per restringir monedes
close--account / -a—
balance--account / -a, --amount "NUMBER CURRENCY"--pad-from ACCOUNT, --pad-date YYYY-MM-DD
pad--account / -a, --source / -s—
note--account / -a, --comment / --message / -m—
event--type / -t, --description / -d—
price--currency / --commodity / -c, --amount "NUMBER CURRENCY"La moneda nomena el producte que es valora
commodity--currency / --commodity / -c—
document--account / -a, --filename / --path--tag i --link repetits
custom--type / -t--value / -v KIND:VALUE repetits

Els noms de compte tenen una arrel en majúscula i segments separats per dos punts. Cada subcompte comença amb una lletra majúscula o un dígit. Beancount admet lletres Unicode i noms d'arrel configurats.

Un balanç comprova el compte a l'inici de la seva data. S'admet la sintaxi de tolerància, com --amount "1538 ~ 1 EUR". La tolerància ha de ser no negativa.

Utilitzeu add balance --pad-from Equity:OpeningBalances per escriure un pad i la seva afirmació de balanç alhora. El pad per defecte és el dia anterior; --pad-date pot seleccionar un altre dia anterior. Tots dos comptes han d'estar actius. Un pad independent necessita un balanç posterior per consumir-lo. --allow-errors pot preparar aquest estat intermedi però no pot evitar un compte de pad no vàlid.

add price omet un duplicat exacte de data/producte/preu a l'arrel i els seus fitxers inclosos. Surt amb codi 0 i identifica la ubicació existent. Dates o preus diferents són addicions noves.

Les rutes dels documents es resolen al costat del fitxer que conté la directiva. Amb --into years/2026.bean, --filename receipt.pdf significa years/receipt.pdf, no un fitxer al costat del directori de treball de la vostra consola.

Els tipus de valor personalitzats són text, number, amount, account, bool i date. Per exemple, un pressupost pot utilitzar --value "text:travel" --value "amount:500 USD".

Entrada JSON en bloc​

bea add transactions --from transactions.json accepta una matriu JSON:

[
  {
    "date": "2026-08-04",
    "narration": "Groceries",
    "postings": [
      { "account": "Expenses:Groceries", "amount": "45.00 USD" },
      { "account": "Assets:Checking" }
    ],
    "meta": { "receipt": "R-43", "reviewed": true }
  }
]

Cada transacció requereix date i postings. Els camps opcionals són flag, payee, narration, tags, links i meta.

Un apunt utilitza amount o units, com {"number":"45.00","currency":"USD"}. Ometeu tots dos per a l'apunt de compensació. Els camps d'apunt també inclouen cost, price, flag i meta. Els costos contenen number i currency, amb date i label opcionals. Els preus contenen number i currency.

Utilitzeu cadenes per als decimals. Les metadades utilitzen cadenes i booleans ordinaris, o valors etiquetats com {"kind":"number","value":"1.125"}, {"kind":"date","value":"2026-08-04"} i {"kind":"amount","number":"2.50","currency":"USD"}. La ubicació source opcional de la transacció no s'escriu mai com a metadades.

El valor per defecte és un lot atòmic: qualsevol fila rebutjada deixa el llibre sense canvis i surt amb codi 1. --partial escriu un subconjunt vàlid i encara surt amb codi 1 si es rebutja alguna fila. Els errors JSON descriuen el resultat a error.result; els índexs de fila allà són basats en zero. Els nombres de fila humans són basats en u.

L'addició massiva accepta --into i --allow-errors. No deduplica. Utilitzeu bea import per a la revisió d'exportacions bancàries.

Llibres majors dividits i seguretat de l'escriptura​

Mantingueu --file apuntant a l'arrel. Afegiu --into per seleccionar un fitxer inclòs existent:

bea --file ~/my-books/main.bean add transaction --into 2026.bean \
  --date 2026-08-02 -n "Groceries" \
  -p "Expenses:Groceries 30" -p "Assets:Checking"

La destinació és relativa al directori arrel. Ja ha d'estar inclosa; es rebutja nomenar un fitxer no relacionat. Les ordres d'addició, les importacions i les escriptures interactives de la IA admeten aquesta separació.

Les escriptures validen el llibre candidat complet, incloent-hi els connectors i la reserva de lots de cost. Un canvi concurrent a l'arrel o al seu graf d'inclusions surt amb codi 4. Una destinació de només lectura surt amb codi 3. Les addicions correctes alineen només les línies noves. Els bytes existents romanen sense canvis. Utilitzeu bea format -i PATH quan vulgueu realinear tot el fitxer.

Llista de directrius​

bea list TYPE admet els onze tipus: transaction, open, close, balance, pad, note, event, price, commodity, document i custom.

OpcióS'aplica aComportament
--limit / -l NTots els tipusLímit positiu; per defecte 50
--from-date, --to-dateTots els tipusLímits inclusius YYYY-MM-DD
--allow-errorsTots els tipusPermet dades parcials malgrat els errors del carregador
--account / -a TEXTTransaction, open, close, balance, pad, note, documentSubcadena de compte sense distinció de majúscules i minúscules
--currency / -c SYMBOLPrice, commoditySímbol exacte sense distinció de majúscules i minúscules; el preu filtra el seu producte base
--sort newest/oldestTransactionPer defecte el més recent; s'aplica abans del límit
--flag CHARACTERTransactionFiltra entrades com ! abans del límit
--detailsTransactionRenderitza la sintaxi de Beancount, tots els apunts, les metadades i les ubicacions d'origen

Els altres tipus de directiva conserven l'ordre cronològic. Una taula de transaccions filtrada per compte etiqueta la seva columna d'imports com MATCHING POSTING AMOUNTS. Els detalls i el JSON encara inclouen tots els apunts de cada transacció seleccionada. Els detalls renderitzen les entrades carregades, incloent-hi els imports inferits; no són extractes del codi font original.

Comprovar, formatar i consultar​

bea check valida l'arrel i les inclusions. Surt amb codi 0 en silenci si té èxit i amb codi 1 per errors del llibre. L'opció global --json retorna l'embolcall de validació. No hi ha cap opció --allow-errors per a check.

Les consultes, llistes i informes avisen i retornen resultats parcials en un terminal interactiu. L'opció global --strict, --json, --no-input, una variable CI vertadera o una entrada estàndard no terminal fan que les lectures siguin estrictes. La seva opció --allow-errors permet explícitament resultats parcials.

El formatatge accepta fitxers o cerca recursivament en un directori. Al paquet publicat 0.2.0, es requereix una ruta malgrat el valor per defecte d'entrada estàndard que es mostra a l'ajuda. L'opció global --file no determina la destinació del formatatge.

Mode de formatatgeEscriu?Comportament de sortida
bea format PATHText formatat a la sortida estàndard; font sense canvis0 després de l'èxit
bea format -i PATHReescriu la font0 després de l'èxit
bea format PATH -o formatted.beanEscriu el fitxer de sortida indicat0 després de l'èxit
bea format PATH --dry-runCap canvi de fitxer0 fins i tot quan cal formatar
bea format PATH --checkCap canvi de fitxer1 quan cal formatar; 0 quan està net

El formatatge alinea el text; no valida la sintaxi del llibre ni la comptabilitat. Executeu bea check per separat. Amb l'opció global --json, seleccioneu -i, -o FILE, --check o --dry-run perquè la sortida estàndard pugui portar l'embolcall. No redirigiu la sortida estàndard sobre el fitxer d'entrada: utilitzeu -i per reescriure'l.

bea query "BQL" executa una consulta de Beancount. Ometre BQL llegeix les consultes de l'entrada estàndard o obre l'intèrpret quan l'entrada estàndard és un terminal. Utilitzeu .exit, exit o quit per tancar l'intèrpret. La taula per defecte de BQL té una fila per apunt. Les taules de consulta conserven la precisió.

Opció de consultaComportament
--format / -f csvExporta CSV en lloc d'una taula de text
--output / -o FILEEscriu el resultat en un fitxer
--numberify / -mDivideix els valors d'inventari de text o CSV en columnes numèriques per moneda
--no-errors / -qAmaga els diagnòstics del carregador; no permet resultats parcials
--source URIUtilitza un URI d'origen natiu de Beanquery

Seleccioneu el llibre abans de l'ordre, per exemple bea --file main.bean query -f csv -o balances.csv "SELECT account, sum(position) GROUP BY account". L'opció global --json utilitza l'embolcall del producte amb data.rows i data.columns; és diferent de la renderització CSV. A la versió publicada 0.2.0, utilitzeu la redirecció de la consola per desar JSON, com bea --json query "SELECT account, sum(position) GROUP BY account" > result.json: les opcions -o i -m de query no s'apliquen a JSON en aquella versió.

Eines natives i funcionalitats opcionals​

bea doctor context main.bean 42 mostra el context de la transacció a la línia 42. bea doctor --help llista les altres ordres de diagnòstic. bea example -o example.bean crea un historial d'exemple. bea treeify accounts.txt renderitza noms jeràrquics a partir d'un fitxer de text; ometeu el fitxer per llegir l'entrada estàndard. Aquestes ordres reenvien arguments natius. Els exemples anteriors nomenen aquests arguments explícitament.

Habiliteu les eines opcionals una vegada amb bea engine enable beanprice per obtenir cotitzacions o bea engine enable beangulp per als fluxos de treball d'importadors. L'habilitació necessita accés a la xarxa; el Beangulp també necessita la biblioteca del sistema libmagic. Utilitzeu bea engine status per inspeccionar la disponibilitat. bea price --help i bea ingest --help descriuen les seves interfícies. bea import --csv i bea add price no necessiten cap de les dues funcions opcionals.

Inclusions de preus gestionades​

Live Prices és un flux de treball d'inclusió gestionada separat. Els llibres allotjats resolen els URL de preus admesos; les versions compatibles de bea també admeten inclusions gestionades i exportacions de preus locals. Consulteu la guia de preus gestionats específica de la versió si la vostra versió instal·lada no reconeix aquestes ordres.

OrdrePropòsit
bea price statusInspecciona la frescor, la revisió, el moment d'observació i els errors de cada font
bea price refreshResol els canals ara i informa quines fonts han canviat
bea --offline balanceLlegeix els preus gestionats només de la memòria cau local
bea --strict-prices checkRebutja una càrrega amb preus gestionats obsolets o no disponibles
bea price export --output auditExporta un llibre autocontingut amb fitxers de preus locals per a eines externes

La CLI resol els URL gestionats de la llista permesa sense enviar credencials i rebutja les redireccions. Per tant, un canal que redirigeix a un inici de sessió allotjat no està disponible per a una obtenció local nova; iniciar sessió al lloc web no autentica la petició de preus de la CLI. Inspeccioneu price status per als errors de les fonts. Utilitzeu dades de la memòria cau, un canal admès accessible o preus locals amb data, segons convingui.

price export escriu fitxers de canals a prices/ i reescriu les inclusions a rutes relatives locals. El Beancount, la Fava i Beanquery externs poden carregar aquesta còpia exportada. Una font no disponible rebutja l'exportació tret que s'utilitzi --allow-errors, cosa que pot deixar el seu marcador de font sense preus.

El vostre propi preu amb data substitueix un preu gestionat per a la mateixa data i parella. Les entrades dels canals són de només lectura. Les actualitzacions fallides conserven una revisió validada prèviament, que pot estar obsoleta. Els altres arguments de bea price encara es reenvien al Beanprice; si un fitxer de treball de cotitzacions es diu status, passeu ./status per distingir-lo de la subordre.

Homebrew instal·la tant la CLI com el seu motor gestionat. Amb PyPI, la primera ordre basada en el motor descarrega les dependències fixades; mantingueu uv al PATH i permeteu l'accés a la xarxa per a aquesta primera execució. Les ordres locals posteriors reutilitzen el motor sense connexió. Els clients només instal·len beancount-io, sense cap paquet Beancount separat ni scripts de consola natius per gestionar.

Informes financers​

InformeSortida
bea report overviewActius, passius, ingressos, despeses, patrimoni net i sèries d'intervals
bea report income-statementArbres d'ingressos/despeses, benefici net i files de període
bea report balance-sheetArbres d'actius/passius/patrimoni i conciliació derivada
bea report trial-balanceSaldos dels comptes

Tots els informes accepten --conversion / -x, --time / -t, --account / -a i --allow-errors. Tots excepte el balanç de comprovació també accepten --interval / -i: monthly per defecte, o quarterly, yearly, weekly o daily.

bea balance [ACCOUNT...] mostra subarbres de saldos per als comptes que coincideixen amb subcadenes sense distinció de majúscules i minúscules, o tot el llibre quan no en nomena cap. Accepta --conversion / -x, --time / -t i --allow-errors, i no té cap opció d'interval ni de compte.

Els filtres de temps inclouen un any, mes, data, trimestre, setmana o interval, com 2026, 2026-08, 2026-08-31, 2026-Q3, 2026-W32 o "2026-01 - 2026-08". Els períodes relatius inclouen year, quarter, month, week, day i desplaçaments com month-1. Els filtres de compte conserven tots els apunts d'una transacció coincident.

La conversió per defecte és l'única moneda operativa del llibre. En cas contrari, per defecte és units, mantenint els productes separats. at_cost utilitza els costos d'adquisició. at_value utilitza valors de mercat amb un cost de reserva.

Una conversió de moneda explícita necessita preus en o abans de cada data de valoració, incloent-hi les dates dels intervals. Un error de preu absent nomena la mancança real, com No EUR → USD price on or before 2026-01-31. Una cotització posterior no pot omplir una mancança anterior. Afegiu un preu històricament adequat, utilitzeu --conversion units o trieu --allow-errors per inspeccionar valors parcials.

Els informes parcials conserven les monedes d'origen i marquen els totals combinats com a no disponibles. El JSON inclou valuation: "partial", missing_prices i missing_price_dates. Els totals afectats de benefici net i patrimoni net són null en la moneda sol·licitada.

Els ingressos, passius i patrimoni normalment utilitzen signes negatius de Beancount. El benefici net és -(income + expenses), positiu per a un guany. La mateixa convenció s'aplica a les files de període de l'estat de resultats. La conciliació del balanç es deriva per a l'informe; no escriu cap directiva. equity_reconciled identifica si hi ha disponible una conciliació completa.

El JSON de l'informe també identifica el període, la data de finalització exclusiva, la data de referència, la conversió, el filtre de compte i l'estat de validació del llibre. Comproveu aquests camps abans de comparar totals.

Assistència d'IA opcional​

bea ask necessita tant l'extra ask com les credencials de Beancount.io de bea cloud login o BEA_TOKEN. La instal·lació predeterminada de Homebrew omet les dependències d'IA. Els usuaris de Homebrew poden executar:

bea cloud login
uvx --from 'beancount-io[ask]' bea ask "What did I spend last month?" --print

Per a una instal·lació amb uv, instal·leu beancount-io[ask] i executeu bea ask directament. --print / -p respon una vegada i surt. En cas contrari, una sessió de terminal és interactiva, i una pregunta opcional preomple la seva entrada. L'ús no interactiu requereix una pregunta. El mode JSON no és compatible.

Les consultes s'executen localment. Les preguntes, el context d'habilitats i els resultats de les eines van al servei d'IA allotjat de Beancount.io. Les escriptures interactives es previsualitzen, es confirmen, es validen i s'escriuen atòmicament. Accepten --into. L'opció global --yes no atorga permís d'escriptura a la IA. El mode d'una sola resposta no aplica les escriptures proposades.

Ask llegeix NAME/SKILL.md de .agents/skills/ al directori de treball i de skills/ al directori de configuració de l'usuari. Les definicions del projecte guanyen per nom. Cada fitxer necessita camps YAML name i description. Les instruccions completes es carreguen a demanda. Per a la disposició dels fitxers i un exemple pràctic, consulteu Amplieu bea ask amb habilitats.

Llibres majors allotjats​

OrdreOpcions i comportament
bea cloud loginInici de sessió interactiu per navegador o dispositiu
bea cloud logoutIntenta el tancament de sessió remot i esborra les credencials desades
bea cloud statusCompte, origen de les credencials i caducitat
bea cloud ledger list--page per defecte és 1; --limit per defecte és 50, màxim de l'API 100
bea cloud ledger show OWNER/NAMEInspecciona un llibre allotjat
bea cloud ledger create NAME--description / -d, --private / --public; privat per defecte
bea cloud ledger clone OWNER/NAMEClonació SSH; --dir PATH opcional
bea cloud ledger delete OWNER/NAMEEliminació permanent; cal confirmació o l'opció global --yes

Amb l'opció global --json, bea cloud status, bea cloud ledger list, bea cloud ledger show, bea cloud ledger create i bea cloud ledger delete emeten l'embolcall estàndard. L'inici de sessió requereix interacció; el tancament de sessió i la clonació correctes no retornen cap objecte d'èxit JSON.

La creació també accepta --clone i --dir. Cal accés a Git i SSH per clonar. Si la clonació falla després de la creació, el llibre allotjat encara existeix. Les ordres locals no pugen el vostre llibre automàticament. No hi ha cap opció global --ledger.

JSON i codis de sortida​

L'opció global --json posa els resultats correctes a la sortida estàndard:

{
  "bea": "0.2.0",
  "target": { "file": "/home/alice/my-books/main.bean" },
  "data": [],
  "truncated": false,
  "limit": 50
}

bea és la versió instal·lada; data depèn de l'ordre. Les destinacions identifiquen un fitxer, directori, servidor o cap destinació. Les escriptures incloses també identifiquen into. Els imports decimals i les dates utilitzen cadenes. Les llistes limitades inclouen limit i truncated.

Els errors escriuen {"error":{"category":"validation","message":"…","exit_code":1}} a la sortida d'error. L'error també pot incloure details, result, un request_id del backend i un traceback amb --debug.

CodiCategoriaSignificat
0—Èxit, incloent-hi previsualitzacions i omissions intencionals de duplicats
1validationError del llibre o de l'esquema, fallada de la comprovació de formatatge o una altra fallada d'execució
2usageArguments no vàlids, destinació o entrada absent, o dependències opcionals absents
3authFallada d'autenticació o de permisos
4conflictEdició concurrent, cal revisió d'importació, destinació init existent o resultat incert d'escriptura remota

Comproveu error.result abans de reintentar una mutació. Un lot parcial pot escriure files acceptades, el formatatge recursiu pot canviar fitxers vàlids, i crear-i-clonar pot crear un llibre allotjat abans de sortir amb un codi diferent de zero. Per a un script que llegeix aquest embolcall amb jq i es ramifica segons aquests codis, consulteu Automatitzeu la comptabilitat amb bea.

Les indicacions de la CLI es desactiven amb --no-input, el mode JSON, una entrada estàndard no terminal o una variable CI vertadera. L'eliminació al núvol encara necessita --yes explícit. Les importacions necessiten una decisió explícita de duplicat quan les coincidències requereixen revisió.

Excepcions de sortida: doctor, example, treeify, les invocacions de price reenviades al Beanprice i ingest conserven la sortida nativa i l'estat de sortida, fins i tot amb l'opció global --json; l'embolcall i les categories de sortida anteriors no descriuen aquests resultats reenviats. Ask rebutja JSON; l'inici de sessió al núvol necessita interacció; el tancament de sessió i la clonació al núvol correctes no retornen cap objecte d'èxit JSON. L'ajuda, la versió i la compleció conserven la sortida de text. upgrade pot transmetre la sortida del seu gestor de paquets a la sortida d'error, incloent-hi el mode JSON.

Configuracions, actualitzacions i estat emmagatzemat​

Variable d'entornPropòsit
BEA_FILELlibre arrel per defecte després de --file
BEA_CONFIG_DIRSubstitueix el directori de configuració de l'usuari
XDG_CONFIG_HOMEEn cas contrari utilitza $XDG_CONFIG_HOME/bea, amb ~/.config/bea com a reserva
XDG_DATA_HOMEBase del motor PyPI gestionat; en cas contrari ~/.local/share/bea/engine/
XDG_CACHE_HOMEBase del directori de memòria cau; en cas contrari ~/.cache/bea
BEA_TOKENSubstitueix les credencials allotjades; té precedència sobre les credencials desades i no es desa
BEA_API_URLBase de l'API; per defecte https://api.v3.beancount.io
BEA_DASHBOARD_URLBase de l'inici de sessió al navegador; per defecte https://beancount.io
BEA_NO_UPDATE_NOTIFIERDesactiva els avisos passius d'actualització quan és vertadera
MANAGED_PRICE_ORIGINSOrígens de la llista permesa separats per comes; per defecte https://beancount.io; buit desactiva les inclusions gestionades
MANAGED_PRICE_OFFLINEVertadera utilitza només preus gestionats de la memòria cau, com --offline
MANAGED_PRICE_STRICTVertadera rebutja fonts gestionades obsoletes o no disponibles, com --strict-prices
CIDesactiva les indicacions de la CLI i els avisos passius d'actualització quan és vertadera

Els valors vertaders són 1, true, yes i on, ignorant majúscules i minúscules i els espais circumdants. L'estat de configuració inclou credencials, historial de preguntes d'Ask, habilitats de l'usuari, rutes d'importador recordades i memòries cau de comprovació d'actualitzacions. Els bloquejos d'escriptura es troben a locks/ del directori de memòria cau, fora del directori del vostre llibre.

bea upgrade --check informa de les versions i del mètode d'instal·lació sense actualitzar. bea upgrade invoca brew upgrade bea, uv tool upgrade beancount-io o pipx upgrade beancount-io. Les instal·lacions editables reben orientació d'actualització manual. Les comprovacions passives s'executen com a màxim una vegada al dia en còpies instal·lades interactives; upgrade --check explícit encara s'executa quan el notificador passiu està desactivat.

Desinstal·leu amb el gestor corresponent: brew uninstall bea, uv tool uninstall beancount-io o pipx uninstall beancount-io. Els fitxers del vostre llibre i la configuració de l'usuari romanen.

Solucions comunes​

SímptomaPas següent
No s'ha trobat cap llibreSeleccioneu --file PATH, entreu al directori del llibre o utilitzeu bea init per a llibres nous
Una opció global diu «No such option»Moveu-la abans de l'ordre, com a bea --file main.bean check
Un compte és desconegutObriu-lo amb bea add open --date YYYY-MM-DD --account ACCOUNT
Un compte està inactiuLlegiu les dates d'obertura/tancament citades; corregiu la data de la transacció o l'historial del compte
Un pad no s'utilitzaCompleteu la seva afirmació de balanç posterior; utilitzeu add balance --pad-from per a una parella atòmica
La conversió de moneda és incompletaAfegiu preus que cobreixin les dates nomenades a l'error, o inspeccioneu units
No es troba un documentResoleu la seva ruta al costat del fitxer de la directiva, incloent-hi una destinació --into
Un llibre ha canviat durant una escripturaInspeccioneu el contingut nou i torneu a intentar-ho des d'una previsualització nova
La detecció de l'intèrpret ha fallatEspecifiqueu un intèrpret, com bea --shell zsh --show-completion

Utilitzeu bea COMMAND --help per inspeccionar la vostra versió instal·lada. La referència del repositori de codi font conté exemples addicionals i les definicions exactes del model de directives.

Font: https://beancount.io/ca/docs/bea-cli-reference