生成30秒站会更新,回顾昨天的Git活动——提交、PR(打开/合并/审查)及关联工单。实时拉取GitHub和Jira数据...
Run this each morning before standup. Generates a "yesterday / today / blockers" update from your actual git activity + Jira tickets over the last 24 hours, ready to paste into your team's Slack channel.
Requires GitHub and Atlassian MCP plugins to be installed and authenticated — see the Notes for the model section below for the OAuth fallback path if dynamic client registration fails.
Call mcp__plugin_engineering_github__authenticate and mcp__plugin_engineering_atlassian__authenticate to ensure both services are connected.
/mcp in Claude Code (see Notes)./mcp UI for GitHub if SDK auth fails.Call mcp__plugin_engineering_github__search_commits with query:
text
author:@me committer-date:$YESTERDAY_START..$YESTERDAY_END
(substitute UTC date range for yesterday).
[repo] <hash> <message>.Run three queries via mcp__plugin_engineering_github__search_issues (PRs are issues in GitHub search):
Opened yesterday: is:pr author:@me created:$YESTERDAY
Merged yesterday: is:pr author:@me merged:$YESTERDAY
Reviewed yesterday: is:pr reviewed-by:@me updated:$YESTERDAY (or similar; capture PRs where user added reviews)
What to capture: PR number, title, state (open/merged), URL, review count if applicable. Deduplicate across the three queries (e.g., a PR opened and merged the same day appears in both queries).
What to render: Separate bullet lists for "opened", "merged", "reviewed", or combine into one "PR activity" block if count is low.
Call mcp__plugin_engineering_atlassian__atlassianUserInfo to get the current user's Atlassian account ID.
Then call mcp__plugin_engineering_atlassian__getVisibleJiraProjects to list accessible projects.
Run two JQL queries via mcp__plugin_engineering_atlassian__searchJiraIssuesUsingJql:
Transitions yesterday: text
assignee = currentUser() AND updated >= -1d ORDER BY updated DESC
(captures all issues touched by status change, assignment change, comment, etc.)
Assigned for today (open): text
assignee = currentUser() AND status NOT IN (Done, Closed) ORDER BY priority DESC
What to capture (transitions): Issue key, title, old status → new status (if available), date of transition. If the Jira instance does not expose status-change history in the issue fields, list the issue + current status as a fallback.
What to capture (open): Issue key, title, current status, priority.
What to render: Two separate blocks in the standup output — "Yesterday (Jira transitions)" and "Today (Open tickets assigned to me)".
Combine the commits, PRs, and Jira activity into thematic groups (feature work, bug fixes, reviews, infra, unblocked). Write 1-2 bullets per group, focused on outcomes ("shipped X", "unblocked Y", "reviewed Z"). If a category has zero activity, omit it or mark "none".
Output the full update in this format:
text
*Yesterday*
• <outcome 1 — commits or PR merged>
• <outcome 2 — Jira transitions or reviews>
• <outcome 3>
*Today*
• <open Jira tickets assigned to me, by priority>
• <in-progress PRs continuing from yesterday>
*Blockers*
• <none or specific blocker from open Jira ticket>
What to render: Markdown block, ready to copy into Slack or post directly via Slack API.
#standup channel in Slack.Be terse. A standup is 30 seconds. Each bullet should be ≤ 12 words.
Lead with outcomes, not activity. "Shipped invoice export" not "Added 4 commits to billing.ts".
Skip merge / chore commits. Filter out "Merge branch...", "bump version", "fix typo" — they're noise.
If the last 24h is empty (weekend, sick day), default to "Yesterday: no activity" — don't fabricate.
GitHub authentication caveat: The plugin:engineering:github OAuth flow via SDK (Claude Code) currently fails at dynamic client registration. Fallback options:
/mcp UI → authenticate from theregithub.com/settings/tokens with scopes repo, read:user. Configure the plugin to use the PAT, then search_commits and search_issues tools become available.Atlassian OAuth: Usually succeeds. If auth fails, check that the user has an active Atlassian account and sufficient permissions in the connected Jira workspace.
Empty Jira workspace: If the workspace has zero issues or your accessible projects have zero transitions yesterday, the JQL queries will return empty arrays. The skill should still render cleanly with "No Jira activity" or omit the Jira section entirely.
Date range customization: The skill should accept an optional --date-range parameter (default: "yesterday") to pull activity from "3 days ago", "1 week ago", etc. This supports the demo use case where the live workspace is new.
ErrorDiagnosisTell the userauthenticate fails for GitHubOAuth flow failed via SDK; manual /mcp auth required"GitHub OAuth failed. Run /mcp in Claude Code, find the engineering plugin, and authenticate from the UI. Then retry this skill."authenticate fails for AtlassianInvalid credentials or expired session"Atlassian auth failed. Verify your account is active and you have Jira access. Try authenticating again via the flow below, or contact your Jira admin."search_commits returns zero resultsNo commits authored by you in the date range (weekend, on-call, etc.)"No commits found yesterday. Would you like me to check the prior workday or a broader date range?"search_issues (PRs) returns zero resultsNo PR activity in the date range"No PR activity yesterday." (Not an error, just state it in the output.)searchJiraIssuesUsingJql returns zero resultsNo Jira transitions or assignments in the workspace"No Jira activity found. This workspace may be new. Try broadening the date range (e.g., --date-range=7d)."getVisibleJiraProjects returns empty arrayUser has no access to any Jira projects"You don't have access to any Jira projects. Contact your Jira admin or ensure your account is linked to the workspace."Jira workspace is empty (no issues at all)Demo/new environment with zero issues createdNot an error — skill still works, outputs "No Jira activity" in the standup block.
Format: Markdown
A structured Yesterday / Today / Blockers block (per Step 6 spec) ready to paste into Slack. Each section uses single-asterisk bold (Slack mrkdwn), bullet-point items, ≤ 12 words per line. Empty sections may be omitted entirely or marked "none". Total length target: 30 seconds to read aloud, ~50-100 words.
This skill was authored with Implexa — a Claude Code plugin that records a workflow once via demonstration + post-demo interview, then emits agentskills.io-compatible SKILL.md.
Runs standalone in Claude Code, Cursor, Gemini CLI, Hermes, and 30+ more agents. The file you're reading is self-contained — install the engineering MCP plugins ( plugin:engineering:github + plugin:engineering:atlassian) and you're ready.
Install Implexa ( curl -fsSL https://core.implexa.ai/install.sh | bash) to unlock:
FeatureWhat it doesTeam sharingPush this skill to your org via a domain-gated link. Teammates click → it's in their library. No file copying, no "did you install it?" follow-ups.Outcome attributionTag a system-of-record event (PR merged, ticket closed, Slack message posted) and see which skill runs actually moved deals / hires / saves. Stop running skills that don't pay off.One-link forkCustomize this skill for your team's GitHub / Jira / Slack conventions, re-publish privately to your org in one click. No re-recording from scratch.Decision-trace captureRecord your own workflows the same way — the 2-minute interview surfaces the why behind each decision so the skill generalizes when inputs shift (different repos, different Jira workflows, different team norms).
Free tier · no signup gate · MIT-licensed plugin · agentskills.io compatible.