Deploy alpha smoke for VibeControls
TLS / HSTS / CSP smoke checks for alpha environment URLs at deploy.alpha.
vibe plugin install @vibecontrols/vibe-plugin-security-deploy-alpha
About this plugin
@vibecontrols/vibe-plugin-security-deploy-alpha
Pure-JS smoke-check provider for the deploy.alpha lifecycle stage in VibeControls. Provider name: alpha-smoke. No binary, no Docker — uses the native fetch API only. Wave 2 scaffold — real probe integration pending; see src/provider.ts TODO.
Registers itself with @vibecontrols/vibe-plugin-security under the per-stage provider type security.release (per PROVIDER_TYPE_FOR_STAGE("deploy.alpha")). When the user picks "alpha-smoke" as their default provider for deploy.alpha, the security meta plugin dispatches scan runs here.
Install
vibe plugin install @vibecontrols/vibe-plugin-security-deploy-alpha
vibe security providers set-default --stage deploy.alpha --provider alpha-smoke
No external dependencies. Pure-JS, no subprocess, no privileged capabilities — runs anywhere the agent runs.
Behavior (planned)
For each URL in input.config.alphaUrls:
- TLS validity: cert not expired, hostname matches, chain valid.
- Response headers:
Strict-Transport-Security,X-Content-Type-Options,Content-Security-Policypresent onGET /(configurable per check). - Auth challenge:
GET /healthzreturns 200 OK with a known JSON shape for public endpoints; protected endpoints return 401 +WWW-Authenticate.
Findings:
severity: high— TLS invalid or HSTS missing.severity: medium— CSP or X-Content-Type-Options missing.severity: low—/healthzauth-challenge mismatch.
Evidence: raw probe results as a JSON artifact.
Configuration
Per-vibe config (stored in RepositorySecurityConfig.pluginAssignments["deploy.alpha"].config):
provider: alpha-smoke
config:
alphaUrls:
- https://alpha.example.com
- https://api.alpha.example.com
requireHsts: true
requireCsp: true
requireXcto: true
healthzPath: /healthz
extraHeaders:
User-Agent: vibecontrols-alpha-smoke
Use it in 30 seconds
- Make sure the agent is running:
vibe start - Install the meta first:
vibe plugin install @vibecontrols/vibe-plugin-security - Install this plugin:
vibe plugin install @vibecontrols/vibe-plugin-security-deploy-alpha - List installed plugins:
vibe plugin list
Other Security plugins
Archive Offboard
Writes tombstone.json evidence at archive.offboard for SOC2/ISO retention proofs.
@vibecontrols/vibe-plugin-security-archiveDAST (preview)
OWASP ZAP baseline DAST scan against alpha preview URLs at deploy.preview.
@vibecontrols/vibe-plugin-security-dast-previewDeveloper local
Local pre-commit secrets scanner (gitleaks protect) — runs on the developer machine.
@vibecontrols/vibe-plugin-security-developer-localIncident response
Targeted incident-response scanner for incident.response lifecycle stage.
@vibecontrols/vibe-plugin-security-incidentRepo onboard
Repo profile detector — picks the right policy bundle on repo.onboard.
@vibecontrols/vibe-plugin-security-onboardPackage publish
Cosign signing + SLSA provenance at package.publish.
@vibecontrols/vibe-plugin-security-package-publish