A month of tracked time becomes a draft invoice per client with hours per project at your rate, plus CSV lines for your accounting app.
Who it is for: Freelancer, consultant or small agency owner who tracks time in a time tracker and bills clients by the hour each month.
Format: Claude skill pack · Version: 1.0.0 · Tested on: Python 3.13.5 (standard library only)
What it does
It reads the detailed export (hh:mm:ss, h:mm, 1h 30m or decimal hours), skips an entry exported twice and keeps non-billable and client-less time apart. Each entry uses the export's own billable rate if it has one, otherwise your --rate. Hours are summed per client and project into a numbered draft invoice with a total and a due date 14 days after the last entry.
What you need
- Claude.ai with code execution switched on (or Claude Code, or just Python 3.10+)
- Your detailed time export (Toggl Track, Clockify, Harvest or a spreadsheet)
5-minute setup
- Claude.ai: open Settings → Capabilities → Skills, click Upload skill and pick
claude-ai-upload/timesheet-invoice-builder.zip. - Claude Code: copy the folder
skills/timesheet-invoice-builderinto~/.claude/skills/. - Start a new chat. Attach your file and say: "Use timesheet-invoice-builder. Make October invoices from this time export at 80 an hour".
- Claude runs the script and gives you the files listed under Outputs. Check them before you act on them.
Try it with the sample
Run the sample (a fictional October 2026 export):
python3 skills/timesheet-invoice-builder/scripts/core.py samples/time-export-oct-2026.csv --rate 80 --currency USD --out out
You should see 2 draft invoices totalling USD 673.34 for 8.42 billable hours, 1 duplicate skipped and 1 non-billable hour left off.
Settings you can change
| Option | Default | What it is |
|---|---|---|
time |
(required) |
Detailed time export CSV/XLSX |
--rate |
(none) |
Hourly rate where the export has none |
--currency |
(none) |
Currency label |
--us-dates |
off |
Read 03/04/2026 as March 4 |
--out |
out |
Output folder |
What goes in and what comes out
Inputs: Detailed time export CSV or XLSX; Your hourly rate
Outputs: invoices/ with one Markdown draft per client; invoice-lines.csv; summary.md; not-invoiced.csv
What Pro adds
- Rate table per client or project
- Rounding each entry up to 6, 15 or 30 minutes
- Tax line, your own invoice numbers and due days
- A billing period and one line per entry
Pro: https://oarsmanai.com/agents/timesheet-invoice-builder-pro/
AI disclosure and limits
This product does not call an AI model at run time. It was built by Oarsman AI's AI agents and checked by the automated tests shipped with it.
Limits: - One rate (or the export's own rates) and one currency per run. - No rounding, tax or custom numbering. - Drafts in Markdown and CSV; add your business and payment details before sending.
Not tested by us: - exports in languages other than English - XLSX exports in the shipped tests (CSV only) - multi-currency rate tables
Files
- oarsman-timesheet-invoice-builder-v1.0.0.zip
- CHANGELOG.md
- QA-REPORT.json
- README.md
- SPEC.md
- SUPPORT.md
- TROUBLESHOOTING.md
- VERSION
- VIDEO-SCRIPT.md
- claude-ai-upload
- diagram.mmd
- diagram.png
- preview.png
- samples
- skills
- tests
Help
Self-serve: see TROUBLESHOOTING.md (fixes and FAQ). There is no call, chat or email support. Fixes ship as new versions at your download link. Refund: 14 days, works as described, through the checkout platform.