foundation-meeting-recap
정보
이 스킬은 회의 요약을 주제별로 구조화하여 생성하며, 결정 사항을 강조하고 소유자와 마감일이 명시된 액션 아이템을 인라인으로 기록합니다. 회의 안건에서 주제를 자동으로 추출할 수 있으며, 다양한 출처의 녹취록이나 수동으로 작성한 노트와 함께 작동합니다. 회의 후 처리를 위해 품질이 일정하지 않은 입력도 안정적으로 처리하도록 설계되었습니다.
빠른 설치
Claude Code
추천npx skills add product-on-purpose/pm-skills -a claude-code/plugin add https://github.com/product-on-purpose/pm-skillsgit clone https://github.com/product-on-purpose/pm-skills.git ~/.claude/skills/foundation-meeting-recapClaude Code에서 이 명령을 복사하여 붙여넣어 스킬을 설치하세요
문서
Meeting Recap
A meeting recap is a post-meeting topic-segmented summary produced for attendees and light distribution. It organizes content by topic rather than chronology, highlights decisions visually, and captures actions inline (with owner, due date, dependencies) per topic segment, plus a consolidated actions view at the end for scannability.
This skill absorbs what would otherwise be a separate "meeting-actions" skill. Actions in this family live alongside the context that makes them meaningful, not in a sibling artifact.
This skill belongs to the Meeting Skills Family. It conforms to the Meeting Skills Family Contract.
When to Use
- After any internal meeting that produces decisions or actions affecting attendees
- When a sibling
/meeting-agendaexists and needs reconciliation (planned vs. actual topics) - When the team needs a topic-organized reference rather than a chronological transcript dump
- When inputs include a transcript (Zoom, Meet, Otter, Fireflies, Krisp MCP) or mixed notes and transcript
When NOT to Use
- Communicating outcomes to non-attendees. Use
/stakeholder-update. recap assumes reader context; stakeholder-update translates to readers without it. - Cross-meeting synthesis (patterns across multiple meetings). Use
/meeting-synthesize. - Live meeting note-taking. This skill consumes finished inputs; it does not transcribe live.
Zero-friction execution
Per the family contract, this skill never blocks on interrogation. Default flow:
- Read all provided inputs (transcript, notes, or hybrid) and note input quality upfront
- Auto-discover related agenda via filename-prefix match on same-directory
*_{title}_agenda.md - Run inference: meeting metadata from content, decisions from language markers, actions from imperative-future patterns, owners from attendee context
- Present a brief inference summary and accept one-word
goor corrections - Produce the recap
If invoked with --go, skip the inference summary. If the user provides all metadata upfront, no checkpoint appears.
Fabrication prohibition
This skill never fabricates owners, decisions, or actions. When an action lacks an explicit owner, it is captured as [owner: unassigned, needs confirmation] not invented. When a decision is implicit ("it sounded like we decided X"), it is flagged with a confidence marker rather than stated as fact. Trust decay from fabrication is worse than the mild friction of flagging.
Ownership reconciliation threshold (v1.1.0)
When the ratio of unassigned actions to total actions exceeds 0.3 (30%), OR when any high-priority action lacks an owner, the skill surfaces a dedicated ## ⚠ Ownership reconciliation required section at the top of the recap (above the topic segments) listing:
- All unassigned actions
- A suggested next step for each (who should probably own this based on topic context, flagged as inference)
- A recommended follow-up action (Slack thread, 15-min sync, async survey)
The shareable summary also leads with this flag when triggered: ⚠ Ownership reconciliation required: N of M actions lack owners.
The unassigned_action_ratio frontmatter field (float 0.0–1.0) records the ratio for downstream tools.
Rationale: a recap with 60% ownerless actions is "non-fabricated" (per the prohibition above) but operationally broken. a pile of broken tickets. The threshold makes this visible instead of silently shipping.
Instructions
When asked to create a meeting recap, follow these steps:
-
Parse inputs and detect type Transcript (timestamped speaker-attributed lines), notes (bullet or prose), or hybrid. Note input quality upfront. transcript plus structured notes is high; scrappy bullets is low.
-
Auto-discover related agenda Look in the same directory for a file matching the pattern
{YYYY-MM-DD}_{HH-MMtimezone}_{title-slug}_agenda.md. If found, load it. its topic list is the recap's topic skeleton and itsdesired_outcomesdrive the meeting-quality reconciliation. -
Present go-mode inference summary Show detected meeting date, title, attendees (if inferred), input quality assessment. Accept
goor corrections. -
Topic-segment the content
- If agenda was loaded, use its topic list as scaffold (plus any emergent topics)
- If no agenda, identify topics from transcript discourse markers ("moving on to", "the other thing")
-
Per topic segment, extract
- Discussion summary: 2-3 sentences capturing what was discussed
- Decisions made: bold-flagged visually. Never fabricate. if uncertain, flag "appears to have decided X [confidence: medium]"
- Actions: owner + due date + dependencies. Flag missing owners as
[owner: unassigned]and missing dates as[due: not specified]. Never invent. - Open questions: unresolved items with confidence marker on whether they are truly unresolved or simply not re-raised
-
Consolidate actions by owner Regroup all actions under each owner. Enables single-owner scan ("what do I owe after this meeting?").
-
Reconcile agenda (if agenda loaded)
topics_planned: from agenda topic listtopics_hit: topics actually discussedtopics_skipped: planned but not discussed, with brief reasontopics_emerged: discussed but not on agenda
-
Assess meeting quality signals
outcomes_achieved: N/M ratio of agendadesired_outcomesmet (when agenda present)started_on_time/ended_on_time: from timestamps when available; skipped when notkey_attendees_present: flag if decision-makers were absent
-
Surface next steps When we reconvene, what needs to happen on the critical path before that.
-
Render TEMPLATE.md and validate
- Every action's owner appears in
attendeesor is explicitlyunassigned meeting_quality.outcomes_achievedmatchesN/Mpattern when populatedagenda_reconciliationfields present even when empty lists
- Every action's owner appears in
Quality checklist
- Input quality flagged honestly (high / medium / low)
- Agenda auto-discovery attempted; result noted in Generation context
- Every topic segment has Discussion / Decisions / Actions / Open questions subsections
- Decisions are bold-flagged; never invented; confidence marked when inferred
- Every action has owner (or explicit
unassigned) + due date (or explicitnot specified) - Consolidated actions view regrouped by owner
- Agenda reconciliation populated when agenda was loaded
- Meeting quality signals populated with data available; skipped fields flagged
- Shareable summary 5-6 lines, lead with decisions and top actions
- Sources and References Generation context notes transcript source and any missing owners/dates
See also
- Meeting Skills Family Contract
/meeting-agenda. upstream: provides topic skeleton and desired-outcomes/meeting-synthesize. downstream: consumes recaps for cross-meeting synthesis/stakeholder-update. downstream: translates recap outcomes to non-attendees
GitHub 저장소
연관 스킬
qmd
개발qmd는 BM25, 벡터 임베딩, 재순위화를 결합한 하이브리드 검색을 통해 로컬 파일을 색인화하고 검색할 수 있는 로컬 검색 및 색인화 CLI 도구입니다. 명령줄 사용과 Claude 통합을 위한 MCP(Model Context Protocol) 모드를 모두 지원합니다. 이 도구는 임베딩에 Ollama를 사용하고 색인을 로컬에 저장하여 터미널에서 직접 문서나 코드베이스를 검색하는 데 이상적입니다.
subagent-driven-development
개발이 스킬은 각 독립적인 작업마다 새로운 하위 에이전트를 배치하고 작업 사이에 코드 리뷰를 진행하여 구현 계획을 실행합니다. 이 리뷰 프로세스를 통해 품질 게이트를 유지하면서 빠른 반복 작업을 가능하게 합니다. 동일한 세션 내에서 대부분 독립적인 작업을 진행할 때 내장된 품질 검증과 함께 지속적인 진행을 보장하기 위해 사용하세요.
mcporter
개발mcporter 스킬은 개발자가 Claude에서 직접 Model Context Protocol(MCP) 서버를 관리하고 호출할 수 있도록 합니다. 이 스킬은 사용 가능한 서버를 나열하고, 인수를 사용해 해당 서버의 도구를 호출하며, 인증 및 데몬 생명주기를 처리하는 명령어를 제공합니다. 개발 워크플로우에서 MCP 서버 기능을 통합하고 테스트할 때 이 스킬을 사용하세요.
adk-deployment-specialist
개발이 스킬은 A2A 프로토콜을 사용하여 Vertex AI ADK 에이전트를 배포하고 오케스트레이션하며, AgentCard 검색, 작업 제출, 코드 실행 샌드박스 및 메모리 뱅크와 같은 지원 도구를 관리합니다. Python, Java 또는 Go 언어로 순차, 병렬 또는 루프 오케스트레이션 패턴을 갖춘 다중 에이전트 시스템 구축을 가능하게 합니다. Google Cloud에서 ADK 에이전트 배포 또는 에이전트 워크플로우 오케스트레이션을 요청받았을 때 사용하세요.
