devlog-ai
v0.1.0
Published
AI-powered daily dev log reporter — auto-collects commits, summarizes features, and tracks performance per repo
Maintainers
Readme
devlog
AI-powered daily dev log reporter.
Auto-collects your git commits, analyzes code diffs, and generates a structured daily report — as Markdown or Notion page.
Why
- "What did I do today?" — answered automatically
- Summarizes commits, categorizes work (Feature / Bugfix / Refactor / Perf)
- Analyzes actual code diffs, not just commit messages
- Tracks performance metrics with custom script hooks
- Groups activity by branch
- Works across all branches (tracks by author + time, not branch)
- 100% local — no server, your code stays on your machine
Install
npm i -g devlog-aiQuick Start
# One-time setup
devlog init
# Start your day
devlog start
# ... code, commit, switch branches, whatever ...
# End your day
devlog endSetup
devlog initWalks you through:
- AI provider — Ollama (free, local) or OpenAI API
- Model —
llama3.2for Ollama,gpt-4o-minifor OpenAI - Output — Markdown (local files), Notion, or both
- Notion — API key + Database ID (if selected)
- Perf script — optional command to track metrics (see below)
If you choose Ollama, it auto-installs via Homebrew and pulls the model for you.
Config is saved to ~/.config/devlog/config.json.
Output Example
# 2026-02-25 — Daily Dev Log
## Summary
Worked on mobile navigation and fixed translation issues.
## Branch Activity
### `feat/mobile-nav`
Implemented mobile mega menu with responsive layout and animations.
- feat: add mobile mega menu component
- feat: add nav bar slide animations
### `fix/i18n`
Fixed missing Korean translation keys.
- fix: add translations
## Features
- Added mobile mega menu with content type filters
- Implemented slide-in navigation animations
## Fixes & Refactors
- Added missing translation keys for Korean locale
## Code Changes
- Added MobileNavMenu component with useState for toggle and useEffect for body scroll lock
- Created NavAnimationWrapper using CSS transitions with transform and opacity
- Updated i18n/ko.json with 7 new translation entries for navigation labels
## Stats
- 3 commits
- +224 / -110 lines
- 17 files changed
## Commits
- `6834116` feat: add mobile mega menu component (feat/mobile-nav)
- `a1b2c3d` feat: add nav bar slide animations (feat/mobile-nav)
- `d4e5f6a` fix: add translations (fix/i18n)
## Next
- Test mega menu on various mobile screen sizes
- Validate Korean translations with native speakerPerformance Tracking
Set a perf script during devlog init:
? Perf script: node scripts/perf.jsYour script must output JSON to stdout:
{ "bundleKB": 820, "lcpMs": 2100 }devlog runs it at start (before) and end (after), then the AI describes the diff:
Bundle size reduced: 820KB → 710KB. LCP improved: 2.1s → 1.6s.
You can also manually place before/after JSON files in .devlog/perf/:
.devlog/perf/
├── lighthouse-before.json
├── lighthouse-after.json
├── bundle-before.json
└── bundle-after.jsonHow It Works
devlog start— saves current timestamp + your git email- You work normally — commit across any branches
devlog end— runs:git log --all --author=you --after=start --before=nowto collect all commitsgit showper commit to get code diffs- Perf script (if configured)
- Sends commit messages + diffs to AI for categorization and summary
- Outputs Markdown file to
.devlog/logs/YYYY-MM-DD.mdand/or Notion page
All data stays local. AI is only called at devlog end for summarization.
Tech Stack
- Node.js + TypeScript
- Commander — CLI framework
- OpenAI SDK — works with both OpenAI API and Ollama (OpenAI-compatible)
- Notion SDK — optional Notion integration
- Inquirer — interactive prompts
License
MIT
