Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问clear审计通过

expense-report-generator费用报告生成器

Agent Skill

expense-report-generator 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

1,772

周安装

71

GitHub Stars

53

下载量

574
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:expense-report-generator(费用报告生成器)
来源仓库:https://github.com/dkyazzentwatwa/chatgpt-skills
仓库路径:skills/expense-report-generator
安装命令:
npx skills add https://github.com/dkyazzentwatwa/chatgpt-skills --skill expense-report-generator
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/dkyazzentwatwa/chatgpt-skills --skill expense-report-generator

简介

expense-report-generator 从收据数据自动生成分类清晰、可审批的财务报告。

  • 支持 CSV/JSON 导入、自动归类与 PDF 导出功能。
  • 可标记超规费用与跟踪报销状态,适配企业财务流程。
  • 需确保输入数据真实合规,避免虚假报销风险。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Expense Report Generator

Create professional expense reports from receipt data with automatic categorization and totals.

Features

  • Multiple Input Formats: CSV, JSON, or manual entry
  • Auto-Categorization: Classify expenses by type
  • Receipt Tracking: Link receipts to expenses
  • Approval Workflow: Status tracking and approver info
  • Policy Compliance: Flag out-of-policy expenses
  • PDF Export: Professional formatted reports
  • Reimbursement Calculation: Track paid/unpaid amounts

Quick Start

from expense_report import ExpenseReportGenerator

report = ExpenseReportGenerator()

# Set report info
report.set_employee("John Doe", "EMP001", "Engineering")
report.set_period("2024-01-01", "2024-01-31")

# Add expenses
report.add_expense(
    date="2024-01-15",
    description="Client dinner",
    category="Meals",
    amount=125.50,
    receipt="receipt_001.jpg"
)

report.add_expense(
    date="2024-01-18",
    description="Uber to airport",
    category="Transportation",
    amount=45.00
)

# Generate report
report.generate_pdf("expense_report.pdf")

CLI Usage

# From CSV
python expense_report.py --input expenses.csv --employee "John Doe" --output report.pdf

# With date range
python expense_report.py --input data.csv --start 2024-01-01 --end 2024-01-31 -o report.pdf

# Set department and approver
python expense_report.py --input data.csv --employee "Jane Smith" --dept Sales \
    --approver "Bob Manager" -o report.pdf

# With policy limits
python expense_report.py --input data.csv --policy policy.json -o report.pdf

Input Format

CSV Format

date,description,category,amount,receipt,notes
2024-01-15,Client dinner at Restaurant,Meals,125.50,receipt_001.jpg,Met with ABC Corp
2024-01-16,Uber to client site,Transportation,32.00,,
2024-01-17,Office supplies,Supplies,45.99,receipt_002.jpg,
2024-01-18,Flight to NYC,Travel,450.00,flight_confirm.pdf,Project kickoff

JSON Format

{
  "employee": "John Doe",
  "employee_id": "EMP001",
  "department": "Engineering",
  "period": {"start": "2024-01-01", "end": "2024-01-31"},
  "expenses": [
    {
      "date": "2024-01-15",
      "description": "Client dinner",
      "category": "Meals",
      "amount": 125.50,
      "receipt": "receipt_001.jpg"
    }
  ]
}

Policy Configuration

{
  "limits": {
    "Meals": 75,
    "Transportation": 100,
    "Lodging": 250,
    "Supplies": 200
  },
  "requires_receipt": 25,
  "requires_approval": 500,
  "prohibited": ["Alcohol", "Personal items"]
}

API Reference

ExpenseReportGenerator Class

class ExpenseReportGenerator:
    def __init__(self)

    # Report Setup
    def set_employee(self, name: str, employee_id: str = None,
                    department: str = None) -> 'ExpenseReportGenerator'
    def set_period(self, start: str, end: str) -> 'ExpenseReportGenerator'
    def set_approver(self, name: str, title: str = None) -> 'ExpenseReportGenerator'
    def set_project(self, project_name: str, project_code: str = None) -> 'ExpenseReportGenerator'

    # Adding Expenses
    def add_expense(self, date: str, description: str, category: str,
                   amount: float, receipt: str = None, notes: str = None,
                   reimbursable: bool = True) -> 'ExpenseReportGenerator'
    def load_csv(self, filepath: str) -> 'ExpenseReportGenerator'
    def load_json(self, filepath: str) -> 'ExpenseReportGenerator'

    # Policy
    def set_policy(self, policy: Dict) -> 'ExpenseReportGenerator'
    def check_compliance(self) -> List[Dict]

    # Analysis
    def get_summary(self) -> Dict
    def by_category(self) -> Dict[str, float]
    def by_date(self) -> Dict[str, float]
    def get_total(self) -> float

    # Export
    def generate_pdf(self, output: str) -> str
    def generate_html(self, output: str) -> str
    def to_csv(self, output: str) -> str
    def to_json(self, output: str) -> str

Expense Categories

Standard categories:

  • Meals: Business meals and entertainment
  • Transportation: Taxi, rideshare, rental car, parking
  • Travel: Flights, trains, hotels
  • Lodging: Hotel, accommodation
  • Supplies: Office supplies, equipment
  • Communication: Phone, internet
  • Professional: Conferences, training, memberships
  • Other: Miscellaneous expenses

Report Summary

summary = report.get_summary()
# Returns:
# {
#     "employee": "John Doe",
#     "period": {"start": "2024-01-01", "end": "2024-01-31"},
#     "total_expenses": 1250.50,
#     "expense_count": 15,
#     "categories": {
#         "Meals": 325.00,
#         "Transportation": 180.50,
#         "Travel": 650.00,
#         "Supplies": 95.00
#     },
#     "reimbursable": 1150.50,
#     "non_reimbursable": 100.00,
#     "receipts_attached": 12,
#     "receipts_missing": 3
# }

Policy Compliance

# Set spending limits
report.set_policy({
    "limits": {
        "Meals": 75,      # Per transaction limit
        "Daily_meals": 100  # Daily limit
    },
    "requires_receipt": 25,  # Receipts required above this
    "requires_approval": 500  # Manager approval above this
})

# Check compliance
violations = report.check_compliance()
# Returns:
# [
#     {"expense_id": 3, "type": "over_limit", "category": "Meals",
#      "amount": 125.50, "limit": 75},
#     {"expense_id": 7, "type": "missing_receipt", "amount": 45.00}
# ]

Generated Report Contents

The PDF report includes:

  1. Header

- Company logo (optional) - Report title and date range - Employee information

  1. Summary Section

- Total amount - Category breakdown - Reimbursement status

  1. Expense Details Table

- Date, description, category - Amount, receipt status - Notes

  1. Category Charts

- Pie chart of spending by category - Daily spending bar chart

  1. Compliance Notes

- Policy violations (if any) - Missing receipts

  1. Approval Section

- Employee signature line - Approver signature line - Date fields

Example Workflows

Monthly Employee Report

report = ExpenseReportGenerator()
report.set_employee("Sarah Johnson", "EMP042", "Marketing")
report.set_period("2024-02-01", "2024-02-29")
report.set_approver("Mike Director", "VP Marketing")

# Load from tracking spreadsheet
report.load_csv("february_expenses.csv")

# Check policy
violations = report.check_compliance()
if violations:
    print(f"Warning: {len(violations)} policy violations")

# Generate report
report.generate_pdf("sarah_feb_expenses.pdf")
print(f"Total: ${report.get_total():,.2f}")

Project Expense Tracking

report = ExpenseReportGenerator()
report.set_employee("Project Team")
report.set_project("Website Redesign", "PRJ-2024-001")
report.set_period("2024-01-01", "2024-03-31")

# Add project expenses
report.add_expense("2024-01-15", "Design software license", "Software", 299.00)
report.add_expense("2024-02-01", "User testing incentives", "Research", 500.00)
report.add_expense("2024-02-20", "Stock photos", "Creative", 150.00)

summary = report.by_category()
print("Project Expenses by Category:")
for cat, amount in summary.items():
    print(f"  {cat}: ${amount:,.2f}")

Dependencies

  • pandas>=2.0.0
  • reportlab>=4.0.0
  • matplotlib>=3.7.0

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenCode

27.75%
按下载量换算159

Claude Code

20.15%
按下载量换算116

Codex

16.41%
按下载量换算94

Gemini CLI

12.95%
按下载量换算74

Antigravity

8.4%
按下载量换算48

windsurf

3.28%
按下载量换算19

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

来源信息

继续浏览同类 Skills