Add roundup plugin: self-configuring status briefing generator#1157
Merged
aaronpowell merged 5 commits intogithub:stagedfrom Mar 25, 2026
Merged
Add roundup plugin: self-configuring status briefing generator#1157aaronpowell merged 5 commits intogithub:stagedfrom
aaronpowell merged 5 commits intogithub:stagedfrom
Conversation
Adds a new plugin with two skills: - roundup-setup: Interactive onboarding that learns the user's communication style from examples, discovers available data sources, and builds audience profiles. Writes a persistent config to ~/.config/roundup/config.md. - roundup: Generates draft status briefings on demand by pulling from configured sources (GitHub, M365, Slack, Google Workspace, etc.) and synthesizing in the user's learned style for any defined audience. Platform-agnostic by design -- adapts to whatever MCP tools are available in the user's environment rather than assuming specific integrations. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Adds a new roundup plugin to the Awesome Copilot ecosystem, providing an onboarding skill to generate a persistent config and a generator skill to produce audience-specific status briefings from configured sources.
Changes:
- Added two new skills:
roundup-setup(interactive onboarding + config generation) androundup(briefing generation from configured sources). - Added a new
roundupplugin manifest + README, and registered it in the plugin marketplace. - Updated docs indexes to list the new skills and plugin.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| skills/roundup/SKILL.md | Defines the briefing-generation flow: read config, choose audience/window, gather from sources, synthesize, present/iterate. |
| skills/roundup-setup/SKILL.md | Defines the interactive onboarding flow to learn user style/audiences/sources and write ~/.config/roundup/config.md. |
| skills/roundup-setup/references/config-template.md | Provides the human-editable config template used by setup and read by generator. |
| plugins/roundup/README.md | Plugin documentation and usage examples for installing and running the two skills. |
| plugins/roundup/.github/plugin/plugin.json | Plugin manifest wiring the plugin to the two skills. |
| docs/README.skills.md | Registers roundup and roundup-setup in the skills catalog. |
| docs/README.plugins.md | Registers the roundup plugin in the plugins catalog. |
| .github/plugin/marketplace.json | Adds roundup to the generated plugin marketplace list. |
Comments suppressed due to low confidence (2)
plugins/roundup/README.md:72
- Same table formatting issue here: rows start with
||, which produces an unintended empty column. Switch to a normal markdown table (| Source | What It Looks For |, etc.) so it renders correctly.
| Source | What It Looks For |
|--------|-------------------|
| GitHub | PRs, issues, commits, review activity across your configured repos |
| M365 / WorkIQ | Email threads, Teams messages, calendar events, shared docs |
| Slack | Channel messages, threads, announcements |
| Google Workspace | Gmail, Calendar, Drive activity |
skills/roundup-setup/SKILL.md:105
- This suggests collecting per-audience detail levels in one combined prompt, which conflicts with the earlier "one question at a time" / "never bundle multiple questions" ground rules. Either adjust the ground rules to allow this exception (e.g., when the user lists many audiences) or change the flow to ask for each audience’s detail level in separate
ask_userturns.
1. Ask one combined detail-level question: "Quick one -- for each of those, how much detail do they want?" and list the audiences with choices like "Big picture only / Moderate detail / Full play-by-play" so they can assign a level to each in one answer.
2. Then ask one open-ended question: "Any of those audiences need a notably different format or focus? For example, some people's leadership wants three bullets max while their team prefers a longer narrative."
3. Only ask audience-specific follow-ups if their answer flags a real difference. Don't interrogate every audience separately.
- Fix 'use roundup' help text to clarify multi-audience behavior instead of referencing a nonexistent 'default audience' - Split bundled 'who do you report to + who is on your team' into two separate ask_user questions per the one-question-at-a-time rule - Specify ~/Desktop as explicit save path with fallback prompt when directory doesn't exist - Tables in README verified as correct markdown (single | delimiters) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Make 'paste the whole thing right here' explicit so users aren't
unsure about what/how much to paste
- Confirm receipt more clearly ('grabbed all of that')
- Reframe second example prompt to explain why a second helps
- Cap follow-up asks at two so it doesn't feel nagging
- Note that messy formatting is fine
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
aaronpowell
previously approved these changes
Mar 24, 2026
Contributor
|
Small merge conflict and then it should be fine to merge in |
Resolve conflict in docs/README.skills.md -- keep both roundup and reviewing-oracle-to-postgres-migration entries in alphabetical order. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
aaronpowell
approved these changes
Mar 25, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this adds
A new plugin called roundup with two skills that automate the most tedious part of management communication: gathering scattered information and packaging it into status updates.
Skills
roundup-setup -- Interactive onboarding that learns the user's communication style from pasted examples, discovers available data sources, builds audience profiles, and writes a persistent config to
~/.config/roundup/config.md.roundup -- Generates draft status briefings on demand by pulling from configured sources and synthesizing in the user's learned style for any defined audience.
What makes it different
Learns from examples, not templates. The user pastes in updates they've already written, and the setup flow analyzes their format, tone, structure, and content categories. The generated briefings sound like them.
Platform-agnostic. Adapts to whatever MCP tools are available -- GitHub, M365/WorkIQ, Slack, Google Workspace, or any combination. The setup flow discovers the environment and configures accordingly.
Multi-audience. Define different audience profiles (leadership, team, cross-functional partners) with different detail levels and formats. Same underlying data, different output for each.
Human-readable config. Everything lives in a plain markdown file the user can open and hand-edit anytime.
Files added
plugins/roundup/.github/plugin/plugin.jsonplugins/roundup/README.mdskills/roundup-setup/SKILL.mdskills/roundup-setup/references/config-template.mdskills/roundup/SKILL.mdValidation
npm run plugin:validate-- passesnpm run skill:validate-- passesnpm run build-- README and marketplace.json updated