Agent skill

Beancount Options

by bex-co in bex-co/beancount-io

Record a described options trade or lifecycle event as validated Beancount transactions through bea, after review and confirmation.

MITAuto-check passedBusiness, Finance & HR

Install Beancount Options

skills CLI
$ npx skills add bex-co/beancount-io --skill beancount-options -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install bex-co/beancount-io beancount-options --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/bex-co/beancount-io.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/.claude/skills/beancount-options .claude/skills/beancount-options && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
beancount-options
GitHub stars
296
Token cost
~3.7k tokens
SKILL.md length
1,718 words
Files
23 (incl. references)
Skills in repo
27
Repo updated
First seen
Licence
MIT

At a glance

Record a described options trade or lifecycle event as validated Beancount transactions through bea, after review and confirmation.

  • Works in 5 steps: Discover → Parse → Generate → …
  • Multi-leg opens
  • SKILL.md covers Prefer bea, Workflow, Universal mechanics and Strategy routing, plus 3 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Beancount Options is an agent skill from bex-co/beancount-io. Record a described options trade or lifecycle event as validated Beancount transactions through bea, after review and confirmation. Use for single-leg or multi-leg opens, closes, rolls, assignment, exercise and expiration, including pasted broker confirmations. Skip options education, pricing/greeks, tax planning, analytics, and broker statement imports.

Its SKILL.md is about 3.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 25 other files, including reference files (for example `evals/evals.json`, `references/assignment.md` and `references/calendars-and-diagonals.md`).

It sits in Business, Finance & HR, covering Tax preparation. The repository describes itself as: 💰 Double-entry bookkeeping made easy — plain-text accounting for humans and AI agents. Polished iOS & Android app built with React Native + Expo. The licence is MIT.

When your agent uses it

  • Multi-leg opens
  • Exercise and expiration
  • Including pasted broker confirmations

Example prompts

  • “/beancount-options”

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Discover
  2. Parse
  3. Generate
  4. Confirm + Write
  5. Verify

What it can do on your machine

Read from SKILL.md and the folder at commit 2e520db. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Beancount Options loads about 3.7k tokens when it runs, and up to ~17k if it reads all its reference files. Until then it costs about 94 tokens; SKILL.md has 1,718 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~94
When it runs · the whole SKILL.md, loaded when a task matches
~3.7k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~17k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from bex-co/beancount-io at commit 2e520db, republished under its MIT licence (© bex-co). 1,718 words, ~3,689 tokens.

Download SKILL.mdSave it as .claude/skills/beancount-options/SKILL.md (or your agent's skills folder). This skill also uses 22 other files; get the full folder from GitHub.
name
beancount-options
description
Record a described options trade or lifecycle event as validated Beancount transactions through bea, after review and confirmation. Use for single-leg or multi-leg opens, closes, rolls, assignment, exercise and expiration, including pasted broker confirmations. Skip options education, pricing/greeks, tax planning, analytics, and broker statement imports.

beancount-options

Turn natural-language options descriptions into correct beancount transactions.

This skill exists because options accounting in beancount has subtle mechanics that are easy to get wrong by hand: short-position cost basis lives in negative-quantity holdings, premium becomes part of stock cost basis on assignment, multi-leg trades need link grouping, and the four close paths (close, expire, assign, exercise) produce different P&L treatment. The skill takes a description, infers the strategy and outcome, generates the correct transaction(s), and — only after explicit confirmation — appends them to the user's ledger.

Prefer bea

Read beancount-init's references/bea-cli.md before running ledger commands: it defines explicit root/destination paths, JSON batches, checks, and safe retries. Without bea, use beancount-init's references/compatibility.md.

Write approved account opens and transactions through bea. Preserve cost basis, inferred postings, tags and links. Use structured JSON batches for explicit lots and the shared native add transaction --posting recipe for {} lot selection or total-cost syntax. Keep the strategy-specific reasoning and confirmation below.

Workflow

Five phases, in order: Discover → Parse → Generate → Confirm + Write → Verify.

1. Discover

Before generating anything, learn the user's ledger. Look for beancount files in the working directory:

bash
fd -e beancount -e bean . | head -20
# fallback: find . -maxdepth 4 \( -name '*.beancount' -o -name '*.bean' \)

The "main" file is typically the one with option, plugin, or include directives at the top, or the largest file with open directives. Once found, scan it for:

  • Existing options accounts: ^[0-9]{4}-[0-9]{2}-[0-9]{2} open .*Option
  • Existing brokerage hierarchy: ^[0-9]{4}-[0-9]{2}-[0-9]{2} open Assets:[^:]+:[^:]+: (capture the broker name segment)
  • Existing option commodity symbols: any prior options-shaped commodities used in postings
  • Existing config block: a comment block at the top starting with ;; beancount-options config
  • Append target: the file where existing options entries currently live (could be the main file or an included subfile, possibly year-bucketed by date)

Report findings to the user before generating, so they can correct any misdetection. If discovery is ambiguous, ask:

  • Where is your main beancount file?
  • Have you been recording options trades before? (If yes, point to one — we'll match its style.)

If no prior options activity exists, propose:

  • Account hierarchy: Assets:Brokerage:<BrokerName>:{Cash,Options,Stock} and Income:Trading:OptionPremium
  • Commodity format: OCC-style (AAPL_PUT_20260620_00150000)
  • Append target: the main file unless obvious sub-files exist

Persist the choice as a config comment block at the top of the main file:

;; beancount-options config
;; commodity_format: occ_v1
;; append_target: ./transactions/2026.beancount
;; broker_default: Robinhood

This is the contract going forward — re-read it on every invocation rather than re-detecting from scratch. Write the block as part of the first confirmed append (never before it); when prior options entries exist without one, propose adding it in that run's confirmation.

2. Parse

Reduce the user's description to a structured representation:

FieldRequiredNotes
underlyingyesTicker symbol
strategyyessingle-leg, vertical, calendar, condor, etc.
actionyesopen, close, expire, assign, exercise, roll
brokeryesAsk if not specified or detectable
trade_dateyesDefault: today
legs[]yesEach leg: direction (long/short), type (call/put), strike, expiry, qty
premium_per_contractopen/close onlyNet or per-leg, depending on input
feesoptionalFolded into cash leg

Parsing rules:

  • If the user pastes a broker confirmation, extract fields directly. Brokers vary; common patterns include Sold to Open 1 AAPL Jun 20 '26 $150 Put @ 1.50.
  • If conversational, identify what's stated and ask for what's missing. Don't guess premiums, strikes, or expiries — wrong basis math is harder to spot later than a follow-up question.
  • For multi-leg trades, recommend pasting the full fill confirmation. If they describe leg-by-leg, gather all legs before generating.
3. Generate

Each strategy + outcome maps to a transaction template. Read the matching references/<strategy>.md file before generating, even if the pattern feels obvious. References encode edge cases you might miss.

Universal generation rules — apply unless a reference file overrides:

  • Cost basis is per CONTRACT, not per share. Each option contract is 1 unit in beancount. The unit's cost basis equals the gross dollar premium (premium × 100). For a $1.50 premium contract: {150.00 USD}, NOT {1.50 USD}.
    • Why: -1 X {1.50 USD} has posting weight -$1.50, but the cash leg is +$150. The transaction won't balance. Per-contract basis ({150.00 USD}) does balance against a per-contract cash leg.
  • Cost basis on shorts: negative units, basis = gross premium × 100 per contract.
  • Cost basis on longs: positive units, basis = gross premium × 100 per contract.
  • Fees: explicit Expenses:Trading:Fees posting. Cash leg = net premium (gross − fees for STO/STC, gross + fees for BTO/BTC). Don't fold fees into cost basis or cash. This keeps cost basis as a clean dollar number, which makes assignment arithmetic produce clean per-share stock basis (strike − premium-per-share = whole cents).
  • Multi-leg open in one fill: one transaction, all legs as separate postings, single shared ^link.
  • Multi-leg close: same — one transaction per fill ticket, linked.
  • Roll: two transactions (close then open), each with its own ^link. Don't combine. See references/rolling.md.
  • Assignment: option closes at $0; resulting stock opens with cost basis adjusted for the original premium. No income line for the option itself. See references/assignment.md.
  • Exercise (long option you exercised): mirror of assignment — premium adjusts stock basis, no separate option income. See references/exercise.md.
  • Expiration: identical to a close at $0 premium.
  • {} disposal requires the held lot: a -100 AAPL {} posting matches an existing stock lot in that account. If the shares aren't booked in the ledger yet, book (or ask about) the purchase first — otherwise bea check fails with the unintuitive Too many missing numbers for currency group 'USD'.
4. Confirm + Write

Show the user, then ask:

Target file: ./transactions/2026.beancount

New account opens (if any):
2026-05-01 open Assets:Brokerage:Robinhood:Options
2026-05-01 open Income:Trading:OptionPremium USD
2026-05-01 open Expenses:Trading:Fees USD

Proposed transaction:
2026-05-01 * "STO AAPL 150P 6/20" ^aapl-150p-20260620
  Assets:Brokerage:Robinhood:Cash                              149.35 USD
  Assets:Brokerage:Robinhood:Options    -1 AAPL_PUT_20260620_00150000 {150.00 USD}
  Expenses:Trading:Fees                                          0.65 USD

Append to ./transactions/2026.beancount? (yes/no)

On yes, open the approved new accounts with the shared add open recipe, then write the confirmed batch:

sh
bea --file "$ledger" --json --no-input add transactions --from "$batch" --into "$target"

Use the proposed destination, including for year-bucketed files; validate through the root ledger. Native lot-selection transactions use the shared add transaction --posting recipe with the same root and destination. Update only the reviewed config comment block. On no, revise the proposal. Never write before confirmation. If a command fails, inspect earlier successful writes before retrying the batch.

5. Verify

Verify the root ledger after writing:

sh
bea --file "$ledger" --json --no-input check

Use beancount-init's references/compatibility.md only when bea is absent.

If the check reports any errors (transaction does not balance, lot booking failure, undeclared account, etc.), do NOT report success. Instead:

  1. Surface the exact check output to the user.
  2. If you can identify the cause from the error, propose a fix.
  3. Do not silently revert. The user needs to see the error to investigate.

This step exists because the cost-basis arithmetic is subtle, especially for assignment, exercise, and multi-leg trades. Catching an error now is much cheaper than discovering it later during 1099-B reconciliation.

If no checker is available, report the result as unvalidated and suggest installing bea; manual posting weights do not establish correct lot booking.

Show full SKILL.md (652 more words)Show less

Universal mechanics

Commodity naming

If existing options trades use a convention, conform to it. Otherwise default to OCC-style:

<UNDERLYING>_<TYPE>_<YYYYMMDD>_<STRIKE_PADDED>

STRIKE_PADDED is 8 digits: 5 dollars + 3 decimal places. Examples:

  • $150 strike → 00150000
  • $9.50 strike → 00009500
  • $2,500 strike (e.g. AMZN pre-split) → 02500000

Full example: AAPL_PUT_20260620_00150000 for AAPL $150 put expiring June 20, 2026.

Optional commodity directive with metadata for queries:

2026-05-01 commodity AAPL_PUT_20260620_00150000
  underlying: "AAPL"
  expiry: 2026-06-20
  strike: 150.00 USD
  option_type: "PUT"
Account structure
Assets:Brokerage:<BrokerName>:Cash
Assets:Brokerage:<BrokerName>:Options
Assets:Brokerage:<BrokerName>:Stock
Income:Trading:OptionPremium
Income:Trading:CapitalGains
Expenses:Trading:Fees

Detect the broker name from existing accounts and preserve case. If the broker doesn't yet exist in the ledger, generate open directives alongside the trade.

The four outcomes
OutcomeOption positionStock side-effectIncome line
Buy/Sell to close→ 0NoneYes (P&L = open premium − close premium)
Expire worthless→ 0 at $0NoneYes (full premium)
Assigned (short)→ 0 at $0Forced trade at strikeNone — premium adjusts stock basis
Exercised (long)→ 0 at $0Voluntary trade at strikeNone — premium adjusts stock basis
Trade date convention

Always use the trade date (date the order filled), not settlement. 1099-B reports trade date in both date columns; matching it now saves reconciliation pain later.

Fees

Use an explicit Expenses:Trading:Fees posting. The cash leg holds the net premium (gross premium ± fees, depending on direction); the option leg's cost basis holds the gross premium × 100.

Why this convention:

  • Keeps cost basis as a clean whole-dollar number, so assignment math produces clean per-share stock basis (strike − premium-per-share = whole cents).
  • Fees per trade are easy to query at year-end; net proceeds for 1099-B reconciliation are still recoverable (gross proceeds − fees).
  • Folding fees into basis would produce fractional-cent stock basis values like $148.5065/share that are awkward to read.

Strategy routing

Identify the strategy and read the matching reference file before generating.

StrategyReference
Cash-secured put, naked put, naked call, long call, long putreferences/single-leg.md
Covered call, protective put, collar, married putreferences/stock-plus-option.md
Bull call spread, bear call spread, bull put spread, bear put spread, debit/credit spreadreferences/verticals.md
Iron condor, iron butterfly, condor, butterfly, broken-wing variantsreferences/condors-and-butterflies.md
Long/short straddle, long/short stranglereferences/volatility-strategies.md
Calendar spread, double calendar, diagonal spreadreferences/calendars-and-diagonals.md
Wheel strategy (CSP→assign→CC→assign sequence)references/wheel.md
Synthetic long/short, conversion, reversal, ratio spread, jade lizardreferences/exotics.md

Outcome-specific:

  • Assignment | references/assignment.md
  • Exercise (long option) | references/exercise.md
  • Rolling (BTC + STO same broker action) | references/rolling.md

Tax carve-outs:

  • Index options (SPX, NDX, RUT, VIX, XSP) — Section 1256 | references/section-1256.md
  • Wash sales | references/wash-sales.md
  • Multi-broker considerations | references/multi-broker.md

If a description doesn't fit cleanly into one of these, default to single-leg or verticals and ask the user to confirm the strategy name.

Confirmation pattern (do not skip)

Before writing to the user's ledger, every interaction MUST present:

  1. Target file path (one explicit path, not "the ledger")
  2. Any new open directives that will be added
  3. The proposed transaction(s), formatted exactly as they'll appear in the file
  4. A clear yes/no prompt

On no: ask what to change. Never argue. Never write without explicit yes.

Edge cases worth surfacing

  • Fractional/sub-dollar strikes: handled by OCC's 3-decimal strike encoding.
  • Adjusted contracts (post-split, post-merger): non-standard. Ask the user for the OCC symbol the broker assigned.
  • Mini contracts (10-share multiplier): rare but exists. Ask explicitly if there's any chance.
  • Same-day open and close: still two transactions.
  • Partial closes: closing N of M open contracts is supported; remaining stay open at original basis.
  • Index options: trigger Section 1256 reference; note 60/40 treatment and Form 6781 implications; this skill does not compute them.
  • Dividends during a covered call holding period: dividends post separately to Income:Dividends. Qualified-CC rules can affect tax treatment of the dividend itself — see stock-plus-option reference.
  • LEAPS held >1 year then closed: only options case where long-term capital gains apply for long positions. Short positions are always short-term regardless of holding period.

What NOT to do

  • Don't write transactions without explicit user confirmation.
  • Don't modify existing transactions; only append.
  • Don't touch the user's option, plugin, or include directives.
  • Don't compute wash sales, greeks, P&L curves, or anything analytics-flavored.
  • Don't import broker statements (different workflow).
  • Don't bulk-rewrite historical entries.
  • Don't guess missing fields (premium, strike, expiry). Ask.

© bex-co, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 22 other files (references) in skills/.claude/skills/beancount-options of bex-co/beancount-io.

  • SKILL.md
  • evals/evals.json
  • evals/files/eval1_ledger.beancount
  • evals/files/eval2_ledger.beancount
  • evals/files/eval3_ledger.beancount
  • evals/files/eval4_ledger.beancount
  • evals/files/eval5_ledger.beancount
  • evals/files/eval6_ledger.beancount
  • evals/files/eval7_ledger.beancount
  • references/assignment.md
  • references/calendars-and-diagonals.md
  • references/condors-and-butterflies.md
  • references/exercise.md
  • references/exotics.md
  • references/multi-broker.md
  • references/rolling.md
  • references/section-1256.md
  • references/single-leg.md
  • … and 5 more

Open the folder on GitHubat commit 2e520db

Compare with similar skills

Beancount Options next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Beancount Options compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Beancount Options this skillbex-co/beancount-io296—~3.7kAutomated safety check: PassMIT
Itr Walakaranb192/itr-wala871—~3.6kAutomated safety check: PassMIT
Tax Filingrobbalian/claude-tax-filing174—~2.5kAutomated safety check: PassNone
India Itr CopilotLoki200399/india-itr-copilot147—~2.4kAutomated safety check: PassMIT
Consumption Taxkazukinagata/shinkoku365—~1.8kAutomated safety check: PassMIT
Invoice Organizerdavila7/claude-code-templates33k12 repos~2.9kAutomated safety check: PassMIT

Similar skills

  • Itr Wala

    karanb192/itr-wala

    File Indian income tax returns (ITR) for FY 2025-26 / AY 2026-27.

    871 GitHub stars~3.6k tokensUpdated 5 days ago
    Business, Finance & HRAuto-check passed
  • Tax Filing

    robbalian/claude-tax-filing

    Prepare and fill federal and state tax return PDF forms. An agent skill from robbalian/claude-tax-filing.

    174 GitHub stars~2.5k tokensUpdated 5 mo ago
    Business, Finance & HRAuto-check passed
  • India Itr Copilot

    Loki200399/india-itr-copilot

    Documents-first copilot for preparing Indian Income Tax Returns (ITR-1/2/3/4, any assessment year).

    147 GitHub stars~2.4k tokensUpdated 2 mo ago
    Business, Finance & HRAuto-check passed
  • Consumption Tax

    kazukinagata/shinkoku

    This skill should be used when the user needs to calculate consumption tax (消費税) or determine their tax method (2割特例, 簡易課税, or 本則課税).

    365 GitHub stars~1.8k tokensUpdated 1 mo ago
    Business, Finance & HRAuto-check passed
  • Invoice Organizer

    davila7/claude-code-templates

    Automatically organizes invoices and receipts for tax preparation by reading messy files, extracting key information, renaming them consistently, and sorting them into logical folders.

    33k GitHub starsUsed in 12 repos~2.9k tokens
    Business, Finance & HRAuto-check passed
  • Kanchi Dividend Us Tax Accounting

    tradermonty/claude-trading-skills

    Provide US dividend tax and account-location workflow for Kanchi-style income portfolios.

    3k GitHub starsUsed in 1 repo~1.1k tokens
    Business, Finance & HRAuto-check passed

More from bex-co/beancount-io

All 27 skills in this repo
  • Beancount Close

    bex-co/beancount-io

    Close an accounting period in a Beancount ledger by reconciling each active account through beancount-reconcile, checking assertions and recurring gaps, reviewing flags, then proposing a commit with…

    296 GitHub stars~1.4k tokensUpdated today
    Auto-check passed
  • Beancount Import

    bex-co/beancount-io

    Import a bank or card CSV, OFX/QFX, or QIF export into an existing Beancount ledger.

    296 GitHub stars~3k tokensUpdated today
    Auto-check passed
  • Beancount Importer Author

    bex-co/beancount-io

    Write or repair a reusable Beangulp importer from a sample bank export, with reviewed golden files and a passing test harness.

    296 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Beancount Init

    bex-co/beancount-io

    Scaffold a new Beancount ledger with bea init and validation, with optional Fava browser setup when requested.

    296 GitHub stars~1.2k tokensUpdated today
    Auto-check: notes
  • Beancount Reconcile

    bex-co/beancount-io

    Reconcile one Beancount account against a CSV statement or pasted PDF text.

    296 GitHub stars~4.1k tokensUpdated today
    Auto-check passed
  • Mobile Release

    bex-co/beancount-io

    Summarize mobile changes since the previous release, bump the Beancount mobile version, prepare localized release notes and listings, and release to the Apple App Store and Google Play.

    296 GitHub stars~3.5k tokensUpdated today
    Auto-check passed

Questions about Beancount Options

What does Beancount Options do?

Record a described options trade or lifecycle event as validated Beancount transactions through bea, after review and confirmation. Beancount Options is an agent skill from bex-co/beancount-io. Record a described options trade or lifecycle event as validated Beancount transactions through bea, after review and confirmation.

When should I use Beancount Options?

Beancount Options fits situations like: multi-leg opens; exercise and expiration; including pasted broker confirmations.

How do I install Beancount Options in Claude Code?

Run `npx skills add bex-co/beancount-io --skill beancount-options -a claude-code`. Or copy the skill folder (skills/.claude/skills/beancount-options in bex-co/beancount-io) into .claude/skills/beancount-options in your project. Claude Code loads it when a task matches its description.

How do I install Beancount Options in Codex?

Run `npx skills add bex-co/beancount-io --skill beancount-options -a codex`. Or copy the skill folder (skills/.claude/skills/beancount-options in bex-co/beancount-io) into .agents/skills/beancount-options in your project. Codex loads it when a task matches its description.

Can I use Beancount Options in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add bex-co/beancount-io --skill beancount-options -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/beancount-options, .gemini/skills/beancount-options, .github/skills/beancount-options and .opencode/skills/beancount-options in your project.

What does Beancount Options need to run?

SKILL.md names no scripts, command-line tools or credentials: Beancount Options is instructions for the agent only.

Does Beancount Options access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Beancount Options safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Beancount Options use?

Beancount Options is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Beancount Options use?

About 3.7k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 13k tokens, read only when the agent opens those files.

What are the alternatives to Beancount Options?

Skills that share tags, products or a category with Beancount Options: Itr Wala (karanb192/itr-wala, 871 stars), Tax Filing (robbalian/claude-tax-filing, 174 stars), India Itr Copilot (Loki200399/india-itr-copilot, 147 stars) and Consumption Tax (kazukinagata/shinkoku, 365 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Beancount Options?

bex-co (a GitHub organization) maintains it in bex-co/beancount-io, which has 296 GitHub stars. The repository holds 27 skills in this directory. The repository was last updated on October 10, 2026.

Source: bex-co/beancount-io on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.