overlord
AI Overlord, managing your disparate agents through local computer use. This project allows AI to control macOS natively, providing direct system control through native macOS commands and utilities.
[!CAUTION] This comes with obvious risks. Overlord can control everything on your Mac. Please be careful.
Features
- Native macOS GUI interaction (no Docker required)
- Screen capture using native macOS commands
- Keyboard and mouse control through cliclick
- Multiple LLM provider support (Anthropic, Bedrock, Vertex)
- Streamlit-based interface
- Automatic screen resolution scaling
- File system interaction and editing capabilities
Prerequisites
- macOS Sonoma 15.7 or later
- Python 3.12+
- Homebrew (for installing additional dependencies)
- cliclick (
brew install cliclick) - Required for mouse and keyboard control
Setup Instructions
- Clone the repository and navigate to it:
git clone https://github.com/hanzoai/overlord.git
cd overlord
- Create and activate a virtual environment:
python3.12 -m venv venv
source venv/bin/activate
- Run the setup script:
chmod +x setup.sh
./setup.sh
- Install Python requirements:
pip install -r requirements.txt
Running the Demo
Set up your environment and Anthropic API key
- In a
.envfile add:
API_PROVIDER=anthropic
ANTHROPIC_API_KEY=<key>
WIDTH=800
HEIGHT=600
DISPLAY_NUM=1
Set the screen dimensions (recommended: stay within XGA/WXGA resolution), and put in your key from Anthropic Console.
- Start the Streamlit app:
streamlit run streamlit.py
The interface will be available at http://localhost:8501
Screen Size Considerations
We recommend using one of these resolutions for optimal performance:
- XGA: 1024x768 (4:3)
- WXGA: 1280x800 (16:10)
- FWXGA: 1366x768 (~16:9)
Higher resolutions will be automatically scaled down to these targets to optimize model performance. You can set the resolution using environment variables:
export WIDTH=1024
export HEIGHT=768
streamlit run streamlit.py
[!IMPORTANT] The Beta API used in this reference implementation is subject to change. Please refer to the API release notes for the most up-to-date information.
Metadata
Release files for hanzo-overlord 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| hanzo_overlord-0.1.0.tar.gz | 19.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| hanzo_overlord-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 41.5 kB
Release files / hanzo_overlord-0.1.0.tar.gz
| Download URL | hanzo_overlord-0.1.0.tar.gz |
|---|---|
| Size | 19.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d663eca9e335dd3847961ce06918073f2dc73179f3ef39642134c2b8e3d76d33
|
|
BLAKE2b-256 checksum How to use checksums |
815d0b0cffa24681bdf9a9119da57c7676e3486b4e5208453cbead567f3d3ca5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|
Release files / hanzo_overlord-0.1.0-py3-none-any.whl
| Download URL | hanzo_overlord-0.1.0-py3-none-any.whl |
|---|---|
| Size | 22.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
939815a85fca04516c666682d74e6c733f587f7ccdd551b764c4ebb6aa096f63
|
|
BLAKE2b-256 checksum How to use checksums |
7dafaa2d331b5315333959514d8f144e63805b87bc9a13047be13d4b89612dc4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|
Security for hanzo-overlord 0.1.0
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.