mcpField
F
finance-manager

finance-manager

github.com/ailabs-393数据与数据库4602.5k 次安装50 周前更新
代码仓库

关于 finance-manager

finance-manager 是用于个人财务分析的工具包,适合希望从交易记录中了解收支和支出趋势的人。它可处理 PDF、CSV 和 JSON 数据,生成预算建议及带交互图表的 HTML 报告。

主要功能

  1. 01提取 PDF 交易数据
  2. 02处理 CSV 和 JSON 记录
  3. 03计算收支与储蓄指标
  4. 04分析分类支出和趋势
  5. 05生成交互式 HTML 报告

适用场景

  1. 01分析每月收入与支出
  2. 02从银行账单 PDF 提取交易
  3. 03识别支出类别和异常趋势
  4. 04查看储蓄率并调整预算

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/ailabs-393/ai-labs-claude-skills --skill finance-manager

安装后在 Claude Code 中输入/finance-manager确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

analysis.json
index.js
package.json
report.html
transactions.csv
references/
financial_frameworks.md
scripts/
analyze_finances.py
extract_pdf_data.py
generate_report.py

详细介绍

Finance Manager

一套全面的个人财务管理工具包,可处理交易数据、执行深入的财务分析、生成可执行的洞察,并创建精美的可视化报告。

核心功能

  1. 交易数据处理:从 PDF、CSV 或 JSON 文件中提取财务数据
  2. 财务分析:计算关键指标、识别支出模式并跟踪储蓄情况
  3. 可视化:生成包含图表的交互式 HTML 报告
  4. 预算建议:根据支出模式提供个性化且可执行的建议
  5. 趋势分析:识别支出模式、异常情况和优化机会

工作流

1. 数据提取与准备

对于 PDF 文件:

python scripts/extract_pdf_data.py <input.pdf> <output.csv>

对于 CSV/JSON 文件:

  • 确保数据包含以下列:Date、Description、Income(类别)、Type、Amount
  • 日期格式:YYYY-MM-DD 或可解析的日期字符串
  • 金额:收入为正数,支出为负数
2. 财务分析

对交易数据进行全面分析:

python scripts/analyze_finances.py <transactions.csv> > analysis_output.json

输出包括:

  • 汇总统计数据(总收入、总支出、净储蓄、储蓄率)
  • 支出趋势(日均支出、主要支出、类别占比)
  • 预算建议(根据支出模式提供个性化建议)
  • 可视化数据(为绘制图表做好准备)
3. 报告生成

创建包含可视化内容的交互式 HTML 报告:

python scripts/generate_report.py <analysis_output.json> <report.html>

报告功能:

  • 包含关键指标的汇总仪表板
  • 显示各类别支出的交互式饼图
  • 对比一段时间内收入与支出的柱状图
  • 颜色编码的指标(绿色表示正向,红色表示负向)
  • 个性化建议部分
  • 适用于所有设备的响应式设计
4. 完整工作流示例
# Extract data from PDF
python scripts/extract_pdf_data.py finance_data.pdf transactions.csv

# Analyze the data
python scripts/analyze_finances.py transactions.csv > analysis.json

# Generate visual report
python scripts/generate_report.py analysis.json financial_report.html

关键指标与基准

储蓄率
Savings Rate = (Total Income - Total Expenses) / Total Income × 100

基准:

  • 低于 10%:需要改善
  • 10-20%:良好
  • 20-30%:优秀
  • 高于 30%:卓越
类别指南(占收入的百分比)
  • 住房:25-30%
  • 交通:10-15%
  • 食品:10-15%
  • 公用事业:5-10%
  • 储蓄:至少 20%

如需了解详细的框架和方法,请参阅 references/financial_frameworks.md。

分析功能

汇总统计数据
  • 统计该时段的总收入和总支出
  • 净储蓄(可为正数或负数)
  • 储蓄率百分比
  • 交易数量
  • 覆盖的日期范围
支出趋势
  • 日均支出
  • 金额最大的 5 笔支出及其详情
  • 各类别占比
  • 随时间变化的支出模式
预算建议

系统根据以下因素生成个性化建议:

  • 储蓄率阈值
  • 各类别支出占比
  • 收入多元化程度
  • 与预算指南的比较结果

建议示例:

  • "⚠️ 您的储蓄率低于 10%。请考虑减少非必要支出。"
  • "🍽️ 食品支出占总支出的 18%。请考虑规划膳食以降低成本。"
  • "✅ 储蓄率非常出色!您的财务状况正朝着健康稳健的方向发展。"

可视化组件

类别支出图表(圆环图)

通过颜色编码展示各类别支出的占比。

收入与支出图表(柱状图)

按月显示收入与支出的对比,以识别现金流趋势。

交互功能
  • 悬停提示显示具体数值
  • 响应式设计,可适应不同屏幕尺寸
  • 以颜色编码标示正向(绿色)和负向(红色)指标

最佳效果提示

数据质量
  • 确保所有交易都已正确分类
  • 统一类别名称
  • 填写完整的日期信息
  • 确认金额的正负号正确(收入为正,支出为负)
分析频率
  • 每月进行分析以跟踪趋势
  • 在月末生成报告以供审阅
  • 对比相邻月份以识别变化
针对建议采取行动
  • 按潜在影响对建议进行优先级排序
  • 根据洞察设定具体、可衡量的目标
  • 定期重新运行分析,跟踪进展

依赖项

所有脚本都需要 Python 3.7+ 和标准库。其他要求:

用于 PDF 提取:

pip install pdfplumber --break-system-packages

用于数据分析:

pip install pandas --break-system-packages

所有可视化依赖项都通过 CDN 加载到 HTML 输出中(Chart.js)。

文件组织

finance-manager/
├── scripts/
│   ├── extract_pdf_data.py     # PDF → CSV conversion
│   ├── analyze_finances.py     # Financial analysis engine
│   └── generate_report.py      # HTML report generator
└── references/
    └── financial_frameworks.md # Detailed analysis methodologies

自定义

添加自定义类别

编辑 analyze_finances.py 中的类别定义,使其符合你的跟踪系统。

调整阈值

修改 generate_budget_recommendations() 函数中的建议阈值,使其符合个人目标。

设置报告样式

自定义 generate_report.py 中的 HTML_TEMPLATE,以调整颜色、字体或布局。

常见用例

月度回顾: “分析我 10 月的支出并创建一份报告”

预算优化:
“我在哪些方面花钱太多了?”

趋势分析: “我这个月的支出与上个月相比如何?”

设定目标: “我的储蓄率是多少?该如何提高?”

类别洞察: “按交易明细拆分我的食品支出”

PDF 处理: “从我的银行对账单 PDF 中提取所有交易”

最佳实践

  1. 保持分类一致: 所有交易都使用相同的类别名称
  2. 定期分析: 每月运行一次,尽早发现趋势
  3. 根据洞察采取行动: 根据建议做出具体的支出调整
  4. 跟踪进展: 按月比较报告
  5. 核实数据: 分析前务必检查从 PDF 提取的数据是否准确

参考资料

如需了解全面的财务框架、预算指南和分析方法,请阅读:

view references/financial_frameworks.md

其中包括:

  • 50/30/20 预算规则
  • 各类别支出基准
  • 财务健康指标
  • 分析工作流详情
  • 可视化最佳实践
  • 建议逻辑

评论

支持 Markdown