CFO-stack: gstack에서 영감을 받은 codex/Claude용 이중 입력 회계 설정
hackernews
|
|
📦 오픈소스
#ai 모델
#ai 회계
#beancount
#claude
#codex
#gemini
#오픈소스
원문 출처: hackernews · Genesis Park에서 요약 및 분석
요약
CFO Stack은 Beancount 기반의 오픈소스 AI 회계 시스템으로, C.L.E.A.R. 프레임워크를 통해 1인 창업가와 소상공인에게 회계사와 CFO 역할을 제공합니다. Gstack의 철학을 차용하여 텍스트 기반 복식부기를 적용함으로써 데이터의 검증 및 감사가 가능하며, Claude Code와 같은 도구와 연동해 업무를 자동화합니다. 이 시스템은 보고서 및 세무 계획을 생성하고, 사용자는 제공된 설치 스크립트(`./setup`)를 통해 프로젝트 또는 머신 수준에서 쉽게 구성할 수 있습니다.
본문
Author: Mike Chong (realmikechong.com) CFO Stack is an open-source, AI-powered accounting system built on Beancount and operated through Claude Code / Codex slash commands. It follows the C.L.E.A.R. framework to give solo founders, freelancers, and small businesses a virtual finance function — Bookkeeper, Controller, Tax Strategist, Auditor, and CFO — all as Markdown skills, all open-source. "You have to know accounting. It's the language of practical business life. It was a very useful thing to deliver to civilization. I've heard it came to civilization through Venice which of course was once the great commercial power in the Mediterranean. However, double-entry bookkeeping was a hell of an invention." — Charlie Munger Inspired by gstack (Garry Tan's "software factory" for Claude Code). Same philosophy, different domain: accounting instead of engineering. CFO Stack is not just a ledger template. It gives you: - A plain-text accounting system you can inspect, diff, version, and audit - Agent skills for capture, classification, reconciliation, tax planning, and reporting - Deterministic browser dashboards generated from bean-query , without requiring an LLM at runtime If you want to see the reporting layer first, start here: - Live docs landing page: https://cfo-stack.realmikechong.com/ - Dashboard reference with embedded sample dashboards: https://cfo-stack.realmikechong.com/reference/report-dashboard The sample dashboards cover: examples/usa-company/ — US solo consulting businessexamples/canadian-company/ — incorporated Canadian service businessexamples/usa-individual/ — salaried US individual ledgerexamples/canadian-individual/ — salaried Canadian individual ledgerexamples/usa-family/ — US household ledgerexamples/canadian-family/ — Canadian household ledger The two company examples also include capture/statement-export.yaml so you can see how to declare institutions and ledger-account mappings for browser-assisted exports. If you are not an accountant, the shortest useful mental model is: - Every transaction touches at least two accounts. - Money never appears from nowhere and never disappears into nowhere. - One side explains where value came from; the other explains where it went. - When both sides are recorded correctly, the books stay internally consistent. Example: - You pay a software bill from your business bank account. Expenses:Software goes up because you consumed software.Assets:Bank goes down because cash left the account. That is why Beancount and CFO Stack use double-entry instead of a flat spreadsheet. You are not just listing transactions. You are preserving the relationship between cash, obligations, revenue, expenses, assets, and equity. You do not need to memorize accounting theory before using this repo. The practical goal is simpler: - Know what happened - Know which accounts changed - Keep the ledger traceable enough that reports and tax review are defensible Capture → Log → Extract → Automate → Report. The detailed framework, skill map, and future tooling notes now live in the Docusaurus site under ./docs/ . cd docs bun install bun run start git clone https://github.com/MikeChongCan/cfo-stack.git ~/cfo-stack cd ~/cfo-stack && ./setup --host auto Interactive ./setup now asks how skill names should be registered: namespaced (default):/cfo-setup ,/cfo-capture ,/cfo-report short :/setup ,/capture ,/report Use flags to skip the prompt: ./setup --namespaced ./setup --short-names ./setup --skill-naming namespaced ./setup --skill-naming short You can also use the shorthand positional host form: ./setup codex ./setup claude ./setup openclaw ./setup antigravity ./setup auto If you omit --host , ./setup now defaults to auto and registers every detected supported host. Machine-level install remains the default. To keep setup scoped to one target project instead of writing host registrations and default policy into your home directory, use: ./setup --scope project --project-dir /path/to/your/project --host codex Project scope: - keeps the Python environment and helper scripts in this CFO Stack repo - registers Claude skills under the target project's .claude/skills/ - registers Codex, OpenClaw, and Antigravity skills under the target project's .agents/skills/ - skips creating ~/.cfo-stack/config.yaml , so policy should live in the ledger-localcfo-stack.yaml Machine scope: - registers Claude skills under ~/.claude/skills/ - registers Codex skills under ~/.agents/skills/ - keeps OpenClaw under ~/.openclaw/skills/ - keeps Antigravity under ~/.gemini/antigravity/skills/ - works even if this repo is cloned outside ~/.claude/skills/ After setup, use the generated helpers for validation and Fava: ./bin/cfo-check ./bin/cfo-fava ./ledger/main.beancount 5000 ./bin/cfo-dashboard ./ledger/main.beancount Those helper paths are relative to the CFO Stack repo where you ran ./setup . If you installed in project scope for some other target project, run the helpers from this repo's bin/ with either an absolute l
Genesis Park 편집팀이 AI를 활용하여 작성한 분석입니다. 원문은 출처 링크를 통해 확인할 수 있습니다.
공유