# RafShot

From screen to coding agent in one keystroke. Hit the hotkey, drag a region, and the editor opens before the pixels settle — draw an arrow at the exact bug, write or dictate the prompt underneath, then copy prompt and image as a single paste. The agent sees exactly what you see.

## Features

- **Copy for Agent:** One shortcut copies your prompt and the absolute image path as a single clipboard payload, escaped so the coding agent parses it as one attachment. Unsaved annotations are baked in first.
- **One-Keystroke Capture:** A global hotkey starts the native macOS region selector. The shot is copied, saved as a PNG, and the gallery opens with it already selected.
- **Annotation Editor:** Arrows, rectangles, ellipses, text and numbered callouts. Saving flattens the marks into the PNG while keeping the untouched original as a backup.
- **On-Device Dictation:** Speak the prompt instead of typing it. Transcription runs locally with whisper.cpp on Metal — audio is never written to disk or sent anywhere.
- **A Gallery, Not a Graveyard:** Every capture lands in one place with its prompt stored beside it, in app data or any folder you pick. RafShot only ever touches its own files.
- **Command Menu:** ⌘K reaches every action, and both global shortcuts can be rebound live in Settings and persist across restarts.
- **Menu-Bar Resident:** Closing the window hides the app instead of quitting it. Tray icon, launch-at-login and single-instance enforcement keep the shortcuts always ready.
- **Screen Recording (In Progress):** A recording capture mode with a zoom/pan editor, timeline cuts and a render pipeline is currently in active development.

## Technology

Tauri v2, Rust, React 19, TypeScript, Vite, Tailwind CSS, Zustand, whisper.cpp (Metal), ScreenCaptureKit, Ruby on Rails (panel)
