0 Finance is an MIT-licensed, TypeScript CLI-first banking layer that gives AI agents a real bank account so they can create invoices, propose ACH or IBAN transfers, and match receipts from the terminal, and it is built for startups and engineering teams that want agent-driven money movement behind human approval gates.
What it is
0 Finance is a monorepo of packages that puts a bank account behind a command-line interface. The central piece is packages/cli, the zero CLI built for agents, alongside packages/web, the bank web app, and packages/fluidkey-earn-module/, the smart contract that automates savings. It is written in TypeScript, distributed under the MIT licence, and organized as a pnpm workspace, with development paths for local Docker runs and production runs.
The concrete problem it solves is that treasury work normally waits on a human driving a browser dashboard: someone opens a bank UI, creates an invoice, proposes a transfer, and manually attaches a receipt. 0 Finance moves that workflow into scriptable commands so an agent can do the same work end to end. Invoices, transfer proposals with approval gates, receipt matching, and balance checks all become CLI calls, which means the finance workflow can be composed into agent logic rather than clicked through by hand. The advertised framing is idle cash turned into competitive yield, with an explicit forkable and self-hostable design so an operator can run the whole thing rather than depend on a single vendor instance.
Key capabilities
- A
zero CLI, published as the npm package agent-bank with the alias zero-bank, that scripts every workflow the project supports.
- Invoice creation and sending from the terminal, listed as Phase 0 and marked complete.
- ACH and IBAN bank transfer proposals that pass through approval gates, listed as Phase 1 and marked complete.
- Receipt attachment and transaction reconciliation performed through the same CLI.
- Savings accounts and yield optimization, marked complete as Phase 2 and backed by the
packages/fluidkey-earn-module/ smart contract.
- Agent-native authentication through
zero auth agentlogin --email ... --company-name ... --admin-token $ZERO_FINANCE_ADMIN_TOKEN, which creates one Ethereum wallet when no wallet is specified.
- Human and programmatic login paths through
zero auth connect in the browser or zero auth login --api-key sk_live_xxx, followed by zero balance for balance checks.
Who uses it and how
- Teams that want managed infrastructure can use the hosted version at 0.finance, which covers the full feature set and offers insurance on request.
- Advanced operators can self-host for full control over the instance and their own funds, following the setup described in
LITE_MODE.md.
- Teams already on the hosted version can migrate by setting up lite mode, adding themselves as a Safe owner on the current account, transferring funds through the Safe UI, and configuring insurance if needed.
- Agent developers can wire the
zero binary into existing agent workflows, using zero auth agentlogin for headless environments and zero auth connect when a human needs to authenticate interactively.
- Contributors and self-hosters can use the included OpenCode configuration, running
@bootstrap for guided setup or @debug-workspace to diagnose issues, with full agent documentation in AGENTS.md.
Getting started
The hosted option is the 0.finance site, while CLI install runs through curl -fsSL https://zerofinance.ai/install | bash. Development setup uses the bootstrap script at scripts/bootstrap.sh, which installs Node.js, pnpm, and OpenCode, clones the repository, installs dependencies, and launches a setup agent, or manual steps with git clone, pnpm install, pnpm lite for local Docker development, and pnpm dev for production development.
How it compares
No paid or proprietary products are named anywhere in the supplied facts, and no similar tools are named either, so this project stands alone in this registry on the evidence available. The distinguishing facts that are documented are the licence, the forkable and self-hostable design, and the operator's control over their own funds when they run their own instance.
When to use it — and when not to
Self-hosting is explicitly labelled as being for advanced users, and running an instance with real funds requires proper Privy configuration, Safe wallet setup, an understanding of gas fees, and general security best practices, so a team without that operational capacity should choose the hosted option instead. Teams that need debit or credit cards should wait, because Phase 3 is still unchecked while invoicing, IBAN and ACH accounts, and savings accounts are complete. The repository shows five open issues and no tagged release information in the supplied facts, so anyone evaluating it for production treasury work should inspect the code and the self-hosting guide directly before committing real funds.
project readme (upstream, from github) — read inline
0 Finance
CLI-first banking for AI agents. Give your agents access to a bank account to create invoices, propose bank transfers, and match receipts purely from the CLI. Forkable and self-hostable.

Agent Capabilities
0 Finance gives agents a real bank account with a CLI-first workflow:
- CLI-first banking - Every workflow is scriptable via the
zero CLI.
- Invoices - Create and send invoices from the terminal.
- Bank transfers - Propose ACH/IBAN transfers with approval gates.
- Receipt matching - Attach receipts to transactions and reconcile via CLI.
- Optimize yield - Idle funds auto-earn higher yield.
- Forkable - Run your own instance or customize workflows.
CLI Quick Start
CLI-first banking for agents starts with the zero CLI.
curl -fsSL https://zerofinance.ai/install | bash
# Authenticate (agent-native API flow)
zero auth agentlogin \
--email [email protected] \
--company-name "Acme Inc" \
--admin-token $ZERO_FINANCE_ADMIN_TOKEN
# Note: defaults to creating one Ethereum wallet when wallets are not specified
# Or browser login for humans
zero auth connect
# Or: zero auth login --api-key sk_live_xxx
# Check balance
zero balance
The CLI package is agent-bank, and the binary is zero (alias: zero-bank) for agent workflows.
Current Status
🚀 Deployment Options
Option 1: Use Our Hosted Version
- Visit 0.finance
- Full features, managed infrastructure
- Insurance available via contact
Option 2: Self-Host (Advanced Users)
- Full control over your instance
- Manage your own funds
- See LITE_MODE.md for setup
Development
Quick Start (Recommended)
curl -fsSL https://raw.githubusercontent.com/different-ai/zero-finance/main/scripts/bootstrap.sh | bash
This one-liner will:
- Install Node.js, pnpm, and OpenCode (if missing)
- Clone the repository
- Install dependencies
- Launch an AI agent to guide you through setup
Manual Setup
# Clone the repository
git clone https://github.com/different-ai/zero-finance.git
cd zero-finance
# Install dependencies
pnpm install
# For local development (with Docker)
pnpm lite
# For production development
pnpm dev
AI-Assisted Development
This repo includes OpenCode configuration for AI-assisted development:
# Install OpenCode
curl -fsSL https://opencode.ai/install | bash
# Run in the repo
opencode
# Type @bootstrap for guided setup
# Type @debug-workspace to diagnose issues
See AGENTS.md for full AI agent documentation.
🔄 Self-Hosted Migration Guide
Want to migrate from hosted to self-hosted?
- Set up lite mode (see LITE_MODE.md)
- Add yourself as Safe owner on current account
- Transfer funds via Safe UI to new instance
- Configure insurance if needed (contact [email protected])
⚠️ Self-hosted instances with real funds require:
- Proper Privy configuration
- Safe wallet setup
- Understanding of gas fees
- Security best practices
📦 Project Structure
This monorepo contains multiple packages:
- packages/cli: The
zero CLI built for agents
- packages/web: The bank web app
- packages/fluidkey-earn-module/: The smart contract that helps with securely automating savings.
🌐 Join Us