Repository navigation
Releases
v1.1.0
claude-briefing v1.1.0
Three fixes, all from actually using v1.0.0 for a few days.
Fixed: staged changes could vanish from the briefing
collect.sh used plain git diff, which only shows unstaged changes. A
repo where everything had been git add-ed but not committed counted as zero
real changes and was dropped as whitespace churn — the exact opposite of what
this tool exists to catch. Now uses git diff HEAD.
New: a session roster, so an active project can't silently disappear
The briefing used to lead with whichever project had the most recent Claude
Code session, full stop. If you touched three repos this week but only one
had a session in the last hour, the other two got no mention at all.
collect.sh now reports two things instead of one:
- detail — one block per project inside the short window (unchanged
behavior, just grouped better) - roster — every project with a session in the last 60 days
(BRIEFING_ROSTER_DAYSto change it), with a session count and how long ago
it was last touched
SKILL.md uses the roster to rank by what's actually at stake rather than
recency, cap full detail at three projects, and give everything else still
active a one-line mention in a new 🧵 Also active field. Nothing in flight
disappears just because you happened to open a different repo more recently.
Corrected: the "two seconds" claim
That number was collect.sh running alone, not a full /briefing. A real run
is closer to a minute, most of it the model reading five sources and deciding
what matters. Docs updated to say so, and to present scheduling and on-demand
as two equally reasonable ways to use it rather than steering toward one.
Also
- Repos are discovered once per run instead of once per section.
- Fixed a
.briefingignoreedge case where an all-comments file (the shipped
default) could match every path on somegrepimplementations, silently
blanking the whole briefing.
Full diff: v1.0.0...v1.1.0
v1.0.0
claude-briefing v1.0.0
A daily briefing on your engineering work, in one screen. It reads your local
git state, your Claude Code session transcripts, GitHub, your inbox, and your
Notion goals, decides what actually changed, and posts the result to Discord
(or a Gmail draft with zero setup).
Type /briefing. Two seconds later you know what you were doing and who is
waiting on you.
What it does
- Scans every git repo under
~/Developerfor uncommitted and unpushed work,
filtering out whitespace-only churn. - Reads Claude Code session transcripts (
~/.claude/projects/*.jsonl) to
recover what you were actually thinking, not just what you typed into git. - Pulls open PRs, review requests, and issues via
gh, and cross-references
issues against repos that have uncommitted work. - Optionally reads unread Gmail and Notion career/project databases, both via
MCP connectors. - Posts a structured Discord embed, or falls back to a Gmail draft if no
webhook is configured. - Every optional input (
gh, Gmail, Notion, Discord) degrades to one line of
output or silent omission — nothing here can fail the run.
Design
The tool is split into a deterministic half (collect.sh, pure bash, no LLM)
and a judgment half (SKILL.md, prose that tells Claude what counts as a
blocker and how to write it). See the README for the full
architecture and setup, including how to connect Gmail and Notion and how to
wire up a Discord webhook without creating a bot.
Install
git clone https://github.com/aurelpow/claude-briefing.git
ln -s "$(pwd)/claude-briefing" ~/.claude/skills/briefingThen, from anywhere:
$ claude
> /briefing
MIT licensed.