AgentStack
SKILL verified MIT Self-run

App Test

skill-zedarvates-botte-secrete-app-test · by zedarvates

Local-first GUI/app testing by image matching (SikuliX) — turn a small JSON spec referencing your button images into a runnable SikuliX script and run it locally, using a vision NPU (Hailo-8/10) or local vision model instead of cloud vision. Use when the user wants to test a desktop/game/web app "for real" by clicking buttons, has button images already, or mentions SikuliX, image-matching tests,…

No reviews yet
0 installs
4 views
0.0% view→install

Install

$ agentstack add skill-zedarvates-botte-secrete-app-test

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of App Test? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

app_test — test apps locally by clicking their buttons

When you build a UI you already have the button images, so an image-matching bot can drive it — no cloud vision tokens needed. A tiny JSON spec → a runnable SikuliX script.

Spec → script → run

python -m skills.app_test.cli gen tests/login_flow.json     # print the SikuliX script
python -m skills.app_test.cli run tests/login_flow.json --out build
{
  "name": "login_flow",
  "image_dir": "tests/images",
  "similarity": 0.8,
  "steps": [
    {"do": "wait",           "image": "login_btn.png", "timeout": 10},
    {"do": "click",          "image": "login_btn.png"},
    {"do": "type",           "text": "user@example.com"},
    {"do": "click",          "image": "submit.png"},
    {"do": "assert_visible", "image": "welcome.png", "timeout": 8},
    {"do": "assert_absent",  "image": "error.png"}
  ]
}

Actions: wait · click · double_click · right_click · type · sleep · assert_visible · assert_absent.

Running it

Uses OculiX (the maintained SikuliX fork: OpenCV matching + embedded Tesseract OCR, Java) — or any SikuliX. The generated -r scripts are drop-in compatible with both.

Install OculiX (Java 11+ required): download the platform "ide" jar from https://github.com/oculix-org/Oculix/releases and place it at ~/.oculix/oculixide.jar (auto-detected), or set OCULIX_JAR=/path/to/jar. runsikulix/oculix on PATH also work. run always generates the .sikuli bundle; it executes it via java -jar -r -c when a runner is found, else it reports how to install one.

Verified: a generated bundle runs end-to-end on OculiX 3.0.4 (oculixide-3.0.4-windows.jar) — Jython executes the steps and returns the exit code (0 = pass).

Why local / economical

Image matching is CPU-cheap and needs no model. For richer checks (is this screen semantically right?), point verification at a Hailo-8/10 NPU or a local vision model via [[llm_backends]] instead of a paid cloud vision API — 0 cloud tokens. The generator is deterministic and unit-tested; the GUI run is local.

Related: [[llm_backends]] (local vision backends), [[metrics]].

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.