メインコンテンツへスキップ

Beancount CLI クイックスタート

bea コマンドをインストールし、ローカルの Beancount 元帳を作成して、最初の購入を記録し、残高を確認します。

ローカルの元帳を作成し、Beancount.io のコマンドラインツールである bea を使って最初の購入を記録します。ローカルでの簿記には Beancount.io アカウントは必要ありません。

このチュートリアルでは、当座預金に 1,000 USD から始めます。12.50 USD のコーヒー購入後、残高が 987.50 USD であることを確認します。

1. コマンドのインストール​

macOS または Linux で Homebrew を使用する場合:

brew install bex-co/tap/bea
bea --version

Homebrew を使用しない場合は、uv をインストールし、uv tool install beancount-io を使用してください。Python パッケージには Python 3.12 以降が必要です。Homebrew はインストール時に会計エンジンを提供します。PyPI を使用する場合は、uv を利用可能な状態に保ってください。最初のローカルコマンドで管理されたエンジンがダウンロードされ、以降のコマンドはオフラインで再利用されます。Beancount を別途インストールする必要はありません。

2. 元帳の作成​

新しいディレクトリを選択してください。この例では、~/my-books 内に main.bean を作成します:

bea --no-input init ~/my-books --currency USD --date 2026-08-01 \
  --opening-balance "Assets:Checking 1000"
cd ~/my-books

テンプレートには、一般的な当座預金、普通預金、現金、クレジットカード、収入、支出の各勘定科目が含まれます。期首残高は Equity:OpeningBalances で相殺されます。

自分の帳簿では、記録を開始する予定の最も早い日付を選択してください。すべてのテンプレート勘定科目はその日付で開始します。期首残高は、その日の勘定科目の状態を表す必要があります。クレジットカードの負債は負の金額で表します。

init は既存の元帳を上書きしません。新しいファイルは POSIX システムではプライベートです。所有者のみが読み書きできます。ローカルのユーザーグループと共有するには、chmod 640 main.bean で明示的に権限を変更してください。

代わりにガイド付きセットアップを使用する場合は、ターミナルで bea init ~/my-books を実行してください。ウィザードで通貨、履歴の開始日、当座預金残高を尋ねられます。

3. 購入の記録​

bea add transaction --date 2026-08-02 --narration "Coffee" \
  --posting "Expenses:Dining 12.50" \
  --posting "Assets:Checking"

支出には勘定科目の USD 通貨が使用されます。Beancount はもう一方の転記を -12.50 USD として自動的に入力します。今日の購入の場合は --date を省略できます。

各追加は、ファイルが置き換えられる前に完全な元帳に対してチェックされます。不明な勘定科目や不均衡な取引があると、ガイダンス付きのエラーが発生します。

4. 結果の確認​

bea check
bea list transaction --limit 10
bea report balance-sheet

取引リストには、新しいエントリが金額とともに最初に表示されます。貸借対照表には、当座預金の 987.50 USD が表示されます。

その金額を直接確認するには:

bea query "SELECT account, sum(position) WHERE account = 'Assets:Checking' GROUP BY account"

クエリテーブルは結果の精度を保持します。構造化された出力を得るには、コマンドの前にグローバルフラグ --json を置きます:

bea --json list transaction --limit 10

5. 帳簿を良い状態に保つ​

ファイルを手動で編集した後は bea check を実行してください。列を整列するには bea format -i main.bean を実行します。-i を指定しない場合、フォーマットされたテキストは標準出力に出力され、ファイルは変更されません。フォーマットが必要な場合にスクリプトが失敗するようにするには、bea format main.bean --check を使用します。

別のディレクトリから作業するには、ルートファイルを明示的に選択します:

bea --file ~/my-books/main.bean check

ルートは --file、次に BEA_FILE、次に作業ディレクトリ内の main.bean の順で選択されます。グローバルオプションはコマンドの前に置きます。フォーマットは独自のファイルまたはディレクトリ引数を受け取ります。

自分の記録で続ける​

更新を確認するには bea upgrade --check を実行します。bea upgrade を実行すると、コピーをインストールしたパッケージマネージャーが起動します。インストールされているバージョンで利用可能なオプションを確認するには、bea --help または bea add transaction --help を使用します。

出典: https://beancount.io/ja/docs/Basics/bea-cli