Skip to content

Adding plugins and themes

Four sources, and the last two are why this exists as a feature rather than a link to wp-admin.

Search and install from the directory, in the app or:

Terminal window
rex wp myshop.rex plugin install woocommerce --activate
rex wp myshop.rex theme install twentytwentyfive --activate
rex wp myshop.rex plugin update woocommerce

Upload a zip in the app. Useful for premium plugins and for a build you produced yourself.

Clone a plugin or theme straight into wp-content, and keep working on it there:

Terminal window
rex repo myshop.rex add https://github.com/you/your-plugin --install
rex repo myshop.rex status your-plugin
rex repo myshop.rex branches your-plugin
rex repo myshop.rex checkout your-plugin feature/thing --install
rex repo myshop.rex pull your-plugin --install

What you get beyond a plain clone:

  • Branch and tag switching from the panel, with --install re-running composer or npm only when the operation actually changed a lockfile.
  • PR refsrepo prs lists the remote’s pull-request head refs so you can check one out to test it. Checking one out lands you detached, because those refs carry a number and a sha and nothing else.
  • A dependency check that runs nothing. repo check reports whether composer or npm dependencies are missing or stale and offers the steps; --install is what actually runs them, stopping at the first failure.
  • Dev watchers. repo watch start <dir> <script> runs a package.json script — a Vite watcher, a Sass build — inside the app. They stop when the app quits.
  • Private repositories over your own ssh keys. No token to paste, nothing stored.

If the plugin already lives somewhere you like — a monorepo, a shared folder — symlink it in:

Terminal window
rex repo myshop.rex link ~/Projects/my-plugin

Every one of these actions toasts its outcome — naming the action and the asset — rather than only updating a row.

That is not decoration. On a 26-plugin list the row you just flipped is routinely off screen, and a streamed job whose only completion signal is a glyph inside its own card looks identical to a job that never started once you have scrolled away or switched to the browser.

What it claims is bounded by what is known: an install announces its settled result, says nothing when it merely starts, and reports partial as its own outcome rather than rounding it to success or failure.