Agent of the Day — The Standup Agent That Writes Your Morning Update
AGENTS.md and SKILL.md.
What we’re building — and why it’s read-only
The agent pulls four things through the GitHub MCP server: commits merged to main in the last 24 hours, PRs opened / merged / still waiting on review, issues that changed state, and CI failures. Then it writes a standup in your format — yesterday / today / blockers — grounded in what actually happened, not what you remember happening.
One design decision matters more than any prompt wording: the agent gets read-only tools. No file editing, no terminal. A briefing agent that can’t change anything is an agent you can run on autopilot without a second thought — and that’s what makes it schedulable.
The agent file — .github/agents/standup.agent.md
This is the Copilot-native version. Drop it in your repo and it appears in the agent picker; typing /agent standup works in the Copilot CLI too.
description: “Morning standup briefing from the last 24h of repo activity”
model: claude-sonnet-4-6
tools: [“github”, “codeSearch”, “readFile”]
—
You are a standup briefing agent. You are READ-ONLY: never edit files, never run commands, never create issues or comments.
When invoked, gather from the GitHub MCP server for the last 24 hours:
1. Commits merged to the default branch (group by area/module, not by commit)
2. PRs: opened, merged, and awaiting review (name the reviewer it’s waiting on)
3. Issues that changed state (opened, closed, reassigned)
4. CI/Actions failures on the default branch
Then produce EXACTLY this format:
**Yesterday:** 2-4 bullets, grouped by area, plain language, no commit hashes
**Today (suggested):** 1-3 bullets inferred from open PRs and assigned issues
**Blockers:** PRs waiting >24h on review, red CI, or issues labeled “blocked” — say NONE if none
Rules: under 15 lines total. No preamble. If a change touches auth, payments, or infra, prefix it with ⚠. Write like a developer, not a press release.
The trigger — .github/prompts/standup.prompt.md
The prompt file gives everyone the one-word trigger: type /standup in Copilot Chat and it runs inside the agent above, inheriting its read-only toolset.
description: “Generate my morning standup from repo activity”
agent: standup
—
Generate my standup briefing for the last 24 hours. If it’s Monday, cover the weekend too (last 72 hours). Attribute work to me where I’m the author; summarize teammates’ work in one line each.
The portable version — .github/skills/standup/SKILL.md
Here’s the part that makes this “Agent of the Day” and not “Copilot Tip of the Day”: the same behavior packaged as a SKILL.md, which Claude Code, Codex, Gemini CLI, Copilot Agent Mode, and Cursor all read. One skill, every agent.
name: standup
description: “Generate a morning standup briefing from the last 24h of git and GitHub activity. Use when asked for a standup, morning briefing, or ‘what happened yesterday’.”
—
# Standup Briefing Skill
You are READ-ONLY for this task: no file edits, no state-changing commands.
## Steps
1. Run `git log –since=”24 hours ago” –oneline –no-merges` for local history
2. Query the GitHub MCP server for PRs and issues updated in the last 24h
3. Check the latest CI run status on the default branch
4. Group findings by area (api/, frontend/, infra/, docs/)
## Output contract
**Yesterday:** / **Today (suggested):** / **Blockers:**
Under 15 lines. ⚠ prefix for auth, payments, or infra changes. “Blockers: NONE” when clean.
In Claude Code, invoke it conversationally (“run my standup”) — or go one step further and schedule it with a Routine so the briefing is waiting for you at 8:45 every weekday:
claude
> Create a routine named morning-standup that runs weekdays at 8:45am:
use the standup skill and write the output to standup/today.md
Install — three files, one commit
git checkout -b feat/standup-agent
git add .github/agents .github/prompts .github/skills
git commit -m "feat: add standup briefing agent (read-only)"
git push -u origin feat/standup-agent
# From tomorrow morning, in Copilot Chat:
/standup
# Or in Claude Code / Codex / opencode:
> run my standup
Three variations worth stealing
Why this one works
It’s read-only, so it’s trustable
The fastest way to get comfortable with agents is to start where the blast radius is zero. A briefing agent can’t break anything — which is why it’s the right first agent for a skeptical team.
It’s portable, so it’s durable
The SKILL.md version survives your next tool switch. Write the behavior once; let Copilot, Claude Code, Codex, and opencode all run it.
It compounds
Fifteen minutes a morning is 60+ hours a year — per developer. And the format contract means the whole team’s standups become scannable, consistent, and grounded in what the repo actually says happened.
