Skip to content

Features

The whole day, written down for you.

Devlog watches where the work happens — repos, trackers, calendars — and turns it into a log you approve rather than one you type. This is everything it does, in the order you'll meet it.

Sources

Every place the work actually happens.

Commits from GitHub, GitLab, Bitbucket and Azure DevOps. Issues from Jira, Linear and GitHub. Meetings from Google and Outlook calendars. Incidents from Sentry. The reviews, PRs and issues that never produced a commit come along too.

  • Public and private repositories, OAuth or a token
  • One source failing never costs you the others
  • Push anything else in through an API key

Today · sources

  • github.com/acme/api4 commits · 1 review
  • gitlab.com/acme/infra2 commits
  • Jira · DEV-42moved to In progress
  • Google Calendar3 meetings · 2h10m
  • Sentry1 incident resolved

The model

Your provider, your key, your prompt.

Seven providers out of the box, including a local model through Ollama for self-hosted installs where commit messages never leave your infrastructure. Bring your own key and the provider bills the model calls to you directly.

  • OpenAI, Anthropic, Gemini, Groq, Mistral, Ollama, any OpenAI-compatible endpoint
  • Commit messages and counts go to the model. File contents never do
  • Test the connection before the first run

AI provider

OpenAI
Anthropic
Gemini
Groq
Mistral
Ollama · local
Custom endpoint

key = yours · prompt = yours

Review

Nothing is final until you say so.

Summaries you generate are shown before they are saved, and nightly runs land as drafts. Edit anything that misreads the day, drop days you don't want, then submit. The same discipline applies to reports and to the sentences you dictate.

  • Task links show which were certain, which the model inferred, which you set
  • A key the model invents is discarded, not written
  • Reopen a submitted day as a draft, unless your workspace locks them

Review before saving

draft

Shipped branch-aware commit fetching and closed the public-access gap on operator-only functions. Covered the schedule rollover with tests.

DEV-42 · certain6.5h · measured2 repos
Edit Approve

Hours

Hours that say where they came from.

Measured from the span between the first and last commit plus anything you logged, typed by you, or estimated by the model — and every entry says which. An estimate is never presented as a measurement, anywhere it appears.

  • Provenance survives into CSV exports and team reports
  • Meetings, reviews, on-call and pairing count, with their own hours
  • Dictate a sentence and it becomes a draft entry, dated and categorised

Where the hours came from

measured

first commit 09:12 → last 17:40

6.5h

typed

you entered it

4.0h

estimated

the model's guess, labelled

~3h

Automation

Runs nightly, in your timezone.

Set a time and a zone once. 22:00 means 22:00 where you are, and a commit at 01:00 belongs to that day, not the previous one. A night that fails can be retried the same day, and a missed week can be back-filled in one go.

  • Runs while a tab is open, or from a cron you control
  • Bulk fill only touches days with activity and no entry
  • Each run records what it wrote and what it cost

Nightly schedule

22:00

Asia/Kolkata · where you are, not the server

MTWTFSS

A failed night can be retried the same day. Back-fill a missed week from Bulk fill.

Workspaces

The log writes itself against the assigned task.

Create a workspace, invite your engineers, assign the work. A task key in a commit message links that day's log to that task exactly. Managers read one report across every member, with hours and provenance, exportable as CSV.

  • Owner, admin, manager, member — each sees what their role warrants
  • Import a backlog from Jira, Linear or GitHub Issues instead of retyping it
  • Separated at the database by row-level security, not by a filter someone could forget

Project · API · 3 members

Todo

DEV-43 Weekly digest opt-in

Doing

DEV-42 Branch filter on commit fetch

Done

DEV-41 Rate-limit the ingest route

A commit that says DEV-42 links to that task exactly. No guessing.

Reports and Ask

Read it back, in the reader's language.

Ask questions of your own log in plain English. Generate a report for a manager, an executive, or an engineer — three audiences, same facts. Every number comes from a query, and the model is handed the figures rather than asked for them.

  • Management, executive and technical framings
  • Sending is a second, deliberate step after the draft is on screen
  • A Monday digest of your own week, opt-in, with no team comparison

Report · last 2 weeks · management

draft

9

days logged

41h

hours (measured)

3

tasks advanced

Numbers come from SQL. Prose comes from the model, handed the numbers as facts and forbidden from inventing its own.

Public profile

A page worth screenshotting.

An opt-in public profile built from aggregates only — streaks, a heatmap of real commit activity, your rhythm through the day. No commit message, summary or highlight is reachable from it. Hours and project names are separately opt-in and off by default.

  • Link unfurls with a generated image in Slack, Discord and Twitter
  • A story-sized image for Instagram and TikTok
  • Wrapped: your year in code, built from the real history

devlog.app/u/you

public · opt-in
🔥 23-day streak🦉 Night owl · 41% after 20:00

And the details that add up.

Dictation, on device

Say what you did. The browser's own recogniser turns it into a draft; no audio leaves the machine.

Ask the log

"What did I ship in August?" answered from your own record, with the entries it used.

Write-back, off by default

Post the day's log as a comment on the Jira or Linear issue it advanced — only for links a commit named.

Repository rules

Decide which repos count as work. Personal side projects never reach an employer's report.

Weekly digest

A Monday email about your own week. Opt-in, and silent for a week with nothing in it.

Delete everything

One control removes your account and everything keyed to it. Workspace records stay with the workspace.

Spend tonight shipping. Not writing standup notes.

Connect GitHub, pick a model, and tomorrow morning the log is already written — waiting for you to read it rather than write it.