DICTATE
READY View on GitHub

Point, talk, submit.

Voice and pointer review sessions for websites and videos, packaged for Claude.

claude · ~/projects/my-site
> /dictate the onboarding pages
Opening Dictate Studio…
Point, press T, talk, press T. Then Finish → Send.

Show it once. Claude knows exactly where.

Dictate records what you say together with what you point at, then lines each sentence up with its element, frame, or timecode. Words like “this” and “here” resolve to wherever your cursor was when you said them.

Pins the element under your cursor

On your site, the Dictate extension for Chrome pins whatever you point at and takes a screenshot. Claude gets the page, the element’s selector, its text and its HTML, so “this button” means one button.

T talk · AltA pin without talking

WEB·/dashboard/listings·button “Add listing”

Lands video notes on the exact frame

Click the picture to pin a point, drag to box an area, press I and O to mark a range. Every note carries its timecode and where on the frame you pointed, and the video pauses while you talk.

IO range · M marker · ←→ one frame

Example frame: a person at a kitchen table holding a white mug with a mountain logo, a bright window behind them. P1 B1
PGM·ep12-roughcut.mp4·00:01:23:14example

Transcribes Arabic and English on your GPU

Whisper runs on your machine and turns your voice into word-timed text, even when one sentence switches languages. Before you send, you fix anything it misheard and void the notes you don’t want.

00:01:21.80Cut from here to where I start talking about the camera.
00:02:10.05 هذا130.05الجزء130.31طويل،130.62 cut131.10it131.28from131.40here131.66
00:03:08.21Make the title bigger.
WHISPER·large-v3-turbo·GPU·ar + en

Hands Claude Code an anchored report

Press Send and Claude reads every note with its anchor and screenshots. It replies with a numbered plan of what it understood, then makes the edits, and stops to ask only when a note is genuinely ambiguous.

### 2. /dashboard/listings · 00:31 into the session

Page: [Listings](http://localhost:3000/dashboard/listings)

> Make this button bigger and green.

- **Pin P2** → `button.btn-primary` "Add listing"
  - selector: `main .toolbar > button.btn-primary`
  - element box: 1012,148 · 164×40 px in a 1440×900 viewport
- **Pointing** "this" → `button.btn-primary` "Add listing"
- **Screenshot** `frames/0004-p2.jpg`
CLAUDE·report.mdexample

Install once. Then type /dictate.

You need Node 20 or newer and Chrome or Edge. Nothing to clone: the skill starts the newest Dictate from npm every time, so updates reach you on your next review.

  1. Add the skill

    Installs /dictate for Claude Code from skills.sh. npx skills update keeps it current.

    npx skills add D7y1/dictate -g
  2. Set up speech to text

    Installs faster-whisper (with the CUDA libraries on an NVIDIA card) and downloads the speech model. It takes a few minutes the first time and is safe to run again. Skip it and Dictate uses the browser’s live captions instead.

    npx @d7y/dictate setup
  3. Add the extension, once

    Only for reviewing websites, and Chrome only lets you do this step yourself. Setup and the studio open the page to add it, then confirm it’s in.

  4. Type /dictate in Claude Code

    In any project. Say what you’re reviewing, or give it a video file. Claude opens the studio, waits, and starts working when you press Send.

    /dictate the onboarding pages
    /dictate C:\footage\ep12.mp4
  • Node 20+
  • Chrome or Edge
  • Python 3.9+ runs Whisper, recommended
  • NVIDIA GPU optional, CPU works slower

Keys

T
Open a note, press again to close it
Esc
Discard the open note
AltA
Pin on your site without talking
IO
Mark a range in a video
Space
Play or pause
N
Type a note instead of saying it

Every action can be rebound, including to the middle button and both mouse side buttons, so you can review without touching the keyboard.

Five parts. No build step.

The server, the studio and Whisper run on your machine. The studio is plain files, so it starts instantly and has nothing to break between projects.

  1. EXT

    Chrome extension

    Tracks the page, pins elements, takes screenshots. Never records what you type into fields.

    Manifest V3
  2. SRV

    Local server

    Zero dependencies. Serves the studio, collects every event, and writes the session folder.

    Node.js · 127.0.0.1
  3. UI

    Studio

    ES modules with no build step: the rundown, the program monitor, the review screen.

    plain JavaScript
  4. ASR

    Transcription

    Word-timed text on your GPU, warmed up while you record.

    faster-whisper · Python
  5. SKILL

    Claude Code skill

    Opens the studio, waits for Send, then reads report.md and the frames.

    /dictate

Each session lands in your project under .dictate/sessions/ with report.md, session.json, the frames, the transcript and your audio. The folder ignores itself in git.

Show Claude what you mean.

Open a project in Claude Code, type /dictate, and point.