Hit record. SnapBuddy writes the repro steps.
Capture and record on Windows. Repro steps write themselves from your clicks, and every markdown export carries the environment line.
For Windows today. macOS and Linux are coming soon.


Built by people who measure
Precision is the point of a bug report. It is also how the tool itself is put together. Five details, all of them in the shipped code.
- One engine, three surfaces
- The annotation editor is a single file, mirrored byte for byte into the browser extension and the web app. Drift between the copies fails the build, so a mark behaves the same wherever you draw it.
- Redaction that removes pixels
- On a still, redact, blur and pixelate destroy the pixels underneath. The covered content is gone from the image rather than painted over it.
- Trim to the exact time
- Two handles, text fields you can type an exact time into, and a readout that updates as you drag. The default outcome saves a new card and leaves the original take untouched.
- Six accents, contrast checked
- Every accent was contrast-checked at design time, and a build check holds the numbers, so a retuned colour cannot quietly drop below the floor it was measured against.
- Numbers that hold their place
- The recording timer counts in tabular figures, inside a column sized for its widest reading, so the buttons beside it never move while it runs. Card durations, the exact-time trim fields and every changing number on the web are set the same way.
Three places to work
The same eighteen tools and the same editor, on Windows, in the browser extension and on the web.
Desktop, on Windows
Capture the whole screen, a dragged region or a single window. Record with system audio and the microphone as separate choices, then keep the takes in a local library with a 90 day trash.
Browser extension
Snap the visible area of a tab from the popup, mark it up with the same eighteen tools, and keep every card in the browser's own storage. Delete there is permanent: the extension keeps no trash.
Web
Sign in for a library of what you have uploaded, or open /annotate and mark up a file with no account. That page stores nothing and says so.
The report writes most of itself
On the desktop, every saved markdown file and every copied prompt carries an environment line: OS, app version, displays, locale, timezone. It is put together on your machine and is not sent anywhere.
The repro steps come from an interaction track written beside the recording: mouse positions, clicks and window focus changes. No keystrokes and no window titles are in it, by design. Past twenty five interactions the export stops listing them and says so, in those words: ...and N more interactions, not listed.
The export is markdown: front matter, the fenced environment block, the steps and your own note, ready to paste into whatever tracker you already use. Console and network logs are not part of it.
Annotation, and what happens after


Make it yours
Six accents and three theme states ship on the desktop app, the browser extension and the web. Flip either one here and the whole site follows, the button included.
The choice is kept in this browser and nowhere else. It is never synced between machines, and it is never applied to somebody else opening a share link of yours.
What comes next
These are in the workshop, not in the app yet.
Interactive demos
Click-through walkthroughs of your product. You will assemble one from captures you already have, and send it as a link.
AI assisted tools
Summaries and transcripts, without the typing. A long recording will arrive with its own words already attached to it.
Auto step guides
Numbered guides from a recording. The steps will come out as a document you can hand to somebody who has to follow them.
What leaves this computer
Quoted exactly as it ships, from the footer under the desktop board:
Everything you capture is written to this computer and stays there. Three things leave it: recordings, if you switch Sharing on in Settings; the screenshots and click positions in a walkthrough, when you make one from a recording, which goes through that same switch; and the update check, which asks GitHub for the latest version at every start. In full: https://snapbuddy-web.vercel.app/privacy