product-on-purpose/foundation-meeting-brief
Produces a private strategic preparation document for the user before a meeting that matters. Captures stakes, stakeholder positions and reads, ranked desired outcomes, key messages, anticipated questions with prepared responses, risks and tensions, specific asks, and success signals. Distinct from meeting-agenda because this artifact is not shared with attendees; it is the user's personal tactical prep for meetings where positioning matters.
npx skills add https://github.com/product-on-purpose/pm-skills --skill foundation-meeting-brief
<!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
A meeting brief is the user's private strategic preparation document for a meeting where context, stakes, or positioning matter. It captures what the user needs to know, what they want to accomplish, who they are engaging with, and how to navigate the conversation. This is strategic prep, not meeting structure, which keeps it distinct from a meeting agenda.
This skill belongs to the Meeting Skills Family. It conforms to the Meeting Skills Family Contract.
foundation-meeting-agenda instead.foundation-meeting-recap.Per the family contract, this skill never blocks on interrogation. Default flow:
project or topics frontmatter matchgo or correctionsIf invoked with --go, skip the inference summary. If the user provides all values upfront, no checkpoint appears.
The skill runs on inferred stakeholder positions with low-confidence flags when no stakeholder summaries are provided; it does not block on missing inputs.
This skill opens with the shared anti-meeting check. see foundation-meeting-agenda for the full check.
v1.1.0: the check requires a positive synchronous-value statement (tradeoff to discuss, conflict to resolve, co-creation, relationship-building, or blocker escalation). Brief-prep scenarios most often pass because they typically involve navigating stakeholder positions or negotiation dynamics. which qualify as "conflict to resolve" or "relationship-building." But the check still runs, and if no synchronous value is named, the skill recommends the async alternative before producing a brief.
Load-bearing inference gates (v1.1.0): when stakeholder positions, primary ask, or decision-maker attribution are inferred below-high confidence, flag in the go-mode summary with ⚠. The brief's tactical guidance depends on these; silent acceptance of weak inferences creates risky advice. See family contract "Zero-friction execution" section.
When asked to create a meeting brief, follow these steps:
Apply the trigger patterns. If matched, propose async alternative and await override.
Read the topic. Load any @file references. Auto-discover related artifacts: prior recaps on same topic (same project/topics frontmatter), stakeholder summaries from /discover-stakeholder-summary outputs, related project docs.
Apply these rules:
| Value | Inferred from | Confidence |
|-------|---------------|------------|
| Stakeholder positions | Prior recap language, stakeholder summary content | High if recap cites direct quote; medium if position in 2+ sources; low otherwise |
| Stakes per attendee | Role plus topic-ownership cues | Always flag inferences |
| Top 3 goals | User's primary ask plus meeting type | Offer as ranked strawman in go-mode |
| Anticipated questions | Stakeholder position analysis plus typical-by-role objections | Flag as inferred |
| Risks / tensions | Conflict patterns in prior recaps | High if prior recap flagged contradiction |
Show the inferred stakeholder positions, primary ask, top-3 goals. Accept go or corrections.
Relevant history, prior decisions, recent developments. Cross-reference prior recaps by filename when available.
For each key attendee: position on topic, stakes (what they win or lose), likely concerns, relationship state (strong / neutral / strained), tactical notes (how to engage).
Must achieve / should achieve / nice to achieve. Force the tradeoff explicitly.
In priority order, phrased for delivery. Not bullet points to read; phrased as you would say them.
Table format: Q | prepared response. Aim for the three questions the user is most likely to get.
10. Identify risks and tensions
With explicit mitigations. Flag anything that could derail the meeting.
11. Specify asks
What the user needs from specific people by name. Not generic "get alignment" but "ask alex to commit eng capacity for Q2 by Thursday."
12. Define success signals
How the user knows in the moment that the meeting went well. Behavioral cues, not just outcome markers.
13. Render TEMPLATE.md and validate
visibility: private defaultvisibility: private default appliedfoundation-meeting-agenda. shares the anti-meeting check/discover-stakeholder-summary. upstream input source for stakeholder positionsTake product-on-purpose/foundation-meeting-brief from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.