Agent skill
meeting-prep
Build a pre-meeting briefing — who's in the room, what they care about, your goal, and the questions to ask.
Filed under Calls, demos and discovery.
From etrebels/claude-code-growth-os · 20 skill entries · 21 · pushed 2026-10-03
What it does when it runs
Build a pre-meeting briefing — who's in the room, what they care about, your goal, and the questions to ask. Trigger when the user asks to prep for a meeting or call, "what should I know before", or names an upcoming meeting.
Automated analysis of the skill and the 0 files bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.
- Keys and connectors you must supply
- None found.
- Hosts it reaches
- No third-party host appears in the skill or its bundled files.
- Tool permissions it declares
- No
allowed-toolsin the frontmatter. It only issues instructions, so there is nothing to bound. - Actions present in the files
- None. Instructions only.
Install it
View source on GitHub ↗git clone --depth 1 --filter=blob:none --sparse https://github.com/etrebels/claude-code-growth-os.git /tmp/claude-code-growth-os git -C /tmp/claude-code-growth-os sparse-checkout set ".claude/skills/meeting-prep" mkdir -p ~/.claude/skills/meeting-prep cp -R "/tmp/claude-code-growth-os/.claude/skills/meeting-prep/." ~/.claude/skills/meeting-prep/
Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗
The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.
The skill
Source on GitHub ↗Reproduced in full from etrebels/claude-code-growth-os/blob/3e0c2d7d1fc545d35073011208d8da3f845183fb/.claude/skills/meeting-prep/SKILL.md, which is licensed MIT (repository). 647 words, 4 headings.
Meeting Prep (pre-meeting briefing)
Before a meeting, build a one-screen brief:
- Who's in the room and what each likely cares about.
- Where this sits — pull from
ops/pipeline.mdand any prior notes: last contact, open threads, commitments outstanding. - Your one goal for the meeting, and the single decision you want out of it.
- The questions to ask — labels + calibrated questions (see below).
- The one risk or objection to be ready for — name it first, before they raise it.
Pull context from ops/ and the relevant meeting notes; don't invent attendees or history you weren't given.
Asking the right kind of questions (Chris Voss, Never Split the Difference)
The questions decide the meeting. Two moves do most of the work:
- Label, then ask. Name the thing they're likely feeling before you question it: "It seems like…" / "It sounds like…" Then stop talking and let them respond. A label lowers the guard; the silence pulls out the real answer.
- Calibrated questions start with What or How — never "why" (which sounds like an accusation), never yes/no (which closes things down). They make the other person do the thinking and hand you the information.
Load 3–5 calibrated questions for the meeting. A reusable set:
- "What's the hardest part of that for your team right now?"
- "How does that show up in your week?"
- "What have you already tried that didn't work the way you hoped?"
- "What does that cost you today?" (time, rework, decisions made on partial information)
- "How would you know this had been solved?"
- "How does a decision like this usually get made on your side?" — surfaces the real process and who else matters
- "What would need to be true for this to be worth doing?"
Close two ways:
- A summary they confirm — play their situation back so well they say "that's right." (Not "you're right," which usually means let's wrap up.)
- The one question that surfaces the hidden thing: "Is there anything I should know that I haven't asked about?"
Replace on sight: "Why are you still using X?" → "What's kept X in place?" · "Do you have a process for X?" → "How do you handle X today?" · "Is that a problem?" → "What does that cost you?" · "Would you agree that…?" → delete it.
Call conduct — write down what the room used to enforce
In a physical room, attention is enforced by cues nobody has to state: everyone can see who is looking at their phone, who left, who stopped listening. Remove the room and every one of those cues disappears — so attention degrades silently while the call grid looks exactly the same. A remote meeting with no stated protocol is not a neutral meeting; its norms default to whatever the least-engaged participant does.
The fix is not exhortation ("please engage") — it is writing down the specific behaviors the room used to enforce for free, so the norm is explicit and correctable.
For any call with 4+ participants or a decision on the agenda, put one line at the top of the agenda itself:
Cameras on · one speaker at a time · side questions to the thread, not the chat · decision owner:
<name>.
If a call is repeatedly held without it, the meeting owner cuts the invite list rather than adding more reminders — an unengaged attendee is a scoping problem, not a discipline problem.
Depth
- quick: the goal + one label + three calibrated questions.
- standard: the full brief above, with the label + 3–5 calibrated questions and a summary-to-confirm.
- deep: + a likely-objections list (named first, before they raise them), a fallback ask if the main one stalls, and the hidden-thing question to close.
Other skills for the same job
Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.
- meeting-prep-cc by BrianRWagner · 443
- meeting-prep by explorium-ai · 200
- meeting-prep-brief by JJenglert1 · 58
- meeting-prep-brief by Othmane-Khadri · 58
- meeting-prep by GTMify · 25
- meeting-prep by octavehq · 11
- meeting-prep by ekatasingh1107 · 2
- gtm-meeting-prep by rvanshur · 2
Need help setting it up?
This page tells you what meeting-prep does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.
Book a call →The directory stays free. There is nothing gated behind this.