skills-marketplace/plugins/cascade-knowledge-base/skills/ckb-meeting-prep/SKILL.md
Michał Kopeć c9f6186b4b Restructure plugins into doc-help, common, cascade-knowledge-base bundles
Consolidates ghost-writer/resolve-todos/tldr-this into doc-help,
hr-manager/interview into common, and the ckb-*/meeting-notes/meeting-prep/quiz
skills into cascade-knowledge-base (renaming the latter three to ckb-meeting-notes,
ckb-meeting-prep, ckb-quiz for naming consistency). Updates marketplace.json and
README.md to match the new plugin set.
2026-07-16 16:44:54 +02:00

7.3 KiB

name description
ckb-meeting-prep Prepare questions for an upcoming meeting where the user will interview or question someone. Scans the wiki to identify knowledge gaps, then generates a prioritised question list aimed at filling those gaps. Use when asked to "prepare for a meeting with X", "what should I ask X", "help me prep for my meeting", or "generate questions for my interview with X".

Meeting prep skill

Purpose

Read the wiki, find what is incomplete, unclear or missing, and produce a focused question list for an upcoming meeting. The goal is gap coverage - what the wiki does not yet know, not a role-appropriate questionnaire.


How to run this skill

Step 1 — Establish the interview context

Ask these questions one at a time. Wait for each answer.

Q1 — Who is being interviewed?

"Who will you be meeting with? Give me their name and role if you know it."

Q2 — What is the meeting for?

"What is the purpose of this meeting? Is it a kickoff, a discovery session, a follow-up, a check-in, or something else?"

Q3 — Any constraints?

"Are there any topics that are off-limits, already covered in a prior meeting, or not relevant to this session?"

Use Q3 to eliminate areas you would otherwise generate questions for. If the user says "we already covered contracting", remove supplier and commercial questions from the output.


Step 2 — Scan the wiki

Do this silently. The user does not need to see the process.

  1. Read wiki/index.md in full.
  2. Find every wiki page that mentions the interviewee by name - their entity page (if one exists), source summaries, concept pages, comparisons.
  3. Also read concept and entity pages connected to their role and the meeting purpose - even pages that do not mention them directly, if they are relevant to what they are likely to know.
  4. Read wiki/log.md briefly to see if any recent queries or ingests flagged open questions related to this person or their domain.

Step 3 — Identify the gaps

This is the core of the skill. Work through the wiki content systematically and note every gap you find. A gap is anything that:

  • Is explicitly unresolved - action items, "TBC", "to be confirmed", "to follow up"
  • Is claimed but thin - a one-line mention with no supporting detail, a topic named but not explained
  • Is missing entirely - a domain this person would plausibly know about that has no wiki coverage
  • Is contradicted - two pages that say different things about the same fact
  • Has a date or number that is uncertain or approximated
  • Was raised in a meeting and then dropped - something discussed but never followed up
  • Is assumed but unverified - a claim the wiki treats as fact that has no source citation

For each gap, note:

  • What is missing or unclear
  • Which wiki page(s) it relates to
  • How significant it is (critical / useful / nice to have)

Do not generate questions yet. First build the complete gap list.


Step 4 — Filter by what this person can answer

Review the gap list against who is being interviewed. Apply one filter: would this person plausibly be able to answer this question given their role and the meeting context? If they would not know - wrong function, wrong seniority, clearly outside their scope - remove the gap from the list. Do not adjust the question to their role or try to soften it for them; just remove it if they cannot answer it.

Retain the rest, even if a question feels blunt or might be uncomfortable to ask. That is the user's judgement call to make in the room.


Step 5 — Generate the questions

For each remaining gap, write one question. Principles:

  • Write it as you would say it in the room - natural, direct, not bureaucratic.
  • One question per gap. Do not bundle two gaps into one compound question.
  • Do not pad with context-setting preamble. "What is the current state of X?" not "Given that you mentioned X in our last meeting and it relates to Y, I was wondering if you could tell me more about what the current state of X looks like?"
  • If a gap requires a number, date or name to be resolved, ask for that specific thing.

Step 6 — Produce the output

Group questions by theme - not by the order you found the gaps, but by topic. Themes should match the natural structure of the conversation (e.g. "Data platform", "Contracting", "Resourcing"). Aim for 3-6 themes.

Within each theme, order questions by priority:

  • Critical first: gaps that would block progress or create a material misunderstanding if left open
  • Useful second: gaps that would meaningfully improve the wiki's coverage
  • Nice to have last: detail that would be good to have but is not urgent

Use this format for each question:

[Question text]
  → Gap: [one line explaining what this fills in the wiki]

The "→ Gap:" line is for the user's reference only - it makes clear why the question is on the list. It should be plain and specific: "No source confirms whether the Bridge retirement has a fixed deadline" not "Fills a gap in legacy platform knowledge".


Step 7 — Save the file

Save to:

outputs/YYYY-MM-DD-prep-[kebab-name].md

Where YYYY-MM-DD is today's date and kebab-name is derived from the interviewee's name (e.g. 2026-06-10-prep-adam-betts).

Use this format:

---
date: YYYY-MM-DD
title: Meeting prep - [Name], [Role]
purpose: [Meeting purpose from Step 1]
---

# Meeting prep - [Name]

[One sentence: who this is and what the meeting is for.]

## Questions

### [Theme 1]

[Question]
  → Gap: [explanation]

[Question]
  → Gap: [explanation]

### [Theme 2]

[Question]
  → Gap: [explanation]

...

## Not covered

[If any significant gaps were removed because the interviewee is unlikely to know the answer, list them here with a note: "Removed - [reason]". This lets the user decide whether to ask anyway or seek a different source.]

Tell the user the file path immediately after saving.


Step 8 — Proactive notes

After the file path, add a brief plain-text note covering any of these that apply:

High gap count: if more than 15 gaps were found across the wiki, say: "There are [N] gaps in the wiki related to this person and their domain. This prep list covers the [X] most significant. Let me know if you want the full list."

No entity page: if the interviewee has no wiki entity page yet, say: "There is no wiki page for [Name] yet. After the meeting, consider running /interview to capture what you learn and then ingest it."

Unresolved action items: if the gap scan found action items assigned to the interviewee that are still open, flag them explicitly: "The following action items from prior meetings are still open and may be worth following up in this session: [list]."

Contradictions found: if two wiki pages contradict each other on a point relevant to this meeting, flag it: "The wiki has a contradiction on [topic] - [page A] says X, [page B] says Y. This meeting is a chance to resolve it."


Writing style

Follow the project style from CLAUDE.md throughout:

  • British English spelling
  • Sentence case headings
  • No banned vocabulary (testament, pivotal, crucial, seamless, robust, etc.)
  • No em dashes - use hyphens
  • Questions should be direct. Avoid preamble and softening phrases.
  • The "→ Gap:" lines should name a specific fact, number, date or decision that is missing - not a vague category.