Squint Brings Native In-Place LLM Queries to Any macOS Application
Squint is an open-source macOS menu-bar utility that brings local or cloud LLM intelligence to highlighted text across all native applications. It requires zero cloud accounts, routes straight to OpenAI-compatible APIs, and stores keys in the login Keychain.

Impact: Medium
Why it matters
Cut context-switching by explaining code, translating docs, or drafting responses with hotkeys directly in your terminal, IDE, or browser.
TL;DR
- 01Squint hooks into any macOS application to run LLM prompts directly over selected text at your cursor.
- 02Zero backend servers or telemetry: API keys live in the macOS Keychain and queries route straight to configured endpoints.
- 03Dynamic variables like app and windowTitle adapt prompts based on whether you are working in an IDE, terminal, or browser.
Key facts
- Supported OS
- macOS 14+ (Xcode 15+ required to build)
- API compatibility
- Any OpenAI-compatible endpoint (Ollama, LM Studio, OpenRouter)
- Telemetry
- Zero telemetry, zero external servers
- History cache
- 10 queries default (configurable up to 50, or 0)
Floating In-Place Text Processing
Squint eliminates the constant cycle of copying code snippets or log lines into chat web tabs. Operating natively on macOS, it positions a borderless streaming panel at the current cursor coordinates. Pressing ⌘ C copies the generated response, ⌘ L expands an inline conversational follow-up field, and Esc dismisses the window.
Model Routing and Dynamic Context Variables
Squint connects to any OpenAI-compatible endpoint, making it straightforward to toggle between OpenRouter, Claude, Gemini, or local models running on Ollama and LM Studio. Prompts can be customized per preset and bound to individual global shortcuts. Templates support system runtime variables:
{{app}}: The active foreground application bundle name (e.g.Xcode,Terminal).{{windowTitle}}: The window title or active document name.{{userInput}}: Input passed from an on-demand follow-up text field.
Default Shortcuts and Presets
- Explain (`⌥ Space`): Immediately sends highlighted text with an explanation prompt.
- Ask (`⌥ ⇧ Space`): Captures selected text and pauses for user inquiry input.
- Prompt (`⌃ ⌥ Space`): Opens an empty, Spotlight-style interface for ad-hoc prompts.
Security and Build Requirements
Squint has no backend server and collects zero telemetry. All API tokens are committed directly to the macOS login Keychain. Building from source requires macOS 14+, Xcode 15+, and xcodegen.
Try it in 2 minutes
git clone https://github.com/ZsoltTanko/squint.git
cd squint
# Requires macOS 14+, Xcode 15+, and xcodegenbash
✓ When to use
- Explaining unfamiliar code blocks or error stacks directly inside terminal sessions without switching windows.
- Querying local offline models in Ollama or LM Studio while drafting documents or reading technical PDFs.
- Fast contextual rewrites and translations bound to dedicated global system hotkeys.
✕ When NOT to use
- Linux or Windows operating systems, as Squint relies strictly on macOS Cocoa and Keychain APIs.
- Complex multi-file agentic coding workflows requiring autonomous repository changes.
- Teams needing centralized audit logging and enterprise governance over outgoing AI prompts.
What to do today
- Clone the squint repository and build the macOS menu-bar app using xcodegen and Xcode.
- Add an OpenAI-compatible endpoint such as Ollama or OpenRouter in the Settings Models pane.
- Grant Accessibility permissions in macOS System Settings to enable in-place selection capture.
Sources