Shared config-driven helpers for opt-in live SSH execution-surface tests.
Test wrappers materialize these values into :cli_subprocess_core, :live_ssh_env:
CLI_SUBPROCESS_CORE_LIVE_SSH=1enables the helpersCLI_SUBPROCESS_CORE_LIVE_SSH_DESTINATION=<host>selects the SSH target- optional
CLI_SUBPROCESS_CORE_LIVE_SSH_USER - optional
CLI_SUBPROCESS_CORE_LIVE_SSH_PORT - optional
CLI_SUBPROCESS_CORE_LIVE_SSH_IDENTITY_FILE - optional
CLI_SUBPROCESS_CORE_LIVE_SSH_PATH - optional provider command overrides such as
CLI_SUBPROCESS_CORE_LIVE_SSH_CLAUDE_COMMAND=/path/to/claude
Summary
Functions
@spec destination() :: String.t() | nil
@spec enabled?() :: boolean()
@spec execution_surface(keyword()) :: CliSubprocessCore.ExecutionSurface.t()
@spec provider_command(:amp | :claude | :codex) :: String.t() | nil
@spec provider_command_env(:amp | :claude | :codex) :: String.t()
@spec run(String.t(), [String.t()], keyword()) :: {:ok, CliSubprocessCore.Command.RunResult.t()} | {:error, term()}
@spec skip_reason() :: String.t()