AI-powered dev diary generator that scans your git repositories and creates a narrative summary of your work
A terminal UI application that scans your local git repositories, collects recent commits, and generates an AI-powered "dev diary" summarizing your work.
- Fuzzy-finder directory picker for easy navigation
- Recursively scans for git repositories (skips
node_modules) - Collects commits and diffs from recent days
- Generates a narrative dev diary using AI via Vercel AI Gateway
- Outputs a markdown file to your chosen location
- Remembers your preferences across sessions
- Vercel AI Gateway API key (required for AI summarization)
- Bun v1.3.2 or higher (only for npm installation or development)
Note: Standalone binaries include the Bun runtime, so you don't need to install Bun separately.
Install with a single command:
curl -fsSL https://raw.githubusercontent.com/k-dang/dev-diary/main/install.sh | shOr manually download the latest binary for your platform from GitHub Releases:
- Windows:
dev-diary-windows-x64.exe - macOS (Apple Silicon):
dev-diary-darwin-arm64 - macOS (Intel):
dev-diary-darwin-x64 - Linux:
dev-diary-linux-x64
Make it executable and run:
chmod +x dev-diary-*
./dev-diary-*npx @k-dang/dev-diarynpm install -g @k-dang/dev-diarygit clone https://github.com/k-dang/dev-diary.git
cd dev-diary
bun install# Set your API key
export AI_GATEWAY_API_KEY=your-key-here
# Run the CLI
dev-diaryOr with npx:
AI_GATEWAY_API_KEY=your-key npx @k-dang/dev-diaryOr if installed globally:
AI_GATEWAY_API_KEY=your-key dev-diary- Input - Select a directory to scan and output path using the fuzzy finder
- Scanning - Finds all git repositories recursively (max depth: 3)
- Preview - Review discovered repos, press Enter to confirm
- Fetching - Collects commits and diffs from each repo
- Summarizing - AI generates a dev diary narrative
- Complete - Markdown file saved to output directory
Generates a markdown file named dev-diary-YYYY-MM-DD.md in your output directory:
# Dev Diary - January 15, 2026
## Summary
Today's work focused on...
## Repository: my-project
- Implemented feature X
- Fixed bug in component Y
...| Environment Variable | Description | Default |
|---|---|---|
AI_GATEWAY_API_KEY |
Vercel AI Gateway API key | required |
DAILY_SUMMARY_OUTPUT |
Output directory | ~/Documents/dev-diary |
DAILY_SUMMARY_DEPTH |
Max directory scan depth | 3 |
DAILY_SUMMARY_DAYS |
Days of commits to include | 1 |
- Runtime: Bun (JavaScript runtime & bundler)
- Language: TypeScript with strict mode
- TUI: @opentui/react (React-based terminal UI)
- AI: Vercel AI SDK with Google Gemini
This package is automatically published to npm via GitHub Actions when changes are pushed to the main branch. The workflow:
- Runs TypeScript type checking (
bun run check) - Runs code linting (
bun run lint) - Checks if the version in
package.jsonhas changed - Publishes to npm if the version is new
To publish a new version:
- Update the version in
package.json - Commit and push to main
- GitHub Actions will automatically publish to npm
Required Secret: NPM_TOKEN must be configured in repository secrets for automated publishing.
Standalone binaries are automatically built for all platforms when you push a version tag:
# Update version in package.json, then:
git tag v0.2.1
git push origin v0.2.1GitHub Actions will:
- Build executables for Windows, macOS (ARM64 + x64), and Linux
- Create a GitHub Release with auto-generated release notes
- Attach all binaries to the release
Binaries are built on native runners to ensure compatibility.