Daily Standup Generator
by @charlie-morrison
Generate structured daily standup reports by analyzing git commits, pull request activity, issue trackers, and project context. Produces yesterday/today/bloc...
clawhub install cm-daily-standup-generatorπ About This Skill
name: cm-daily-standup-generator description: Generate structured daily standup reports by analyzing git commits, pull request activity, issue trackers, and project context. Produces yesterday/today/blockers summaries tailored to your team's standup format. Use when asked to prepare a standup, summarize yesterday's work, generate a daily status update, create a standup report, or draft a scrum update. Triggers on "standup", "daily standup", "scrum update", "daily status", "what did I do yesterday", "standup report", "daily report", "status update", "stand-up". metadata: tags: ["standup", "scrum", "agile", "productivity", "git", "project-management", "daily-report", "team-collaboration"]
Daily Standup Generator
Generate comprehensive daily standup reports by analyzing your actual development activity across git history, pull requests, issue trackers, and branch context. Instead of trying to remember what you did yesterday, this skill reads the evidence and builds an accurate, well-structured standup for you.
Usage
Invoke this skill when you need to prepare for a daily standup meeting or async status update. The agent examines your recent development activity and produces a structured report.
Basic invocation: > Generate my standup report
With options: > Generate my standup for the last 2 days > Generate standup for user "jane.doe" in /path/to/repo > Generate standup report covering repos /app and /infrastructure
The agent will ask clarifying questions if needed (which repo, which git author, time range).
How It Works
Step 1: Identify the Developer and Time Range
The agent determines who the standup is for and what period to cover:
git config user.name and git config user.email in the target repository. Can be overridden if the user specifies a name or email.# The agent runs these to identify context
git config user.name
git config user.email
date +%A # Check day of week for weekend adjustment
Step 2: Gather Git Commit Activity
The agent collects all commits authored by the developer in the time range:
# Fetch recent commits with full context
git log --author="developer@email.com" --since="yesterday 00:00" \
--format="%h|%s|%b|%ai|%D" --allFor multi-repo setups, the agent repeats across each repository
git -C /path/to/repo log --author="developer@email.com" \
--since="yesterday 00:00" --format="%h|%s|%b|%ai" --all
The agent then analyzes commits to:
git diff --stat for key commits to understand magnitude# Understand the scope of specific commits
git diff --stat HEAD~5..HEAD --author="developer@email.com"Check which files/modules were touched
git log --author="developer@email.com" --since="yesterday 00:00" \
--name-only --format="" | sort -u
Step 3: Analyze Pull Request Activity
The agent checks GitHub/GitLab for PR-related work:
# PRs authored by the developer (opened, merged, updated)
gh pr list --author="@me" --state all --json title,state,url,updatedAt,reviews,labelsPRs reviewed by the developer
gh pr list --json title,state,url,reviews \
--jq '.[] | select(.reviews[]?.author.login == "username")'Recently merged PRs
gh pr list --author="@me" --state merged --json title,url,mergedAt \
--jq '.[] | select(.mergedAt > "2026-04-29T00:00:00Z")'
The agent categorizes PR activity into:
Step 4: Check Issue Tracker Activity
The agent looks for issue movement:
# Issues assigned to the developer
gh issue list --assignee="@me" --state all \
--json title,state,url,labels,updatedAtRecently closed issues
gh issue list --assignee="@me" --state closed \
--json title,url,closedAt \
--jq '.[] | select(.closedAt > "2026-04-29T00:00:00Z")'Issues with recent comments from the developer
gh issue list --json title,url,comments \
--jq '.[] | select(.comments[-1]?.author.login == "username")'
Step 5: Detect Active Branches and Work-in-Progress
The agent identifies what the developer is currently working on:
# Current branch
git branch --show-currentRecent branches with activity
git for-each-ref --sort=-committerdate --count=5 \
--format='%(refname:short)|%(committerdate:relative)|%(subject)' \
refs/heads/Uncommitted work (staged and unstaged)
git status --porcelainStashed work
git stash list
This reveals:
Step 6: Identify Blockers and Risks
The agent proactively identifies potential blockers by checking:
gh pr checks --json name,state,conclusion \
--jq '.[] | select(.conclusion == "failure")'
git log --oneline main..feature-branch | wc -l
git merge-tree $(git merge-base main feature-branch) main feature-branch
Step 7: Synthesize the Standup Report
The agent compiles everything into a structured standup report with three sections:
#### Yesterday (What I Did)
The agent groups completed work into logical categories:
Each item includes:
#### Today (What I Plan to Do)
The agent infers planned work from:
#### Blockers
The agent surfaces anything that could slow down progress:
Step 8: Format and Deliver
The agent produces the standup in the requested format:
Default format (concise bullet points):
## Standup β April 30, 2026Yesterday
Completed authentication token refresh logic (PR #142, merged)
Fixed race condition in session cleanup (commit a3f9c21)
Reviewed 2 PRs: #138 (caching layer), #140 (metrics endpoint) Today
Address review feedback on PR #145 (API rate limiting)
Start work on PROJ-289: user export feature
Merge PR #142 after CI passes Blockers
PR #145 waiting for review from @backend-team (opened 2 days ago)
Staging environment down since yesterday β can't test export feature
Verbose format adds context, file lists, and diff stats.
Slack format produces a compact message suitable for async standup channels.
JSON format for integration with standup bots and dashboards.
Output
The agent produces a standup report containing:
The report is written in first person, uses clear non-technical language where possible, and is sized for a 60-second verbal delivery (approximately 150-250 words).
Multi-Repo Support
For developers working across multiple repositories, the agent scans each repo and produces a unified standup:
Repos analyzed:
/home/dev/backend-api (12 commits)
/home/dev/infrastructure (3 commits)
/home/dev/shared-libs (1 commit)
Work items from different repos are interleaved chronologically and grouped by logical theme rather than by repository.
Team Standup Mode
When invoked with a team flag, the agent generates standups for all team members:
> Generate standup for the whole team in /path/to/repo
This produces individual sections per developer, useful for team leads preparing for standup facilitation. The agent identifies cross-team dependencies (e.g., "Alice's PR #142 blocks Bob's feature branch").
Tips for Best Results
gh CLI is authenticated (gh auth status) for PR and issue dataπ‘ Examples
Invoke this skill when you need to prepare for a daily standup meeting or async status update. The agent examines your recent development activity and produces a structured report.
Basic invocation: > Generate my standup report
With options: > Generate my standup for the last 2 days > Generate standup for user "jane.doe" in /path/to/repo > Generate standup report covering repos /app and /infrastructure
The agent will ask clarifying questions if needed (which repo, which git author, time range).