Skip to main content

Automatic work activity tracker with AI-powered daily Excel reports

Project description

Work Tracker

Automatic work activity tracker for macOS — tracks your IDEs, meetings, and browser usage all day, then drops a polished Excel report on your desk at 6 PM with an AI-written summary of your day.

PyPI version Python License: GPL v3 Buy Me a Coffee


What it does

  • Tracks time in VS Code, Rider, IntelliJ, Visual Studio, Jupyter, Xcode and more
  • Detects meetings in Teams, Zoom, Webex, Skype, Google Meet, Slack huddles
  • Knows which project you're in by reading the IDE window title
  • Skips idle time — if you step away, it stops counting
  • Reads your git commits and links them to the project you worked on
  • Generates a daily Excel report at a time you choose (default 6 PM, Mon–Fri)
  • AI narrative summary via a local Ollama model — 100% private, no cloud

Requirements

  • macOS (uses AppleScript and launchd)
  • Python 3.9+
  • Ollama installed locally (optional, for AI summary)

Install

pip install devtrackr

Quick start

devtrackr init

That's it. The wizard asks four questions, then installs and starts the tracker automatically.

──────────────────────────────────────────────────
  Welcome to Work Tracker!
──────────────────────────────────────────────────

[1/4] Where are your git repos? (comma-separated paths)
      > ~/repos, ~/work/client-projects

[2/4] Where should daily reports be saved?
      > ~/Documents/WorkReports

[3/4] What time to generate the daily report? (24h)
      > 18

[4/4] Ollama model for AI summary?
      > llama3.2:3b

✅ Config saved → ~/.worktracker/config.toml
✅ Background tracker started
✅ Daily reports scheduled at 18:00 Mon–Fri
✅ Reports will be saved to: ~/Documents/WorkReports

Commands

Command Description
devtrackr init First-time setup wizard
devtrackr status Show running status and last recorded activity
devtrackr report Generate today's report right now
devtrackr report --date 2026-05-15 Generate report for a specific date
devtrackr start Start the background tracker
devtrackr stop Stop the background tracker

Excel report

Each daily report contains four sheets:

Sheet Contents
Summary Total hours, meeting hours, coding hours; per-app/project breakdown
By Project Hours per project sorted by time spent
Git Activity Commits you made today, per repo
AI Summary A 3–5 sentence narrative of your day written by Ollama

Configuration

Config lives at ~/.worktracker/config.toml. Edit it any time:

[paths]
repos_dirs  = ["~/repos", "~/work"]   # scan multiple repo roots
reports_dir = "~/Documents/WorkReports"
db_path     = "~/.worktracker/logs.db"

[tracker]
poll_interval  = 10    # seconds between samples
idle_threshold = 300   # seconds idle before pausing
report_hour    = 18    # 24h — report fires Mon–Fri at this hour

[ai]
ollama_enabled = true
ollama_model   = "llama3.2:3b"
ollama_url     = "http://localhost:11434"

After editing, restart the tracker:

devtrackr stop && devtrackr start

Apps tracked

IDEs — VS Code, Visual Studio, Rider, IntelliJ IDEA, PyCharm, WebStorm, GoLand, Xcode, Jupyter (in browser)

Meetings — Microsoft Teams, Zoom, Webex, Skype, Google Meet, Slack (huddles), Discord (voice channels)

Browsers — Chrome, Firefox, Safari, Edge, Arc, Brave, Opera, Vivaldi

Terminal — Terminal, iTerm2, Warp, Hyper, Kitty, Ghostty


Privacy

Everything stays on your Mac:

  • Activity data → ~/.worktracker/logs.db (SQLite, only you can read it)
  • Reports → your chosen folder
  • AI summary → processed by Ollama running locally, nothing sent to the cloud

Contributing

Pull requests are welcome! Please open an issue first to discuss what you'd like to change.

git clone https://github.com/adeleye-art/devtrackr
cd devtrackr
pip install -e .
devtrackr init

❤️ Support this project

Work Tracker is free and open source. If it saves you time, consider buying me a coffee — it helps me keep working on it!

Buy Me A Coffee GitHub Sponsors


License

GNU GPL v3 © 2026 Adeleye Alarape

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

devtrackr-0.1.1.tar.gz (15.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

devtrackr-0.1.1-py3-none-any.whl (15.7 kB view details)

Uploaded Python 3

File details

Details for the file devtrackr-0.1.1.tar.gz.

File metadata

  • Download URL: devtrackr-0.1.1.tar.gz
  • Upload date:
  • Size: 15.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for devtrackr-0.1.1.tar.gz
Algorithm Hash digest
SHA256 bb4b47fc3875316e3e2ae452568477a742e1f06abdcd61ae6713c252aa7b1893
MD5 f1cbaccd94e8a7c7c31e73aded9251a6
BLAKE2b-256 3c43697505875fac0a689a00890fd8fda78b30bf9795de1274d931fcc3b3273c

See more details on using hashes here.

Provenance

The following attestation bundles were made for devtrackr-0.1.1.tar.gz:

Publisher: publish.yml on adeleye-art/devtrackr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file devtrackr-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: devtrackr-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 15.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for devtrackr-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 44ec05bc405c9606f95acf61f532b71f5382eb8c00851e6a8687bc8a902a6515
MD5 1a669cbe974eacc45fd14ed02bb4d1ec
BLAKE2b-256 5ab73be7c4c13bdc8fa82d91e10b2abcb268cf8b7bd7edb895f3c92b1e18d891

See more details on using hashes here.

Provenance

The following attestation bundles were made for devtrackr-0.1.1-py3-none-any.whl:

Publisher: publish.yml on adeleye-art/devtrackr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page