From draft
Generates standup summaries from git history, draft track progress, and optional Jira/GitHub PR activity. Read-only—no codebase changes.
npx claudepluginhub mayurpise/draft --plugin draftThis skill uses the workspace's default tool permissions.
You are generating a standup summary from recent development activity. This is a **read-only** skill — it makes no changes to the codebase or track files.
Generates standup updates summarizing recent commits, PRs, ticket changes, and activity into yesterday/today/blockers format. Works with connected source control/project tools or standalone notes.
Generates daily standup reports aggregating 24h GitHub activity (PRs, commits, reviews) and Linear issues by status (In Progress, Todo, blockers). Ideal for morning prep or activity summaries.
Generates async standup notes from Git commit history, Jira tickets, Obsidian vaults, and calendars for remote team coordination and visibility.
Share bugs, ideas, or general feedback.
You are generating a standup summary from recent development activity. This is a read-only skill — it makes no changes to the codebase or track files.
Report facts. Fabricate nothing.
Before starting, capture the current git state:
git branch --show-current # Current branch name
git rev-parse --short HEAD # Current commit hash
Store this for context. The standup reflects activity up to this specific commit.
ls draft/ 2>/dev/null
If draft/ exists, read and follow core/shared/draft-context-loading.md.
Check for arguments:
/draft:standup — Default: last 24 hours of activity/draft:standup <days> — Activity from last N days/draft:standup weekly — Full week summary (Monday-Friday)/draft:standup --author <name> — Filter to specific author# Last 24 hours by default (adjust with args)
git log --oneline --since="24 hours ago" --author="$(git config user.name)"
git log --since="24 hours ago" --author="$(git config user.name)" --format="%h %s" --no-merges
Parse commit messages for:
type(track-id): description convention)Read draft/tracks.md for active tracks:
[!])For each active track, read plan.md to determine:
[x] with recent commit SHAs)[ ] or [~])If Jira MCP is available:
gh CLI available)If GitHub MCP or the gh CLI is available:
gh pr list --author @me)gh pr view <num> --comments)gh pr list --state merged --author @me)Format using the standard Yesterday/Today/Blockers structure:
## Standup — {date}
**Author:** {git user.name}
**Period:** {time range}
### Completed
- [{track-id}] {task description} ({commit SHA})
- [{track-id}] {task description} ({commit SHA})
- Reviewed: {PR number} (if applicable)
### Planned
- [{track-id}] Next task: {description} (from plan.md)
- [{track-id}] Continue: {in-progress task} (from plan.md)
- Review: {pending reviews} (if applicable)
### Blockers
- [{track-id}] {blocked task description} — {reason}
- Waiting on: {external dependency}
### Track Progress
| Track | Phase | Tasks | Status |
|-------|-------|-------|--------|
| {id} | {N}/{total} | {done}/{total} | {status} |
If no activity found: "No commits in the last {period}. Working on: {active track description from tracks.md or 'no active tracks'}."
Present the standup summary directly in the conversation. Do not write to any file unless explicitly requested.
If the user asks to save:
draft/standup-<date>.mddraft/standup-latest.mdIf saving, MANDATORY: Include YAML frontmatter with git metadata. Follow core/shared/git-report-metadata.md.
Include the report header table immediately after frontmatter:
| Field | Value |
|-------|-------|
| **Branch** | `{LOCAL_BRANCH}` → `{REMOTE/BRANCH}` |
| **Commit** | `{SHORT_SHA}` — {COMMIT_MESSAGE} |
| **Generated** | {ISO_TIMESTAMP} |
| **Synced To** | `{FULL_SHA}` |
core/agents/ops.md for operational context awareness/draft:status data (tracks.md, plan.md, metadata.json)gh CLI (PR activity)If no git history: "No git commits found for {period}. Is this the right repository?"
If no draft context: Generate standup from git history only. Note: "Richer standups available after /draft:init."
If no MCP available: Skip Jira/PR sections, generate from local data only.