Skip to main content
skill CX Codex

foundation-meeting-brief — Claude Code skill: setup and usage

Creates a private tactical preparation brief before high-stakes meetings. It maps stakeholder positions, key messages, and prepared responses.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add product-on-purpose/pm-skills --skill foundation-meeting-brief -a claude-code
Open on GitHub

What foundation-meeting-brief does

This skill builds a private preparation document before critical stakeholder reviews or negotiations. Unlike an agenda, attendees never see this brief. It stores tactical messages, identified risks, and specific asks directed at colleagues. When local project memory exists, it reads recent context without demanding manual input.

Every run starts with an anti-meeting check. The skill insists on a clear reason for live conversation, such as resolving a conflict or unblocking progress. If no synchronous purpose exists, it advises switching to an async channel instead. This stops wasteful calendar clutter.

Missing details are inferred from past recaps and stakeholder notes. Low-confidence assumptions receive an explicit warning flag to avoid misguided tactics. Passing the --go argument bypasses the confirmation summary when speed is essential.

What it helps with

  • Map stakeholder positions and potential friction points before negotiations
  • Draft prioritized messages phrased for spoken delivery
  • Prepare responses for anticipated critical questions
  • Define specific individual asks instead of vague alignment goals

Example prompts for the agent

  • Create a private meeting brief for tomorrow's executive review.
  • Draft a tactical brief for the resource negotiation using --go.

How to install foundation-meeting-brief

1Skills CLI (Vercel)

npx skills add product-on-purpose/pm-skills --skill foundation-meeting-brief -a claude-code

2Manually: put the files in place

~/.claude/skills/foundation-meeting-brief/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/foundation-meeting-brief/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about foundation-meeting-brief

How do I install foundation-meeting-brief in Claude Code?

Run npx skills add product-on-purpose/pm-skills --skill foundation-meeting-brief -a claude-code in your terminal.

How does this brief differ from a meeting agenda?

An agenda is shared with all attendees to structure the conversation. The brief is strictly personal prep for positioning, hidden risks, and tactical asks.

What happens if a meeting lacks clear synchronous value?

The built-in anti-meeting check flags the call. It suggests an asynchronous alternative before drafting any brief.

Source text

SKILL.md · Apache-2.0
---
name: foundation-meeting-brief
description: 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.
license: Apache-2.0
metadata:
  classification: foundation
  version: "1.1.0"
  updated: 2026-07-04
  category: meeting
  frameworks: [meeting-skills-family]
  author: product-on-purpose
---
<!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
# Meeting Brief

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](../../docs/reference/skill-families/meeting-skills-contract.md).

## When to Use

- Walking into a stakeholder review, exec briefing, or negotiation-adjacent conversation
- First meeting with a new stakeholder where relationship calibration matters
- A meeting where the user needs something from others (capacity commitment, decision, approval)
- Any conversation where specific positioning, messaging, or risk navigation is required

## When NOT to Use

- Preparing the agenda attendees will see. Use `foundation-meeting-agenda` instead.
- Post-meeting summarization. Use `foundation-meeting-recap`.
- The meeting is low-stakes and well-trodden (recurring team sync, standup). A brief is overhead for these; the agenda alone is sufficient.

## Zero-friction execution

Per the family contract, this skill never blocks on interrogation. Default flow:

1. Read all provided inputs (topic, attendees, prior recaps, stakeholder summaries, user's primary ask)
2. Auto-discover related artifacts via `project` or `topics` frontmatter match
3. Run inference on missing values (stakeholder positions from prior recaps, primary ask from topic, top-3 goals from meeting type)
4. Present a brief inference summary and accept one-word `go` or corrections
5. Produce the brief

If 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.

## Anti-meeting check

This skill opens with the shared anti-meeting check. see [`foundation-meeting-agenda`](../foundation-meeting-agenda/SKILL.md) 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.

## Instructions

When asked to create a meeting brief, follow these steps:

1. **Run anti-meeting check**
   Apply the trigger patterns. If matched, propose async alternative and await override.

2. **Parse and load inputs**
   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.

3. **Infer missing values**
   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 |

4. **Present go-mode inference summary**
   Show the inferred stakeholder positions, primary ask, top-3 goals. Accept `go` or corrections.

5. **Build the background section**
   Relevant history, prior decisions, recent developments. Cross-reference prior recaps by filename when available.

6. **Do per-stakeholder analysis**
   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).

7. **Rank desired outcomes**
   Must achieve / should achieve / nice to achieve. Force the tradeoff explicitly.

8. **Draft key messages**
   In priority order, phrased for delivery. Not bullet points to read; phrased as you would say them.

9. **Anticipate questions and responses**
   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` default
    - Stakeholder list has minimum fields (name, position) when present
    - Primary ask is non-empty (use "alignment" or "information gathering" if no specific ask)

## Project Memory Contract

Active only when `.claude/pm-skills.local.md` exists. With no file, ignore this section entirely
and behave exactly as described above.

- **Reads:** `active_initiative` and recent `decision` artifacts, so the brief can state the current position without you re-supplying it.
- **Writes:** nothing. The brief is preparation; the recap is what becomes durable.
- **Posture:** propose the entry and wait for confirmation before writing, unless
  `memory_auto_append: true` is set, in which case append and echo what was written.

This complements the family's filename-based chaining rather than replacing it: filenames still locate the sibling artifacts of one meeting, while project memory carries the durable product context across meetings.
## Quality Checklist

- [ ] Anti-meeting check was applied and recorded
- [ ] `visibility: private` default applied
- [ ] Background section cross-references prior recaps when available
- [ ] Every key stakeholder has a position, stakes, concerns, relationship state entry (with confidence markers on inferred fields)
- [ ] Desired outcomes are ranked (must / should / nice), not flat
- [ ] Key messages are phrased for delivery, not for reading
- [ ] Anticipated Q&A table has 3 or more entries
- [ ] Asks are specific (named person, specific ask, by-when)
- [ ] Shareable summary suitable for trusted-advisor review only (flagged as such)
- [ ] Sources and References section includes Generation context with inferences flagged

## See also

- [Meeting Skills Family Contract](../../docs/reference/skill-families/meeting-skills-contract.md)
- [`foundation-meeting-agenda`](../foundation-meeting-agenda/SKILL.md). shares the anti-meeting check
- [`/discover-stakeholder-summary`](../discover-stakeholder-summary/SKILL.md). upstream input source for stakeholder positions

© product-on-purpose · Apache-2.0 · product-on-purpose/pm-skills

Similar skills

Everything for Notes, tasks and projects →

From the same set68

foundation-meeting-recap Turns a transcript or notes into a topic-segmented meeting recap: decisions flagged, actions with owners and due dates captured inside each topic. CX Codex +1 691installs utility-pm-skill-validate Audits an existing pm-skills skill against repo conventions and quality criteria, then hands back a report you can act on or feed to another skill. CX Codex +1 690installs foundation-meeting-synthesize This skill reads several meeting recaps from a period and surfaces what no single meeting shows: how decisions shifted, where people disagree, what stalled. CX Codex +1 690installs utility-pm-skill-iterate Applies targeted edits to an existing pm-skills skill from a validation report or your own feedback: reads the files, previews before/after, writes on confirmation. CX Codex +1 688installs utility-update-pm-skills Checks for newer pm-skills releases, compares versions, previews what changes, and updates local files after you confirm. CX Codex +1 685installs measure-okr-grader Scores each KR at the end of an OKR cycle, checks how solid the evidence is, and turns the results into input for the next cycle. Useful when the team argues over whether a score is good. CX Codex +1 674installs define-prioritization-framework Runs applicable prioritization frameworks across features to pinpoint where scoring models agree or clash. Useful when planning product roadmaps. CX Codex +1 641installs discover-journey-map Turns existing research into a customer journey map: stages, touchpoints, emotional curve, pain points and moments of truth. CX Codex +1 639installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor