01Setup
Install it from the download page (on a Mac: unzip, drag to Applications, click Open Anyway once). Then open Settings from the menu bar icon, or press ⌘,, or just open Lazy as again from Spotlight. On Windows or Linux? The steps are on the download page, and Windows and Linux lists what's different.
On the Setup tab, allow the permissions it lists:
- Microphone and Speech Recognition, to hear you and write it down.
- Screen Recording, for screenshots. macOS only applies it after a relaunch, so click Relaunch Lazy as.
- Automation, asked once per browser the first time you review in it, so Lazy as can read the page address.
Optional: tick Open Lazy as at login so it's always napping in the menu bar, ready when you are.
02Your first session
- Press ⌃Z
A small HUD appears and the menu bar says "listening". You're in a session.
- Point, rest, talk
Rest your pointer on the thing that's wrong for about half a second and say what's wrong with it. "This heading is too close to the image, give it more room." Lazy as photographs the spot right then. Point at a second thing mid-sentence and it gets its own screenshot, with a quote of what you were saying at that moment.
- Take your time
Pauses don't end a note. Think for ten seconds, sigh, carry on. Everything you say stays in the same note until you decide it's done.
- Say "next note"
Or press ⌃X. The HUD pill flashes "#1 saved. Now on #2." and you're on to the next complaint. The pill always shows which note you're on.
- Press ⌃Z again to stop
Your notes are copied to the clipboard and saved in
~/Documents/LazyAs. Paste them as is, press ⌃⌥Z to turn them into a tidy prompt first, or click Open in ChatGPT (or your chat) to send it all to a chat.
About the whole thing, not one spot? Say "general comment" (or press ⌃G) and talk. That note gets no screenshot. See General comments.
Forgot to stop? It stops itself after 5 quiet minutes. You can change that, or turn it off, in Settings › Capture.
Want to fix a word the transcription got wrong? Open Review sessions… from the menu bar icon. You can edit any note there (edits save automatically), copy the notes, or make the prompt.
Each session is named after the page you reviewed and what you talked about (your AI sharpens the name when you make a prompt). Click the name at the top to rename it. To delete a whole session, click the trash button next to the gear, right-click it in the list, or select it and press Delete. It goes to the Trash, so you can put it back.
03Shortcuts
Start or stop a session
Snip: drag over the exact area, then talk
Make the last session a prompt
Next note (only while recording)
General comment, no screenshot (only while recording)
Switch language (only while recording)
⌃X, ⌃G and ⌃L are only grabbed while a session is running, so they keep doing their usual thing in your other apps the rest of the time. On Windows and Linux every shortcut adds Alt: see Windows and Linux.
Changing them
- Open Settings › Setup and find Shortcuts.
- Click the shortcut you want to change. It says "Press keys…".
- Press the new combination. Done. Esc cancels, Reset puts the default back.
A shortcut has to include ⌃ Control or ⌘ Command, unless it's an F-key (F1 to F19). macOS doesn't allow Option-only global shortcuts, so neither do we.
If a shortcut doesn't fire, another app probably owns it. Lazy as tells you right under the shortcut ("Another app already uses ⌃Z"). Pick something else.
04Mouse and Logitech
Hold the middle button
Hold the middle mouse button (the wheel click) for half a second to start or stop a session. A quick middle-click still does whatever it normally does. Turn it on or off in Settings › Setup.
Logitech MX Master (and friends)
Lazy as listens for the keystroke, so any mouse button that can send ⌃Z works. In Logi Options+:
- Select your mouse and click the gesture button (the thumb button).
- Choose Gestures and pick a direction, for example "up".
- Set that direction's action to a keyboard shortcut and press ⌃Z.
- Now hold the thumb button and move the mouse up to start or stop. Do the same with ⌃⇧Z on another direction for snips.
Menu names shift a little between Logi Options+ versions, but the idea is always: gesture direction, keystroke, ⌃Z. If you changed the Lazy as shortcut, use your new one instead.
05Snip mode
Sometimes "around here" isn't precise enough. Press ⌃⇧Z, the crosshair appears, drag over exactly the area you mean (just like ⌘⇧4), let go, then say why it's wrong.
- A snip starts a new note, so no need to say "next note" first.
- Works during a session, and if you're not in one it starts one for you.
- Esc cancels the snip.
- Snip and say nothing? The note is kept as "(snipped, no comment)". Silence is also feedback.
06Voice commands
| Say | What happens |
|---|---|
| "next note" · "new note" · "next point" | Ends this note and starts the next one. Same as pressing ⌃X. The command itself isn't saved. |
| "general comment" · "general note" · "general feedback" | Starts a general note: about the whole thing, with no screenshot. Same as pressing ⌃G. See General comments. |
| "scratch that" · "never mind" | Drops the note you're on. If you just started a new note, it drops the previous one instead. |
| "delete the last note" | Same thing, for when you want to be formal about it. |
Watch the HUD pill: it shows the current note number (#3) and flashes "#3 saved. Now on #4." when a note closes. No flash? The room was probably too noisy to catch it. Say it again clearly, or press ⌃X.
Turn voice commands off in Settings › Capture if you review a lot of scripts that say "never mind". If you miss the old behaviour, Also start a new note after a silence of 4, 6 or 10 seconds is there too (default: never).
07General comments
Not everything is about one spot. "The whole thing feels cramped" or "use our brand font everywhere" deserves a note without a screenshot. Three ways to make one:
- Say "general comment" (or "general note", "general feedback"), then talk. In Arabic, "ملاحظة عامة" or "تعليق عام" works too.
- Start a note with "General," and a short pause. ("General layout is fine", said in one breath, stays a normal note.)
- Press ⌃G while recording (Ctrl+Alt+G on Windows and Linux), or choose General comment (no screenshot) from the menu.
The HUD shows #4 general so you know it worked. A general note takes no screenshots, and the prompt lists general notes first, under General, before the notes about specific spots. Changed your mind? In Review sessions…, the General switch on each note turns it into a general note or back.
08Languages
On a Mac, Lazy as uses Apple's speech recognition, so it understands every language your Mac does: English, Arabic, French, Spanish, German, Hindi, Chinese, Italian, Portuguese, Turkish, Russian and plenty more. On Windows and Linux it uses Whisper, right on your PC, which knows about 100 languages.
- Lazy as listens in one language at a time, because that's far more accurate. Set it in Settings › Capture › I speak.
- Switch languages a lot? Pick a Quick-switch language, then press ⌃L while recording to flip to it and back. Or choose one from the menu bar's Language menu. Both apply mid-session.
- On a Mac, Transcription: Best accuracy (the default) uses Apple's speech servers, like Dictation. It copes much better with background noise and accents.
- Transcription: Private keeps everything on your Mac, for languages marked ⚡︎. Offline, Lazy as switches to on-Mac by itself.
- The whole session is transcribed continuously, with no time limit. Long monologues are kept in full.
In Settings › AI, Write the prompt in English translates the final prompt whatever you spoke, which usually means fewer tokens. Quoted UI text stays in its original language.
09Screenshots and tokens
Lazy as takes a screenshot when you start talking in a note, where the pointer is. Pause for 3 seconds or more and start talking again, and it takes another (change the pause to 2 or 5 seconds in Settings › Capture). Talking straight through, even about several things, gives one screenshot. If you start talking while still moving the pointer, or scroll in the first moment, it waits for you to settle and photographs that. Each note keeps up to 3 screenshots (set 1 to 4), in order, each with a short quote of what you said. Same spot again after a pause, with nothing changed? It doesn't save a duplicate.
AI models charge for images by size. Claude, for example, counts roughly width × height ÷ 750 tokens. A full Retina screenshot is expensive and mostly irrelevant, so Lazy as crops around where you pointed, outlines that spot and dims the rest. Nothing is drawn over the content itself.
| Size | Typical, per screenshot | Use it for |
|---|---|---|
| Light (recommended) | ~500 tokens | Almost everything |
| Balanced | ~800 tokens | Busy pages, more context around the spot |
| Sharp | ~2,000 tokens | Tiny text, dense UIs, spreadsheets |
Those are typical figures for the default crop around where you pointed. A wider area costs a bit more. Other options in Settings › Capture:
- Frame: the area around where you pointed (default) or the whole screen.
- Marking: outline the spot and dim the rest, or leave the screenshot untouched.
- Screenshots per note, at most: 1 to 4 (default 3).
- New screenshot when I talk again after a pause of: 2, 3 or 5 seconds (default 3).
- Reuse the screenshot when several notes are about the same spot. The notes say "same as #2" instead of attaching a copy.
It works over full-screen apps, browsers, video players and PDF viewers. If it's on your screen, it can be in a note.
10Making the prompt
Raw notes are honest. They are also full of "um", "like", "wait no" and the same sentence three times. Press ⌃⌥Z (or choose Make last session a prompt from the menu bar) and Lazy as rewrites the last session into a compact instruction for your AI:
- Keeps every request, value, name, color, size, quoted text and screenshot path.
- Drops filler, repeats and false starts. On self-corrections it keeps what you meant in the end.
- Marks words it isn't sure about with (?) instead of guessing, and collects your questions under "Questions".
- Splits a long note into separate requests and puts each one next to the screenshot whose quote matches it.
- Puts general comments first, groups the rest by page when that's obvious, and keeps the note numbers.
In our example that was 71% fewer tokens. The prompt is copied to the clipboard and saved as prompt.md next to your notes. Only the text of your notes is sent to do this, to the AI you picked. Images never leave your computer at this step.
Want it every time? Turn on Automatically make it a prompt in Settings › Capture.
11Choose your AI
Lazy as is an independent app. It writes prompts with an AI you already have, through that AI's own official app and your own account, never a paid API. So free and basic plans work wherever the AI allows it. Pick one in Settings › AI, then click Install and Sign in once.
| AI | Plan you need | Runs through |
|---|---|---|
| Gemini | Free, with a personal Google account | Antigravity CLI |
| GitHub Copilot | Every plan, including Copilot Free | Copilot CLI |
| ChatGPT | Plus or higher | Codex |
| Claude | Pro or Max | Claude Code |
Install opens a terminal with the AI's official installer. Sign in opens your browser so you can approve with your own account. Lazy as never sees your password. Uses count toward your plan's normal limits, and one prompt is a small request (usually 1 to 2 thousand tokens, no tools, no history). Click Test it to check everything works. If the AI can't be reached, your sign-in expired or you hit a limit, Lazy as falls back to the offline cleaner and tells you why.
On a Mac with Claude Code already signed in, there's nothing to do. Or click Connect my Claude: Terminal opens, you approve in your browser, and Lazy as keeps the token in the macOS Keychain.
Offline cleaner
Free, private and basic. It strips the ums, puts general comments first, groups notes by page and keeps every path. Less clever, never needs the internet.
Anthropic API key (Mac)
Create a key at console.anthropic.com, paste it in, click Save. It goes straight into the Keychain. You pay per use, and a polish on Haiku costs a fraction of a cent.
Models
| Claude model | ID | Vibe |
|---|---|---|
| Claude Haiku 5.5 (default) | claude-haiku-5-5 | Fastest, lightest on your limits |
| Claude Sonnet 5.5 | claude-sonnet-5-5 | Smarter rewrites |
| Claude Opus 5.5 | claude-opus-5-5 | Overkill, honestly |
With Claude you can also type any model ID. ChatGPT, Gemini and Copilot use their app's default model unless you type one in.
No AI plan at all? Open in AI chat works with every chat, free ones included.
12Open in AI chat
Works with any AI chat in your browser, on any plan, free ones included. After a session, click Open in ChatGPT in the HUD (it's also in the menu and in Review sessions…). Pick your chat in Settings › AI: ChatGPT, Claude, Gemini, DeepSeek, Grok, Microsoft Copilot, Perplexity or Mistral Le Chat.
- ChatGPT and Claude open with your notes already typed in. Every screenshot is on your clipboard as one labelled image: press ⌘V (Ctrl+V on Windows and Linux) to attach it, then send.
- The others open empty, with your notes on the clipboard. Paste them, then drag in
screenshots-sheet.pngfrom the session folder: every screenshot in one image. Very long sessions work this way in ChatGPT and Claude too.
Each picture in the image is labelled with its file name (01.png, 01b.png…), the same names your notes use, so the AI knows which one goes with which note. If you made a prompt, the chat gets the prompt; otherwise it gets your tidied notes. Lazy as uploads nothing itself: you press send.
13Files and notes.md
Every session is a folder in ~/Documents/LazyAs, named by date and time (change the location in Settings › Capture). The friendly name you see in the app is stored inside it, so renaming never moves files:
01.png # first spot you pointed at in note 1
01b.png # second spot in note 1
02.png
notes.md # your notes, numbered, with their screenshots
prompt.md # the polished prompt (after ⌃⌥Z)
session.json # the same notes, for the app
Here's a notes.md. The folder is written once at the top, and the app or page is only repeated when it changes, to save tokens. Under each note are the screenshots you pointed at while saying it, with the words you were saying right then:
Review notes. Screenshots are in /Users/you/Documents/LazyAs/2026-10-11_101502/ (read each one before changing that part).
Each note: what I said, then the screenshots I pointed at while saying it.
1. [Google Chrome · https://staging.acme.dev/pricing] Um so this button here is like way too shouty, make it the lilac one and it should say "Start free". And then the headline up here, hmm, it's kind of cramped, give it more room above.
- 01.png: "this button here is like way too shouty"
- 01b.png: "the headline up here"
2. The middle pricing card, the shadow is kind of muddy, maybe lighter. Oh and the "per month" text is tiny, like, bump it to 14.
- 02.png: "the shadow is kind of muddy"
3. Same button again, on hover it should go a bit darker.
- 01.png (same as #1)
And the prompt.md it becomes:
Review feedback. Screenshots are in /Users/you/Documents/LazyAs/2026-10-11_101502/: Read each one before changing that part.
## staging.acme.dev/pricing
1. `01.png` Make the CTA button lilac. Change its text to "Start free".
`01b.png` Headline: add more space above it.
2. `02.png` Middle pricing card: lighter shadow. Set the "per month" text to 14px.
3. `01.png` (same as #1) CTA button: slightly darker on hover.
14Using it in a coding agent
- Open Claude Code, Codex or Copilot CLI in the project you reviewed.
- Paste (⌘V, or Ctrl+V). The notes or prompt are already on your clipboard.
- The agent reads each screenshot from its path on your computer before changing that part. If it asks permission to read files in
Documents/LazyAs, say yes.
Using a chat in the browser or a desktop app instead? A web chat can't open file paths on your computer, so use Open in AI chat: it hands over the notes and all the screenshots in one go.
Works with any agent. It's plain Markdown with file paths. Anything that can read local files can use it.
15Windows and Linux
Same idea, same notes and the same session folders, so a session made on Windows opens fine on a Mac and the other way round. What's different:
- Shortcuts add Alt, since Ctrl+Z and Ctrl+X are undo and cut: Ctrl+Alt+Z starts or stops, then S snips, P makes the prompt, X is next note, G a general comment and L switches language. Change them in Settings.
- Speech stays on your PC. Whisper turns it into text right there. The first session downloads the speech model once (about 150 MB for English, about 480 MB for other languages).
- The page is the window title (like "Google Chrome · Pricing"), not the full address.
- A tray icon replaces the menu bar icon. Click it for the menu, Settings and your sessions.
- Linux needs an X11 session, because Wayland blocks screenshots of other apps and global shortcuts. See Install on Linux.
- No middle-button hold yet. A Logitech gesture mapped to Ctrl+Alt+Z works fine.
AI choices are the same as on a Mac, minus the Anthropic API key. Sessions are saved in Documents\LazyAs on Windows and ~/Documents/LazyAs on Linux.
16Settings reference
Setup
| Setting | What it does | Default |
|---|---|---|
| Permissions | Microphone, Speech Recognition, Screen Recording checklist, with Fix and Relaunch buttons | · |
| Shortcuts | Start/stop, snip, make prompt, next note, general comment, switch language. Click to change. | ⌃Z ⌃⇧Z ⌃⌥Z ⌃X ⌃G ⌃L |
| Hold middle mouse button | Hold the wheel for ½ second to start or stop | On |
| Open at login | Starts napping in the menu bar when you log in | Off |
Capture
| Setting | What it does | Default |
|---|---|---|
| I speak / Quick-switch language | Your language, plus an optional one to flip to with ⌃L | English (US) / none |
| Transcription (Mac) | Best accuracy (Apple's speech servers, like Dictation) or Private (on this Mac only) | Best accuracy |
| New note after a silence of | Optionally end notes after 4, 6 or 10 quiet seconds | Never |
| Voice commands | "next note", "general comment", "scratch that", "never mind" | On |
| Microphone | Which mic listens. Automatic uses the Mac's own mic when AirPods, Bluetooth headphones or your iPhone are the Mac's mic | Automatic |
| Speakers warning | Warns you when you're not on headphones | On |
| Stop by itself | After N quiet minutes (0 = never, up to 30) | 5 minutes |
| Little sounds | Pops and tinks when notes save | On |
| Size | Light, Balanced or Sharp screenshots | Light |
| Frame | Area around where you pointed, or whole screen | Area |
| Marking | Outline and dim, or untouched | Outline and dim |
| Screenshots per note, at most | How many screenshots a note keeps (1 to 4) | 3 |
| New screenshot after a pause of | Start talking again after this much quiet and another screenshot is taken | 3 seconds |
| Reuse screenshots | Same spot, same image | On |
| Record the page address (Mac) | Chrome, Safari, Arc, Edge, Brave | On |
| Copy notes when you stop | Puts notes.md on the clipboard | On |
| Automatically make it a prompt | Polishes every session when it ends | Off |
| Saved in | Where session folders go | ~/Documents/LazyAs |
AI
| Setting | What it does | Default |
|---|---|---|
| Make prompts with | Gemini, GitHub Copilot, ChatGPT, Claude, the offline cleaner, or an Anthropic API key (Mac) | Claude on a Mac, offline on Windows and Linux |
| Model | For Claude: Haiku, Sonnet, Opus, or any model ID. For the others: optional | claude-haiku-5-5 |
| Prompt in English | Writes the prompt in English whatever you spoke | On |
| Open in AI chat | ChatGPT, Claude, Gemini, DeepSeek, Grok, Microsoft Copilot, Perplexity or Mistral Le Chat | ChatGPT |
| Test it | Polishes a sample note to check the connection | · |
Still stuck? Troubleshooting has the usual suspects, and Support has a human.