pixelactions vs SikuliX
One honest overlap: both act on what template matching finds. The split is who marks the target.
The short version
SikuliX is a complete see-and-act environment: it watches the screen continuously, scripts decisions in its own runtime, and drives the mouse and keyboard — with an IDE and OCR built in. That integration is the draw, and nothing in this category matches its continuous visual search. pixelactions splits the loop instead: a human marks ground truth once, in pixelcoords, and a small native binary executes flows against it — every target re-located before acting, verified after, with exit codes a CI job can gate on. No JVM, no scripting language: your program owns the loop over stdio, in whatever language it is already written. Worth knowing when comparing: SikuliX's original development was archived in early 2026 and continues under the OculiX fork.
Feature for feature
| Feature | pixelactions | SikuliX |
|---|---|---|
| Price | Free | Free |
| Platforms | macOS today; Windows and X11 nextearly — no crate or binaries published yet | macOS · Windows · Linux (JVM)requires Java; development archived, continued by the OculiX fork |
| Declarative, reviewable flows | TOML flows + chained argva pull request shows "click submit", not arithmetic | not offered |
| Language it takes to drive it | Any — JSON line protocol over stdioa 40-line stdlib Python client ships in the docs; no embedded interpreter, ever | Jython, JRuby, JavaScript — inside its runtime |
| Re-location before acting | Every target re-located against a fresh capture before actinga crop that matches in more than one place stops the run — ambiguity is the test, not distance | Continuous visual search across the screen |
| Verified execution | Distinguishes executed from verified; exit codes 0/1/2/3 | In-script image matching |
| Maintenance status | In active development — v0.1.0, unpublished | Archived upstream March 2026; the OculiX fork continues |
| License | MIT, open source | MIT, open source |
When to pick SikuliX
- You want a self-contained see-and-act environment with its own scripting and IDE.
- You need OCR in the same tool.
- Continuous visual search across the whole screen is the job, not human-marked regions.
When to pick pixelactions
- Targets should be human-marked ground truth, not screenshots matched from inside a script.
- One small native binary — no JVM, no Java versions.
- CI and agents need the contract: executed vs verified, refusal before injection, exit codes.
- The loop belongs in your language — the line protocol makes any program the driver.
What a flow looks like
session = "~/captures/checkout"
[[step]]
action = "click"
target = "email"
[[step]]
action = "type"
text = "a@b.com"
[[step]]
action = "key"
chord = "enter"
[[step]]
action = "verify"
target = "success"Two ways in
cargo install pixelactionsOr skip the toolchain: prebuilt binaries — download, unpack, run.