blender-kiln
這是一款 Claude Code 插件,能透過 Blender 將文字簡報或照片轉化為可投入生產的 3D 資產:透過程式碼重建、使用 CC0 掃描檔案進行紋理製作、根據真實物體進行色彩校正、優化為 GLB/FBX。
AI 翻譯
将支付宝&微信个人账单转换为MoneyWiz兼容的csv文件(中文格式)的 Skill
翻譯準備中
技能Python · JavaScriptGitHub @wuzeyou自行安裝營運者未確認
試用過了嗎? 點一下就好,不需要登入。
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
安裝型專案無需部署網域也可驗證。個人儲存庫可透過 GitHub 登入驗證,組織儲存庫可使用上方的儲存庫驗證檔案。
製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗将支付宝、微信账单导入 MoneyWiz 的 Claude Code Skill。
支持账户映射、智能分类预测、商户/描述简化、退款类型自动转换、非人民币账户换算。
旧版(v1)是 Node.js CLI 脚本(npm run alipay / npm run wechat),完整代码保留在 archive/ 目录,仍可独立使用。
v2 完全用 Python 重写,并以 Claude Code Skill 的形式发布——AI 在对话中驱动整个流程,包括分类预测、与你交互确认、生成 CSV、自动转换退款类型,全部一气呵成。
如果你 Star 过旧版本:感谢一路同行。新版本是同一个目标的更聪明的实现。
为了让仓库可公开,我从我自用的 skill 中移除了三块功能:
gmail-reader skill,未开源。本版本要求你自己从支付宝/微信 App 导出账单(CSV/XLSX),解压后把文件交给 AI。💡 如果你想要更完善的版本:这个 Skill 本身就是一份 Claude Skill 写法的范例。你完全可以让 AI 阅读
SKILL.md和scripts/,然后让它帮你扩展上面任意一项——只要你愿意把 Gmail OAuth、银行邮件正则等个人化部分自己接进去。Claude Skill 的好处就是改它本身比改一个传统 CLI 脚本容易得多。
openpyxl(处理微信 XLSX):pip install openpyxl# 1. clone 到 Claude skills 目录
git clone https://github.com/wuzeyou/alipay2moneywiz.git ~/.claude/skills/moneywiz
# 2. 复制配置模板,填入你的真实账户/规则
cd ~/.claude/skills/moneywiz/config
for f in *.example.json; do cp "$f" "${f%.example.json}.json"; done
# 然后编辑 account_map.json 等
config/*.json(不带 .example)已加入 .gitignore,不会被误推。
在 Claude Code 中,直接说:
帮我导入这个支付宝账单:~/Downloads/支付宝交易明细.csv
或同时导入支付宝和微信:
帮我导入:
- 支付宝:~/Downloads/支付宝交易明细.csv
- 微信:~/Downloads/微信账单.xlsx
AI 会按 SKILL.md 的协议执行:解析 → 推测分类 → 与你交互确认每一条 → 生成 MoneyWiz CSV → 打开 MoneyWiz 完成导入 → 把退款 (Income) UPDATE 为 Refund 类型。
不走 AI 也可以:
python3 scripts/convert_bill.py <账单文件> # 解析为 JSON
python3 scripts/apply_live_fx.py parsed.json out.json # 外币账户按当日汇率重算(可选)
python3 scripts/generate_csv.py confirmed.json # 生成 CSV
python3 scripts/convert_refunds.py confirmed.json # 退款转换(写库前会备份)
python3 scripts/moneywiz_query.py recent 30 # 查询历史交易
alipay2moneywiz/
├── SKILL.md # Claude Skill 协议(AI 按此执行)
├── scripts/ # Python 脚本(解析、CSV 生成、退款转换、查询)
├── config/ # 配置模板(*.example.json)+ 你的实际配置(gitignored)
├── archive/ # v1 Node.js 旧版(仍可用)
└── bills/ # 工作目录(gitignored,账单/CSV/数据库备份)
MoneyWiz 的 CSV 导入器仅支持 Income / Withdraw / Transfer 三种类型,无法直接生成 Refund。本 Skill 的处理方式:
交易分类=退款、微信 交易类型 含 -退款),在 JSON 标记 is_refund: true,CSV 写为 Income,分类占位用收入分类「退款收入」(写支出分类名会被导入器克隆成同名收入分类)。convert_refunds.py,自动关闭 MoneyWiz、备份数据库到 ./bills/backups/、把刚导入的 Income 条目按严格匹配(账户 + 金额 + 描述 + ±5min 时间窗口)UPDATE 为 Refund,再按 category_pk 把分类指回原消费分类、按 original_tx_pk 关联原消费交易,并清理导入器克隆出的分类。Refund(RefundTransaction)与 Income(DepositTransaction)在数据库中字段完全一致,仅 Z_ENT 标记不同——本 Skill 利用了这个事实,绕过 CSV 导入器的限制。Z_ENT 编号会随 MoneyWiz 升级迁移模型而整体变动,所以脚本一律按实体名到 Z_PRIMARYKEY 表实时查编号,不写死数字。
支付宝/微信账单里的金额永远是人民币,但 MoneyWiz 按账户自己的币种记账,而 CSV 导入器没有币种列——13.25 元人民币的消费导进新加坡元账户,会被直接记成 13.25 新元。
所以换算在生成 CSV 之前完成:在 config/account_map.json 的 account_currency 里登记外币账户,解析时按 fx_fallback_rates 的近似汇率换算,可再用 apply_live_fx.py 按当日汇率重算。人民币原值写进 CSV 备注列,方便日后和银行账单对照。汇率只是估算,真实扣款以银行账单为准。
~/Library/Containers/com.moneywiz.personalfinance/...)。convert_refunds.py,它的安全机制:
osascript 关闭 MoneyWiz 进程(避免运行时损坏)./bills/backups/<时间戳>.sqliteBEGIN IMMEDIATE; ... COMMIT,异常自动 ROLLBACK--dry-run 仅查询不修改MIT — 详见 LICENSE。
感谢 MoneyWiz 团队开发了这款离线优先、未加密 SQLite 的记账工具——这种开放性让本工具成为可能。
如果你觉得这个项目有用,欢迎 Star 或者 Fork 出你自己的扩展版。