About custom-report
custom-report is a financial reporting workflow skill for selecting date ranges, categories, transaction types, and amount thresholds. It combines category summaries with transaction details and can export reports as CSV or Markdown.
Key features
- 01Filters by date range and category
- 02Selects income, expenses, or both
- 03Supports minimum transaction amounts
- 04Combines summaries and transaction details
- 05Exports reports as CSV or Markdown
Use cases
- 01Creating a report for a chosen quarter
- 02Reviewing spending in selected categories
- 03Exporting filtered financial data for further analysis
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ openaccountant/ skills --skill custom-reportAfter installing, type/custom-reportin Claude Code to confirm it loaded.
Details
From the project READMECustom Report
Overview
Generate tailored financial reports by specifying date ranges, category filters, transaction types, and output format. Combine spending summaries with transaction-level detail in a single report.
Wilson Tools Used
spending_summary— aggregate spending by category for the specified periodtransaction_search— pull detailed transactions matching filtersexport_transactions— export report data to CSV or Markdown
Workflow
- Ask the user what the report should cover:
- Date range: specific dates, "last 3 months," "Q1 2025," "year to date"
- Categories: all, specific categories, or exclude certain categories
- Transaction type: expenses only, income only, or both
- Minimum amount: optional threshold (e.g., "only transactions over $50")
- Use
spending_summaryto generate category-level aggregates for the date range. - Use
transaction_searchto pull individual transactions matching the filters. - Compile the report with:
- Summary table (category totals, percentages)
- Top transactions by amount
- Transaction count and average per category
- Date range and filter parameters noted at the top
- Ask the user for output format: terminal display, Markdown file, or CSV export.
- If Markdown or CSV, use
export_transactionsto write the file.
Without Wilson
You can build custom reports in a spreadsheet:
Google Sheets / Excel Setup
- Import or paste your transactions into a sheet with columns:
Date,Description,Amount,Category. - Date filtering: Add a filter or use
=FILTER(A:D, A:A >= DATE(2025,1,1), A:A <= DATE(2025,3,31))for Q1 2025. - Category summary pivot table:
- Select your data > Insert > Pivot Table
- Rows: Category
- Values: SUM of Amount, COUNT of Amount
- Filter: Date range
- Manual summary formulas:
Total Expenses: =SUMIFS(C:C, C:C, "<0", A:A, ">="&DATE(2025,1,1), A:A, "<="&DATE(2025,3,31)) Total Income: =SUMIFS(C:C, C:C, ">0", A:A, ">="&DATE(2025,1,1), A:A, "<="&DATE(2025,3,31)) Category Total: =SUMIFS(C:C, D:D, "Groceries", A:A, ">="&DATE(2025,1,1), A:A, "<="&DATE(2025,3,31)) - Top transactions: Sort by Amount (ascending for biggest expenses) and take the top 10.
CLI Alternative (csvkit)
# Filter by date range
csvgrep -c Date -r "2025-0[1-3]" transactions.csv | csvsort -c Amount | head -20
# Summary by category
csvstat -c Amount --group Category transactions.csv
Important Notes
- Date ranges are inclusive on both ends.
- Spending summary shows absolute values (positive numbers) for expenses to improve readability.
- Reports can be re-run with different parameters without re-importing data.
- Markdown export includes a YAML header with report metadata (date generated, filters applied).
Comments
Markdown supported