Install
openclaw skills install @baoxinwen/spending-log个人支出记账。当用户提到记账、花了、消费、支出、账单、开销、统计消费、月度报表时触发。支持自然语言记账、自动分类、月度统计、预算提醒和月度报表生成。
openclaw skills install @baoxinwen/spending-log个人支出记账技能,数据存储在 data/expenses.json。
data/expenses.json — 所有支出记录,格式如下:[
{
"id": "becd186675a34bb0",
"amount": 35.0,
"category": "餐饮",
"description": "午饭",
"date": "2026-04-08",
"timestamp": 1772952046769
}
]
data/config.json — 配置(月预算等):{ "monthly_budget": 2000 }
餐饮、交通、购物、娱乐、医疗、房租、日用、社交、其他
根据用户输入内容智能归类,无法判断时归为"其他"并标注。
用户用自然语言说,例如:
解析规则:
解析后追加到 data/expenses.json,回复确认信息:金额、分类、描述、日期。
"删除刚才那条" / "删掉午餐那条" — 找到最近匹配的记录删除,确认后执行。
通过 scripts/crud.py edit 命令修改已有记录的金额、分类、描述或日期:
python3 scripts/crud.py edit --id <记录ID> --amount 40 --description "午饭加菜"
"这个月花了多少" / "4月餐饮花了多少" / "本月交通支出"
必须使用 scripts/query.py 脚本计算,禁止心算。
# 查某分类当月支出
python3 scripts/query.py --category 餐饮
# 查当月总支出(省略分类)
python3 scripts/query.py
# 查指定月份
python3 scripts/query.py --month 2026-03
# 最近7天详细明细
python3 scripts/query.py --days 7 --format detail
# 指定日期范围(场景:出差/旅行期间的花费)
python3 scripts/query.py --from 2026-04-10 --to 2026-04-15
# 查全量数据
python3 scripts/query.py --all
默认按日期倒序排列。--days 使用精确的日期边界(当天 00:00 起),避免模糊区间。--month 和 --days 同时传时优先 --month。
脚本会返回:笔数、合计金额、逐笔明细。直接将结果呈现给用户即可。
每次记账后自动检查:当月累计支出是否超过月预算(默认2000元)。超过时主动提醒用户。
用户也可主动问"预算还剩多少"来查询。
用户说"月度报表" / "生成报表" / "本月账单"时,使用 scripts/report.py 生成 HTML 报表。
python3 scripts/report.py --month 2026-04
python3 scripts/report.py --month 2026-04 --force # 强制重新生成
python3 scripts/report.py --month 2026-04 --csv
将生成的 HTML 通过消息发送给用户(使用 <qqmedia> 标签发送文件)。同时备份到 /volume2/Download/OpenClaw/reports/ 目录。
禁止使用 canvas 展示报表。
生成的报表包含:
报表支持 PC/手机自适应布局,自动为其他月份生成报表文件。
通过 openclaw cron 设置每月1日早上8点自动生成上月报表并发送给用户。首次设置记账后触发配置。