Skip to content

Reference

run-action

Replay a saved non-login action — navigate to a screen or complete a multi-step flow — in seconds. Counterpart to /list-learned-actions, which discovers what’s available without granting replay authority. Authenticated journeys enter through cdp_login_prologue.

/rn-dev-agent:run-action <name> [-e KEY=VALUE ...] [--platform ios|android]
/rn-dev-agent:run-action wizard-create-task -e TITLE="Buy milk" -e PRIORITY=high
/rn-dev-agent:run-action open-settings --platform android

The first argument is matched against action filenames in .rn-agent/actions/ (substring, case-insensitive). If the match is unique, the command runs its safety and session-authority preflight before calling cdp_run_action. If multiple actions match, the plugin prints the candidates and asks for disambiguation. If none match, it offers the closest alternatives.

Before replay, the command reads rn_session({ action: "status" }). A blocked session stops before execution and reports its measured recoveryRequirement; follow parallel session authority rather than running setup, rebinding, or choosing another booted device.

  • -e KEY=VALUE — fills ${KEY} placeholders inside the action body. Repeatable.
  • --platform ios|android — requires an exact match with the bound session platform; it never chooses among booted devices.

Replay always goes through cdp_run_action, which verifies pin-cache maestro-runner >= 1.1.24 and the action’s enginePin before any UI mutation.

If a step fails because a testID was renamed, the plugin uses the live UI to find the new name, patches the action YAML, and retries.

  • The agent uses this internally when it detects a known starting state (e.g., logged-in home) is needed before doing new work
  • You can also call it directly to validate an action still works after a code change
  • During development, to skip past login or onboarding when iterating on a downstream screen