Watson is an open-source CLI time tracker that replaces cloud timesheets with terminal-based frame logging, JSON exports, and shell status integration.
French development firm TailorDev created Watson in 2015 so engineers could log project hours directly from shell prompts without context-switching into browser dashboards. After TailorDev closed, maintenance transitioned to the Jazzband collective, keeping the tool focused as a lightweight command-line tracker. That history leaves Watson today as an offline-first Python utility that records time frames into local JSON files and integrates cleanly with UNIX terminal pipelines.
Instead of competing directly with web suites like Toggl Track or Clockify, Watson targets engineers working inside terminal multiplexers, SSH sessions, and code editors. Cloud timesheets rely on browser extensions and desktop windows that interrupt keyboard workflows. Watson replaces that friction with UNIX conventions, offering shell completions for Bash and Zsh alongside status commands that feed active timers directly into tmux, Polybar, or window manager bars.
This terminal-first design omits automated client invoicing, visual boards, and centralized accounts. With the retirement of TailorDev's Crick sync backend, Watson operates strictly as a local-first recording engine. Teams requiring timesheet approvals across non-technical staff still need hosted SaaS tools. However, developers and DevOps engineers who want to tie timers into Git branch workflows and pipe data into shell utilities find that Watson fits cleanly into terminal environments.
watson report --json and watson log --json for ingestion into custom invoicing or accounting pipelines.$EDITOR via watson edit to fix misplaced tags, timestamps, or project names quickly.watson status that output plain text designed for polling by tmux status lines, Polybar, or shell prompt hooks.How does Watson differ from cloud-based trackers like Toggl Track? Watson runs locally in the terminal without remote servers, subscriptions, or mandatory web accounts, storing all sessions in local JSON files. Cloud trackers like Toggl Track provide hosted dashboards, team billing controls, and client invoicing at the cost of local terminal integration.
Can Watson synchronize time frames across multiple computers? Watson has no official hosted sync service following the retirement of the Crick backend. Users synchronize records across machines by placing configuration folders in a private Git repository, symlinking files to cloud storage, or running rsync.
Where are Watson time logs stored on disk?
On Linux and macOS, Watson saves frame data inside user configuration directories under ~/.config/watson/frames. Windows installations place the JSON storage file within local application data folders under AppData/Local/TailorDev/Watson.
Watson is an ideal fit for developers who want friction-free terminal time tracking without background telemetry or monthly subscription bills, though teams requiring client-facing invoices and centralized timesheet approvals should look elsewhere. Its permissive MIT terms permit unrestricted embedding into proprietary engineering toolchains, and steady maintenance under the Jazzband collective ensures the utility remains reliable across modern Python environments.
Lint, codegen, breaking-change checks and dependency management in one Git-native CLI. Open source, no registry lock-in.
Show that Watson is listed as an open-source alternative. Paste into your README: