Revyl Documentation

Integrations

Cursor

Two ways Revyl and Cursor connect: from the editor, and from the platform

Revyl has two ways of connecting to Cursor depending on use cases. It is recommended to enable both for Cursor developement depending on use case.

Cursor PluginCursor Cloud Agents
Typical useRun, verify, and test your app on a live Revyl device while you codeFix an issue found in Atlas or report/session evidence, or prove changes in a pull request, without leaving Revyl
DirectionCursor's editor drives RevylRevyl drives Cursor's cloud agents
Runs inYour local Cursor Agent chat or Cursor CloudCursor Cloud launched from Revyl

Cursor Plugin

A pinned CLI, skills, and a routing rule that let a Cursor Agent chat run your app on a real cloud device, verify a change, and iterate from the Cursor editor. From version 0.1.9 it also connects Revyl's hosted workspace server for Atlas maps and live device views in the chat. Set up the plugin →

Cursor Cloud Agents

Revyl can spawn new Cursor Cloud Agents on your behalf: sending an Atlas screen to a background agent to fix, or handing a pull request's proof-of-changes check to Cursor. Read the Cursor Cloud Agents docs →

Setting up both

Follow Get Started with Cursor Cloud for the end-to-end walkthrough: connect Cloud Agents, install the plugin, and point proof of changes at Cursor.

Set up the plugin

Install the Revyl plugin to get the pinned CLI, sign-in hooks, and device skills in Cursor. From version 0.1.9 it also connects Revyl's hosted workspace server, which shows Atlas maps and live device sessions in the chat.

What the plugin adds

  • CLI install: hooks download a pinned Revyl CLI from the GitHub Release, cache it locally, and copy it onto a user PATH directory so revyl resolves in agent shells.
  • Sign-in: run revyl auth login and approve the printed URL, or set optional REVYL_API_KEY for unattended agents.
  • Skills and rules: route mobile run, preview, and verification requests to the Revyl CLI.
  • Workspace views (0.1.9 and later): a hosted MCP server named revyl-workspace that opens an app's Atlas map or a live device session inside the chat and lists your apps and sessions. Cursor asks you to sign in to it once, separately from the CLI. It needs an interactive sign-in, so Cloud Agents keep using the CLI.

Setup

1. Install plugin

In Cursor, install a new plugin by navigating to the Revyl Marketplace Plugin and selecting Add to Cursor.

The plugin installs the CLI on the first revyl command and publishes it to ~/.revyl/bin (or ~/.local/bin when that path already holds a different CLI). Cloud Agents still need those directories on PATH. You do not need a separate curl | sh install.

2. Sign in

Pick whichever fits how you run agents. Both end in the same stored credential, and you only need one.

Browser approval. Ask the agent to run revyl auth login and post the printed approval URL as a clickable markdown link. Open it, confirm the short code, and approve. Approval works from any browser.

Optional API key, for unattended agents. In Revyl, create a new API key.

  • For Cursor Cloud Agents: in Cursor, create a Runtime Secret called REVYL_API_KEY holding that key, then start a fresh agent.
  • For Cursor local agents: export REVYL_API_KEY in the shell that launches Cursor.

The plugin bridges a real key into the credential store with revyl auth persist-cloud-env and never prints it. A Runtime Secret is the unattended path, not the only path.

3. Allow network traffic

Cursor cloud agents need to be able to communicate with Revyl servers. Depending on the Cursor Network Access Mode, the following domains need to be allowlisted:

  • revyl.com
  • *.revyl.com
  • revyl.ai
  • *.revyl.ai
  • github.com (CLI download)

4. Verify

After installing the plugin, start a new Cursor Agent chat and ask: "is the Revyl CLI installed, authenticated, and ready?" The agent should confirm that everything is set up.

5. Start using Revyl

Ask Cursor Agent chat: "Run this app on a Revyl device" and Cursor will start a Revyl device session.

The CLI's own local MCP server is optional and documented in MCP setup. Use a literal command such as revyl or /usr/local/bin/revyl, never ${...}. The plugin does not start that server.

On this page