Update PMO skills & add projects-setup-instruction#16
Conversation
There was a problem hiding this comment.
Pull request overview
This pull request updates several PMO “skills” (Markdown playbooks) to improve the quality and reliability of automated project-management outputs (briefings, client status reports, health checks, decision-log sync, and Jira ticket creation), and adds a new guided skill for building Claude Project custom instructions.
Changes:
- Enhanced reports-morning-briefing with identity resolution, stricter “awaiting response” verification, improved scan windows, and a proposed to-dos section.
- Expanded reports-client-status with cadence-aware windows (incl. bi-weekly), Gmail scanning, audience tone calibration, and Slack/Confluence handoff instructions.
- Added projects-setup-instruction to guide users through creating a complete, ready-to-paste Claude Project instruction.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| plugins/pmo-universal/skills/reports-morning-briefing/SKILL.md | Adds identity-resolution and stricter Slack “unanswered” verification; updates scan logic and output structure. |
| plugins/pmo-project/skills/reports-client-status/SKILL.md | Updates cadence/windowing, adds Gmail as a source, refines output constraints, and adds Slack/Confluence save workflows. |
| plugins/pmo-project/skills/projects-setup-instruction/SKILL.md | New skill to collect project context section-by-section and assemble a Claude Project instruction with language lock. |
| plugins/pmo-project/skills/projects-health-check/SKILL.md | Adds dynamic Atlassian resource resolution guidance, Gmail scan, and a pre-present quality checklist. |
| plugins/pmo-project/skills/jira-create-ticket/SKILL.md | Adds optional Figma mockup integration and clarifies Jira ADF vs markdown formatting on create. |
| plugins/pmo-project/skills/confluence-sync-decision-log/SKILL.md | Adds a gating flow for missing Decision Log pages, including an optional create-page path with confirmation. |
Comments suppressed due to low confidence (1)
plugins/pmo-project/skills/reports-client-status/SKILL.md:138
- Step 3 says to write "Nothing to report" for any empty section, but later section rules explicitly say to omit Design when not applicable (and Decisions has its own placeholder phrasing). This is internally inconsistent and will lead to conflicting behavior. Align Step 3’s guidance with the per-section rules (e.g., omit some sections entirely, and use section-specific placeholder lines only where defined).
Cross-reference all sources and produce the output using the format below.
Ruthlessly prioritise: only include things that moved, changed, or matter this period.
Do not pad. If a section has nothing to report, write "Nothing to report."
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - **Slack user ID:** Already known from the tool description — `U03MDH8L371`. Use this | ||
| for all `to:<@USERID>` queries. |
| Before scanning, resolve the user's identity across tools. Do this once and carry the | ||
| results into all subsequent steps. | ||
|
|
||
| - **Slack user ID:** Already known from the tool description — `U03MDH8L371`. Use this | ||
| for all `to:<@USERID>` queries. | ||
| - **User email (for Fireflies):** Resolve by calling `fireflies_get_user()` to get the | ||
| authenticated user's email address. Store this as `<user_email>` for use in the | ||
| Fireflies `participants` filter. If `fireflies_get_user()` fails, fall back to | ||
| inferring the email from today's Google Calendar attendee list (the user's own entry). | ||
| - **Jira:** `currentUser()` resolves automatically — no action needed. | ||
| - **Gmail:** Primary account — no action needed. | ||
|
|
||
| Do not proceed to Step 1 until `<user_email>` is resolved or a fallback is noted. |
There was a problem hiding this comment.
The only thing I'd push back on slightly is the suggested Fireflies fallback- running without a participants filter will return meetings from the entire workspace, not just the user's, which could produce noisy or irrelevant results. The cleaner fallback is to skip Fireflies and note it, rather than run an unfiltered scan
| Using all collected input, assemble the instruction in this exact structure. | ||
| **Only include sections where the user provided content.** Omit empty sections entirely. | ||
| Preserve exact names, links, IDs, and values — never invent or infer. | ||
| **Write the assembled instruction in the chosen language** (headers, labels, everything). | ||
|
|
||
| ```markdown | ||
| ## My Role | ||
| [Role and responsibilities paragraph] |
wzslr321
left a comment
There was a problem hiding this comment.
changelog should also be added
There was a problem hiding this comment.
this new skill should be added to readme. we need everything listed, to manage those, with single source of truth. it should be present in lean-contribute skill. Did you use this to push this PR?
There was a problem hiding this comment.
I've added a changelog, updated the readme, and plugin.json. All via Claude. Can you check if it looks correct?
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

Update 6 existing PMO skills and add 1 new skill to the pmo-project plugin.
Updated skills
New skill