The open-source reference for visual automation. Twenty years of lineage. MIT-licensed. Trusted in production by 91+ organizations worldwide.
| 91 | 14k+ | 3.4k | MIT |
|---|---|---|---|
| enterprise organizations | clones every two weeks | Maven downloads / quarter | open source, forever |
OculiX drives any graphical interface by what it looks like — not by accessibility hooks, DOM selectors, or fragile XPaths. You point at what you see on screen, OculiX does the rest.
It works where selector-based tools cannot: native desktop applications, virtualized desktops (Citrix, RDP, VNC), Canvas/WebGL-rendered UIs, multi-application workflows, and any environment where what reaches the user is, ultimately, pixels.
You don't need to be a developer to use it. If you can take a screenshot, you can write your first OculiX script. If you are a developer, you get a full JVM scripting environment on top.
# Open the app, export today's report, save it — every morning at 8 AM.
from oculix import click, type, wait
click("file_menu.png")
click("export_to_csv.png")
wait("save_dialog.png", timeout=10)
type("filename_field.png", "report_today.csv")
click("save_button.png")Full installation, first-script tutorial, and tour of the IDE at oculix.org/getting-started.
|
Pixel-perfect matching OpenCV-based template matching with DPI awareness, similarity tuning, sub-pixel reliability. Five matching strategies cascaded before FindFailed. |
OCR out of the box Tesseract embedded via Legerix, no manual install. PaddleOCR available as opt-in HTTP server for multilingual and CJK workloads. |
|
Cross-platform Windows, macOS, Linux. One script runs everywhere — no platform-specific selectors. Native libraries pre-built and bundled. |
Jython scripting Python 2.7 syntax with full JVM interop. Drop-in compatible with legacy SikuliX scripts. JRuby, Robot Framework, and PowerShell runners also supported. |
|
Full VNC stack
Connect to any remote machine without a local display. |
Native SSH tunneling
|
|
Android via ADB Full ADB integration over WiFi or USB. No Appium, no XPath, no accessibility API. Validated on Android 12+. |
Auditable execution Optional MCP module: Ed25519-signed, SHA-256-chained JSONL audit journal. Every action independently verifiable. |
OculiX sits in the process automation space alongside RPA and visual automation tools.
| Capability | OculiX | UiPath | Eggplant |
|---|---|---|---|
| License & cost | MIT — free forever | Commercial — per bot / per user | Commercial — enterprise license |
| Self-hosted, fully local | 100% local, no cloud needed | Hybrid (Studio local, Orchestrator cloud) | On-prem available |
| Cross-platform | Windows · macOS · Linux | Studio is Windows-only | Windows · macOS · Linux |
| Approach | Pure visual — sees the screen | UI selectors (UIA/HTML) + visual fallback | Visual + IDE |
| Embedded OCR | Tesseract bundled | Multiple providers via marketplace | Built-in |
| Scripting language | Jython (Python 2.7 + JVM) | VB.NET · C# · Python (limited) | SenseTalk |
| Best fit | Anyone — non-tech users to enterprise teams | Enterprise RPA at scale | Visual test for regulated industries |
Comparison based on each vendor's public documentation as of 2026. OculiX is independent and unaffiliated with UiPath (UiPath, Inc.) or Eggplant (Keysight Technologies).
Prerequisite: Java 11 or later — Eclipse Temurin or Azul Zulu.
Maven:
<dependency>
<groupId>io.github.oculix-org</groupId>
<artifactId>oculixapi</artifactId>
<version>3.0.3</version>
</dependency>From source:
git clone https://github.com/oculix-org/Oculix.git
cd Oculix
mvn clean install -DskipTestsDetailed setup at oculix.org/getting-started/installation.
IBM · Qualcomm · Tencent · Alibaba · Kakao · Deutsche Bank · PepsiCo · Dassault Systèmes · Kaspersky · Synopsys · Neo4j · Zscaler · Jack Henry · RSA Security · Bill.com · University of Alberta
Organizations with verified OculiX downloads on Maven Central. Names listed for informational purposes only — no endorsement, partnership, or affiliation is implied. Full list on the adoption showcase.
| Need | Where |
|---|---|
| Install OculiX | Get started |
| Your first script | Hello-world tutorial |
| OCR & text recognition | OCR guide |
| Bug reports & questions | GitHub Issues · Discussions |
| Security vulnerability | Private advisory — see SECURITY.md |
| Enterprise support | Work with us |
People are building things around OculiX. If your project deserves a mention here, open a Discussion or a PR — the bar is "useful to someone in the OculiX ecosystem", not "officially endorsed".
| Project | Author | What it brings |
|---|---|---|
| oculix-vscode | @MiguelDomingues | VS Code extension : region capture, inline image previews replacing PNG filenames in code, click-to-set target offsets, interactive cv2.matchTemplate testing, script runner. Consumes OculiX as a runtime JAR — the right architectural model for community tooling. |
Pull requests are welcome. See CONTRIBUTING.md for the workflow, code style, and review expectations. Substantive changes are discussed in advance via an issue when possible.
Visible at Contributors.
OculiX is released under the MIT License. It is the active continuation of the Sikuli (Tom Yeh, MIT UIST 2009) and SikuliX (Raimund Hocke, 2010–2025) lineage. The org.sikuli.* package namespace and historical prose are preserved as a matter of respect to the foundations.
🦎