# I built a daily work log for Claude Code, and it never leaves my machines

> Source: <https://dev.to/urvin/i-built-a-daily-work-log-for-claude-code-and-it-never-leaves-my-machines-45on>
> Published: 2026-09-26 18:02:21+00:00

I use Claude Code for most of my day, on a laptop and a desktop, with a work account and a personal one. At 6 pm I often couldn't answer two simple questions: what did I actually get done today, and how much did it use?

Token counters answer the second question. I wanted an answer to the first, so I built **worklog-for-claude-code**, a small open-source tool for Linux.

Once a day you get a simple page with:

After setup it runs in the background. You don't have to remember anything.

Claude Code writes a local transcript for every session. The tool reads those transcripts in two ways: through Claude Code hooks that fire when a session starts and ends, and through an hourly systemd timer that catches anything the hooks missed.

For each session it writes one small JSON record into a git repo you own. Every file path is written by exactly one device, so several machines can push to the same repo without merge conflicts. A nightly job turns the records into a Markdown report, and a local web UI shows it.

Transcripts contain everything you typed, so the tool is built to keep as little as possible:

`claude -p`. Turn them off to keep everything fully local.
The web UI listens on loopback only, and checks the Host and Origin headers, uses CSRF tokens and sends a strict Content-Security-Policy.

This runs the UI on fake data and doesn't touch your files:

```
pipx run --spec worklog-for-claude-code claude-worklog demo
```

Then open [http://localhost:8766](http://localhost:8766).

To install it for real:

```
pipx install worklog-for-claude-code
git init ~/claude-worklog-data
claude-worklog install-service
```

Open [http://worklog.localhost:8765](http://worklog.localhost:8765), fill in the short setup form and click **Install hook**. For several machines, put the data folder in a private GitHub or GitLab repo.

It's MIT licensed and version 0.1.0. If you try it, I'd love to hear what's missing.
