From firefly-tools
Interactive session to categorize transactions that are missing tags, categories, or budgets
How this skill is triggered — by the user, by Claude, or both
Slash command
/firefly-tools:classify-unknownsThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Interactive workflow for reviewing and classifying transactions that are missing metadata.
Interactive workflow for reviewing and classifying transactions that are missing metadata.
Before starting, read ${CLAUDE_PLUGIN_ROOT}/.env to check it exists and has no REPLACE_WITH placeholders.
If credentials are missing, tell the user to run /firefly-tools:setup first and stop.
$ARGUMENTS optionally specifies the number of days to look back (default: 30).
If MCP tools (firefly:*) are not available (e.g., in Cowork mode), use the equivalent scripts in ${CLAUDE_PLUGIN_ROOT}/scripts/ via Bash:
firefly:get_financial_context → python ${CLAUDE_PLUGIN_ROOT}/scripts/get_context.py [--cache]firefly:get_review_queue → python ${CLAUDE_PLUGIN_ROOT}/scripts/review_queue.py --days <N> [--filter <type>]firefly:categorize_transactions → python ${CLAUDE_PLUGIN_ROOT}/scripts/categorize.py --file updates.jsonfirefly:manage_metadata → python ${CLAUDE_PLUGIN_ROOT}/scripts/manage_metadata.py <action> --name "..."All scripts output JSON to stdout.
firefly:get_financial_context (or python ${CLAUDE_PLUGIN_ROOT}/scripts/get_context.py --cache) to load all available categories, tags, budgetsfirefly:get_review_queue (or python ${CLAUDE_PLUGIN_ROOT}/scripts/review_queue.py --days <N>) with the specified days parametermerchant-classifier agent ONCE with the full batch plus the financial context
Present grouped results to the user. For each group:
Clear matches (high confidence):
STARBUCKS x3 ($5.20, $4.80, $6.10) → Food & Dining [cafe]
SHELL x2 ($45.00, $52.30) → Transport [fuel]
Apply all? (yes / or correct by name)
Ambiguous (medium/low confidence):
GRAB*2847 ($12.50) → Transport or Food & Dining?
POS DEBIT 29481 ($89.00) → Unknown merchant
For these, use AskUserQuestion to ask the user directly. Keep questions short and specific:
Batch the interaction. Present all high-confidence items together for bulk approval, then walk through ambiguous ones. Don't ask one-by-one for clear matches.
firefly:manage_metadata (or python ${CLAUDE_PLUGIN_ROOT}/scripts/manage_metadata.py) to create themfirefly:categorize_transactions (or write a JSON file and python ${CLAUDE_PLUGIN_ROOT}/scripts/categorize.py --file updates.json) with all confirmed classificationsnpx claudepluginhub originalbyteme/claude-open-finance --plugin firefly-toolsAuto-categorizes uncategorized financial transactions using vendor/description pattern matching. Applies existing rules, groups unmatched by similarity, suggests categories, and offers spreadsheet formula alternatives.
Categorizes uncategorized bank transactions, matches payments to invoices, verifies bookkeeping entries for freelance or SME accounts via Norman Finance APIs. Use for reconciling accounts or expense categorization.
Categorizes financial transactions by matching raw descriptions against configurable taxonomies and rules, with LLM fallback. Emits merchant, category path, recurring flag, and confidence score. Use for bank, credit-card, or brokerage transaction classification.