01 / 03
See it.
Bring your current screen into context.
Press ⌘⌥K and kk opens over whatever you're reading. The display under your cursor comes along; preview it, or drop it, before you send.
kk lives in your Mac's menu bar. Press ⌘⌥K, mark up whatever's on your screen, and ask your own AI model about it. The answer appears right beside the app you're using.
An animated recreation of kk. In a code editor, kk opens with Command Option K, the line tags equals empty list is circled in red, the question “Why does the second call keep the first tag?” is sent, and an answer explains Python's shared mutable default argument. A follow-up asks for the safe version and kk replies with corrected code.
Press ⌘⌥K in any app. kk opens over whatever you're doing.
Recreated interface with sample content, based on kk's own previews.
Everything starts with ⌘⌥K. No browser tab, no pasting screenshots into a chat window.


01 / 03
Bring your current screen into context.
Press ⌘⌥K and kk opens over whatever you're reading. The display under your cursor comes along; preview it, or drop it, before you send.
02 / 03
Circle, highlight, or point at exactly what matters.
Draw straight onto the screen with freehand, ellipse, rectangle or arrow. Marks can be moved and resized; they're sent with the screenshot, their handles aren't.
03 / 03
Get answers and continue the conversation.
Answers stream in with real math, code and tables. Move your mark, ask again, and the follow-up sees the updated screen.
Staged native renders from kk's README. The problem set and answers are sample content.
One shortcut, one popup, and a red pen. Everything else is there to keep you in the app you were already using.
Freehand, ellipse, rectangle and arrow, plus an eraser. Drag a mark to move it, resize from its handles, undo anything. Draw over a frozen snapshot or the live desktop.
Go ahead, scribble on the build log. With the canvas focused, the same tool keys work here: VFERAX
$ npm run build
Creating an optimized production build
✓ Compiled successfully in 4.1s
Checking validity of types
Type error: 'post' is possibly 'undefined'.
12 | const post = posts.find(p => p.id === id)
> 13 | return <h1>{post.title}</h1>
| ^
Ellipse · 0 marksA playground in your browser. In kk, you draw over the whole screen.
Ask again in the same popup. Each turn can bring a fresh screenshot; earlier questions, answers and images stay in the conversation. Copy any answer, or have kk copy the whole chat as Markdown when you close it.

Headings, lists, highlighted code, tables and real LaTeX, in a popup you can resize.
Markdown / Code / Tables / LaTeX / Mermaid


Add up to ten files to any question. Scanned PDFs are read with on-device OCR.
Built in Swift for macOS. The global shortcut, tool keys and double-Shift gesture are all yours to change.
Try it on your keyboard. You can change it in Settings → Shortcuts.
| Action | Default |
|---|---|
| Open kk, or focus an open chat | ⌘⌥K |
| Send / new line | Return/⇧Return |
| Attach a copied file or image | ⌘V |
| Back to drawing from the question | ⇧⇧double-tap |
| Focus the question from the canvas | Space |
| Close the popup or preview | Esc |
| Open settings | ⌘, |
From kk's README. More in the usage guide.
Looks like your Mac
Light and dark, your accent color, and Liquid Glass on macOS 26.
Finds a quiet spot
Optionally opens chat in the largest blank area beside your work.
Every display
Attach the screen under your cursor, the active window's, or all of them.
Mermaid diagrams
Drawn on your Mac with a bundled renderer. Broken ones get one automatic fix.
Keys in Keychain
Your API key is stored in macOS Keychain, nowhere else.
Nothing kept
No saved chat history, no screenshot library, no analytics.
Stays out of the way
A menu-bar app. Drag and resize the popup, or keep it on top.
Launch at login
Optional, from Settings → About.
kk is the window, not the brain. Bring whichever model you like, and requests go straight from your Mac to the endpoint you choose.
# kk → Settings → Connection
→ POST api.openai.com/v1/chat/completions
question · marked screen · files · earlier turns
← streamed answer
Nothing in between: kk has no server to send your screen to, and no analytics. Your provider's retention policy applies to what you send.
This release is ad-hoc signed, not notarized. macOS may block the first launch. After moving kk to Applications, the release notes suggest running:
$ xattr -rd com.apple.quarantine /Applications/kk.appPrefer not to? Build it from source with Xcode instead.