mccomaschris/stampede

A guided, safety-conscious terminal manager for the WordPress VIP CLI.

Maintainers

Package info

github.com/mccomaschris/stampede

pkg:composer/mccomaschris/stampede

Transparency log

Statistics

Installs: 1

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

dev-main 2026-09-02 15:23 UTC

This package is auto-updated.

Last update: 2026-09-02 15:23:16 UTC


README

Stampede is a guided terminal command palette for the WordPress VIP CLI. It makes common VIP Platform and VIP Local tasks discoverable without requiring you to remember the exact vip command for every job.

Stampede is not a replacement for VIP-CLI. It delegates each action to your installed vip executable, uses the same authenticated session, and lets VIP-CLI retain ownership of its interactive setup prompts and command output.

What it does

  • Keeps VIP Platform work and local development work in separate, focused workspaces.
  • Loads applications first, then loads environments only after you choose an application.
  • Discovers VIP Local environments already present on the current computer.
  • Returns to the relevant action menu after a command finishes, so the next step is always close at hand.
  • Runs local VIP commands in a terminal (TTY), preserving VIP-CLI's native colors and formatting.
  • Executes every command as an argument list, never through a shell.

Requirements

  • PHP 8.2 or newer
  • Composer
  • VIP-CLI installed and authenticated
  • Docker/Lando and any other prerequisites required by VIP Local, when using local development environments

Install

Install the currently published Composer package:

composer global require mccomaschris/stampede

Ensure Composer's global vendor/bin directory is on your PATH, then launch Stampede:

stampede

The Composer package and PHP namespace are named stampede.

Start screen

At launch, Stampede presents two workspaces:

  • Local development environments — manage VIP Local environments on this computer.
  • VIP Platform environments — manage applications and environments accessible through your authenticated VIP-CLI account.

Each workspace keeps its action menu open until you explicitly switch context or return to the Stampede home screen.

VIP Platform workspace

Stampede first loads the application list. Once you select an application, it loads that application's environments and asks you to choose one. It remembers the most recently selected target and preselects it when you return to the same application.

For the selected environment, Stampede provides:

  • Runtime logs: web/application or batch logs, with an optional follow mode.
  • Slow-query logs.
  • Cache URL purge: enter one URL per line; all URLs must share a domain.
  • Production-to-non-production database sync.
  • Environment-variable list, get, set, and delete actions.
  • Software-version display and updates for WordPress, PHP, Node.js, and MU plugins.
  • Common WP-CLI actions, plus an advanced WP-CLI command entry screen.

The production-to-non-production sync option is deliberately hidden when production is the selected target: production can be a source, never a sync destination.

Local development workspace

Stampede discovers existing VIP Local environments in VIP-CLI's local data directory (normally ~/.local/share/vip/dev-environment; it honors XDG_DATA_HOME when set). Choose an existing local environment, or choose Create a new local environment.

For a selected local environment, Stampede provides:

  • Start and stop
  • Status and configuration information
  • Logs
  • An interactive shell
  • WP-CLI execution
  • Database sync from a chosen VIP Platform application/environment
  • Settings updates
  • Destroy
  • An advanced dev-env command entry screen

Create and sync prompt for a VIP Platform application and environment only when that remote source is required. A production source requires an explicit confirmation before a sync.

After an action completes, Stampede returns to the selected local environment's menu. Use Choose another local environment to switch, or Back to Stampede home to change workspaces.

Advanced commands

The advanced local-development option accepts any vip dev-env command and its arguments, one per line. For example, to run an import action, enter:

import
--slug=my-site
--database=/path/to/database.sql

Arguments are passed directly to VIP-CLI; they are not interpreted by a shell. Refer to the VIP dev-env documentation for available commands and options.

Safety model

  • Stampede confirms operations that target a VIP production environment.
  • It separately confirms operations that can change remote data or configuration, such as cache purges, database syncs, environment-variable changes, and software updates.
  • It confirms local destructive actions, including local database syncs and environment destruction.
  • It does not add VIP-CLI confirmation-bypass flags.
  • It does not authenticate with VIP or store credentials.

Stampede stores only the most recently selected VIP application/environment in ~/.config/stampede/state.json by default (or the equivalent path under XDG_CONFIG_HOME).

Development

Run the test suite with:

composer test

License

MIT