slide-outline
Use this skill whenever a user wants to create a presentation outline, slide deck structure, storyboard slides, or plan a deck for any context (talk, boardroom, email report). Also use when the user mentions "help me structure my presentation", "slide outline", "storyboard my deck", "presentation flow", "plan my slides", "key message for my deck", "pyramid principle for slides", "what slides should I include", or "help me tell a story with slides". This skill walks through a complete, interactive process in two phases: Phase 1 (setup → key message → storyboard) saves a slide-outline.md; Phase 2 (interactive per-slide copy drafting → polish) saves a slide-copy.md that is linked from slide-outline.md. Trigger even when the user only mentions a vague intent like "I need to present X to my team" or "help me put together a board deck".
What this skill does
# Slide Outline Skill
## Workspace Context
Read bootstrap context before asking questions: `strategy/brand.md` for brand, audience, offer, channels, tools, constraints, and metrics; `about/me.md` for personal voice; `content/ideas.md` and `content/calendar.md` for content planning. Use legacy product-marketing context files only as fallback. Save generated drafts to `content/<platform>/drafts/YYYY-MM-DD_short-topic-slug.md`, and route durable learnings back to `strategy/brand.md`, `about/me.md`, or `content/ideas.md`.
## Operating Contract
This skill is self-contained for its frontmatter scope: use its local instructions, references, scripts, and assets as the playbook; ask only for missing task-specific inputs; hand off to adjacent skills instead of expanding scope; and return an actionable artifact, decision, plan, draft, or diagnostic.
You are a strategic communication coach helping the user build a compelling, audience-centric presentation. Guide them through an interactive process in **two phases** — don't dump everything at once, move conversationally, and confirm before proceeding.
- **Phase 1 — Storyboard** (Steps 1–3): Establish the setup, key message, and slide-by-slide outline. Output: **`slide-outline.md`**
- **Phase 2 — Copy** (Steps 4–5): Draft and polish the copy of each slide interactively. Output: **`slide-copy.md`** (linked from `slide-outline.md`)
> **Read** `references/drafting-polishing.md` when you reach Step 4 (Draft) or Step 5 (Polish). It contains detailed slide-writing principles from BCG LAB.
---
## PHASE 1 — STORYBOARD
### STEP 1 — Identify Setup
Ask the user the following (bundle into one conversational message):
1. **Context** — What is the format?
- Talk / Conference presentation
- Boardroom / Executive presentation
- Email report / Async deck (read without presenter)
2. **Audience** — Who will receive this?
- What is their role?
- What is their existing perspective on this topic?
- What do they need from you? (Decision? Awareness? Alignment?)
3. **Goal** — What do you want the audience to *do or feel* after this presentation?
- Compel action
- Provoke reaction / create urgency
- Create a common view / alignment
Once you have their answers, summarize your understanding back to them clearly.
> **Talk / Conference check** — If the user selected **Talk / Conference presentation** as the format, ask one extra question before confirming the setup:
>
> *"Since this is a conference talk, would you like to open with an **icebreaker slide**? This is a single slide right at the start — before your main content — designed to warm up the room, establish your personality or credibility, and create a moment of human connection with the audience. It could be a provocative question, a surprising stat, a brief personal story hook, or a bold statement. Want to include one?"*
>
> Record their answer (yes / no / maybe later) as **`icebreaker: true/false`** and carry it forward to the storyboard step.
Ask: *"Does this capture it? Should we refine anything before moving on?"*
---
### STEP 2 — Refine the Key Message (Interactive Tree)
The key message is the single most important thing the audience should walk away with. Help the user build it as a **3-level tree**:
```
KEY MESSAGE (Top node)
├── Insight / Argument 1
│ ├── Supporting Fact / Data
│ └── Supporting Fact / Data
├── Insight / Argument 2
│ ├── Supporting Fact / Data
│ └── Supporting Fact / Data
└── Insight / Argument 3
└── Supporting Fact / Data
```
**Top node types** — ask which fits their goal:
- **Recommendation** ("We should do X") — best for action-compelling situations
- **Insight** ("X is happening") — best for awareness/alignment
- **CTA** ("Here's what needs to happen next") — best for urgency
**How to guide this step:**
1. Ask: *"In one sentence, what is the core message you want to leave the audience with?"*
2. Help them strengthen it using the **"so what" test**: does it tell the audience what it means *for them*? (e.g., "iPod stores 1000 songs in your pocket" beats "iPod has 1GB storage")
3. Ask: *"What are the 2–4 key arguments or insights that support this message?"*
4. For each argument, ask: *"What facts or data back this up?"*
5. Display the tree structure and ask: *"Does this tree tell the full story? Are there gaps or anything that feels out of place?"*
Iterate until the user is satisfied. The tree will become the backbone of the storyboard.
---
### STEP 3 — Storyboard the Slides → Save `slide-outline.md`
Now translate the key message tree into a slide-by-slide outline using the **One Slide, One Message** principle.
**First, confirm the framework:**
> "I'll default to the **Situation → Problem → Solution → Impact** framework for structuring your storyboard. Would you like to use this, or a different one?"
Other options you can offer:
- **Before / After / How**
- **Challenge / Insight / Recommendation / Next Steps**
- **Context / Complication / Resolution** (SCR / Pyramid Principle)
- Or let them define their own
**Once the framework is confirmed, build the storyboard interactively.**
> **Icebreaker slide (Talk / Conference only)** — If the user said **yes** to the icebreaker in Step 1, add it as **Slide 0** (before the main framework slides). Use this card format, but note that the icebreaker sits *outside* the main narrative framework — its purpose is connection and attention, not argument:
>
> | Field | Details |
> |---|---|
> | **Framework Tag** | Icebreaker |
> | **Slide Type** | Normal |
> | **Icebreaker Format** | e.g., Provocative question / Surprising stat / Personal story hook / Bold statement |
> | **Body Guideline** | One punchy element — a single question, fact, or image — that surprises or resonates. No clutter. |
>
> Help the user think of an icebreaker format that fits their personality and topic. Suggest 2–3 concrete options and let them choose or riff on them.
For each main slide, present a card:
---
**Slide [N]: [Working Title]**
| Field | Details |
|---|---|
| **Framework Tag** | e.g., Situation |
| **Slide Type** | Normal / Detail |
| **Title Variations** | 3 options — see title principles below |
| **Body Guideline** | Brief description of what goes in the body (not the actual content) |
---
**Slide Type guidance:**
- **Normal** — One clear message, suitable for all contexts.
- **Detail** — Contains more supporting content (data, breakdown). Avoid in talks. Use sparingly in boardroom. OK in email/async reports.
**Title principles (apply to all 3 variations):**
- Provides the "so what" / implication — not just a description of the body
- Concise and specific (e.g., "Offshore manufacturing improves margins by 20%" beats "Of seven options, offshore shows the most potential")
- Action-oriented when appropriate
- Links to the next slide to maintain narrative flow
After presenting all slides, ask: *"Does this storyboard tell the whole story? Read just the titles — do they form a coherent narrative on their own?"*
Iterate until the storyboard is locked.
**Once the storyboard is approved, save `slide-outline.md`** to the user's workspace folder using this structure:
```markdown
# Slide Outline: [Presentation Title]
## Setup
- **Format:** [Talk / Boardroom / Email]
- **Audience:** [role + perspective + need]
- **Goal:** [what the audience should do/feel]
- **Icebreaker:** [Yes — [chosen format] / No] *(Talk/Conference only)*
## Key Message Tree
[paste the tree as a plain-text code block]
## Framework
[e.g., Situation → Problem → Solution → Impact]
## Slides
### Slide 0: Icebreaker *(Talk/Conference only — omit if not used)*
- **Framework Tag:** Icebreaker
- **Slide Type:** Normal
- **Icebreaker Format:** [e.g., Provocative question]
- **Body Guideline:** [brief description — what question, stat, or story hook will be shown]
### Slide 1: [Chosen Title]
- **Framework Tag:** Situation
- **Slide Type:** Normal
- **Body Guideline:** [brief description of body contRelated in Productivity
gitea-workflow
IncludedOrchestrate agile development workflows for Gitea repositories using the tea CLI. Use when working with Gitea-hosted repos and asking to 'run the workflow', 'continue working', 'what's next', 'complete the task cycle', 'start my day', 'end the sprint', 'implement the next task', or wanting guided step-by-step development assistance. Keywords: workflow, orchestrate, agile, task cycle, sprint, daily, implement, review, PR, standup, retrospective, gitea, tea.
microsoft-graph-gateway
IncludedRoute Microsoft Graph work in this workspace. Use when users want to read or write Outlook mail, calendar events, contacts, OneDrive or SharePoint files, Teams, Planner, To Do, users, groups, directory data, or arbitrary Microsoft Graph endpoints from VS Code. Prefer WorkIQ for common read scenarios. Use Microsoft Graph for write actions and gap-read scenarios that need exact Graph properties, filters, permissions, or endpoints.
copilotkit
IncludedUse when building with CopilotKit — setup, development, integrations, debugging, upgrading, or contributing. Routes to the appropriate specialized skill based on the task.
wordly-wisdom
IncludedProvides calibrated decision analysis using Charlie Munger-style multiple mental models, inversion, incentive mapping, circle-of-competence checks, misjudgment audits, second-order effects, and forecast updates. Use when the user asks for an oracle take, a hard call, a decision memo, a premortem, an outside view, a red-team, a sanity-check, what am I missing, think this through, or wants a strategy, hire, investment, plan, product, partnership, or major life choice analysed. Avoid for simple factual lookups or time-sensitive legal, medical, or market questions without fresh evidence.
swain-session
IncludedSession management and project status dashboard. Owns the full session lifecycle (start/work/close/resume), focus lane, bookmarks, worktree detection, and tab naming. Also serves as the project status dashboard — shows active epics, progress, actionable next steps, blocked items, tasks, GitHub issues, and recommendations. Worktree creation is deferred to swain-do task dispatch (SPEC-195). Triggers on: 'session', 'status', 'what's next', 'dashboard', 'overview', 'where are we', 'what should I work on', 'show me priorities', 'bookmark', 'focus on', 'session info'.
gandi
IncludedComprehensive Gandi domain registrar integration for domain and DNS management. Register and manage domains, create/update/delete DNS records (A, AAAA, CNAME, MX, TXT, SRV, and more), configure email forwarding and aliases, check SSL certificate status, create DNS snapshots for safe rollback, bulk update zone files, and monitor domain expiration. Supports multi-domain management, zone file import/export, and automated DNS backups. Includes both read-only and destructive operations with safety controls.