opengasti-add

star 1

Add transactions to beancount ledger from Spanish natural language. Parses expenses, income, transfers in Argentine pesos (ARS) and dollars (USD). Use when user says 'gasté', 'pagué', 'cobré', 'compré', 'transferí', or any transaction input. Triggers: '/add', '/gasto', '/ingreso', 'gasté', 'pagué'.

d4rm5 By d4rm5 schedule Updated 1/30/2026

name: opengasti-add description: Add transactions to beancount ledger from Spanish natural language. Parses expenses, income, transfers in Argentine pesos (ARS) and dollars (USD). Use when user says 'gasté', 'pagué', 'cobré', 'compré', 'transferí', or any transaction input. Triggers: '/add', '/gasto', '/ingreso', 'gasté', 'pagué'.

opengasti-add

Este skill permite agregar transacciones al libro mayor de Beancount a partir de entrada en lenguaje natural en español.

Workflow

Para procesar un gasto o ingreso, sigue estos pasos:

Paso 1: Cargar Contexto

Lee siempre el archivo de referencia de cuentas para asegurar que usas nombres de cuentas válidos: references/accounts.md

Paso 2: Parsear la Entrada

Extrae los siguientes datos del mensaje del usuario:

  • Monto: Cantidad numérica.
  • Moneda: ARS por defecto, o USD si se menciona.
  • Payee (Beneficiario): Quién recibe o da el dinero.
  • Descripción: Detalle de la transacción.
  • Medio de Pago: Identifica si es débito, crédito, efectivo, etc.
  • Categoría: Mapea el gasto a la categoría correspondiente (ej: Comida -> Expenses:Food).

Paso 3: Encontrar el Archivo del Mes

Usa el siguiente comando para encontrar el archivo de transacciones del mes actual: ls transactions/$(date +%Y)/ (No asumas nombres de archivos fijos, búscalo dinámicamente).

Paso 4: Escribir la Transacción

Añade la transacción al final del archivo del mes actual usando el formato Beancount.

Paso 5: Validar

Es OBLIGATORIO validar la sintaxis después de escribir: uv run bean-check main.bean

Ejemplos de Parseo

  • "gasté 5000 en el super con débito"

    • Payee: "Supermercado"
    • Cuenta Gasto: Expenses:Food:Groceries
    • Cuenta Origen: Assets:AR:Bank:Primary:ARS
    • Monto: 5000.00 ARS
  • "pagué 10000 de internet con crédito"

    • Payee: "Proveedor Internet"
    • Cuenta Gasto: Expenses:Services:Internet
    • Cuenta Origen: Liabilities:AR:CreditCard:Primary
    • Monto: 10000.00 ARS
  • "cobré 500 usd de freelance"

    • Payee: "Cliente"
    • Cuenta Ingreso: Income:Freelance:USD
    • Cuenta Destino: Assets:AR:Bank:Primary:USD
    • Monto: 500.00 USD
  • "compré ropa por 25000 en 3 cuotas"

    • Payee: "Tienda de Ropa"
    • Cuenta Gasto: Expenses:Shopping:Clothing
    • Cuenta Origen: Liabilities:AR:CreditCard:Primary
    • Monto: 25000.00 ARS
    • Tag: #cuotas

Formato de Transacción

Usa este template para las entradas:

YYYY-MM-DD * "Payee" "Descripción" #tags
  Cuenta:Gasto:O:Ingreso    MONTO MONEDA
  Cuenta:De:Pago

Manejo de Errores

  • Fallo de Validación: Si uv run bean-check falla, muestra el error al usuario y elimina o corrige la transacción fallida. No dejes el archivo con errores.
  • Cuenta No Encontrada: Si no encuentras una coincidencia clara en references/accounts.md, sugiere la cuenta más cercana o pregunta al usuario.
Install via CLI
npx skills add https://github.com/d4rm5/open-gasti --skill opengasti-add
Repository Details
star Stars 1
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator