MCPInstall

napkin

Visual whiteboard collaboration for Copilot CLI. Creates an interactive whiteboard that opens in your browser — draw, sketch, add sticky notes, then share everything back with Copilot. Copilot sees your drawings and text, and responds with analysis, suggestions, and ideas.

Installs
2.2K
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/github/awesome-copilot --skill napkin
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads napkin automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Napkin — Visual Whiteboard for Copilot CLI

Napkin gives users a browser-based whiteboard where they can draw, sketch, and add sticky notes to think through ideas visually. The agent reads back the whiteboard contents (via a PNG snapshot and optional JSON data) and responds conversationally with analysis, suggestions, and next steps.

The target audience is lawyers, PMs, and business stakeholders — not software developers. Keep everything approachable and jargon-free.


Activation

When the user invokes this skill — saying things like "let's napkin," "open a napkin," "start a whiteboard," or using the slash command — do the following:

  1. Copy the bundled HTML template from the skill assets to the user's Desktop.

    • The template lives at assets/napkin.html relative to this SKILL.md file.
    • Copy it to ~/Desktop/napkin.html.
    • If ~/Desktop/napkin.html already exists, ask the user whether they want to open the existing one or start fresh before overwriting.
  2. Open it in the default browser:

    • macOS: open ~/Desktop/napkin.html
    • Linux: xdg-open ~/Desktop/napkin.html
    • Windows: start ~/Desktop/napkin.html
  3. Tell the user what to do next. Say something warm and simple:

    Your napkin is open in your browser!
    
    Draw, sketch, or add sticky notes — whatever helps you think through your idea.
    
    When you're ready for my input, click the green "Share with Copilot" button on the whiteboard, then come back here and say "check the napkin."
    

Reading the Napkin

When the user says "check the napkin," "look at the napkin," "what do you think," "read my napkin," or anything similar, follow these steps:

Step 1 — Read the PNG snapshot (primary)

Look for a PNG file called napkin-snapshot.png. Check these locations in order (the browser saves it to the user's default download folder, which varies):

  1. ~/Downloads/napkin-snapshot.png
  2. ~/Desktop/napkin-snapshot.png

Use the view tool to read the PNG. This sends the image as base64-encoded data to the model, which can visually interpret it. The PNG is the primary way the agent understands what the user drew — it captures freehand sketches, arrows, spatial layout, annotations, circled or crossed-out items, and anything else on the canvas.

If the PNG is not found in either location, do NOT silently skip it. Instead, tell the user:

I don't see a snapshot from your napkin yet. Here's what to do:

1. Go to your whiteboard in the browser
2. Click the green "Share with Copilot" button
3. Come back here and say "check the napkin" again

The button saves a screenshot that I can look at.

Step 2 — Read the clipboard for structured JSON (supplementary)

Also try to grab structured JSON data from the system clipboard. The whiteboard copies this automatically alongside the PNG.

  • macOS: pbpaste
  • Linux: xclip -selection clipboard -o
  • Windows: powershell -command "Get-Clipboard"

The JSON contains the exact text content of sticky notes and text labels, their positions, and their colors. This supplements the PNG by giving you precise text that might be hard to read from a screenshot.

If the clipboard doesn't contain JSON data, that's fine — the PNG alone gives the model plenty to work with. Do not treat a missing clipboard as an error.

Step 3 — Interpret both sources together

Synthesize the visual snapshot and the structured text into a coherent understanding of what the user is thinking or planning:

  • From the PNG: Describe what you see — sketches, diagrams, flowcharts, groupings, arrows, spatial layout, annotations, circled items, crossed-out items, emphasis marks.
  • From the JSON: Read the exact text content of sticky notes and labels, noting their positions and colors.
  • Combine both into a single, conversational interpretation.

Step 4 — Respond conversationally

Do not dump raw data or a technical summary. Respond as a collaborator who looked at someone's whiteboard sketch. Examples:

  • "I can see you've sketched out a three-stage process — it looks like you're thinking about [X] flowing into [Y] and then [Z]. The sticky note in the corner says '[text]' — is that a concern you want me to address?"
  • "It looks like you've grouped these four ideas together on the left side and separated them from the two items on the right. Are you thinking of these as two different categories?"
  • "I see you drew arrows connecting [A] to [B] to [C] — is this the workflow you're envisioning?"

Step 5 — Ask what's next

Always end by offering a next step:

  • "Want me to build on this?"
  • "Should I turn this into a structured document?"
  • "Want me to add my suggestions to the napkin?"

Responding on the Napkin

When the user wants the agent to add content back to the whiteboard:

  • The agent cannot directly modify the HTML file's canvas state — that's managed by JavaScript running in the browser.
  • Instead, offer practical alternatives:
    • Provide the response right here in the CLI, and suggest the user add it to the napkin manually.
    • Offer to create a separate document (markdown, memo, checklist, etc.) based on what was interpreted from the napkin.
    • If it makes sense, create an updated copy of napkin.html with pre-loaded content.

Tone and Style

  • Use the same approachable, non-technical tone as the noob-mode skill.
  • Never use developer jargon without explaining it in plain English.
  • Treat the napkin as a creative, collaborative space — not a formal input mechanism.
  • Be encouraging about the user's sketches regardless of artistic quality.
  • Frame responses as "building on your thinking," not "analyzing your input."

Error Handling

PNG snapshot not found:

I don't see a snapshot from your napkin yet. Here's what to do:

1. Go to your whiteboard in the browser
2. Click the green "Share with Copilot" button
3. Come back here and say "check the napkin" again

The button saves a screenshot that I can look at.

Whiteboard file doesn't exist on Desktop:

It looks like we haven't started a napkin yet. Want me to open one for you?

Important Notes

  • The PNG interpretation is the primary channel. Multimodal models can read and interpret the base64 image data returned by the view tool.
  • The JSON clipboard data is supplementary — it provides precise text but does not capture freehand drawings.
  • Always check for the PNG first. If it isn't found, prompt the user to click "Share with Copilot."
  • If the clipboard doesn't have JSON data, proceed with the PNG alone.
  • The HTML template is located at assets/napkin.html relative to this SKILL.md file.
  • The walkthrough images assets/step1-activate.svg, assets/step2-whiteboard.svg, assets/step3-draw.svg, assets/step4-share.svg, and assets/step5-response.svg are documentation illustrations, not runtime inputs.
  • If the noob-mode skill is also active, use its risk indicator format (green/yellow/red) when requesting file or bash permissions.

FAQ

What does the napkin skill do?

Visual whiteboard collaboration for Copilot CLI. Creates an interactive whiteboard that opens in your browser — draw, sketch, add sticky notes, then share everything back with Copilot. Copilot sees your drawings and text, and responds with analysis, suggestions, and ideas.

How do I install napkin?

Run npx skills add https://github.com/github/awesome-copilot --skill napkin in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/napkin/ (personal) or .claude/skills/napkin/ (project).

Which AI agents can use napkin?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is napkin safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains napkin?

It is published by github in github/awesome-copilot, and it is an official skill from the maker of the technology it covers. It has 2,227 recorded installs.

More from github/awesome-copilot

View all →

git-commit

github/awesome-copilot

Use this skill when the user wants to make a Git commit or split changes into more than one commit. Also use it when the user types "/commit" or asks for a conventional commit. The skill examines the diff, stages the related files, writes a Conventional Commits message, and runs git commit. Do not use it when the user wants only a commit message and no commit. Do not use it to push, open a pull request, rebase, or change the commit history.

OfficialCode Quality & Workflow47.4K installs

excalidraw-diagram-generator

github/awesome-copilot

Generate Excalidraw diagrams from natural language descriptions. Use when asked to "create a diagram", "make a flowchart", "visualize a process", "draw a system architecture", "create a mind map", or "generate an Excalidraw file". Supports flowcharts, relationship diagrams, mind maps, and system architecture diagrams. Outputs .excalidraw JSON files that can be opened directly in Excalidraw.

OfficialDocs & Writing31.9K installs

multi-stage-dockerfile

github/awesome-copilot

Create optimized multi-stage Dockerfiles for any language or framework

Official29.8K installs

documentation-writer

github/awesome-copilot

Diátaxis Documentation Expert. An expert technical writer specializing in creating high-quality software documentation, guided by the principles and structure of the Diátaxis technical documentation authoring framework.

OfficialDocs & Writing27.9K installs

prd

github/awesome-copilot

Generate high-quality Product Requirements Documents (PRDs) for software systems and AI-powered features. Includes executive summaries, user stories, technical specifications, and risk analysis.

Official24.1K installs

refactor

github/awesome-copilot

Surgical code refactoring to improve maintainability without changing behavior. Covers extracting functions, renaming variables, breaking down god functions, improving type safety, eliminating code smells, and applying design patterns. Less drastic than repo-rebuilder; use for gradual improvements.

OfficialCode Quality & Workflow22.4K installs

Popular docs & writing skills

View category →

grill-with-docs

mattpocock/skills

A relentless interview to sharpen a plan or design, which also creates docs (ADR's and glossary) as we go.

Docs & Writing1.2M installs

lark-markdown

open.feishu.cn

飞书 Markdown:查看、创建、上传、编辑和比较飞书中的原生 Markdown 文件。当用户要操作飞书 Markdown 文件,或比较其远端版本及本地草稿时使用。纯本地 Markdown 文件操作不触发本 skill。不负责将 Markdown 导入为飞书在线文档,也不负责文件搜索、权限、评论、移动、删除等云空间管理操作。

Docs & Writing778.7K installs

writing-beats

mattpocock/skills

Writing, exploit; assemble raw material into a journey of beats, grounding each term before a beat leans on it.

Docs & Writing490.7K installs

writing-shape

mattpocock/skills

Writing, exploit: shape raw material into an article, paragraph by paragraph.

Docs & Writing490.2K installs

writing-fragments

mattpocock/skills

Writing, explore: mine raw fragments, no structure yet.

Docs & Writing489.6K installs

writing-for-agents

mattpocock/skills

Writing documents for agents. Use when creating or editing skills, or modifying AGENTS.md or CLAUDE.md.

Docs & Writing479.3K installs