Skip to main content
skill Claude Code CX Codex Cursor GitHub Copilot

wowerpoint — Claude Code skill: what it does, how to install

Turns a single text document into a kawaii NotebookLM slide deck via CLI. Helpful when you need to render an architecture doc or report into clear, shareable slides.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add thedotmack/claude-mem --skill wowerpoint -a claude-code
Open on GitHub

What wowerpoint does

The skill takes exactly one source file, creates a notebook through the notebooklm CLI, uploads the document, and runs slide generation. Its default prompt directs the model to tell the document's story through kawaii characters. Once finished, the agent returns a direct link to the notebook in Google NotebookLM. Audio and video outputs are skipped entirely because their quality is noticeably worse.

Setup requires jq and notebooklm-py installed via uv tool along with Playwright Chromium. Authentication cannot be scripted. You have to run ! notebooklm login interactively in the terminal to complete OAuth.

Passing sensitive company files or customer records here is risky because NotebookLM runs on Google infrastructure. Generation options are limited as well: the CLI has no --length long flag, so you can only choose between default and short.

What it helps with

  • convert a long document into narrative slides
  • generate Google NotebookLM decks directly from the CLI
  • present technical documentation in a warm kawaii style
  • automate notebook creation and source uploads for slides

Example prompts for the agent

  • Wowerpoint `summary.md`
  • Make a slide deck about `architecture.md`
  • Turn this report into slides

How to install wowerpoint

1Skills CLI (Vercel)

npx skills add thedotmack/claude-mem --skill wowerpoint -a claude-code

2Manually: put the files in place

~/.claude/skills/wowerpoint/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/wowerpoint/

From the same set15

The whole set →
mem-search thedotmack Searches memory for solutions and context from previous coding sessions when you need to recall past work. Claude Code CX Codex Cursor +1 8,900installs smart-explore thedotmack Uses tree-sitter to map code structure and find symbols. Useful when you need to explore a codebase without loading every full file. Claude Code CX Codex Cursor +1 7,300installs make-plan thedotmack Turns a feature request into a phased plan built on real documentation instead of guesses. Useful right before you run do. Claude Code CX Codex Cursor +1 7,200installs do thedotmack The skill runs an implementation plan in phases through subagents. Use it when a plan needs execution with checks after each phase. Claude Code CX Codex Cursor +1 7,000installs knowledge-agent thedotmack Builds focused knowledge corpora from claude-mem observations and lets you query them in an AI session. Useful for reviewing past work by topic or project. Claude Code CX Codex Cursor +1 5,700installs learn-codebase thedotmack Instructs the agent to read every source file in full before starting work. Built for onboarding on unfamiliar repositories. Claude Code CX Codex Cursor +1 5,300installs how-it-works thedotmack Explains how claude-mem works behind the scenes. It covers tool observation logging, local file storage, and memory injection timing. Claude Code CX Codex Cursor +1 5,100installs pathfinder thedotmack This skill maps feature flows, finds duplicated concerns, and proposes a unified architecture. Use it to inspect a codebase before a refactor. Claude Code CX Codex Cursor +1 5,100installs

Similar

better-writing jakubkrehel Writes and reviews UI copy, from button labels to errors and empty states. It keeps product vocabulary consistent and guides users to the next step. Claude Code CX Codex Cursor +1 28,700installs openspec-update-change openspec Revises existing OpenSpec planning artifacts and keeps them consistent. Use it when a change plan gains new decisions without changing source code. Claude Code CX Codex Cursor +1 4,500installs create-agentsmd official github Generates an AGENTS.md file with repository context and instructions for coding agents. Use it when project rules need a clear, agent-focused home. GitHub Copilot 13,104installs memory-merger official github Moves mature notes from a domain memory file into its instruction file. Useful when project guidance grows through reviewed lessons. GitHub Copilot 12,846installs write-agentmemory-skill rohitg00 Sets structure and formatting rules for agentmemory skills. Use it when creating a new SKILL.md or reviewing an existing skill for consistency. Claude Code CX Codex Cursor +1 10,700installs create-implementation-plan official github This skill creates a Markdown implementation plan for features, refactoring, package upgrades, or infrastructure work. Use it when an agent needs an explicit task breakdown. GitHub Copilot 12,558installs grill-with-docs Matt Pocock This skill interviews you about a plan or design and creates ADRs and a glossary along the way. Use it when decisions need sharper definition. Claude Code 1,219,756installs skill-creator official anthropics Creates and refines skills, then tests them with prompts, evaluations, and performance checks. Claude Code Claude.ai 414,180installs

Questions about wowerpoint

How do I install wowerpoint in Claude Code?

Run npx skills add thedotmack/claude-mem --skill wowerpoint -a claude-code in your terminal.

What does the wowerpoint skill do?

It takes a single markdown or text file, creates a notebook in Google NotebookLM via notebooklm-py, and generates slides with a kawaii story prompt. It then prints the link to the generated notebook.

What setup is required before using wowerpoint?

You need jq and notebooklm-py installed with Playwright Chromium via uv tool. Then run ! notebooklm login interactively in your terminal to complete OAuth authentication.

Source text

SKILL.md · Apache-2.0
---
name: wowerpoint
description: Turn one document into a kawaii NotebookLM slide deck. Use for "wowerpoint this", "make a deck about <file>", "turn this report into slides", or any request to render a single document as shareable narrative slides.
---

# Wowerpoint

One doc in, one deck out. Slide-deck only — videos and podcasts from the same engine are noticeably worse and out of scope; refer the user to the `notebooklm` CLI directly if they want those.

## Triggers

- "Wowerpoint <file>"
- "Make a slide deck about <file>"
- "Turn this report into slides"
- "Kawaii-deck this"

## Setup (one-time per machine)

If `notebooklm auth check` returns 0 and `command -v jq` resolves, skip.

```bash
uv tool install --with playwright --force notebooklm-py
$(uv tool dir)/notebooklm-py/bin/playwright install chromium
```

`jq` is required by the workflow's JSON parsing; install if missing (`brew install jq` on macOS, or your distro's package manager).

Then the user authenticates interactively — do not script. Tell them to type `! notebooklm login` so the OAuth ENTER lands in their terminal.

## Workflow

### 1. The source doc

You need exactly one source doc. If it doesn't exist or is too thin to carry a deck, **write it first** — use mem-search and sequential thinking to make it comprehensive (long-form, narrative, several thousand words is normal). Do not paper over a weak source by adding more sources.

### 2. Auth pre-flight

```bash
notebooklm auth check 2>&1 | tail -5
```

Exit 1 with `Run 'notebooklm login' to authenticate.` = halt and tell the user.

### 3. Create notebook, add the source

```bash
NOTEBOOK_ID=$(notebooklm create "<title>" --json | jq -r .notebook.id)
notebooklm source add "<doc-path>" --notebook "$NOTEBOOK_ID" --json
```

Title: H1 of the source doc, or its filename stem; append a date for dated work.

`create` returns the id at `.notebook.id`; a wrong key gives an empty string and a silent downstream failure.

### 4. Generate the deck

```bash
notebooklm generate slide-deck "<PROMPT>" --format detailed --length default --notebook "$NOTEBOOK_ID" --json --retry 2
```

### 5. End your turn

Print the notebook URL:

```text
https://notebooklm.google.com/notebook/<NOTEBOOK_ID>
```

NotebookLM sends the user a notification when the deck is ready.

## The prompt

One sentence. Default:

```text
Use kawaii characters to tell the story of <subject>. Keep it warm and clear.
```

Replace `<subject>` with a one-phrase description from the source doc's H1 or the user's framing. If the user supplies their own prompt, pass it through verbatim — don't expand it.

## Failure modes

- **`pip: command not found`** — modern macOS doesn't ship pip on PATH. Use `uv tool install`.
- **`Playwright not installed`** — install `notebooklm-py` with `--with playwright`, then `playwright install chromium`.
- **`Run 'notebooklm login' to authenticate`** — only the user can complete OAuth.
- **Rate-limit (`GENERATION_FAILED` or "No result found for RPC ID")** — `--retry 2` handles transients; persistent failure means wait 5–10 minutes or fall back to the web UI.
- **Source upload denied for sensitive docs** — confirm before adding sources containing credentials, customer data, or unreleased product info. NotebookLM is a Google service.
- **`--length long` does not exist** — only `default|short`. If the user asks for "long slides," use `default` and explain.
- **No `--style` flag** — kawaii lives in the prompt text.

## Operational tips

- **Rerun cheaply** — once the notebook + source exist, regenerating with a different prompt only repeats generation. Reuse `NOTEBOOK_ID`.
- **Web UI fallback** — if generation is rate-limited >30 minutes, open the notebook URL and trigger generation in the UI.

© thedotmack · Apache-2.0 · thedotmack/claude-mem

See also

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor