mcpField
D
discover-presentation

discover-presentation

github.com/ken-guruDocuments184 installsUpdated 1w ago
Repository

About discover-presentation

A conversational skill for gathering presentation requirements and, after confirmation, writing them to DISCOVERY.json and PROJECT.json. It is intended for presentation projects that need structured audience, goal, and content preferences before drafting.

Key features

  1. 01Conducts a three-round interview
  2. 02Fills unanswered items with defaults
  3. 03Writes project state after confirmation
  4. 04Records language and editorial preferences
  5. 05Runs the unslop Skill for presentation copy

Use cases

  1. 01Gather requirements for a new presentation
  2. 02Clarify audience profiles and presentation goals
  3. 03Compare changes with existing discovery state

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/ken-guru/skills --skill discover-presentation

After installing, type/discover-presentationin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

DEFAULTS.md
QUESTIONS.md
RESTART-GUARD.md
WRITE_DISCOVERY.md
evals/
discover-presentation.json
scripts/
presentation-theme-invalidation.mjs

Details

From the project README

Discover Presentation

Gathers presentation requirements through a conversational interview. Writes results to DISCOVERY.json and PROJECT.json in the project folder.

Output voice

Apply a lightweight human-voice pass to interview questions, assumption summaries, and confirmation prompts. Keep the conversation specific and warm without forced enthusiasm. Preserve user wording when it is being recorded as project content, and keep JSON field names and values exact. Record any editorial preferences the user gives. Every presentation-copy phase must run the standalone unslop Skill as a required editorial pass, using those preferences.

Gotchas

  • Advance to Step 2 only after at least 3 of 4 persona dimensions are known — thin personas produce generic slides
  • Infer language from how the user writes; ask explicitly only if ambiguous
  • Write DISCOVERY.json only after the user confirms the defaults summary in Step 2

Startup

Before proceeding:

  1. Confirm the project folder is writable — if not, abort: ❌ Cannot write to <path>.

If DISCOVERY.json already exists, read and retain it for change comparison. Do not delete anything yet.

Procedure

Step 1: Interview

Ask the questions in QUESTIONS.md in its three rounds, one message per round. Extract structured data from free-form answers. Accept partial answers and fill the rest with defaults from DEFAULTS.md.

Language detection: Infer the presentation language from how the user writes. If they write in Norwegian, default to Norwegian bokmål. If they write in English or another language, use that. The detected language is recorded in DISCOVERY.json and must be respected throughout all subsequent phases — all generated content (slides, presenter notes, glossary) must be in that language.

Complete the persona depth section before moving to Step 2. A persona is considered sufficient when at least 3 of the 4 depth dimensions (experience level, goal, concerns, takeaways) are known.

Step 2: Confirm defaults

Present a one-shot confirmation summary before writing any files:

📋 Default assumptions — correct anything that doesn’t fit:

- Topic: [topic]
- Audience: [audience]
  - Experience level: [experience_level]
  - Goal: [goal — implement / understand]
  - Concerns: [top_concerns]
  - Top 3 takeaways: [top_takeaways]
- Duration: [duration]
- Occasion: [occasion]
- Language: [language]
- Presentation style: [narrative structure from DEFAULTS.md]
- Presentation Theme: [Editorial / Signal / Field Notes] ([identifier])
- Editorial preferences: [tone, preferred styles, and styles to avoid — or none]
- External Font Override: [exact family or none]
- Pagination: Yes
- Max bullet points per slide: 5–6
- Visual preference: [Picture / Diagram / None]

Also confirm file/folder naming:

File / FolderDefault
AgendaAGENDA.md
PresentationPRESENTASJON.md
Imagesimages/
Videosvideos/
Docsdocs/
Sourcesdocs/sources/
Themesthemes/

Ask: "Would you like to use the default names, or would you like to adjust any?"

Wait for the user to approve or correct before proceeding to Step 3.

If prior Discovery state exists, compare it with the confirmed values now. Run the restart guard per RESTART-GUARD.md, selecting the theme-only, font-only, or general path from the actual diff. Complete the guard before writing new state.

Step 3: Write state files

Read the external pointer file WRITE_DISCOVERY.md for the next steps ONLY AFTER the user confirms the defaults in Step 2.

Comments

Markdown supported