360 Secure SkillHub
360 安全技能中心

Receipt

这是一款本地运行的命令行财务工具,核心功能涵盖收据记录、开支分类、预算监控、趋势分析、税项标注,还支持数据统计、全文搜索、多格式导出。适合日常记账、月度财务复盘、税项准备、预算管理等场景,通过`receipt <命令>`输入操作,数据全本地存储,无需联网或外部服务。

ckchzh
ckchzh
热度 65.88
最近更新 2026-05-11 17:32:16
分类:数据依赖:代码执行 / 读写文件应用场景:财务 / 个人理财 / 数据处理 / 报告撰写

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add receipt
Metadata
name
receipt
version
2.0.0
author
BytesAgain
homepage
https://bytesagain.com
source
https://github.com/bytesagain/ai-skills
license
MIT-0
tags
["receipt","tool","utility"]
description
Scan, categorize, and total receipts for expenses. Use when recording purchases, categorizing spending, balancing monthly totals, forecasting budgets.

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

Command Description
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

Command Description
stats Show 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).
recent Show the 20 most recent activity entries from the global history log.
status Health check — version, data directory path, total entries, disk usage, last activity, and OK status.
help Display the full command reference.
version Print 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