with one click
gh-daily
Generate standup reports from GitHub Issues activity and git history.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Generate standup reports from GitHub Issues activity and git history.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Headless browser automation CLI optimized for AI agents. Uses snapshot + refs system for 93% less context overhead vs Playwright. Purpose-built for web testing, form automation, screenshots, and data extraction.
Manage a gitflow branching workflow — starting and finishing feature, release, and hotfix branches; cutting versioned releases with changelog generation; coordinating emergency hotfixes directly to production; and keeping long-lived branches in sync. Activates when users mention gitflow, feature/release/hotfix branches, cutting a release, branching strategy, promoting an integration branch to production, tagging a version, or rolling back a live release. Also reaches for it when the user says "ship it", "promote dev to main", or "we need to hotfix prod" without naming gitflow. Skip for general git mechanics (commit messages, merge conflicts, interactive rebase, git education) or CI-failure debugging unrelated to a release.
Fixes a bug through test-driven debugging — reproduces it with a failing test, locates the root cause with evidence (file:line), then applies the smallest fix that resolves it without refactoring unrelated code. Use when the user wants to fix a bug, debug an issue, resolve an error, or investigate a failing test. Not for building new functionality (use implement-feature) or restructuring working code with no bug involved (use refactor).
Implements a new feature end-to-end as a senior staff engineer would — discovers project conventions, researches current best practices, drafts a plan for approval, then builds it with parallel subagents that reuse existing code, skip speculative abstractions, and verify with tests before completion. Use when the user wants to implement, build, add, or ship new functionality (a feature, endpoint, component, module, or integration) — not for fixing an existing bug (use fix-bug) or restructuring code that already works (use refactor).
Restructures existing code without changing its behavior — maps callers and test coverage, adds characterization tests where coverage is thin, then applies the change in small steps verified against the full test suite after each one. Use when the user wants to refactor, extract a method or class, simplify logic, reduce duplication, improve naming, restructure modules, or pay down technical debt in code that already works. Not for adding new functionality (use implement-feature) or fixing broken behavior (use fix-bug).
Runs a comprehensive multi-agent code review of a PR, commit, or the whole codebase across six dimensions (correctness, performance, code style, test coverage, error handling, and simplicity/over-engineering) and returns a severity-ranked report with file:line findings and fix suggestions. Use when the user wants a thorough code review, asks to review a PR or diff, or wants over-engineered code flagged for simplification. Analysis only, identifying issues without modifying code, committing, or running tests. Not for a security-focused audit (use review-security) or a visual/UX design critique (use review-design).
| name | gh-daily |
| description | Generate standup reports from GitHub Issues activity and git history. |
| metadata | {"author":"mgiovani","version":"1.0.0","source":"https://github.com/mgiovani/skills"} |
| disable-model-invocation | true |
Cross-Platform AI Agent Skill This skill works with any AI agent platform that supports the skills.sh standard.
Smart standup report generator that analyzes GitHub Issues activity, pull requests, notifications, and git history to provide structured updates for daily meetings.
CRITICAL: Standup reports must reflect ACTUAL work done:
gh CLI outputclosed or PR is mergedgit log output, never estimateDetect the working context in order of priority:
--repo owner/repo or -r owner/repogit remote get-url origingh repo view --json nameWithOwner -q .nameWithOwner# Detect current repo from git remote
REPO=$(gh repo view --json nameWithOwner -q .nameWithOwner 2>/dev/null)
if [ -z "$REPO" ]; then
echo "ERROR: Not in a GitHub repository. Use --repo owner/repo to specify."
fi
echo "Detected repo: $REPO"
# Detect authenticated user
GH_USER=$(gh api user -q .login 2>/dev/null)
echo "Authenticated as: $GH_USER"
If no repo is detected and none provided, ask the user to specify with `--repo owner/repo`.
If the user works across multiple repos, offer to scan all repos where they have recent activity:
```bash
# Find repos with recent activity (issues assigned to user)
gh search issues --assignee @me --state open --limit 20 --json repository --jq '[.[].repository.nameWithOwner] | unique | .[]'
## Workflow
### Phase 2: Calculate Date Range
```bash
# Calculate since date (yesterday, or Friday if today is Monday)
if [[ $(date +%u) == 1 ]]; then
# Monday - report from Friday
SINCE_DATE=$(date -v-3d +%Y-%m-%d 2>/dev/null || date -d "3 days ago" +%Y-%m-%d)
else
# Other days - report from yesterday
SINCE_DATE=$(date -v-1d +%Y-%m-%d 2>/dev/null || date -d "yesterday" +%Y-%m-%d)
fi
echo "Reporting since: $SINCE_DATE"
### Phase 3: Gather Activity Data
```bash
# Get issues assigned to me (open)
gh issue list --assignee @me --state open --json number,title,state,labels,milestone,updatedAt,createdAt --limit 50
# Get issues closed recently (by me)
gh issue list --assignee @me --state closed --json number,title,state,labels,closedAt,milestone --limit 20 | jq --arg since "$SINCE_DATE" '[.[] | select(.closedAt >= $since)]'
# Get PRs authored by me (open)
gh pr list --author @me --state open --json number,title,state,reviewDecision,isDraft,labels,updatedAt --limit 30
# Get PRs merged recently
gh pr list --author @me --state merged --json number,title,mergedAt,labels --limit 20 | jq --arg since "$SINCE_DATE" '[.[] | select(.mergedAt >= $since)]'
# Get PRs where my review is requested
gh pr list --search "review-requested:@me" --state open --json number,title,author,updatedAt,labels --limit 20
# Get notifications (mentions, review requests, assignments)
gh api notifications --jq '.[] | select(.unread == true) | {reason: .reason, title: .subject.title, type: .subject.type, url: .subject.url}'
# Get git activity
git log --author="$(git config user.email)" --since="$SINCE_DATE" --oneline --all --no-merges
# Count commits and files changed
git rev-list --count --since="$SINCE_DATE" --author="$(git config user.email)" --all 2>/dev/null || echo "0"
git diff --stat $(git log --since="$SINCE_DATE" --author="$(git config user.email)" --format=%H --all | tail -1)..HEAD --shortstat 2>/dev/null
### Phase 4: Analyze with SubAgents (For Comprehensive Reports)
For detailed format, use parallel analysis:
Agent 1 - Work Classification:
Agent 2 - Impact Analysis:
Agent 3 - Git Correlation:
Track sections completed with TodoWrite.
When analyzing issues, score them using these factors:
priority: critical or P0 = x10, priority: high or P1 = x7, priority: medium or P2 = x4blocked or blocking label = +5 pointsbug with high priority = +4 pointsFor detailed output format templates (default, brief, slack), see references/output-formats.md.
Available formats:
--format brief): Concise one-line-per-section format for quick standups--format slack): Formatted for Slack/Teams posting with markdown--repo <owner/repo> or -r <owner/repo>Specify the GitHub repository explicitly.
gh-daily --repo myorg/myapp
### `--since <date>`
Override the automatic date calculation.
```bash
gh-daily --since 2025-01-20
### `--format <format>`
Choose output format for different audiences.
```bash
gh-daily --format brief # Concise version for quick standups
gh-daily --format detailed # Full version with technical details (default)
gh-daily --format slack # Formatted for Slack/Teams posting
### `--all-repos`
Scan all repos where you have recent assigned issues, not just the current repo.
```bash
gh-daily --all-repos
### `--include-reviews`
Include PRs where your review was requested (shown separately by default only in detailed format).
```bash
gh-daily --format brief --include-reviews
## Smart Features
### Context Awareness
- Detect Monday condition and report from last Friday
- Identify milestone boundaries and adjust progress tracking
- Recognize critical/blocking issues via labels and highlight urgency
- Correlate git commits with GitHub issue references (`#123`, `fixes #456`)
- Detect cross-repo activity when using `--all-repos`
### Progress Intelligence
- Calculate milestone completion percentage
- Compare current throughput to recent averages
- Identify patterns in blocking issues
- Track code review participation and response times
### Goal Alignment
- Map completed work to milestone objectives
- Highlight work that unblocks teammates
- Identify contributions to team goals
- Suggest proactive communications
## Integration Points
### With gh-todo Skill
- Reference yesterday's planned work vs. actual completion
- Update priority recommendations based on standup outcomes
### With git-commit / git-create-pr Skills
- Parse commit messages for automatic work categorization
- Link git branches to issues for complete picture
- Integrate with PR status for review workflow visibility
### With Development Tools
- Check current git branch for active issue context
- Correlate file changes with issue scope
- Identify stale branches needing cleanup
## Usage Examples
```bash
# Basic usage (auto-detects repo, yesterday's activity)
gh-daily
# Specify repo explicitly
gh-daily --repo myorg/backend
# Quick standup format
gh-daily --format brief
# For Slack posting
gh-daily --format slack
# Custom date range
gh-daily --since 2025-01-15
# All repos you contribute to
gh-daily --all-repos
# Weekly summary
gh-daily --since $(date -v-7d +%Y-%m-%d 2>/dev/null || date -d "7 days ago" +%Y-%m-%d)
## Daily Routine Integration
### Morning Preparation (5 minutes)
```bash
gh-daily --format brief
# Review and adjust for accuracy
# Copy to standup notes
### Standup Meeting (2 minutes per person)
- Read directly from generated report
- Add context or clarifications as needed
- Note any team dependencies or offers to help
### Weekly Summary
```bash
gh-daily --since $(date -v-7d +%Y-%m-%d 2>/dev/null || date -d "7 days ago" +%Y-%m-%d) --format detailed
## Quality Checklist
The report ensures the standup covers:
- [ ] Concrete accomplishments with business impact
- [ ] Clear current work with scope context
- [ ] Specific blockers with escalation plans
- [ ] PR review status and pending reviews
- [ ] Milestone/goal alignment and risk identification
- [ ] Proactive communication about dependencies
## Important Notes
- **Requires gh CLI**: Install from https://cli.github.com/ and authenticate with `gh auth login`
- **Authentication**: Must be logged in (`gh auth status` to verify)
- **Repository context**: Auto-detected from git remote or specify with `--repo`
- **Git integration**: Uses local git repository for commit analysis
- **Real data only**: All metrics based on actual GitHub and git data
- **Rate limits**: GitHub API has rate limits; `gh` CLI handles pagination automatically