A CLI tool that writes your daily standup for you using your local Git history and GitHub activity.
$ git brief
📋 brief - Thursday, June 26
Yesterday:
• Fixed auth token expiry bug in /api/refresh (PR #234 merged)
• Reviewed 2 PRs: payment-service, user-onboarding
• Pushed rate limiter skeleton to feature/rate-limit
Today:
• Finishing Redis TTL fallback in rate limiter
• Pick up caching ticket (#301)
Blockers:
None
📋 Copied to clipboard. Paste into Slack.
- It scans your local git commits (defaulting to yesterday, and automatically skipping weekends).
- It fetches PRs you merged or reviewed via the GitHub API.
- It bundles that data into a strict prompt and sends it to your LLM provider.
- It outputs your standup to the terminal and copies it to your clipboard.
It makes exactly one API call per run. No chat interfaces, no wasted tokens.
Traditional git log tools usually miss half of what you actually do in a day. git-brief is built to catch the edge cases:
- Uncommitted work: It runs
git statusto include files you are actively modifying. - Git stashes: It checks your recent stashes for work you had to pause.
- Pair programming: It parses
Co-authored-by:tags in commit messages so you get credit when pairing. - Rebase-aware: It strictly looks at the commit date (
%cI), meaning rebased commits aren't lost if the author date is old. - Draft PRs & Issues: It tracks open PRs and issues you've commented on, not just what was merged.
Using Go (Recommended)
go install github.com/tukesh1/git-brief@latestBuild from source
git clone https://github.com/tukesh1/git-brief.git
cd git-brief
make installNote: The binary installs to ~/.local/bin/git-brief. Make sure that folder is in your $PATH.
Run the setup wizard to configure your workspaces and API keys:
git brief initThen generate your standup:
git briefgit brief # Generate today's standup
git brief init # Run the setup wizard
git brief config # Show your config (keys masked)
git brief version # Print the installed version
# Useful Overrides
git brief --since "monday" # Custom time range
git brief --days 3 # Look back 3 days
git brief -w ~/projects # Scan a specific directory instead of config defaults
git brief --no-clipboard # Print only, skip clipboard copyIf you want git-brief to post directly to Slack instead of copying to your clipboard, you have two options:
Set a Slack user token (xoxp-...) and a channel in your config (git brief init). It will post the standup as you.
git brief # Prompts you to confirm, then posts
git brief --slack # Posts immediately without confirmation
git brief --no-slack # Skips Slack entirelyIf you don't want to use an API token, you can just set a channel link in your config.
git brief --slack-openThis copies the brief to your clipboard and automatically opens the Slack app to your specified channel so you can hit paste.
Because git-brief only sends commit metadata (and never your source code), context windows are extremely small and cheap.
| Provider | Model | Cost per standup |
|---|---|---|
| Google Gemini | gemini-2.5-flash |
Free tier available |
| Anthropic | claude-3.5-haiku |
~$0.001 |
| OpenAI | gpt-4o-mini |
~$0.001 |
You bring your own API key. There is no subscription and no backend.
make build # Compile the binary
make install # Compile and copy to ~/.local/bin
make lint # Format and vet the code
make clean # Remove build artifactsSee CONTRIBUTING.md for guidelines.