// STRYKE-K8S — KUBERNETES CLIENT FOR STRYKE // GET + APPLY + DELETE + SCALE + LOGS + WATCH + EXEC

stryke package · CLI launcher k8s · Rust helper stryke-k8s-helper · opt-in (kept out of stryke core)

Report GitHub Issues
// Color scheme

>_STRYKE-K8S

Any kubeconfig-reachable cluster, no kubectl. Kubernetes client for stryke. Get / apply / delete / scale / logs / watch / exec against any kubeconfig-reachable cluster (kind, k3s, minikube, EKS, GKE, AKS, OpenShift, vanilla). Opt-in package, statically linked.

Install

# build the helper binary, install as a stryke package
cd ~/projects/stryke-k8s
cargo build --release
s pkg install -g .

# one-liner
make install

# verify
k8s --help

After install, k8s --help works from anywhere on PATH (assuming ~/.stryke/bin/ is on PATH). The stryke library is auto-discoverable to any project that depends on the package via [deps] k8s = { path = "..." } or, when published, by name.

CLI: k8s

list podsk8s get pods -A
apply a manifestk8s apply -f deployment.yaml
scale a deploymentk8s scale --replicas=5 deployment/my-app
tail logsk8s logs -f my-pod
exec into a podk8s exec -it my-pod -- sh
watch namespace eventsk8s watch events -n production
GVK shortcut: deploymentsk8s get deploy

The full flag matrix lives in the README "CLI" section.

Why a package, not a builtin

Built on the kube crate (kube-client + kube-runtime). Drop-in replacement for kubectl one-liners that pipe through jq / yq / awk.

The stryke side is a thin NDJSON-pipe wrapper; the heavy code lives in the stryke-k8s-helper sidecar binary and is loaded on demand. Core stryke is never linked against this package's deps.

Helper protocol

The stryke-k8s-helper sidecar speaks newline-delimited JSON over stdin/stdout. The stryke library shells out per call and pipes structured data both ways. This keeps stryke startup small while making the package's surface area available on demand.

# manual invocation (debugging only)
echo '{"op":"version"}' | stryke-k8s-helper

Layout

stryke-k8s/
├── Cargo.toml             # bin = stryke-k8s-helper (publish = false)
├── src/
│   └── main.rs           # helper binary entry point
├── lib/                   # stryke .stk wrapper(s)
├── stryke.toml            # stryke package manifest
├── t/                     # zunit-style tests
├── examples/              # runnable .stk examples
├── Makefile               # `make install` builds + installs
└── docs/                  # this site (GitHub Pages)

Sibling packages

Part of the stryke connector family. Browse the others via the MenkeTechnologiesMeta umbrella repo (Tier 2):