Watch Better is a Chrome extension for quick YouTube caption briefings, searchable transcripts, signed-in AI analysis, and Smart Skip. Preview a video from its thumbnail, find timestamped moments, ask ChatGPT or Gemini, and jump past high-confidence sponsors, intros, outros, repetition, and rambling without losing your place. Detach the exact panel into a movable card while you keep browsing.
Install · See it work · Compare · Build
Watch Better supports Chrome 133 or newer on desktop Windows, macOS, Linux, and ChromeOS. The same extension package works across those operating systems. Chrome for Android and iOS does not install Chrome extensions.
- Download
watchbetter-0.1.0-chrome.zipfrom the latest release. - Extract the ZIP somewhere you will keep it.
- Open
chrome://extensionsin Chrome. - Turn on Developer mode.
- Choose Load unpacked, then select the extracted folder containing
manifest.json. - Pin Watch Better and open a YouTube video with captions.
Keep the extracted folder in place. Chrome needs it to run the extension.
These demos play and loop directly on GitHub.
Choose transcript rows and send them when you are ready.
Continue in ChatGPT or Gemini without losing the video.
- Press Quick Learn on any captioned video or Short thumbnail to open a movable Watch Better card. It sends the thumbnail plus bounded transcript context to embedded Gemini, then directly explains the video's click hook, claims, value, caveats, and useful official links.
- Load every caption track exposed by the current YouTube video.
- Search timestamped rows and jump directly to matching moments.
- Select specific transcript lines or use the bounded full transcript.
- When you open Ask, submit bounded video context to the selected provider, then focus its empty composer for your question.
- Use ChatGPT and Gemini inside the panel with your signed-in sessions.
- Start Smart Skip locally from captions, then explicitly start an optional provider deep scan for repetition, buried tangents, and housekeeping.
- Review a visual jump map, disable individual jumps, choose skip intensity, or undo the latest jump instantly. Smart Skip never changes your YouTube playback speed.
- Detach the exact video/AI session into a draggable card inside the same YouTube page—never a new tab or window.
- Keep multiple detached cards alive while the normal rail panel starts fresh for each newly opened video.
- Switch between light and dark themes, resize the panel, or collapse it to a launcher.
- Configure transcript behavior, default tab, caching, and appearance from one settings page.
- Keep Smart Skip results only for the current browser session.
Long videos often contain useful material wrapped in sponsorships, repeated points, and long introductions. Watch Better helps you find the useful moments, ask focused questions, and skip high-confidence filler without replacing YouTube's player.
| Task | Common manual workflow | Watch Better |
|---|---|---|
| Find the useful moment | Scrub the video or scan a long transcript | Search timestamped rows and jump straight to the video moment |
| Prepare AI context | Copy and clean a large transcript by hand | Select exact rows or use the bounded full transcript |
| Ask a provider | Switch between YouTube and a separate AI tab | Keep ChatGPT or Gemini beside the video, in the page |
| Connect AI | Configure another service or API workflow | Use your existing signed-in provider session; no API key |
| Control sharing | Manually paste and clean context | Opening Ask, Send to AI, Quick Learn, or Start deep scan controls each transfer |
This is a workflow comparison, not a claim that one tool fits everybody.
| Watch Better | YouTube alone | Glasp YouTube Summary | NoteGPT | |
|---|---|---|---|---|
| Main job | Find moments, select context, then ask | Watch and read captions | Generate transcripts and summaries | Turn video links into notes |
| Works beside the video | Yes | Yes | Yes | Separate web workspace |
| Jump from transcript | Yes | Yes | Yes | Available in transcript tools |
| Choose exact rows for AI | Yes | No built-in AI handoff | Not advertised | Not advertised |
| AI interface in panel | ChatGPT and Gemini | No | Summary tools and AI integrations | Built-in AI workspace |
| API key needed | No—uses your signed-in provider session | No | No for the extension | No for the web app |
“Not advertised” means we could not verify the feature on the product's public page; it does not mean the feature can never exist. Checked August 2026 using the official YouTube transcript guide, Glasp YouTube Summary page, and NoteGPT product overview.
flowchart LR
A[YouTube captions] --> B{Your action}
B -->|Open Ask or Send to AI| C[Submit bounded context]
C --> D[Ask a question]
D --> E{Selected provider}
E --> F[ChatGPT in panel]
E --> G[Gemini in panel]
- Sign in on the provider's official website if needed.
- Open Ask. Watch Better then submits bounded video context with instructions to
reply only
READY. - Type into the focused empty composer and submit normally.
- Optionally select transcript rows and choose Send to AI for a focused handoff.
- Continue the conversation using the provider's own interface.
- Use the header detach button to turn that exact panel into a movable card. Drag its header anywhere in YouTube; the normal rail gets a fresh panel for the next video. Detach again to keep multiple cards.
ChatGPT and Gemini both run inside Watch Better. Provider interfaces can change without notice, so their adapters may occasionally need updates.
Requires Node.js 22+ and npm 10+.
npm ci
npm run buildLoad .output/chrome-mv3/ from chrome://extensions.
Other useful commands:
npm run dev
npm run dev:harness
npm run zip
npm run validatenpm run validate checks formatting, lint, TypeScript, all tests, and the
production extension build. npm run zip creates the install archive in .output/.
| Permission or host | Purpose |
|---|---|
storage |
Save settings, optional session transcripts, and embedded-frame routing IDs. |
declarativeNetRequest |
Permit one prepared provider subframe in a YouTube panel or detached workspace. |
webNavigation |
Verify the registered provider is Watch Better's direct child before prompt routing. |
clipboardRead/Write |
Briefly stage a Quick Learn thumbnail for Gemini paste, then restore prior contents. |
youtube.com |
Add Quick Learn to listings, mount the panel, and read on-demand captions. |
chatgpt.com |
Prefill and use its signed-in composer when ChatGPT is selected in Ask. |
gemini.google.com |
Use signed-in Gemini inside Ask and the in-page Quick Learn card. |
Watch Better has no cookie, browsing-data, broad host, or remote-code permission.
Watch Better stores no API keys and sends no analytics. Transcripts and conversations
are not persisted by default. The optional browser-session transcript cache is bounded
and cleared with the browser session. Detached cards stay only in the current YouTube
tab and browser memory. Quick Learn fetches captions only after its thumbnail button
is pressed, then sends the YouTube thumbnail and bounded timestamped context to Gemini
embedded in its in-page card for one direct briefing.
Opening Ask submits bounded context to the selected provider with a READY-only
instruction; the provider applies its own account, retention, and usage policies.
Smart Skip starts locally and changes no playback speed. Its optional Start deep
scan action sends bounded caption chunks to the selected provider. Maps last only
for the browser session.
See PRIVACY.md and SECURITY.md.
watch-better/
├── src/
│ ├── entrypoints/ # YouTube, popup, settings, background, provider scripts
│ ├── features/
│ │ ├── transcript/ # Search, select, copy, and seek
│ │ ├── ask/ # Provider choice and prompt flow
│ │ ├── settings/ # User preferences
│ │ ├── detach/ # Movable in-page per-video cards
│ │ └── smart-skip/ # Skip engine, semantic analysis, action map, and cache
│ ├── services/ # Clipboard and signed-in web-chat adapters
│ ├── storage/ # Settings and bounded transcript cache
│ └── components/ # Shared extension UI
├── harness/ # Isolated UI scenarios
├── docs/ # Architecture, decisions, release notes, and media
├── design-system/ # Visual system source of truth
├── package.json # Commands and dependencies
└── wxt.config.ts # Chrome extension configuration
- Chrome 133+ desktop YouTube watch pages and Shorts; no live streams or mobile Chrome extension support.
- Smart Skip uses available caption tracks only; there is no speech-to-text fallback.
- Smart Skip begins only after matching captions load. Local jumps do not require a provider; optional deep jumps require the selected signed-in provider, but provider failure never delays or disables local skipping.
- Provider web interfaces and embedded sign-in rules can change.
See CONTRIBUTING.md. Chrome Web Store preparation is tracked in docs/CHROME_WEB_STORE.md. For questions and feedback, join the Watch Better Discord.
Watch Better is available under the MIT License.



