---
name: whatsapp-copy
description: Extract the shareable takeaway from the current conversation, reformat it into WhatsApp's native text conventions (single-asterisk *bold*, _underscore_ italics, - bullets, > quotes, ```monospace```, raw links), and copy it to the clipboard ready to paste into a chat. Trigger with "/whatsapp-copy", "copy this for WhatsApp", "make this WhatsApp-friendly and copy", or when the user wants to forward something from the chat to a person or group on WhatsApp. Optional args name which content to copy (e.g. "/whatsapp-copy the GST to-do list").
---

# whatsapp-copy

Turn something from the current conversation into a clean, self-contained WhatsApp message and put it on the user's clipboard.

## What counts as "the relevant text"

1. **If the user named a target in the args or their message** ("the GST list", "your last summary", "the reply to Anish"), use that.
2. **Otherwise, pick the most recent substantive deliverable** in the conversation — the last list, summary, spec, or answer the user would plausibly forward. Not your own meta-chatter.
3. **Strip anything that only makes sense inside this chat:**
   - Trailing offers ("Want me to turn this into a checklist?"), preambles ("Here's the…"), and hedges.
   - Back-references like "as I mentioned above", "per the transcript", "the summary you pasted" — rewrite so a stranger reading only this message understands it.
   - Internal notes, file paths, tool names, and anything the recipient shouldn't see.
4. **Make it stand alone.** If the content needs one line of context to make sense to the recipient, add a short bold title line at the top (e.g. `*GST tool — to-do list*`). Don't invent facts.
5. **When in doubt about which of two things to copy, or whether the audience is a person vs a group, ask one quick question** before copying. Otherwise just proceed.

## WhatsApp formatting rules (convert Markdown → WhatsApp)

WhatsApp is **not** Markdown. The single most common mistake is bold. Apply these exactly:

| Intent | Markdown (do NOT emit) | WhatsApp (emit this) |
|---|---|---|
| Bold | `**text**` or `__text__` | `*text*` (single asterisks) |
| Italic | `*text*` or `_text_` | `_text_` (underscores) |
| Strikethrough | `~~text~~` | `~text~` (single tildes) |
| Inline code | `` `text` `` | `` `text` `` (unchanged — supported) |
| Code block | ```` ```lang ```` | ```` ``` ```` with no language tag |
| Bulleted list | `- item` / `* item` | `- item` (always `- `, never `* ` — a leading `*` collides with bold) |
| Numbered list | `1. item` | `1. item` (unchanged — supported) |
| Quote | `> text` | `> text` (unchanged — supported) |

Additional conversions and constraints:

- **Headings** (`#`, `##`, `###`): WhatsApp has no headings. Convert each heading to its own line in `*bold*`, with a blank line before it (except the very first). Drop the `#`.
- **Links**: WhatsApp auto-links bare URLs and has no `[text](url)` syntax. Convert `[label](url)` → `label: url`. Leave bare URLs as-is. Never wrap a URL in any formatting.
- **Tables**: unsupported. Convert a small table to `*Column-or-label:* value` lines per row, or — if column alignment genuinely matters — a ```` ``` ```` monospace block. Prefer the label:value form.
- **Horizontal rules** (`---`, `***`): delete; replace with a single blank line.
- **Nested bullets**: keep nesting shallow (one level). Indent sub-items with two spaces before the `- `.
- **No nested/overlapping emphasis** (e.g. bold inside italic) — WhatsApp renders it unreliably. Pick one.
- **Emphasis must hug the text**: `*word*` works; `* word *` does not. No space between the marker and the text, and the markers need whitespace/punctuation on the outside.
- **Spacing**: separate sections with a single blank line. WhatsApp collapses runs of blank lines, so never use more than one.
- **Emoji**: optional and WhatsApp-native. You may add a *few* leading emoji to section titles only if it fits the tone (e.g. a checklist). Default to none for anything professional/client-facing. Never replace words with emoji.
- **Length**: keep it tight — trim filler, but don't drop real content. If the result is very long (10+ sections), tell the user after copying and offer a shorter version.

## Steps

1. Identify the relevant text per the rules above.
2. Rewrite it into WhatsApp format. Produce the final message as plain text — nothing but what should land in the chat.
3. Write that text **verbatim** to a temp file (avoids shell-escaping mangling asterisks, backticks, quotes, emoji):
   - Use the Write tool to create `<scratchpad>/whatsapp-copy.txt` with the exact message content. Prefer the session scratchpad dir; `/tmp/whatsapp-copy.txt` is an acceptable fallback.
4. Copy the file to the clipboard:
   - macOS: `pbcopy < <path>`
   - Fallbacks if `pbcopy` is unavailable: Linux `xclip -selection clipboard < <path>` or `wl-copy < <path>`; WSL/Windows `clip.exe < <path>`.
5. Confirm: show the user the exact message that was copied (in a fenced block so they can eyeball the raw markers), and say it's on the clipboard, ready to paste. Do **not** send it anywhere — this skill only copies.

## Guardrails

- **Copy only — never send.** This skill puts text on the clipboard; it does not message anyone.
- **Show what you copied** so the user can verify before pasting to a person or group.
- Don't include anything the user marked private, or internal implementation detail, unless they explicitly asked to share it.
- Preserve the user's facts and numbers exactly; reformatting must not change meaning.
