kubectl extensions
Project description
kubek
kubectlplugins for friendlier Kubernetes interactions.
kubek (kubernetes extension kit) is a collection of CLI tools that plug into kubectl and add interactive, developer-friendly shortcuts on top of it.
Plugins
🔌 portfwd — Interactive port forwarding
portfwd (port forward) manages many kubectl port-forward sessions as one. You choose what to forward — Services, Pods, Deployments, StatefulSets, DaemonSets, or ReplicaSets — and it runs and supervises every session under a single live dashboard.
At its core it does three things:
- Select targets — interactively, via
-t, or from a spec file (example) - Forward them all at once — the same target always gets the same local port across new runs
- Supervise them — a live status view with automatic reconnection
kubectl portfwd # interactive mode
kubectl portfwd -t ns1/svc/auth-service -t ns2/pod/worker-xyz # via CLI options (no prompts)
kubectl portfwd -f .portfwd-plan # via spec file (no prompts)
| Resource | Status |
|---|---|
| CronJob | ❌ |
| DaemonSet | ✅ |
| Deployment | ✅ |
| Job | ❌ |
| Pod | ✅ |
| ReplicaSet | ✅ |
| StatefulSet | ✅ |
📦 export-dotenv — Export env vars from cluster resources
export-dotenv reads the environment of a running Kubernetes resource and hands it back ready to use — no manual YAML digging or copy-paste.
At its core it does three things:
- Pick a resource — a Deployment, StatefulSet, DaemonSet, ReplicaSet, Job, CronJob, or Argo WorkflowTemplate, interactively or by flag
- Resolve its full environment — including values referenced from ConfigMaps and Secrets
- Emit it as
.envor JSON — to stdout for piping
kubectl export-dotenv
kubectl export-dotenv --kind deployment --name my-service --namespace prod > .env
kubectl export-dotenv --kind workflowtemplate --name my-workflow --output json
Supported Resources
| Resource | Status |
|---|---|
| ConfigMap | ✅ |
| CronJob | ✅ |
| DaemonSet | ✅ |
| Deployment | ✅ |
| Job | ✅ |
| Pod | ✅ |
| ReplicaSet | ✅ |
| Secret | ✅ |
| StatefulSet | ✅ |
Installation
Prerequisites
- Python 3.11+
kubectlinstalled and configured with cluster access
Install
The recommended way to install kubek is with pipx or uv, which installs it in an isolated environment and automatically makes the plugin executables available on your PATH:
pipx
pipx install kubek
uv
uv tool install kubek
Verify
After installing, confirm both plugins are available:
kubectl portfwd --help
kubectl export-dotenv --help
See each plugin's README for full usage details.
License
MIT — see LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kubek-0.9.6.tar.gz.
File metadata
- Download URL: kubek-0.9.6.tar.gz
- Upload date:
- Size: 41.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b4eb0b66265a652967162c6e19c89215baccc4e23038c8fd5d5ff98600c93049
|
|
| MD5 |
c093843d0ca58340f496e8cd6c5bc2c4
|
|
| BLAKE2b-256 |
6041f38a549f2fd21106d74521fb97a7d913046429f484b93b249aa6875ecc43
|
Provenance
The following attestation bundles were made for kubek-0.9.6.tar.gz:
Publisher:
release.yml on ohmycoffe/kubek
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
kubek-0.9.6.tar.gz -
Subject digest:
b4eb0b66265a652967162c6e19c89215baccc4e23038c8fd5d5ff98600c93049 - Sigstore transparency entry: 2059045691
- Sigstore integration time:
-
Permalink:
ohmycoffe/kubek@24ec8b01aa06879795c81e3bd70932c9869ee7b3 -
Branch / Tag:
refs/tags/v0.9.6 - Owner: https://github.com/ohmycoffe
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@24ec8b01aa06879795c81e3bd70932c9869ee7b3 -
Trigger Event:
push
-
Statement type:
File details
Details for the file kubek-0.9.6-py3-none-any.whl.
File metadata
- Download URL: kubek-0.9.6-py3-none-any.whl
- Upload date:
- Size: 68.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e2f5ba6feee596558cc3aa85eab42c116cf735d504f30326e623a68d63a4736
|
|
| MD5 |
ac95908cce7e9a207633298eb733f153
|
|
| BLAKE2b-256 |
de553f90f08dcd23f4f35488455b372e720ca3ba1c8f3574dc7beffcf995b77d
|
Provenance
The following attestation bundles were made for kubek-0.9.6-py3-none-any.whl:
Publisher:
release.yml on ohmycoffe/kubek
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
kubek-0.9.6-py3-none-any.whl -
Subject digest:
5e2f5ba6feee596558cc3aa85eab42c116cf735d504f30326e623a68d63a4736 - Sigstore transparency entry: 2059046077
- Sigstore integration time:
-
Permalink:
ohmycoffe/kubek@24ec8b01aa06879795c81e3bd70932c9869ee7b3 -
Branch / Tag:
refs/tags/v0.9.6 - Owner: https://github.com/ohmycoffe
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@24ec8b01aa06879795c81e3bd70932c9869ee7b3 -
Trigger Event:
push
-
Statement type: