adopt claude skill to generate report experiment
Go to file
MarioYang 226b8d81ab feat: update report template path and add new cost report files 2026-01-26 12:14:21 +08:00
.claude/skills feat: update report template path and add new cost report files 2026-01-26 12:14:21 +08:00
.env.example feat: add list porject hierarchy skill 2026-01-19 16:15:04 +08:00
.gitignore feat: add list porject hierarchy skill 2026-01-19 16:15:04 +08:00
AGENTS.md fix: subproject not shown on final report 2026-01-19 17:00:53 +08:00
README.md feat: add week report generator from JSON input 2026-01-23 17:12:01 +08:00
example.py feat: 1st skill impl 2026-01-16 16:58:31 +08:00
pyproject.toml feat: add list porject hierarchy skill 2026-01-19 16:15:04 +08:00

README.md

Report Generation Skills Experiment

This repository contains AI skills for automated report generation. Currently includes weekly project report generators that transform time tracking data into formatted management reports.

Available Skills

📊 Week Report Generator (week_report_gen)

Automatically generates weekly project reports (項目週報) from exported Excel time tracking data.

📦 Week Work Package Log (week_work_package_log)

Fetches and displays time entries grouped by work packages for specified date ranges via OpenProject API. Provides detailed analysis of work package time logging patterns with user, project, and activity information.

🚀 Week Report Generator from JSON (week_report_gen_from_json)

New Enhanced Version: Automatically generates weekly project reports directly from OpenProject API data via JSON format. Features intelligent cell merging, hierarchical project structure recognition, and streamlined workflow.

Key Advantages:

  • 🔄 Direct API Integration: No manual Excel export required
  • 🎯 Smart Cell Merging: Automatic B/C/D column merging for cleaner presentation
  • 📊 Hierarchical Structure: Proper project → sub-project → task organization
  • Automated Workflow: From data fetch to formatted report in one command
  • 🎨 Professional Layout: Enhanced visual grouping and formatting

Getting Started

Prerequisites

# Create virtual environment and install dependencies
uv sync

# Verify OpenProject API connection
uv run --env-file .env python -c 'import os; print(os.getenv("OPENPROJECT_TOKEN"))'

Usage Examples

Original Excel-based Generator

uv run --env-file .env python .claude\skills\week_report_gen\generate_report.py "temp\cost-report-2026-01-16-T-16-22-3620260116-7-1r1n4h.xls" "temp\項目週報-智能控制組-20260119.xlsx"
# Generate report for specific date range
uv run --env-file .env python .claude\skills\week_report_gen_from_json\generate_report.py "2026-01-20" "2026-01-22" "temp\週報-智能控制組-20260123.xlsx"

# Generate report for current week (default)
uv run --env-file .env python .claude\skills\week_report_gen_from_json\generate_report.py

# Use existing JSON data file
uv run --env-file .env python .claude\skills\week_report_gen_from_json\generate_report.py "data.json" "output.xlsx"