consolidation/site-process
Consolidation Site Process is a PHP process runner for local and remote site commands. It extends Symfony Process with site-alias support, enabling SSH, Docker, and other transports so tools like Drush can execute commands against configured environments safely and consistently.
@site.env handles). It answers the question "do we hand-roll SSH/local command dispatch, or adopt a small, composable library that already speaks the Drush/Robo alias convention?" For most teams the answer is adopt — the surface area is small, but re-implementing local-vs-remote transport selection, alias resolution, and option translation is a classic schedule sink for CLI features.@alias targets) or a hardcoded config chore.Consider it when:
Look elsewhere when:
NOASSERTION license metadata (legal will need to confirm; it is generally understood to be MIT) mean procurement and AppSec will ask questions you must answer before shipping.For executives: this is not a product; it is a small, well-scoped piece of plumbing that lets our command-line tooling target "staging" or "production" by name instead of by hand-written server details. Adopting it converts a multi-week build into a dependency, and aligns us with the conventions used by Drush, Robo, and Terminus — the tools our agency and DevOps-facing users already know. Cost is near zero; the main caveat is that it is a mature, quiet library with no recent releases, so we should pin the version, confirm the license with legal, and treat it as stable infrastructure rather than something we expect upstream features from.
For engineering: it is a thin wrapper over Symfony Process that resolves Consolidation Site Alias handles and dispatches the command either locally or over SSH. Keep it behind a narrow internal interface so we can swap in Symfony Process directly, or a richer transport layer, if our needs move past SSH/local. Pin to a known version, add it to the dependency review list, and do not expect upstream churn — which is fine for glue code, as long as we own the tests around target resolution and failure handling.
How can I help you explore Laravel packages today?