用途:nl2ledger 是面向钱迹 CSV 账本的自然语言记账助手。用户用中文、英文或混合语言描述支出、收入、转账后,技能解析并追加结构化记录。
主要能力:从输入中提取金额(必需,支持块/元/yuan/rmb/¥)、描述与商户、类型(默认支出,可识别收入/工资、转账、退款)、时间(默认当前时间,支持昨天、上午/下午、上周五等相对表达)、账户(默认工资卡)。支持按逗号、顿号、分号、and、和等分隔符拆分多条记录。分类依据 references/category_map.md,并应用特殊规则,如娱乐/桑拿按摩设账户1=金色印象、标签=10号,转账设分类=其它、账户2=现金或中转账户,工资收入设分类=工资,公积金收入设分类=公积金。
使用方式:先用 Glob 在项目根目录查找 QianJi_*.csv,多个文件取文件名时间戳最新者;找不到则询问路径。解析后必须展示预览并等待用户明确确认,用户可确认、按编号修改或取消。确认后逐条运行:python3 scripts/append_entry.py --csv-file "PATH_TO_CSV" --time "YYYY-MM-DD HH:MM:SS" --category "分类" --subcategory "二级分类" --type "支出" --amount AMOUNT --account1 "账户1" --account2 "账户2" --note "用户原始输入" --tag "标签"。多条记录需顺序调用以生成唯一 ID,成功后输出 ID 并汇总。
适用场景:日常快速记账、批量记录多笔消费、将自然语言流水整理进钱迹 CSV。
限制:金额缺失时必须询问;分类不明确时给出 2-3 个候选让用户选择;CSV 不存在需用户指定路径;备注中的逗号与引号由 Python csv.writer 按 RFC 4180 自动转义。具体分类映射与 CSV 字段规范以技能内 references 文件为准,资料未提供完整内容。