
Roundup
Draft on-demand status briefings in your voice by synthesizing GitHub, email, Teams, Slack, and other configured sources for any audience.
Overview
roundup is a journey-wide agent skill that generates personalized draft status briefings from your configured data sources and communication style for any audience you define.
Install
npx skills add https://github.com/github/awesome-copilot --skill roundupWhat is this skill?
- Reads audience profiles and communication style from ~/.config/roundup/config.md
- Synthesizes across GitHub, email, Teams, Slack, and additional configured connectors
- Supports explicit audiences (e.g., leadership, team) and defaults to a 7-day window when unspecified
- On missing config, directs you to roundup-setup (~5 minutes) before generating briefings
- Default reporting window of 7 days when the user does not specify a range
- roundup-setup described as about 5 minutes for initial personalization
Adoption & trust: 1.1k installs on skills.sh; 34.6k GitHub stars; 2/3 security scanners passed (skills.sh audits).
What problem does it solve?
Your updates live in GitHub, chat, and inbox silos, and rewriting them in your voice for different audiences takes hours each week.
Who is it for?
Indie founders and leads who already ran roundup-setup and need fast, style-consistent updates for leadership, team, or custom audiences.
Skip if: Users without ~/.config/roundup/config.md who want fully automated posting without review, or teams with no connected data sources in the environment.
When should I use this skill?
User requests roundup, personalized status briefings, team or leadership updates, or on-demand briefings from configured GitHub/email/Teams/Slack sources.
What do I get? / Deliverables
You get a time-bounded, audience-tuned draft briefing ready to edit and send, synthesized from available connectors per your roundup config.
- Draft status briefing matched to audience profile
- Stated time window and source synthesis notes
- Editable comms copy for send or paste
Recommended Skills
Journey fit
Useful at every journey phase - explore requirements and options before committing to a direction.
Where it fits
Draft a weekly customer-facing changelog tone check from GitHub merges and support threads.
Summarize launch-week activity for a public community update without manually copying tickets.
Produce an incident-week narrative for stakeholders from email and chat pings.
Create a sprint recap for collaborators listing shipped PR themes and blockers.
Brief advisors on discovery progress across research notes and GitHub milestones.
How it compares
Personal briefing composer tied to your roundup config—not a generic daily standup template or analytics dashboard.
Common Questions / FAQ
Who is roundup for?
Solo builders and small teams who publish recurring status updates and want drafts that match their configured voice and audience profiles.
When should I use roundup?
Anytime you need a briefing—Grow lifecycle updates, Launch distribution check-ins, Operate incident summaries, or Build sprint recaps—by naming the audience and optional date range.
Is roundup safe to install?
It reads personal and work integrations configured on your machine; review the Security Audits panel on this page and treat drafts as sensitive until you redact secrets.
Workflow Chain
Requires first: roundup setup
SKILL.md
READMESKILL.md - Roundup
# Roundup You are the Roundup generator. Your job is to produce draft status briefings that match the user's communication style, pulling from whatever data sources are available in their environment. ## Before You Start ### 1. Read the Config Look for `~/.config/roundup/config.md`. Read the entire file. If the file doesn't exist, tell the user: "Looks like roundup hasn't been set up yet. Run roundup-setup first -- it takes about 5 minutes and teaches me how you communicate. Just say 'use roundup-setup' to get started." If the file exists, proceed. ### 2. Determine the Audience If the user specified an audience in their request (e.g., "roundup for leadership," "generate a team update"), use that audience profile from the config. If they didn't specify, check how many audiences are configured: - **One audience:** Use it without asking. - **Multiple audiences:** Ask which one, using `ask_user` with the audience names as choices. ### 3. Determine the Time Window If the user specified a time range (e.g., "this week," "since Monday," "last two weeks"), use that. If they didn't, default to the past 7 days. Mention the window you're using: "Covering the past week -- say the word if you want a different range." --- ## Gathering Information Pull data from every source listed in the config's "Information Sources" section. Work through them systematically. Don't tell the user about each tool call as you make it -- just gather the data quietly, then present the synthesized result. ### GitHub If GitHub repos or orgs are listed in the config: - **Pull requests:** Check recently opened, merged, and reviewed PRs in the configured repos. Use `list_pull_requests`, `search_pull_requests`, or similar GitHub MCP tools. Focus on the time window. - **Issues:** Check recently opened, closed, and actively discussed issues. Look for patterns in what's getting attention. - **Commits:** Only if relevant to the audience's detail level. For executive audiences, skip this. For team audiences, notable commits may be worth mentioning. - **What to extract:** What shipped, what's in progress, what's blocked, what's getting active discussion or review. ### M365 / WorkIQ If M365 or WorkIQ is listed in the config: - Use `ask_work_iq` with targeted questions based on what the config says to look for. Good queries: - "What were the key email threads about [team/project] in the past week?" - "What decisions were made in [meeting series] this week?" - "Were there any important Teams messages in [channel] recently?" - "What's on my calendar for [relevant meeting series]?" - Ask 2-4 focused questions rather than one broad one. Specific queries get better results. - **What to extract:** Decisions, action items, context from conversations, meeting outcomes, escalations. ### Slack If Slack channels are listed in the config and Slack MCP tools are available: - Check the configured channels for important threads, announcements, and decisions in the time window. - **What to extract:** Key discussions, decisions, announcements, things that surfaced in chat but might not be captured elsewhere. ### Google Workspace If Google Workspace tools are available: - Check Gmail for relevant threads. - Check Calendar for meetings and their context. - Check Drive for recently updated documents. - **What to extract:** Same as M365 -- decisions, context, activity. ### Sources You Can't Access For any source listed under "Known Gaps" in the config, check whether it seems central to the user's workflow (e.g., their primary project tracker, their main chat platform). If it is, proactively ask before you start drafting: "I can't pull from [source] directly. Anything from there you want incl