Greenlight CLI
A CLI and Claude Code plugin that find App Store and Google Play rejection causes before you submit, citing the rule for each.
- 2,465 ★ on the repository
- Last commit
Minimal access
Why this level
- The offline scanner reads project files. The cloud verify step uploads a build to Revyl only when explicitly run.
Install
- Works in
Manual install
brew install revylai/tap/greenlightThe first Install command in the README installs the binary through Homebrew. The Claude Code plugin is added separately.
Access and checks
How we reviewMinimal accessThe tool runs nothing and makes no network calls.
- The offline scanner reads project files. The cloud verify step uploads a build to Revyl only when explicitly run.
This is third-party code. Review the repository files before installing.
What it does
Greenlight reads source code, privacy manifests, Android manifests with Gradle files, IPA binaries and App Store Connect metadata. It checks them against Apple's Review Guidelines and Google Play policies. Every finding cites its rule and carries a CRITICAL, HIGH, WARN or INFO level. `greenlight preflight` runs all scanners at once with no network or uploads, and `--exit-code` fails CI on CRITICAL and HIGH. The Claude Code plugin gives the agent a loop: scan, fix code, repeat until GREENLIT.
Who it is for. Mobile developers on Swift, React Native, Expo and Android tired of reviewer rejections over account deletion, Sign in with Apple or privacy declarations.
Good fit when
- Before sending a build to App Store Connect, the whole project is checked with one command.
- CI blocks a merge on critical store-policy violations.
- An agent fixes the findings itself and reruns the scan.
- A cross-platform repository is checked against both stores at once.
Not a fit when
- You want an approval guarantee: the scanner reads text and does not replace a reviewer's decision.
- The app is not mobile and not headed to a store.
- A cloud device run is unwanted, and runtime flow checks need one.
Example request
Run greenlight preflight on this project and fix findings from CRITICAL down to INFO until the result is GREENLIT.Limitations
A static scan proves only that a flow exists, not that it works. `greenlight verify` covers account deletion, restore purchases and Sign in with Apple through the Revyl cloud: it needs the `revyl` CLI, an account and a simulator build, and a device `.ipa` is rejected. The Android source scan reads the pre-merge manifest, so library permissions show up only in a built artifact. The latest commit in the repository dates from August 2026.
How to disable. Remove the plugin through `/plugin` in Claude Code or delete `.claude/skills/greenlight.md`, then uninstall the `greenlight` binary with `brew uninstall`. The project's `.greenlight.yml` can stay or go.
FAQ
Do I need an account or network?
Not for `preflight` and the other scanners: they run offline with no uploads. A Revyl account is needed only for `greenlight verify`.
What does codescan check?
24 rules over Swift, Objective-C, React Native and Expo: private APIs, hardcoded secrets, external payment for digital goods, mining, missing account deletion and Sign in with Apple.
How do I wire it into CI?
Run `greenlight preflight . --exit-code`. It returns non-zero on CRITICAL and HIGH, and when a scanner crashed. Add `--format sarif --output greenlight.sarif` for SARIF.
How do I preview verify tests without a device?
Run `greenlight verify . --dry-run`. It prints the claimed flows and generated tests with no account and no device.
Which platforms does it check?
Apple App Store and Google Play. If one repository holds both projects, `preflight` picks them up together in a single pass.
Discussion
No questions or reviews yet.
Related
CLI toolsAn open phone agent model and framework: it reads the screen and taps through Android, HarmonyOS and iOS apps from a text command
Artemis
artemis
A Google framework for driving a real Android device or an emulator from natural-language instructions: UI tests and everyday tasks, with an MCP server
An Android emulator in Docker with an MCP server: the agent drives the device over adb, opens apps and pages, presses buttons
Official set of 30 skills from the Android team: Jetpack Compose, AGP 9 upgrade, R8, Perfetto profiling, Navigation 3, CameraX, Google Play policies
An MCP server to drive iOS and Android: simulators, emulators and real devices via accessibility trees and screenshots
XcodeGen is an Xcode project generator that shares settings across targets, keeping configuration in a text specification.
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Repository stars | Main difference |
|---|---|---|---|
| Greenlight (this card) | no | 2,465 | |
| App Store Preflight | no | 1,409 | app-store-preflight checks before an App Store submission; Greenlight also scans Google Play and IPA files and adds a CI gate |
| App Store Review Guidelines Skill | no | 443 | app-store-review-guidelines-skill summarizes the guidelines; Greenlight scans code and manifests itself |
README in short
The README lists scanners, severity levels, codescan and playscan rules, output formats and a CI example. A separate section covers the cloud flow check and the Claude Code plugin.