wp-now is deprecated: migrate to Playground CLI

@wp-now/wp-now is now deprecated and will not receive future updates. If you use wp-now for local WordPress development, the recommended replacement is @wp-playground/cli. The process took a few months because the Playground team was working to replace all the capabilities from wp-now.

This change is now reflected in the Playground documentation through PR #3767, which documents the migrationMigration Moving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. path from wp-now to Playground CLICLI Command Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress. and updates the CLI docs to lead with the new start command for familiar wp-now-style workflows. server command still available for more complex workflows.

Why this change

wp-now helped make local WordPress development fast and portable by running WordPress with the Playground runtime, without Docker, MySQLMySQL MySQL is a relational database management system. A database is a structured collection of data where content, configuration and other options are stored. https://www.mysql.com, or ApacheApache Apache is the most widely used web server software. Developed and maintained by Apache Software Foundation. Apache is an Open Source software available for free.. Over the last few years, though, new local development work has moved toward the official Playground CLI.

With the recent implementation of start command, it means the remaining gap has closed: Playground CLI now supports the familiar wp-now behavior and adds more room for customization through the broader WordPress Playground toolchain.

What to use instead

For most local development workflows, use:

npx @wp-playground/cli@latest start

It automatically detects whether the current directory is a pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party., theme, wp-content directory, or full WordPress installation. It also persists the site between runs, enables login, and opens the browser by default.

For lower-level control, use:

npx @wp-playground/cli@latest server

The server command is best when you want to define mounts, storage behavior, versions, Blueprints, or automation explicitly. It is also a better fit for CI and scripted development environments.

Migration guide

Most wp-now commands map directly to @wp-playground/cli start:

wp-nowPlayground CLI
npx @wp-now/wp-now startnpx @wp-playground/cli@latest start
npx @wp-now/wp-now start --path=./plugincd ./plugin && npx @wp-playground/cli@latest start
npx @wp-now/wp-now start --wp=6.8 --php=8.3npx @wp-playground/cli@latest start --wp=6.8 --php=8.3
npx @wp-now/wp-now start --blueprint=./blueprint.jsonnpx @wp-playground/cli@latest start --blueprint=./blueprint.json
npx @wp-now/wp-now start --skip-browsernpx @wp-playground/cli@latest start --skip-browser
npx @wp-now/wp-now start --resetnpx @wp-playground/cli@latest start --reset

1. Replace the package name

If you currently run:

npx @wp-now/wp-now start

Run this instead:

npx @wp-playground/cli@latest start

You do not need to install the package globally. Using npx keeps your workflow on the latest Playground CLI release.

2. Run start from the project directory

The main workflow difference is how saved sites are associated with local paths.

With wp-now, --path=./plugin selected both the project and the saved site. With Playground CLI, start saves the site for the current working directory. For the closest match to wp-now --path, change into the project directory first:

cd ./plugin
npx @wp-playground/cli@latest start

start --path=./plugin still mounts that folder, but the saved site belongs to the directory where the command was run. If you want one persistent site per project, run the command from that project directory.

3. Keep version and Blueprint flags

Common version and Blueprint flags continue to work:

npx @wp-playground/cli@latest start --wp=6.8 --php=8.3
npx @wp-playground/cli@latest start --blueprint=./blueprint.json

Use --skip-browser if you do not want the browser to open automatically:

npx @wp-playground/cli@latest start --skip-browser

Use --reset to delete the stored site and start fresh:

npx @wp-playground/cli@latest start --reset

4. Understand persistence

When Playground CLI creates WordPress for you, start stores the site in:

~/.wordpress-playground/sites/<path-hash>/

The <path-hash> is derived from the command’s current working directory. This keeps projects isolated from one another while preserving the site between CLI runs.

If you run Playground CLI on a full WordPress directory, or mount a directory at /wordpress, that directory becomes the WordPress site and changes are written there instead.

What this means for existing wp-now users

Existing wp-now workflows should move to Playground CLI. The migration is intentionally small for common use cases: replace the package, use start, and run it from the project directory you want to persist.

For more advanced workflows, Playground CLI offers a larger surface area than wp-now, including server, run-blueprint, build-snapshot, custom mounts, and deeper configuration options.

See the updated documentation: