# Contrast and Peach > Contrast is a browser-native app environment for building, previewing, deploying, and inspecting web and React Native apps, with AI agents that build alongside you. > Peach is a browser-native React Native simulator for iOS and Android built on Skia/CanvasKit. Develop, test, and share React Native apps without a Mac, Xcode, or a native build step in the inner loop. One product family on two domains: the Contrast docs live at https://contrast.dev/docs and the Peach docs at https://peachsim.com/docs/peach. Every page below links to the domain that serves it. The full text of every page is available in one file at /llms-full.txt on either domain, and every page also serves plain markdown at its own URL plus `.md` (for example /docs/peach/quickstart.md). ## Set up Peach with a coding agent Follow this prompt from the app's project root; its first step installs the CLI. ```text Set up Peach for this React Native app and verify that the app loads in the selected simulator. Work from the app project root: the directory that contains its Metro, Expo, or One configuration and where its normal development server command runs. Do not add Peach to the app's dependencies or replace its existing development scripts. 1. Check whether the global `peach` CLI is installed. If it is missing, install it with `curl -fsSL https://peachsim.com/install.sh | sh`. 2. From the app project root, run `peach doctor --json`. Summarize React and React Native versions it flags, partial, unsupported, and unknown native packages, and packages outside their supported versions, without treating any score as a pass/fail gate. For unknown native code, show me the `peach.config.ts` stubs it prints. 3. Install the bundled agent skills with `peach skill install`. Mention that I need to restart the agent session before newly installed skills appear, but continue this setup now. 4. Explain the runtime choice before opening the app. On Apple silicon macOS and Linux x64, recommend trying the optional native runtime: it is faster, but beta, so I may run into more issues. Keep the existing default unless I choose native. To install the native app, run `peach desktop install`; on Linux this installs a .deb with sudo apt-get and needs a desktop session. Select it with `peach open --driver desktop`. For a browser window, use `peach open --driver playwright --headed`. Intel Mac and Linux arm64 use the browser. On Linux, `peach desktop install --native` installs a standalone headless host, not the desktop app. 5. Start the app's Metro, Expo, React Native, or One development server with the repository's existing command. Peach does not start or replace that server. 6. From the app project root, run `peach open ` with the real development server port and the selected driver flag, or run `peach open` to scan. Running from the project root is recommended because Peach uses the Metro or Expo project root, with the current directory as its fallback, to discover custom fonts, splash screens, and other app configuration. 7. Verify the connection with `peach list`, `peach wait ready`, `peach describe`, and `peach get errors`. Offer to send doctor's findings with `peach doctor --report`, which needs no login; run it only after I explicitly agree. If doctor identifies a plausible missing Peach seam, or runtime evidence shows behavior that is missing or broken specifically in Peach, explain the exact finding and offer to send it with `peach support report`. Never submit a report automatically or behind my back. Only after I explicitly approve, run `peach support report --yes ""` from the app project root. The command automatically attaches the local compatibility scan and the project report with dependency and toolchain versions; it does not attach source files, environment variables, terminal output, logs, screenshots, git data, or app data. When the docs do not answer a question about the simulator or its CLI, ask with `peach support ask ""`; the answer prints in the terminal. An account's first 5 asks are answered right away; later asks are answered once we approve the account. Want onboarding support? Add funds: `peach support fund` opens the payment page in the browser and this login picks up the funded account when it is paid. Check `peach support status --new` for our replies to earlier asks and reports. Run `peach project-report` to inspect the repository, its apps, dependencies and toolchain versions; offer to send it with `peach support report ""` only after I explicitly agree. The native runtime renders the simulator in a native desktop app. It is separate from the recommended background daemon offered during guided setup. The daemon runs the lightweight HTTP and WebSocket bridge that `peach open` can start when needed. It serves the simulator at http://localhost:7668/ by default, so the simulator can be opened like any other local page in a browser. CI does not need the registered daemon: run `curl -fsSL https://peachsim.com/install.sh | PEACH_NO_MODIFY_PATH=1 sh`, then use `peach open --driver playwright --headless`. Seed is free for individuals and companies under 10 people and under $1M yearly revenue, including commercial desktop and local use. Team is $30/mo or $300/yr for companies under 100 people and under $10M yearly revenue, with $10/mo of cloud usage. At or above either Team limit, contact sales for Enterprise. Yearly gives you two months free. All plans include unlimited local simulators, members, agents and API keys. One wallet covers peach and Contrast. Your first top-up is matched, up to $20, once per account and card; prepaid and virtual cards do not qualify. Top up from $5 without a subscription. Current rates (https://peachsim.com/pricing): $0.02 per build or share upload, $0.20 per AI walkthrough, and $0.005 per minute of hosted test time. - GitHub integration: install the Peach GitHub App (https://peachsim.com/api/github/app/install), select the repo, and merge the bootstrap PR it opens, which adds .github/workflows/sootsim.yml. Every push then publishes a playable branch build and every PR gets an AI walkthrough video plus a live demo in a sticky comment. The repo needs no API keys. - Maestro tests: check `peach maestro --list-compat` for supported verbs, then run flows with `peach maestro test .maestro/`. Without config.yaml, only top-level YAML flows run; for nested .maestro/flows/, add .maestro/config.yaml with flows: ["flows/**"]. In any CI it runs as a plain Linux job gated on the exit code; with the GitHub App, add `maestro: auto` to the preview action for per-PR results and the Peach Tests check. - Remote simulators (early access): email sales@contrast.dev to have it switched on for the account, then `export PEACH_BOX_ENDPOINT=https://rnx-box.contrast.dev` and run `peach ios --remote `. Simulator time costs $0.005 per minute; see https://peachsim.com/docs/peach/remote/limits. - Teammates: org owners create scoped invite links at https://peachsim.com/org//admin ("Invite people"). Each invite carries org-wide or per-repo scope and a full or limited level, and members share the account's repos, API keys, previews, and usage balance. ``` ## Contrast: Start - [Contrast](https://contrast.dev/docs): Contrast documentation. Build full-stack web and native apps in the browser with an agent factory, live web and iOS previews, SQLite data with live sync, GitHub sync, one-click deploys, custom domains, TestFlight and App Store publishing. - [Quick start](https://contrast.dev/docs/quickstart): Create a Contrast project, see it running on web and iOS, make an edit, hand a feature to the agent team, and deploy to a live URL. Covers sign in, templates, previews, Lux, the Manager, and your first deploy. - [Build on your machine](https://contrast.dev/docs/local): Install the contrast CLI, create a project from the App, Game, or Website template, run it with contrast dev, and hand it to Claude Code, Codex, or any agent that can run a shell command. Covers the one-line agent setup, checking your work, and connecting the project to contrast.dev. - [Essentials](https://contrast.dev/docs/essentials): How Contrast works. Projects hold your app, branches isolate changes, previews render web and native from one dev stack, agents build on their own branches, data runs on SQLite with live sync, and deploys go to real production infrastructure. - [The stack](https://contrast.dev/docs/stack): What Contrast apps are built with, and why standardizing on one stack is the point. One for the framework, Zero for sync, Tamagui for UI, SQLite for data, Cloudflare for production. - [Agents](https://contrast.dev/docs/agents): Working with Lux, the Manager, and Contrast agents. How to frame goals, what the factory does with them, how planning, building, review, and QA work, and prompt patterns that get better results. ## Contrast: Spaces - [Spaces](https://contrast.dev/docs/spaces): The Contrast workspace is organized into Dev, Design, Plan, Factory, and Production sections, each holding panes you resize, stack, and rearrange with the keyboard. - [Dev](https://contrast.dev/docs/spaces/dev): The Dev space pairs the editor with web and native previews from one in-browser dev stack, plus the Run menu and DevTools inspectors, all following the active branch as you work. - [Design](https://contrast.dev/docs/spaces/design): The Design section captures your app's screens as live render trees and lays them out as artboards you pan, zoom, inspect, comment on, and play in place. - [Plan](https://contrast.dev/docs/spaces/plan): The Plan space pairs a project docs browser with the kanban task board, where you shape a spec, break work into tasks, and track what the factory executes. - [Factory](https://contrast.dev/docs/spaces/factory): How to frame a factory goal, watch the board and floor, answer questions, review a branch, and land agent work through review, QA, and auto-merge. - [Deploy](https://contrast.dev/docs/spaces/deploy): How the Deploy pane takes a project from the dev stack to real targets, including web deploys, custom domains, iOS lanes, Android export, and build history. - [Prod](https://contrast.dev/docs/spaces/prod): Use the Production section to click through a live deployment, read its Health pane for status, stats, and logs, and work out why production differs from your preview. ## Contrast: Apps - [Apps](https://contrast.dev/docs/apps): What a Contrast app is, how the App, Game, and Website templates differ, which surfaces each runs on, and how to create one. - [Data](https://contrast.dev/docs/apps/data): SQLite and Zero live sync in Contrast projects: author a schema, run Generate and Migrate, write through mutators, and take the same stack to prod. - [Games](https://contrast.dev/docs/apps/games): What the Game template gives you: a WebGPU scene on web and iOS, blocks saved through the data stack, a live room of players, and how to turn it into your own game. - [Native iOS](https://contrast.dev/docs/apps/native): The native side of a Contrast app: Peach rendering, package compatibility, enabling iOS per project, and testing on a real device. ## Contrast: Monetization - [Monetization](https://contrast.dev/docs/monetization): How Contrast apps make money, covering RevenueCat for native subscriptions, Stripe for web checkout, testing real purchase flows inside the browser preview, and the Revenue pane in the Production section. - [RevenueCat setup](https://contrast.dev/docs/monetization/revenuecat): Connect RevenueCat to a Contrast project, including creating the secret v2 API key and public SDK key, verifying the connection, what the installed skill teaches your agents, and how the product catalog feeds the native preview. - [Testing purchases in preview](https://contrast.dev/docs/monetization/preview-purchases): What the native preview's simulated store can do, covering purchases, entitlements, restore, identity changes, what is intentionally not simulated, and how to force cancel flows. - [Shipping paid apps](https://contrast.dev/docs/monetization/app-store): What a paid iOS app needs beyond the standard App Store submission, covering App Store Connect products and Missing Metadata, the in-app purchase key RevenueCat needs, sandbox testers, TestFlight behavior, and the review rejections that hit subscription apps. - [Stripe for web](https://contrast.dev/docs/monetization/stripe): Connect Stripe to a Contrast project for web checkout and subscriptions, including the restricted key permissions, what the installed skill teaches agents, and the automatic webhook registration on production deploys. ## Contrast: Launch - [Publish](https://contrast.dev/docs/launch/web): Deploy a Contrast project to production web hosting, including what a deploy includes, the app URL, redeploys, and verifying in Prod. - [Custom domains](https://contrast.dev/docs/launch/domains): Attach a custom domain to a deployed Contrast app, including the default app subdomain, production hosting, the one DNS record, automatic SSL, status states, propagation troubleshooting, and removal. - [App Store](https://contrast.dev/docs/launch/app-store): Ship a Contrast app to iOS, including verifying your Apple Developer account, internal and external TestFlight, App Store review submission, store metadata and screenshots, rejections, and the Android export path. ## Contrast: Beyond the browser - [GitHub](https://contrast.dev/docs/github): Sync a Contrast project to GitHub: link a repo, push branches, open pull requests, and import PRs back into the workspace for review. - [Contrast on your phone](https://contrast.dev/docs/mobile-app): The Contrast iOS companion app in TestFlight beta: chat with the factory to build apps, watch web and native previews, and test on the go. - [Drive Contrast with your own agent](https://contrast.dev/docs/drive): Use the contrast CLI's drive mode to give an external agent the project chat, the plan board, the worker squad, the previews, and real screenshots. Covers binding a checkout, hosting a tab, running factory tools, and handing control back. ## Contrast: Reference - [Reference](https://contrast.dev/docs/reference): Source-backed reference for Contrast covering the available templates, how data generation works, the rules for writing mutators, and the deploy target classes. - [Pricing rates](https://contrast.dev/docs/reference/pricing): The exact per-token model rates your usage is billed at, how the shared usage pool works, and the order your balance is drawn down. - [Templates](https://contrast.dev/docs/reference/templates): The three templates you can create a project from: App, Game, and Website, with their runtimes and backend support. - [Data generation](https://contrast.dev/docs/reference/data-generation): The browser-project schema files you author, the Generate and Migrate Run-menu actions, and the generated outputs they produce. - [Seed data](https://contrast.dev/docs/reference/seed-data): database/seed.ts holds the rows every new runtime starts from, so a preview, a branch, a cloud agent, and a design capture all boot into the same known world. - [Mutators](https://contrast.dev/docs/reference/mutators): The rules for writing Zero mutators in a Contrast app: deterministic ids and timestamps, CRUD by intent, transactional reads, named-query syncing, and keeping bodies fast. - [Deploy targets](https://contrast.dev/docs/reference/deploy-targets): The deploy targets Contrast supports today, Web, iOS, and Android, with their prerequisites, output, custom domains, and current limits. ## Contrast: Help - [Troubleshooting](https://contrast.dev/docs/help/troubleshooting): Symptom-first fixes for the most common ways a Contrast project, deploy, or GitHub sync gets stuck. - [FAQ](https://contrast.dev/docs/help/faq): Short answers to the questions new Contrast users ask first. - [Account](https://contrast.dev/docs/help/account): Signing in, Starter, Pro, and Enterprise, how usage billing works, beta invite codes, and how project collaboration works. ## Peach: Getting Started - [Peach](https://peachsim.com/docs/peach): Peach is a browser-native React Native simulator for iOS and Android built on Skia/CanvasKit. Develop, test, and share React Native apps with no Mac, no Xcode, no Android Studio, and no native build step in the inner loop. Install it with the inspectable shell installer, then drive it from a terminal or AI coding agent. - [Installation](https://peachsim.com/docs/peach/install): Install Peach with an inspectable shell script, then open any running Metro, Expo, or One app without a per-app dependency or native build. - [Quick Start](https://peachsim.com/docs/peach/quickstart): Open any Metro, Expo, or One app in Peach without project setup, then run a flow and upload a shareable preview. - [Your First Test](https://peachsim.com/docs/peach/first-test): The two Peach test runners: Maestro YAML and Detox/Jest, plus the window.\_\_sootsimTest bridge API and CI gating. - [Plans](https://peachsim.com/docs/peach/plans): Seed, Team and Enterprise licenses, cloud usage and shared account billing. - [FAQ](https://peachsim.com/docs/peach/faq): Questions on peach plans and billing, account usage, CI keys, retention, refunds, and AI models. ## Peach: Previews & Sharing - [Preview uploads & sharing](https://peachsim.com/docs/peach/guides/sharing): How Peach publishes interactive bundles to a shareable preview link, covering one-shot record/flow/upload flows, auth, the live+video+scrub preview page, and PR sticky-comment integration. - [App Store screenshots](https://peachsim.com/docs/peach/guides/screenshots-app-store): Capture screenshots, frame them in device chrome, and compose marketing canvases from a YAML plan. ## Peach: CI & GitHub - [GitHub PR Previews](https://peachsim.com/docs/peach/guides/github-previews): Add the Peach preview action to record peach previews on pull requests and keep branch builds available for inspection. - [Tests in CI](https://peachsim.com/docs/peach/testing/ci): Run your Maestro suite on pull requests with the Peach preview action, get results as comments and checks, or gate any CI on exit codes. - [Test results](https://peachsim.com/docs/peach/testing/results): Where results live, from the dashboard's Runs view with URL-driven filters to the pull request page, per-step traces, the interactive recording, and the PR comment plus check. ## Peach: Cloud (beta) - [Remote Simulators](https://peachsim.com/docs/peach/remote): Run your app on a remote simulator that people and agents can watch and drive together. - [Remote Simulator Pricing](https://peachsim.com/docs/peach/remote/limits): Remote simulator, build, and hosted test rates per minute. ## Peach: Testing - [Testing](https://peachsim.com/docs/peach/testing): Run your existing Maestro and Detox suites against Peach in a browser, author new tests in plain language, run everything on every pull request with no simulators or macOS runners, and read run results in the dashboard with your whole team. - [Maestro suites](https://peachsim.com/docs/peach/testing/maestro): Run .maestro YAML flows against Peach with Peach maestro test as a drop-in for the maestro CLI, including workspace config, env interpolation, per-step failure bundles, and recording uploads. - [Detox suites](https://peachsim.com/docs/peach/testing/detox): Run existing Detox e2e suites unmodified with Peach detox, which remaps the detox import to the Peach driver inside your own Jest setup, with hosted run results in CI. - [Generate a Maestro test](https://peachsim.com/docs/peach/testing/ai): Describe a goal, then let Peach generate and run a deterministic Maestro flow against the current screen. ## Peach: Guides - [Configuration](https://peachsim.com/docs/peach/guides/configuration): The optional peach.config.ts surface, covering per-repo engine versions, module resolution, env injection, settings, and initial state. - [Wrapping an Existing App](https://peachsim.com/docs/peach/guides/wrap-existing): Connect Peach to an existing Expo/Metro/One app without code changes. Open it by port, scan dep compatibility, and configure unsupported native packages only when needed. - [Reporting Issues](https://peachsim.com/docs/peach/guides/reporting-issues): Ask for help from the CLI, send an explicitly approved compatibility report, and follow replies and fixes with peach support status. - [Troubleshooting](https://peachsim.com/docs/peach/guides/troubleshooting): Check the CLI and engine versions, install a fix, select a repo runtime, and inspect what happened inside the sim. - [MCP & Agent Tools](https://peachsim.com/docs/peach/guides/mcp): Use the Peach CLI from an agent host that exposes shell execution, with simulator claims, bounded settling, and React Native inspection commands. ## Peach: Agents - [Setup](https://peachsim.com/docs/peach/agents/setup): Install Peach with its inspectable shell installer, verify the bridge with list and describe, and add optional agent skills for setup, debug, visual review, and testing. - [CLI Use](https://peachsim.com/docs/peach/agents/cli): How agents drive the sim through Peach do/describe/find, with a visible cursor in the canvas, per-sim claim leases, agent-aware auto-settle, the accessibility DOM mirror, and the PEACH_AGENT/PEACH_CLI_IDENTITY env vars. - [Agent Devtool (Inspect)](https://peachsim.com/docs/peach/agents/inspect): The in-sim devtools agent pane, covering provider selection, lazy per-project sessions, inspect-as-context for canvas nodes, transcript events, inline approvals, and the popout window. ## Peach: REST API - [REST API](https://peachsim.com/docs/peach/api/rest): Create previews, publish customer-built bundle snapshots, record test results, and meter cloud sessions with API keys or CLI sessions. - [REST API Authentication](https://peachsim.com/docs/peach/api/rest/auth): Authenticate with account-scoped Peach API keys or a Peach CLI session Bearer token. - [Preview API](https://peachsim.com/docs/peach/api/rest/previews): Reserve uploads, PUT preview artifacts directly to storage, finalize a preview, and read account-owned preview metadata. - [Build API](https://peachsim.com/docs/peach/api/rest/builds): Upload customer-built bundle snapshots and inspect branch build results. - [Test Runs API](https://peachsim.com/docs/peach/api/rest/test-runs): Register hosted Maestro and Detox results and list account-owned runs for a linked repository. - [REST API Cloud Sessions](https://peachsim.com/docs/peach/api/rest/cloud-sessions): Start, heartbeat, stop, and inspect account-scoped Peach cloud metering sessions. - [REST API Billing and Limits](https://peachsim.com/docs/peach/api/rest/billing): Understand API rates, idempotent charges, spending limits, account funding, and request limits. - [REST API Rate Limits](https://peachsim.com/docs/peach/api/rest/rate-limits): Handle Peach's per-credential request window, Retry-After response header, and account-wide billing protections. - [REST API Errors](https://peachsim.com/docs/peach/api/rest/errors): Handle Peach REST API status codes, stable machine-readable error values, and retry guidance. ## Peach: API - [PeachConfig](https://peachsim.com/docs/peach/api/config): defineConfig from peachsim/config, covering the modules slot and its ModuleResolution forms, native stubs keyed by package, env injection, settings overrides, initialState shape, and how the config travels to the runtime via URL query param. - [Settings Schema](https://peachsim.com/docs/peach/api/settings): Settings keys for device, appearance, network conditions, locale, simulator chrome, and the settingsStore runtime API. - [Metro Plugin](https://peachsim.com/docs/peach/api/metro-plugin): Wrap your Metro config with withPeach() to embed deterministic module identity and serve the in-browser Peach simulator. - [One Plugin](https://peachsim.com/docs/peach/api/one-plugin): peachPlugin() for One/Vite apps, covering usage in defineConfig, available options, and how it shares the dev server you already run without changing app code. - [Agent Skills](https://peachsim.com/docs/peach/api/skills): How Peach skill install adds the bundled agent skill files to Codex and Claude Code, what each skill covers, and where they land. - [Test Bridge](https://peachsim.com/docs/peach/api/test-bridge): The window.\_\_sootsimTest browser API used by every test driver, covering find methods, queryAll filters, inspection, debug helpers, and the SootSimNodeInfo shape. - [Detox Driver](https://peachsim.com/docs/peach/api/detox-driver): Drop-in replacement for Detox's by/element/expect/waitFor/device imports, run through Peach detox. Covers matchers, element actions, assertions, waitFor, device controls, and how the jest swap works. - [Maestro Driver](https://peachsim.com/docs/peach/api/maestro-driver): Run your existing Maestro YAML flows against Peach with the Peach maestro CLI, covering the supported step verbs, partial-support caveats, and what isn't implemented. ## Peach: CLI - [CLI Reference](https://peachsim.com/docs/peach/cli): peach command-line interface - [peach swift](https://peachsim.com/docs/peach/cli/swift): preview a SwiftPM or Xcode app with live Swift edits, compiled on this machine - [peach kotlin](https://peachsim.com/docs/peach/cli/kotlin): run an Android Compose app module from its launcher activity - [peach test](https://peachsim.com/docs/peach/cli/test): run a Maestro flow or Detox suite against a peach app bundle - [peach maestro](https://peachsim.com/docs/peach/cli/maestro): author, generate, and run Maestro YAML flows against peach - [peach detox](https://peachsim.com/docs/peach/cli/detox): run existing Detox suites against peach on headless Chromium - [peach cleanup](https://peachsim.com/docs/peach/cli/cleanup): inspect and reclaim local peach disk usage - [peach record](https://peachsim.com/docs/peach/cli/record): capture the live sim as webm/mp4/gif, or sample N png frames (--frames) - [peach film](https://peachsim.com/docs/peach/cli/film): record a flow on the flat canvas, play it back on the 3d device stage under a camera cinematic, save a clip - [peach storage](https://peachsim.com/docs/peach/cli/storage): manage guest app storage and launch profiles - [peach permissions](https://peachsim.com/docs/peach/cli/permissions): inspect and change simulated operating-system permissions - [peach location](https://peachsim.com/docs/peach/cli/location): control the simulator's simulated device location - [peach perf](https://peachsim.com/docs/peach/cli/perf): CPU, React render, shell frame, and scroll-layer profiling - [peach describe](https://peachsim.com/docs/peach/cli/describe): curated human-readable UI summary (default inspection tool) - [peach find](https://peachsim.com/docs/peach/cli/find): locate nodes by text / testID / role / type / predicate - [peach assert](https://peachsim.com/docs/peach/cli/assert): run any read verb and convert its output into an exit code - [peach screenshot](https://peachsim.com/docs/peach/cli/screenshot): capture PNGs and manage App Store screenshot assets - [peach get](https://peachsim.com/docs/peach/cli/get): read runtime state (tree, a11y, layout, url, count, errors, …) - [peach do](https://peachsim.com/docs/peach/cli/do): drive the app (tap, type, scroll, swipe, key, reload, …) - [peach wait](https://peachsim.com/docs/peach/cli/wait): block until the runtime reaches a known state - [peach shell](https://peachsim.com/docs/peach/cli/shell): drive shell state and simulator chrome - [peach mode](https://peachsim.com/docs/peach/cli/mode): toggle screenshot, touch indicators, and 3D display modes - [peach device](https://peachsim.com/docs/peach/cli/device): inspect or change the live device preset for a sim - [peach network](https://peachsim.com/docs/peach/cli/network): inspect live network traffic from the running peach worker - [peach logs](https://peachsim.com/docs/peach/cli/logs): inspect live console output from the running peach worker - [peach debug](https://peachsim.com/docs/peach/cli/debug): drive \_\_sootsimDebug: channels, snapshots, and inspectors - [peach what-happened](https://peachsim.com/docs/peach/cli/what-happened): show recent semantic events: toasts, keyboards, screens, alerts, fetches, errors - [peach timeline](https://peachsim.com/docs/peach/cli/timeline): control the semantic event timeline (enable opt-in kinds, clear, dump) - [peach ios](https://peachsim.com/docs/peach/cli/ios): start an iOS simulator - [peach android](https://peachsim.com/docs/peach/cli/android): start an Android simulator - [peach remote](https://peachsim.com/docs/peach/cli/remote): run a prebuilt bundle on a remote simulator - [peach open](https://peachsim.com/docs/peach/cli/open): load a target into the current sim or open a new one - [peach preview](https://peachsim.com/docs/peach/cli/preview): publish an Expo project or bundle as a standalone preview - [peach list](https://peachsim.com/docs/peach/cli/list): list connected sims or available launch drivers - [peach use](https://peachsim.com/docs/peach/cli/use): select a connected sim - [peach skill](https://peachsim.com/docs/peach/cli/skill): install and inspect bundled peach agent skills - [peach claim](https://peachsim.com/docs/peach/cli/claim): take an exclusive lease on a sim - [peach agent](https://peachsim.com/docs/peach/cli/agent): inspect messages, attached projects, and local agent sessions - [peach close](https://peachsim.com/docs/peach/cli/close): close a connected sim - [peach setup](https://peachsim.com/docs/peach/cli/setup): configure optional local conveniences - [peach doctor](https://peachsim.com/docs/peach/cli/doctor): check what of an app Peach runs - [peach project-report](https://peachsim.com/docs/peach/cli/project-report): print local project and toolchain metadata - [peach support](https://peachsim.com/docs/peach/cli/support): ask for help, report a problem, and read our replies - [peach desktop](https://peachsim.com/docs/peach/cli/desktop): launch or install the desktop companion - [peach daemon](https://peachsim.com/docs/peach/cli/daemon): manage the recommended background bridge service - [peach version](https://peachsim.com/docs/peach/cli/version): show the CLI + engine runtime versions you are running - [peach upgrade](https://peachsim.com/docs/peach/cli/upgrade): update the peach CLI and engine runtime to the latest - [peach serve](https://peachsim.com/docs/peach/cli/serve): run the peach bridge in the foreground - [peach runtime](https://peachsim.com/docs/peach/cli/runtime): manage engine runtimes under ~/.peach/runtimes/ - [peach auth](https://peachsim.com/docs/peach/cli/auth): inspect active CLI auth - [peach login](https://peachsim.com/docs/peach/cli/login): sign in for preview uploads - [peach logout](https://peachsim.com/docs/peach/cli/logout): clear the local desktop auth session - [peach config](https://peachsim.com/docs/peach/cli/config): manage local CLI preferences ## Peach: Compatibility - [Compatibility](https://peachsim.com/docs/peach/compat): How the compat registry is calculated, what `peach doctor` reports for an app, and how to send its findings. - [Writing Custom Stubs](https://peachsim.com/docs/peach/compat/custom-stubs): Answer native code Peach does not know, keyed by package in peach.config.ts or published as a peach-stub package anyone installs, plus generic module overrides. Pure JS packages should never be stubbed. - [Native View Primitives](https://peachsim.com/docs/peach/compat/kit): Use typed blur and numeric text in replacements for your app's own native views.