Skip to content

plugin-crabbox

Version 2026.250.0100
Repo box/github.com/opencharly/plugin-crabbox:v2026.250.1019
Plugin yes — see the plugin reference

OUT-OF-TREE charly plugin serving the crabbox check verb — a standalone Go module (go.mod + main.go) that probes the Crabbox CLI and its optional local coordinator, served OUT-OF-PROCESS over go-plugin gRPC via the charly plugin SDK (github.com/opencharly/sdk). charly’s loader fetches this candy’s repo, go-builds the provider binary on the HOST, and serves it via LocalTransport — so an authored crabbox: step dispatches through the provider registry exactly like a built-in.

The verb has THREE method classes. In-venue CLI methods (version/providers/ config/doctor — credential-free — and leases/usage/events/logs — broker-backed, requiring a crabbox login in the venue) run the crabbox binary INSIDE the venue over the reverse channel (cc.Exec). Coordinator HTTP probe methods (health/ready) hit the Node.js/PostgreSQL coordinator’s /v1/health and /v1/ready endpoints — the container-probe surface the coordinator exposes — from the charly host against the resolved endpoint (cc.ResolveEndpoint + cc.HTTPDo, one authored step works unchanged against a pod’s published port and a VM’s forwarded one). All methods are read-only; there are no mutating methods in this first cut.

It is NOT a re-skin of the generic command:/http: verbs: this plugin exists for what those structurally cannot do — ENDPOINT RESOLUTION (cc.ResolveEndpoint for the coordinator probes) and DOMAIN SEMANTICS (methods map to the crabbox CLI’s real surface and return real verdicts, with json_path: to assert one field; the in-venue CLI methods reach the binary where it is installed, which http: cannot).

The R10 consumers are the crabbox-bearing beds (check-crabbox-pod and check-crabbox-e2e-pod) whose checks compose this plugin alongside the crabbox CLI candy from opencharly/layer-crabbox and the coordinator candy from opencharly/pod-crabbox.

This candy’s plan: — the runnable spec charly check executes against a live deployment. check: steps are idempotent probes; run: steps change state.

Intent Step
check the crabbox verb dispatches through the provider registry and reports the pinned CLI version on a live deployment