# Desktop What's New

Writes a one-time What's new dialog entry for desktop app users.

- Repository: https://github.com/cline/cline (71178 stars)
- Category: Writing
- License: Apache-2.0
- Last updated: 2026-10-31
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add cline/cline --skill desktop-whats-new -g -a claude-code -y`
Codex: `npx skills add cline/cline --skill desktop-whats-new -g -a codex -y`
Cursor: `npx skills add cline/cline --skill desktop-whats-new -g -a cursor -y`
Gemini CLI: `npx skills add cline/cline --skill desktop-whats-new -g -a gemini-cli -y`

## Description

Use when the team wants to catch desktop app users up on recent features with a one-time "What's new" dialog (apps/examples/desktop-app). Guides deciding whether a catch-up is warranted, picking the highlights from the changelog, writing tight copy, adding the entry to webview/lib/whats-new-content.ts, and previewing it from Settings → About. Not for individual releases, those only appear on the About page's release notes.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Desktop "What's new" catch-up

Use this skill when the user asks to show desktop users what's new, catch users up on recent updates, publish a what's-new modal, or refresh the highlights in Settings → About.

> Working directory: run every command below from the repository root.

The desktop app ships every couple of days, so individual releases are never announced in-app; Settings → About always lists the bundled release notes. A **catch-up** is the exception: once enough notable features have accumulated, one dialog shows them, once, on the first launch after the update that carries it. Publishing one is a content change in a single file plus a preview, nothing else.

## How it works

- Content lives in `apps/examples/desktop-app/webview/lib/whats-new-content.ts` as `WHATS_NEW_RELEASES`, newest first. Each entry has a stable `id`, a `title`, and 3, 4 `highlights` (`title`, `description`, lucide `icon`).
- `webview/lib/whats-new.ts` stores the last seen `id` in localStorage (`cline.code.whats-new.v1`). The app shell (`webview/app/page.tsx`) shows `WhatsNewDialog` when the newest id differs from the stored one; closing it, or clicking "See all changes", stores the id.
- Fresh installs never see a catch-up: completing onboarding marks the newest entry seen.
- Settings → About has a "Show what's new" button that replays the newest entry without marking it seen. That is the preview path.
- The dialog (`webview/components/whats-new-dialog.tsx`) is fixed: violet hero with an eyebrow and headline, a 2×2 grid of highlights, footer with "See all changes" and "Get Started". Do not add per-entry layout options, images, or extra buttons; keep it a content change. The one exception is a `spotlight` entry (currently only `"connectors"`): a launch big enough to carry the dialog alone, with its own body and call to action in the dialog. Only add a new spotlight when the team explicitly asks for one.

## Workflow

1. Decide whether a catch-up is warranted.

The rest: https://github.com/cline/cline/blob/HEAD/.cline/skills/desktop-whats-new/SKILL.md
