Productivity
agentbudget avatar

agentbudget

An agent-first, zero-based envelope budgeting CLI for tracking finances with SQLite or Turso/libSQL backends.

Introduction

Agentbudget is a high-precision, agent-first command-line interface designed for zero-based envelope budgeting. It enables developers and power users to automate personal finance workflows using structured SQLite or Turso/libSQL databases. Built with TypeScript and Drizzle ORM, it offers a robust framework for managing accounts, envelopes, payees, and transactions with a focus on programmatic automation via JSON output.

  • Zero-based budgeting: Enforce strict envelope allocation to track every dollar or currency unit assigned to categories.

  • Agent-first architecture: Primary interface supports --json flags, returning machine-readable objects for integration with LLM agents or automation scripts.

  • Flexible backend: Native support for local SQLite files and remote Turso (libSQL) databases for cross-device syncing.

  • Transaction management: Automated payee rule resolution, split transaction support across envelopes, and detailed reconciliation tools.

  • Currency handling: Intelligent conversion and formatting support, strictly distinguishing between major units (input) and minor units (internal storage).

  • Schedule and Reporting: Built-in overview commands to visualize monthly cash flow, balances, and top spending categories.

  • Input format: CLI commands accept major units (e.g., 23.50), while JSON outputs provide data in minor integer units (e.g., 2350) to prevent floating-point drift.

  • Security: Uses standard environment variables like TURSO_DATABASE_URL and TURSO_AUTH_TOKEN for configuration.

  • Workflow: Typical usage involves initializing the DB, defining accounts, setting currency, and then batch importing transactions via JSONL files.

  • Error handling: Provides consistent JSON error responses with status codes, making it ideal for robust automation pipelines.

  • Constraints: Strictly requires Node.js 20+; ensures data integrity by handling migrations automatically via Drizzle.

Repository Stats

Stars
0
Forks
1
Open Issues
0
Language
TypeScript
Default Branch
main
Sync Status
Idle
Last Synced
May 3, 2026, 10:32 PM
View on GitHub