Skip to main content

Quiper

A versatile macOS application that provides a system-wide overlay for multiple AI services, including Grok, Gemini ChatGPT and everything other engine that provides a web application. This tool allows you to quickly access your favorite AI assistants with a global hotkey, quickly switch between engines and manage multiple chat instances for each service.

Quiper

Features

  • Multi-Service Support: Seamlessly switch between Grok and Gemini.
  • Multi-Instance Chats: Manage up to 10 simultaneous chat sessions for each service.
  • Global Hotkeys:
    • Option+Space (customizable) to show/hide the application window.
    • Command+Control+<digit-n> to switch to nth engine.
    • Cmd+0 through Cmd+9 to switch between chat instances.
  • Customizable:
    • Easily change the global hotkey to your preferred combination.
    • Adjust the window size and position to fit your workflow. It will remember the last position and size.
    • Add, remove, or reorder the AI services in the settings (Cmd+,).
    • Set css selectors for auto-focusing the input box of the chatbot.

Installation

Easiest way to install and run the application is downloading it from the Latest Release and put it in your Applications folder. macOS will nag you about it being from an unidentified developer, but you can bypass that by right-clicking the app and selecting "Open".

Direct Download Link

You can also install the application using pip:

python3 -m pip install quiper

Or you can clone the repository and run it directly:

git clone https://github.com/sassanh/quiper.git
cd quiper
uv run quiper

To build the application into a standalone macOS app, run:

uv run poe build-app

The dmg file will be created in the dist directory. You can then drag the app to your Applications folder.

To have the application launch automatically at login, run:

/Applications/quiper.app/Contents/MacOS/quiper --install

How It Works

This application is built with PyObjC, which allows Python to interact with Apple's native Objective-C frameworks. It creates a borderless, always-on-top window that contains a WKWebView for each chat instance. The global hotkeys are registered using the quickmachotkey library, and the application state is managed in the AppController class.

Contributing

This is an open-source project, and contributions are welcome. If you have ideas for new features or improvements, please open an issue or submit a pull request on the GitHub repository.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Credits

It is greatly inspired by the macos-grok-overlay project by tchlux, which was originally designed for the Grok AI service. The base of this codebase is mostly copied from that project, mostly the boilerplate code for setting up the macOS application.

Most of the code has been written with gemini-cli and grok. That's why it is so unorganized and messy :D If people find it useful, I will refactor it and make it cleaner, maybe even rewrite it in Swift.

Metadata

Release files for quiper 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for quiper 0.1.2
File Size Uploaded
quiper-0.1.2.tar.gz 160.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for quiper 0.1.2
File Interpreter ABI Platform
quiper-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 321.3 kB

Release files / quiper-0.1.2.tar.gz

Download URL quiper-0.1.2.tar.gz
Size 160.2 kB
Tags Source
SHA-256 checksum
How to use checksums
8c263ef039c5101cd1036a8dfffb9dc0315562fb8c020555505efa8d370808bc
BLAKE2b-256 checksum
How to use checksums
2be116b488fdaf38bcf5cd0a96bc86fc71929ef7cea6c4ffb6ec4859e3ea6488
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 8, 2025.

Transparency log

Release files / quiper-0.1.2-py3-none-any.whl

Download URL quiper-0.1.2-py3-none-any.whl
Size 161.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
84ec12d1e65a21cef5c2e27785a28e748eec5e05c15b826bb8c3d21477176ada
BLAKE2b-256 checksum
How to use checksums
7a6f088784150bfeff3bbc34daa451316e633702d262ac9ce7f00976ec685c16
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 8, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page