The Problem

Manual QA of mobile apps and games on real devices is labor‑intensive. Testers must maintain platform‑specific scripts, locate UI elements, and switch between simulators and physical phones. The lack of a visual‑only, natural‑language interface makes test creation slow and brittle, especially for non‑standard UI such as canvases, maps, or game engines.

What This Does

noqa provides a visual‑only, agent‑driven CLI that reads a device screenshot, parses it into a cleaned element tree, and executes actions described in plain English. The repository supplies the skill that teaches an AI agent the CLI commands and test‑case patterns. Key files are:

  • skills/noqa-testing/SKILL.md – high‑level overview of the skill.
  • skills/noqa-testing/concepts/*.md – definitions of test‑case structure, writing guidelines, and supported app build types.
  • skills/noqa-testing/references/*.md – concrete instructions for installing Android/iOS builds, device connection, and grounding actions.
  • skills/noqa-testing/workflows/*.md – step‑by‑step examples (debug, run tests, author test cases).

The repo contains no executable source code; it is pure documentation that augments the commercial noqa binary (distributed from https://noqa.ai).

How It Is Wired

The repository does not include any runtime code, entry‑point scripts, or import graphs. Consequently, a call‑graph cannot be derived from the current file set. The only artifacts are markdown files that describe how an external CLI (noqa) should be invoked. The wiring therefore lives outside this repo, in the proprietary noqa application and its internal agents.

  • No package.json, pyproject.toml, or similar manifest is present, so there is no language runtime to trace.
  • No source files reference each other, so no hub or cycle analysis applies.
  • The documentation assumes the presence of a locally installed noqa binary and a configured AI “coding agent” that consumes the skill definitions.

In short, this repo is a knowledge module; the functional implementation resides in the closed‑source noqa product.

How To Use It

  1. Install the official product – download the noqa desktop app from https://noqa.ai and follow its installer.
  2. Add the CLI to PATH – inside the app, navigate Settings → Tools → Install CLI.
  3. Install the skill – either click Install skill in the UI (which copies the skills/noqa-testing folder into the agent’s skill store) or manually copy the folder into the agent’s skill directory.
  4. Connect a device – use the CLI as documented in README.md:
   noqa devices ios               # list iOS devices / simulators
   noqa devices connect <id>     # attach to a physical device
  1. Run a test case – author a natural‑language test case following the template in skills/noqa-testing/concepts/writing-test-cases.md, then execute:
   noqa action tap -d "Login button"

All commands referenced above are defined by the external noqa binary; this repo supplies only the Markdown that teaches the AI agent the command vocabulary.

Real‑World Use

A QA team can store their test‑case library in a Git branch, edit the markdown files under skills/noqa-testing/workflows/, and let the AI agent drive a fleet of iOS/Android devices nightly:

# Pull latest test definitions
git pull origin main

# Agent runs each case (pseudo‑code, actual execution is inside the closed CLI)
for case in $(cat skills/noqa-testing/workflows/run-tests.md); do
    noqa run --case "$case"
done

The result is a video and pass/fail log per step, stored in the team’s artifact bucket.

Code Health & Issues

  • Medium – No CI/CD pipeline – repository lacks .github/ workflows or other automation configs.
  • Medium – No LICENSE file – usage and redistribution rights are undefined.
  • Low – No lockfile – no dependency lockfile (e.g., package-lock.json), though the repo contains no runtime dependencies.
  • Low – No Dockerfile – container build instructions are absent, which may hinder reproducible environments.

Static analysis confirmed tests are present (markdown test definitions), but no executable test runner exists in this repo.

The Bottom Line

noqa’s documentation repository delivers a well‑structured skill for AI‑driven visual testing of mobile apps, but it contains no executable code. Engineers will need the proprietary noqa binary to run anything. The repo is clean of secrets but would benefit from a CI pipeline, explicit licensing, and a minimal build script to validate the markdown (e.g., linting). It is suitable for teams that already adopt the noqa product and need a customizable, language‑agnostic test‑case library.