Oracle3
Oracle3: 예측시장 거래 엔진·MCP 서버
텍스트 기반 복식부기이며 Git으로 버전 관리, 스크립트 자동화, AI 데이터 입력 지원, 무료 플랜 제공
Plain-text, double-entry accounting you can version with Git, automate with scripts and audit line by line—with AI for data entry. Free tier, no credit card.
금융TypeScript · PythonGitHub @bex-co온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
💰 Double-entry bookkeeping made easy — plain-text accounting for humans and AI agents. Polished iOS & Android app built with React Native + Expo.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Agentic plain-text accounting, from every surface you work in.
Open-source web and mobile clients, a Python CLI and reporting library, and skills for coding agents.
Turn a plain-text ledger into reports you can explore — open the live example .
Beancount.io is a developer-friendly workspace for Beancount ledgers. Your books remain readable plain text while the surrounding tools add polished reports, transaction entry, Git-backed collaboration, automation, and access from the browser, phone, terminal, or a coding agent.README 전문 보기 ↗No install. No empty-ledger setup. Just record your first real transaction:
Expenses:Dining 12.50 paid from Assets:Checking.That's the whole idea: double-entry books you can read as plain text, with reports, phone, terminal, and agents on top of the same ledger.
If Beancount.io is the kind of open, programmable finance you want more of, ⭐ star this repo — it genuinely helps other developers find it.
You don't install Beancount yourself — one command installs bea, which provisions its engine for you.
brew install bex-co/tap/bea # macOS / Linuxbrew
# or: uv tool install beancount-io # anywhere with uv + Python 3.12+
bea --no-input init books --currency USD --date 2026-08-01 \
--opening-balance "Assets:Checking 1000"
cd books
bea add transaction "Coffee" --date 2026-08-02 \
--posting "Expenses:Dining 12.50" --posting "Assets:Checking"
bea check && bea report balance-sheet
Checking now holds 987.50 USD — validated, formatted, and readable as plain text.
Not sure yet? The live demo needs no account — decide there.
| Beancount.io | Plain Beancount + Fava | Spreadsheet / SaaS finance app | |
|---|---|---|---|
| Your data | Plain-text .bean files you own | Plain-text .bean files you own | Locked in a database / their cloud |
| Reports | Web, mobile, CLI, and Python reports | Web reports (Fava) | Built-in, but not programmable |
| On your phone | Native iOS & Android apps | Browser only | Native app, tied to the service |
| AI agents | CLI, skills, and MCP built in | Do it yourself | No agent access |
| Self-host | Yes — hosted, local-only, or your server | Yes, manual | No |
| Cost / license | Free, MIT | Free, open source | Subscription |
Beancount.io stands on Beancount and Fava rather than replacing them — existing ledgers keep working. Full credits: ACKNOWLEDGEMENTS.md.
Review your finances, add transactions, scan receipts, and edit ledger files from the native Beancount client. The same open ledger remains available from the web, terminal, Python, and agent workflows.
| You want to… | Use | Start |
|---|---|---|
| Work from the terminal or scripts | bea CLI and Python library | CLI tutorial · reference |
| See polished reports in a browser | Web dashboard | Live demo · dashboard/ |
| Track money on the go | iOS & Android apps | Mobile apps · mobile/ |
| Let an agent do your books | Agent skills and MCP | Agents and MCP |
| Self-host the whole stack | Backend cluster | deploy/docker/ (one server) · deploy/docker-mac/ (local) |
Your ledger stays the same plain-text file across all of them — hosted or local-first, with no hosted service required for CLI and skills workflows.
| Package | What it is |
|---|---|
dashboard/ | Active web client: ledgers, journal, reports, Monaco editor, imports, collaboration, AI assistant (React 19 + TanStack Start + Apollo) |
mobile/ | Active iOS & Android client (Expo + React Native + Apollo) |
cli/ | Active bea CLI and Python tooling (releases) |
skills/ | One Beancount.io ledger suite with fourteen beancount-* workflows; install the versioned beancount-io plugin or the complete source collection. |
backend-cluster/ | Active backend: GraphQL/REST gateway, ledger service, IDL, and agent sandbox |
The dashboard and mobile app are clients for the Beancount.io API served by backend-cluster/ — hosted, or self-run. Skills have two audiences: Beancount users get skills/; repository contributors get .agents/skills/ (see .agents/AGENTS.md). The root .claude/skills links to .agents/skills so Claude Code and Codex share the internal workflows.
Beancount.io is built for the agent era: your ledger is text an agent can read, and every write is validated and reversible.
beancount-* workflows for Claude Code and Codex: scaffold a ledger, record everyday entries, investment trades and property events, import bank exports without duplicates, reconcile against statements, migrate from Mint/Monarch/QuickBooks, query finances in plain language, explain balance-sheet movements, prepare supported accrual drafts, track invoices and bills with the payments against them, and run a confirm-gated month-end close. Install the skills (native Windows: Windows PowerShell 5.1) → ask your first question → first-month guide → migration guide. Unified suite distribution and OpenClaw/Hermes installation record the current publication and host compatibility limits.io.beancount/beancount (OAuth sign-in).{
"mcpServers": {
"beancount": {
"type": "http",
"url": "https://your-deployment/api-gateway/mcp",
"headers": { "Authorization": "Bearer [REDACTED]" }
}
}
}
Forty-three tools, one per operation (BQL queries, file reads and edits, entry and receipt insertion, statement parsing, bank import, and more), 64 URI-addressed resources, and four prompts (spending report, month-end close, reconciliation, import categorization — e.g. /mcp__beancount__close-month in Claude Code). File edits, directive appends, and bank imports preview with dry_run, every call re-authorizes, and failures return a machine code plus the next call to make. Per-host notes for Claude, Claude Code, ChatGPT, Cursor, Copilot, OpenClaw, and Hermes Agent: MCP docs; contract: ADR 0007.
Yes. Your ledger is a plain-text file. Local CLI and skills workflows never require the hosted service; if you self-host, everything runs on your server. You choose where the file lives.
Beancount.io builds on both (Fava ships inside the CLI). It adds native mobile apps, a one-install CLI, hosted or self-hosted collaboration, and first-class agent workflows — while your .bean files remain standard Beancount that Fava and other tools can still read.
Yes — the migration guide converts an export and keeps importing without duplicating transfers.
No. Use the hosted service at beancount.io, run everything locally with the CLI, or self-host on one server with deploy/docker/. Same ledger either way.
There is no root package to install; each package owns its dependencies and checks.
Web dashboard (Node.js 22, Yarn 4 via Corepack, plus a Beancount.io API endpoint):
cd dashboard && corepack enable && yarn install --immutable
cp .env.example .env && yarn dev # http://localhost:5173
See the dashboard setup guide. Containers instead? deploy/docker-mac/ runs the full stack locally on macOS; deploy/docker/ is the persistent single-server install.
Mobile app (Node.js 20.19.4+, Yarn Classic):
cd mobile && yarn install && yarn start
See the mobile development guide.
CLI from this checkout:
cd cli && uv sync --all-groups && uv run bea --help
bea upgrade updates through whichever package manager installed it. Full command tree, automation contract, and exit codes: CLI reference and generated command reference.
| Package | Check |
|---|---|
| Dashboard | cd dashboard && yarn format:check && yarn lint && yarn test && yarn build |
| Mobile | cd mobile && yarn format:check && yarn lint && yarn typecheck && yarn test:unit |
| CLI | cd cli && make check-all |
| Skills | python3 scripts/skills/ci-check.py |
Every active package has path-filtered CI, and a repository-wide secret scan gates every push and pull request. Run scripts/lint-deadcode.sh from the repository root to check for unused files and symbols (scripts/fix-deadcode.sh applies removals; review the diff and rerun full checks).
Contributions are welcome across product UI, accounting workflows, accessibility, translations, tests, Python tooling, and agent skills. Start with the contributing guide, browse open issues and the public adoption roadmap, and keep changes focused on one package when possible.
If Beancount.io is the kind of open, programmable finance software you want to see more of, star the repository and help more developers find it.
Beancount.io stands on Beancount and Fava — the vendored fava package inside cli/src/fava ships as bundled subprocess resources in the single beancount-io distribution, and the rest of the plain-text accounting stack (beanquery, beangulp, rustledger) is used as unmodified upstream dependencies. Full credits and license compliance: ACKNOWLEDGEMENTS.md.
MIT © Beancount.io applies by default. The customer skill suite under skills/ uses MIT No Attribution (MIT-0), including its instructions, references, and fixtures. Upstream projects remain under their own licenses.