Skip to main content

"k"

TLDR;

Install the "k" by either doing:

pip install agentk

(Yes, ^^ it is written in python and your OS needs to have recent version 2 or 3)

or copying it in some bin folder on your PATH and running pip install -r requirements.txt


"A person is smart. People are dumb, panicky, dangerous animals, and you know it." -- Agent K

"AGENT" K is a complete minimalistic kubectl "doner"-wrap

Obviously, as a short-hand wrapper, k can do everything kubectl already can, but it is (a) shorter and (b) adds few tricks like merging configs and switching contexts .. (k) feeds back to the kubectl command-line those args which it does not want to intercept or handle.

Usage

The following is equivalent:

kubectl get pods --all-namespaces
k get pods -A
k p -A

Switching context

Argument-free invocation prompts for context switch options between multiple cluster contexts found in ~/.kube/config:

k

Switching namespaces

One can change the default namespace on the currently active context (namespace key in ~/.kube/config) using either of two equivalent commands:

kubectl config set-context $(kubectl config current-context) --namespace foo
k sn foo

The last command is a k shortcut.

Shortcuts to get resources

You can find the full list of shortcuts defined as the dictionary inside the k script. In particular that would be:

# resource
"ev": "event",
"ep": "endpoints",
"p": "pod",
"s": "service",
"v": "volume",
"n": "node",
"dp": "deployment",
"st": "statefulset",
"in": "ingress",
"ns": "namespace",

At the end of the list there are one letter action-shortcuts:

# actions
"c": "create",
"a": "apply",
"d": "delete",

This means that the following is equivalent:

kubectl apply -f <foo-k8s-manifest.yaml>
k a -f <foo-k8s-manifest.yaml>

Develop

To remind, you can do pip install -e . in order to utilize developer mode.

Installation in the cloud

If you work with kubectl without a privileged or super-user access, for example inside a corporate network or in a cloud-shell (but you still have access to python), then your installation will look like:

pip install --user agentk

This will install the script in your local $HOME folder.

Don't forget to append your ~/.bashrc or ~/bash_profile or other shell-rc file with:

export PATH="$HOME/.local/bin:$PATH"

Command completion

You can put this into your .bashrc to get alias and auto completion for k similar as for kubectl:

source <(kubectl completion bash | sed s/kubectl/k/g)

Similar works well for zsh.

Release files for agentk 0.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for agentk 0.3.2
File Size Uploaded
agentk-0.3.2.tar.gz 5.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for agentk 0.3.2
File Interpreter ABI Platform
agentk-0.3.2-py3-none-any.whl Python 3 none any Details

Total release size: 11.8 kB

Release files / agentk-0.3.2.tar.gz

Download URL agentk-0.3.2.tar.gz
Size 5.4 kB
Tags Source
SHA-256 checksum
How to use checksums
eaaa8ec4d1f4fd2441401bf76f107be4f7e3599b7250cb7fd4d2451174afc40e
BLAKE2b-256 checksum
How to use checksums
801749ef2cf3152308574e9c0fe9fece57c5576e2e8ec3b1cacf4322155d2bdd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.19

Release files / agentk-0.3.2-py3-none-any.whl

Download URL agentk-0.3.2-py3-none-any.whl
Size 6.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2372a423411875fa2b95c53759db2f5d092218b9b1c95c9a3eefee280229d985
BLAKE2b-256 checksum
How to use checksums
ab5f9585da89c94fe60940c21b25f3f42a2492369cd56054c94f1c2051345e0f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.19

Release history Release notifications | RSS feed

This release

0.3.2 This release

2 release files

0.3.1

2 release files

0.3.0

1 release file

0.2.7

1 release file

0.2.6

1 release file

0.2.5

1 release file

0.2.4

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2.0

1 release file

0.1.1

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page