Receipt

v2.0.1

Scan, categorize, and total receipts for expenses. Use when recording purchases, categorizing spending, balancing monthly totals, forecasting budgets.

0· 186·0 current·0 all-time
byBytesAgain2@ckchzh
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description claim a local CLI receipt tool and the included script implements exactly that: local logs under ~/.local/share/receipt, CLI commands for recording/categorizing/exporting, no external services, no extra binaries or env vars required.
Instruction Scope
Runtime instructions and the script keep activity local to the DATA_DIR. However, the script appends raw user input to log files without sanitization and exports JSON/CSV/TXT without escaping values (JSON export uses printf with raw values). history.log uses a different format than per-command logs which may produce empty values in exports. These are robustness/data-format issues and can enable log-injection or produce malformed exports, but not evidence of network exfiltration or unrelated data access.
Install Mechanism
No install spec is provided (instruction-only). The packaged script is a plain bash file; nothing is downloaded or written by an installer. This is low risk and proportionate for a CLI tool.
Credentials
The skill requests no environment variables or credentials and only relies on HOME to construct the data directory. No unrelated secrets or config paths are requested.
Persistence & Privilege
The skill does not request always:true, does not modify other skills or system-wide settings, and only writes to its own data directory under the user's home. Normal for a local CLI utility.
Assessment
This skill appears to do what it says: a simple local bash receipt logger. Before installing/running: (1) review the script if you will run it on a sensitive or shared machine — it writes all entries in plain text to ~/.local/share/receipt; (2) avoid entering sensitive credentials or account numbers into the logs (they are stored in clear text and included in exports); (3) be aware that inputs are not sanitized/escaped, so entries containing '|' characters, quotes, newlines, or JSON control characters may produce malformed exports or unintended log lines; (4) if you need robust exports or sharing, consider sanitizing/escaping values or adding JSON-escaping before using exported files; (5) no network activity is performed by the script, and no external credentials are requested.

Like a lobster shell, security has layers — review code before you run it.

latestvk97ejs5h8mfpca3dy2n676c4518342d7

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

SKILL.md

Receipt

A command-line finance toolkit for recording, categorizing, and analyzing receipts and expenses. Track purchases, monitor spending trends, forecast budgets, set alerts, compare periods, and annotate tax-relevant items — all stored locally with timestamped history, full-text search, and multi-format export.

Commands

The following commands are available via receipt <command> [args]:

Finance Operations

CommandDescription
record <input>Record a receipt or purchase entry (e.g. "Lunch at cafe $12.50"). Called without args, shows recent record entries.
categorize <input>Categorize a spending item (e.g. "Office supplies — Q1 budget"). Called without args, shows recent categorize entries.
balance <input>Log a balance update or reconciliation note (e.g. "Monthly balance: $3,420"). Called without args, shows recent balance entries.
trend <input>Record a spending trend observation (e.g. "Groceries up 15% vs last month"). Called without args, shows recent trend entries.
forecast <input>Log a budget forecast (e.g. "Projected Q2 spend: $8,000"). Called without args, shows recent forecast entries.
export-report <input>Save an export/report note (e.g. "Monthly PDF sent to accountant"). Called without args, shows recent export-report entries.
budget-check <input>Record a budget check result (e.g. "Travel budget 78% used, $440 remaining"). Called without args, shows recent budget-check entries.
summary <input>Log a summary note (e.g. "Week 12 total: $327.50 across 14 transactions"). Called without args, shows recent summary entries.
alert <input>Record a spending alert (e.g. "Dining budget exceeded by $65"). Called without args, shows recent alert entries.
history <input>Log a history note. Called without args, shows recent history entries.
compare <input>Record a comparison note (e.g. "March vs February: +$200 on utilities"). Called without args, shows recent compare entries.
tax-note <input>Annotate a tax-relevant item (e.g. "Home office deduction — $150/mo"). Called without args, shows recent tax-note entries.

Utility Commands

CommandDescription
statsShow summary statistics — entry counts per category, total entries, data size, and earliest record timestamp.
export <fmt>Export all data in json, csv, or txt format. Output file saved to the data directory.
search <term>Full-text search across all log files (case-insensitive).
recentShow the 20 most recent activity entries from the global history log.
statusHealth check — version, data directory path, total entries, disk usage, last activity, and OK status.
helpDisplay the full command reference.
versionPrint the current version (v2.0.0).

Data Storage

All data is persisted locally in ~/.local/share/receipt/:

  • Per-command logs — Each command (record, categorize, balance, etc.) writes to its own .log file with YYYY-MM-DD HH:MM|<input> format.
  • Global history — Every action is also appended to history.log with MM-DD HH:MM <command>: <input> format for unified audit trail.
  • Export files — Generated exports are saved as export.json, export.csv, or export.txt in the same directory.

No external services, databases, or network connections are required. Everything runs locally via bash.

Requirements

  • Bash 4+ (uses local variables, set -euo pipefail)
  • Standard Unix utilities: date, wc, du, head, tail, grep, basename, cat
  • No root privileges needed
  • No external dependencies or package installs

When to Use

  1. Logging daily purchases — Use record to capture receipts as they happen, building a searchable expense journal over time.
  2. Organizing spending by category — Use categorize and budget-check to track how much goes to groceries, dining, transport, subscriptions, etc.
  3. Monthly financial reviews — Use summary, compare, and trend to analyze spending patterns across periods.
  4. Tax preparation — Use tax-note to flag deductible items throughout the year so they're easy to find at tax time.
  5. Budget forecasting and alerts — Use forecast to project upcoming spend and alert to document when budgets are exceeded.

Examples

# Record a new receipt
receipt record "Grocery store — $67.30, weekly shopping"

# Categorize a purchase
receipt categorize "Amazon order $42.99 — Office Supplies"

# Check budget status
receipt budget-check "Food budget: $320 of $400 used, 8 days remaining"

# Log a spending trend
receipt trend "Utility bills trending 12% higher than same quarter last year"

# Add a tax note
receipt tax-note "Professional development course $299 — deductible education expense"

# Compare two months
receipt compare "April total $2,180 vs March $1,950 — +$230, mostly dining"

# View summary statistics
receipt stats

# Export all data as CSV
receipt export csv

# Search for all entries mentioning 'Amazon'
receipt search Amazon

# View recent activity
receipt recent

How It Works

Each command follows the same pattern:

  1. With arguments — Timestamps the input, appends it to the command-specific log file, increments the entry count, and writes to the global history log.
  2. Without arguments — Displays the 20 most recent entries from that command's log file.

The stats command aggregates counts across all log files. The export command iterates through all logs and produces a unified output in your chosen format. The search command performs a case-insensitive grep across every log file.


Powered by BytesAgain | bytesagain.com | hello@bytesagain.com

Files

2 total
Select a file
Select a file to preview.

Comments

Loading comments…