snap-o

Project Url: openai/snap-o
Introduction: Lightweight Android screen capture tool for macOS
More: Author   ReportBugs   OfficialWebsite   
Tags:

Download Snap-O for macOS

Snap-O: Fast. Focused. Effortless.

Snap-O is a handy macOS app for inspecting Android apps. Capture screenshots and recordings, inspect network traffic, override responses, and adjust app values while your app runs.

Documentation

Requires macOS 26 or later and adb from Android Platform Tools.

If you don't already have adb, install Android Platform Tools through Android Studio or brew install android-platform-tools.

  1. Download Snap-O and move it to Applications.
  2. Connect a device with USB debugging enabled, or start an emulator.
  3. Open Snap-O. Live Preview starts automatically. Option-drag the preview to share a screenshot, or press ⇧⌘R to record.

Screen capture needs no library in your Android app. Network and Tweaks each require an Android integration; follow the guides below.

For keyboard shortcuts and ADB setup, see Using the macOS app.

Screen capture

Drag screenshots and recordings straight into a pull request, chat, or document without saving them first. Play recordings immediately and step through them frame by frame to check an animation. Work with multiple devices and keep captures open in separate windows.

Network

Inspect HTTP requests and responses, JSON bodies, Server-Sent Events, and WebSocket messages. Snap-O buffers recent traffic on the device, so you can inspect requests made before you opened the tool.

The Android libraries support OkHttp, Ktor's OkHttp engine, and HttpURLConnection. Python handlers can edit or mock HTTP responses through the app's OkHttp connection.

Set up Network

Tweaks (Alpha)

Change values in Compose, Views, and other Kotlin code without rebuilding or restarting your app. Adjust numbers, colors, booleans, strings, enums, and Bézier curves, or run actions registered by the app.

Use tweaks-core and TweakScope outside Compose. See Tweaks without Compose for setup and ownership examples.

Tweaks are available through the Tool pane, an optional on-device panel, the CLI, and the REST API. This feature is in alpha; its APIs and behavior may change.

Set up Tweaks

CLI and Codex

The snapo-network and snapo-tweaks CLIs support inspection and live changes on macOS and Linux. Each requires only Python 3 and Android Platform Tools and runs independently of the macOS app.

On macOS, the app includes both CLIs and a snapo entry point:

/Applications/Snap-O.app/Contents/MacOS/snapo network list --json
/Applications/Snap-O.app/Contents/MacOS/snapo tweaks apps --json

The Codex plugin bundles two self-contained skills, each with its own CLI:

codex plugin marketplace add openai/snap-o --ref main
codex plugin add snap-o@snap-o

Start a new Codex session after installation.

CLI setup and commands · Linux installation · Plugin updates

Plugins

Apps bundle tool plugins that provide tools for inspecting data, changing settings, and running actions. A tool plugin includes its Android implementation and an optional frontend. Snap-O displays the selected tool’s frontend in the Tool pane. Network and Tweaks use the same extension model as custom tools.

Start with Build a tool and the Tool API reference. See tool development for repository commands and host behavior.

Build from source

Requires Xcode 26 or later and Android Platform Tools.

  1. Clone this repository.
  2. Open app-macos/Snap-O.xcodeproj in Xcode, then build and run.

Tool frontend development also requires Node.js 22.12 or later. See tool development.

See Contributing for development and signing instructions, and Release requirements for release checks.

Contributing

Snap-O is maintained as time allows, with no formal roadmap. Bug reports and small patches are welcome. Read the contribution guide and code of conduct before contributing.

License

Apache 2.0. Copyright 2025 OpenAI.

Apps
About Me
GitHub: Trinea
Facebook: Dev Tools
AI Daily Digest