Reconstrueer je urencriterium uit GitHub, Claude Code en Toggl — local-first, voor dev-ZZP'ers.
Project description
urenbewijs
Reconstrueer je urencriterium (1.225 uur/jaar) uit third-party timestamps — local-first, voor dev-ZZP'ers.
Leuker kunnen we het niet maken, wel makkelijker.
Bronnen
- GitHub commits — sessie-clustering per repo (kost je een PAT)
- Claude Code sessies — leest lokale
.jsonlin~/.claude/projects/ - Claude.ai conversaties — uit Takeout-export
- Toggl Track — voor handmatige uren (reizen, KvK, admin)
- YouTube kijkgeschiedenis — gefilterd op tech-kanalen, voor leeruren
Toggl wint bij overlap. Output: CSV + Markdown + PDF, jaartotaal en maandtotalen, met bronvermelding.
Install
Vereist uv (single-binary Python-runner).
# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
Gebruik
uvx urenbewijs init # interactieve setup — PAT, Toggl, etc.
uvx urenbewijs run # genereer rapport
uvx urenbewijs where # toon paden van config + output
Config en tokens komen in ~/.urenbewijs/. Output in ~/.urenbewijs/output/.
Andere modi
uvx urenbewijs run --year 2025 # vorig jaar
uvx urenbewijs run --source github,claude_code # subset bronnen
uvx urenbewijs run --no-pdf --no-dedup # debug
uvx urenbewijs run --verbose # toon elke sessie
Dagelijks automatisch
Windows Task Scheduler:
$uvx = (Get-Command uv).Source
$action = New-ScheduledTaskAction -Execute $uvx -Argument 'tool run urenbewijs run'
$trigger = New-ScheduledTaskTrigger -Daily -At 22:00
$set = New-ScheduledTaskSettingsSet -StartWhenAvailable -ExecutionTimeLimit (New-TimeSpan -Minutes 30)
$user = New-ScheduledTaskPrincipal -UserId $env:USERNAME -LogonType Interactive
Register-ScheduledTask -TaskName 'urenbewijs' `
-Action $action -Trigger $trigger -Settings $set -Principal $user
macOS/Linux: gebruik cron of launchd.
Privacy
- Alle tokens staan in
~/.urenbewijs/.env— op Unix chmod 0600 - Tool draait local-only — geen calls naar 1225.nl backend
- Output bevat geen ruwe message-content, alleen aggregaten
Development
git clone https://github.com/cryptoprins-ship-it/uren-administratie
cd uren-administratie
uv run --with-editable . urenbewijs --help
Status
- GitHub source (PAT-based)
- Claude Code source (auto-detect
~/.claude/projects/) - Claude.ai export source
- Toggl source
- YouTube/learning source (Takeout-based)
- Deduplicatie (Toggl > claude_code > claude_web > learning > github)
- CSV + Markdown + PDF rapport
-
initwizard - PyPI publish
License
MIT — zie LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file urenbewijs-0.1.0.tar.gz.
File metadata
- Download URL: urenbewijs-0.1.0.tar.gz
- Upload date:
- Size: 24.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62a913829f4929566cf56fbeebbe1e244eb25fb7bb8bbae804ba6dc5b5f3574c
|
|
| MD5 |
659393a1dc8223827868a044d8ba5719
|
|
| BLAKE2b-256 |
87ba1befb805d6fd81d943b3431ea580f4c2ef7fc31a8bc68d9ea4e0df18c101
|
File details
Details for the file urenbewijs-0.1.0-py3-none-any.whl.
File metadata
- Download URL: urenbewijs-0.1.0-py3-none-any.whl
- Upload date:
- Size: 31.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6052330915d7dbf661908b6c797d1f04a0b0d494b111cf8348d14529238a6318
|
|
| MD5 |
6a5ffb32bdbc124f1ac95d87ffed9a65
|
|
| BLAKE2b-256 |
91ccd87c7935d3e9cfe672af9c80078accfb8714677be6dbac4eab392f6c0285
|