All Projects → cloudnativelabs → Kube Shell

cloudnativelabs / Kube Shell

Licence: apache-2.0
Kubernetes shell: An integrated shell for working with the Kubernetes

Programming Languages

python
139335 projects - #7 most used programming language
go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Kube Shell

Littletools
A set of short commands used to make the input of some commands simple.
Stars: ✭ 126 (-93.74%)
Mutual labels:  autocomplete, kubectl
Kube Aliases
Kubernetes Aliases and Bash Functions
Stars: ✭ 40 (-98.01%)
Mutual labels:  autocomplete, kubectl
Ironpython Stubs
Autocomplete stubs for common IronPython/.NET libraries
Stars: ✭ 135 (-93.29%)
Mutual labels:  autocomplete
Fastolympiccoding
Tools for competitive programming for Sublime Text 3
Stars: ✭ 146 (-92.74%)
Mutual labels:  autocomplete
Yii2 Stubs Generator
No more pain with autocomplete in PhpStorm.
Stars: ✭ 143 (-92.89%)
Mutual labels:  autocomplete
K8sh
A simple, easily extensible shell for navigating your kubernetes clusters
Stars: ✭ 136 (-93.24%)
Mutual labels:  kubectl
Kubectl Tree
kubectl plugin to browse Kubernetes object hierarchies as a tree 🎄 (star the repo if you are using)
Stars: ✭ 1,962 (-2.49%)
Mutual labels:  kubectl
React Google Places Autocomplete
React Google Places Autocomplete input -- fully customizable
Stars: ✭ 135 (-93.29%)
Mutual labels:  autocomplete
Kubectl Debug
Debug your pod by a new container with every troubleshooting tools pre-installed
Stars: ✭ 2,091 (+3.93%)
Mutual labels:  kubectl
Tabnine Intellij
Jetbrains IDEs client for TabNine. Compatible with all IntelliJ-based IDEs. https://plugins.jetbrains.com/plugin/12798-tabnine
Stars: ✭ 140 (-93.04%)
Mutual labels:  autocomplete
Kubectl Aliases
Programmatically generated handy kubectl aliases.
Stars: ✭ 2,152 (+6.96%)
Mutual labels:  kubectl
Jstag
Pure Angular Input Tags project
Stars: ✭ 140 (-93.04%)
Mutual labels:  autocomplete
Helm Intellisense
Extension for Visual Studio Code - Intellisense in helm-templates from the values.yaml
Stars: ✭ 137 (-93.19%)
Mutual labels:  autocomplete
React Autowhatever
Accessible rendering layer for Autosuggest and Autocomplete components
Stars: ✭ 146 (-92.74%)
Mutual labels:  autocomplete
Textcomplete
Autocomplete for HTMLTextAreaElement and more.
Stars: ✭ 1,691 (-15.95%)
Mutual labels:  autocomplete
Autocomplete Paths
Autocomplete Paths for Atom
Stars: ✭ 148 (-92.64%)
Mutual labels:  autocomplete
Ale
Check syntax in Vim asynchronously and fix files, with Language Server Protocol (LSP) support
Stars: ✭ 11,380 (+465.61%)
Mutual labels:  autocomplete
Ide Stubs
Phalcon IDE Stubs
Stars: ✭ 137 (-93.19%)
Mutual labels:  autocomplete
Tabnine Sublime
Tabnine Autocomplete AI: JavaScript, Python, TypeScript, PHP, C/C++, HTML/CSS, Go, Java, Ruby, C#, Rust, SQL, Bash, Kotlin, Julia, Lua, OCaml, Perl, Haskell, React
Stars: ✭ 144 (-92.84%)
Mutual labels:  autocomplete
Kube Fzf
Shell commands using kubectl and fzf for command-line fuzzy searching of Kubernetes Pods.
Stars: ✭ 153 (-92.4%)
Mutual labels:  kubectl

kube-shell

Build Status PyPI version PyPI pyversions License Gitter chat

Kube-shell: An integrated shell for working with the Kubernetes CLI

Under the hood kube-shell still calls kubectl. Kube-shell aims to provide ease-of-use of kubectl and increasing productivity.

kube-shell features

Auto Completion of Commands and Options with in-line documentation

Fish-Style Auto Suggestions

Command History

You can use up-arrow and down-arrow to walk through the history of commands executed. Also up-arrow partial string matching is possible. For e.g. enter 'kubectl get' and use up-arrow and down-arrow to browse through all kubectl get commands. You could also use CTRL+r to search from the history of commands.

Fuzzy Searching

Server Side Auto Completion

Context information

Details of current context from kubeconfig is always readily displayed on the bottom toolbar. By pressing F4 button you can switch between the clusters and using F5 can switch between namespaces.

vi editing mode

Press ESC you have all key bindings (w: next word, b: prev word) to move across the words.

Installation

The kube-shell requires python and pip to install. You can install the kube-shell using pip:

$ pip install kube-shell

Usage

After installing kube-shell through pip, just run kube-shell to bring up shell.

At the kube-shell command prompt you can run exit or press F10 to exit the shell. You can clear the screen by running clear command.

By default drop-down suggestion list also displays in-line documentation, you can turn on/off inline documnetation by pressing F4 button.

You can run any shell command by prefixing command with "!". For e.g. !ls would list from the current directory.

Under the hood

Other than generation of suggestions all heavy lifting is done by Python's prompt toolkit, Pygments libraries.

A GO program is used to generate kubectl's commands, subcommands, arguments, global options and local options in json format. Kube-shell uses generated json file to suggest commands, subcommands, options and args. For server side completion kube-shell uses client-python libray to fetch the resources.

Status

Kube-shell should be useful now. But given that its aim is to increase productivity and easy of use, it can be improved in a number of ways. If you have suggestions for improvements or new features, or run into a bug please open an issue here or chat in the Gitter.

Acknowledgement

Kube-shell is inspired by AWS Shell, SAWS and uses awesome Python prompt toolkit

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].