用途:估算并可视化软件项目投入的工时。它把五类数据源合并去重:git 提交会话、WakaTime 编码时长、Claude Code、Codex CLI、Cursor IDE 的用户活动时间戳,输出单文件 HTML 仪表盘和 Markdown 报告。
主要能力:scripts/ 下提供 git_sessions.py、wakatime_fetch.py、claude_messages.py、codex_messages.py、cursor_messages.py 与 reconcile.py。reconcile.py 以确定性方式做会话化、区间并集与合并,支持 --gap-hours(默认 0.5)、--presence-window-min(默认 10)、--tz、--daily 等参数,并可区分“有人监督”与“无人值守”时间。报告含统计卡片、每日活动图、甘特时间线与数据表。
使用方式:先确定项目目录与日期范围,用 find 发现子仓库,对每个仓库运行各脚本;WakaTime 需先不带 --project 获取项目列表再逐个拉取。随后用 reconcile.py 合并 JSON,例如:python3 reconcile.py --git git_backend.json --claude claude_backend.json --waka waka.json --since 2026-06-29 --until 2026-08-19 --tz Europe/Berlin --daily。最后生成 work-hours-analysis.html 与 total_hours.md。
限制:需 WakaTime API key(~/.wakatime.cfg)、可访问的 git 仓库、Claude/Codex/Cursor 历史数据,缺失时对应来源为 0。不同 --gap-hours 的结果不可直接比较;监督比例对窗口大小敏感,报告需注明所用窗口。资料未提供安装方式、收费与平台支持细节。