pipelock verify-install

August 4, 2026 ยท View on GitHub

pipelock verify-install runs deterministic smoke checks against the local Pipelock binary and configuration. It is a quick proof that the scanner surfaces are wired and, when run inside a contained environment, that direct egress is blocked.

It complements pipelock doctor:

  • doctor explains configured-vs-enforceable deployment posture and next steps.
  • verify-install executes concrete probes and exits non-zero if a required check fails.

Usage

pipelock verify-install --no-color

Useful flags:

FlagPurpose
--config <path>Verify the supplied config as-is. Disabled protections are reported as failures.
--jsonEmit a machine-readable report.
--output <path>Write the JSON report to a file.
--sign <key>Sign the report with an Ed25519 private key.
--no-colorDisable terminal color.

Without --config, the verifier uses built-in defaults and enables the full proof set so a fresh binary can self-check out of the box.

Checks

Scanning and local enforcement checks:

CheckWhat it proves
config_validConfig loads and validates.
proxy_healthThe local proxy health endpoint responds.
fetch_dlpFetch-path DLP blocks a secret-shaped payload.
forward_blockedForward-proxy CONNECT blocklist enforcement works.
scanning_dlpMCP input scanning catches secret-shaped tool input.
scanning_injectionPrompt-injection scanning fires on a hostile input.
scanning_policyMCP tool policy denies a blocked command.
scanning_websocketWebSocket frame scanning catches a hostile text frame.
browser_shieldBrowser Shield rewrites shieldable browser content.
file_sentryfile_sentry detects a secret written to a watched workspace.
mcp_binary_integrity_smokeMCP binary-integrity manifest loading and hash verification work against the current Pipelock executable. It uses that executable's configured entry when present, otherwise an ephemeral self-test entry. This does not verify configured MCP server binaries.
mcp_tool_provenance_smokeMCP tool-provenance signing and verification work offline using a synthetic tool and ephemeral key. This does not verify upstream tools.

Containment checks:

CheckWhat it proves
no_direct_httpThe current environment blocks direct HTTP egress.
no_direct_dnsThe current environment blocks direct DNS egress.
no_direct_httpsThe current environment blocks direct HTTPS egress.

The containment probes are only meaningful inside a container, pod, or similar network boundary. On a normal host they are reported as not applicable, because the operator account is expected to retain direct network access.

Exit Codes

CodeMeaning
0All required checks passed. Not-applicable containment checks count as pass.
1One or more checks failed.
2Config or setup error.

Scope

The Browser Shield, file_sentry, MCP binary-integrity, and MCP tool-provenance checks are smoke tests. They prove the code paths work with controlled fixtures; they do not prove that every deployed client has been wired through Pipelock. Pair them with pipelock doctor, pipelock contain verify, and deployment-specific wrapper or sidecar smoke tests before claiming production enforcement.