{"id":13449397,"url":"https://github.com/cloudnativelabs/kube-shell","last_synced_at":"2025-05-14T20:09:09.635Z","repository":{"id":39262427,"uuid":"94403198","full_name":"cloudnativelabs/kube-shell","owner":"cloudnativelabs","description":"Kubernetes shell: An integrated shell for working with the Kubernetes","archived":false,"fork":false,"pushed_at":"2022-11-02T12:34:48.000Z","size":88,"stargazers_count":2398,"open_issues_count":68,"forks_count":174,"subscribers_count":44,"default_branch":"master","last_synced_at":"2025-04-13T17:46:44.388Z","etag":null,"topics":["autocomplete","kube-shell","kubectl","kubernetes","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cloudnativelabs.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-06-15T05:30:19.000Z","updated_at":"2025-04-11T09:26:35.000Z","dependencies_parsed_at":"2022-07-10T01:39:24.145Z","dependency_job_id":null,"html_url":"https://github.com/cloudnativelabs/kube-shell","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudnativelabs%2Fkube-shell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudnativelabs%2Fkube-shell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudnativelabs%2Fkube-shell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudnativelabs%2Fkube-shell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cloudnativelabs","download_url":"https://codeload.github.com/cloudnativelabs/kube-shell/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254219374,"owners_count":22034397,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["autocomplete","kube-shell","kubectl","kubernetes","python"],"created_at":"2024-07-31T06:00:36.982Z","updated_at":"2025-05-14T20:09:09.617Z","avatar_url":"https://github.com/cloudnativelabs.png","language":"Python","readme":"kube-shell\n==============\n\n|Build Status| |PyPI version| |PyPI pyversions| |License| |Gitter chat|\n\nKube-shell: An integrated shell for working with the Kubernetes CLI\n\nUnder the hood kube-shell still calls kubectl. Kube-shell aims to\nprovide ease-of-use of kubectl and increasing productivity.\n\nkube-shell features\n-------------------\n\nAuto Completion of Commands and Options with in-line documentation\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n.. figure:: http://i.imgur.com/dfelkKr.gif\n   :alt: \n\nFish-Style Auto Suggestions\n^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n.. figure:: http://i.imgur.com/7VciOuR.png\n   :alt: \n\nCommand History\n^^^^^^^^^^^^^^^\n\nYou can use up-arrow and down-arrow to walk through the history of\ncommands executed. Also up-arrow partial string matching is possible.\nFor e.g. enter 'kubectl get' and use up-arrow and down-arrow to browse\nthrough all kubectl get commands. You could also use CTRL+r to search\nfrom the history of commands.\n\n.. figure:: http://i.imgur.com/xsIM3QV.png\n   :alt: \n\nFuzzy Searching\n^^^^^^^^^^^^^^^\n\n.. figure:: http://i.imgur.com/tW9oAUO.png\n   :alt: \n\nServer Side Auto Completion\n^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n.. figure:: http://i.imgur.com/RAfHXjx.gif\n   :alt: \n\nContext information\n^^^^^^^^^^^^^^^^^^^\n\nDetails of current context from kubeconfig is always readily displayed\non the bottom toolbar. By pressing F4 button you can switch between the\nclusters and using F5 can switch between namespaces.\n\n.. figure:: http://i.imgur.com/MJLgcj3.png\n   :alt: \n\nvi editing mode\n^^^^^^^^^^^^^^^\n\nPress ESC you have all key bindings (w: next word, b: prev word) to move\nacross the words.\n\nInstallation\n------------\n\nThe kube-shell requires python and\n`pip \u003chttps://pypi.python.org/pypi/pip\u003e`__ to install. You can\ninstall the kube-shell using ``pip``:\n\n.. code:: bash\n\n        $ pip install kube-shell\n\nUsage\n-----\n\nAfter installing kube-shell through pip, just run kube-shell to bring up\nshell.\n\nAt the kube-shell command prompt you can run exit or press F10 to exit\nthe shell. You can clear the screen by running clear command.\n\nBy default drop-down suggestion list also displays in-line\ndocumentation, you can turn on/off inline documnetation by pressing F4\nbutton.\n\nYou can run any shell command by prefixing command with \"!\". For e.g.\n!ls would list from the current directory.\n\nUnder the hood\n--------------\n\nOther than generation of suggestions all heavy lifting is done by\nPython's `prompt\ntoolkit \u003chttps://github.com/jonathanslenders/python-prompt-toolkit\u003e`__,\n`Pygments \u003chttp://pygments.org\u003e`__ libraries.\n\nA GO `program \u003cmisc/python_eats_cobra.go\u003e`__ is used to generate\nkubectl's commands, subcommands, arguments, global options and local\noptions in `json \u003ckubeshell/data/cli.json\u003e`__ format. Kube-shell uses\ngenerated json file to suggest commands, subcommands, options and args.\nFor server side completion kube-shell uses\n`client-python \u003chttps://github.com/kubernetes-incubator/client-python\u003e`__\nlibray to fetch the resources.\n\nStatus\n------\n\nKube-shell should be useful now. But given that its aim is to increase\nproductivity and easy of use, it can be improved in a number of ways. If\nyou have suggestions for improvements or new features, or run into a bug\nplease open an issue\n`here \u003chttps://github.com/cloudnativelabs/kube-shell/issues\u003e`__ or chat\nin the `Gitter \u003chttps://gitter.im/kube-shell/Lobby\u003e`__.\n\nAcknowledgement\n---------------\n\nKube-shell is inspired by `AWS\nShell \u003chttps://github.com/awslabs/aws-shell\u003e`__,\n`SAWS \u003chttps://github.com/donnemartin/saws\u003e`__ and uses awesome Python\n`prompt\ntoolkit \u003chttps://github.com/jonathanslenders/python-prompt-toolkit\u003e`__\n\n.. |Build Status| image:: https://travis-ci.org/cloudnativelabs/kube-shell.svg?branch=master\n   :target: https://travis-ci.org/cloudnativelabs/kube-shell\n.. |PyPI version| image:: https://badge.fury.io/py/kube-shell.svg\n   :target: https://badge.fury.io/py/kube-shell\n.. |PyPI pyversions| image:: https://img.shields.io/pypi/pyversions/ansicolortags.svg\n   :target: https://pypi.python.org/pypi/kube-shell/\n.. |License| image:: http://img.shields.io/:license-apache-blue.svg\n   :target: http://www.apache.org/licenses/LICENSE-2.0.html\n.. |Gitter chat| image:: http://badges.gitter.im/kube-shell/Lobby.svg\n   :target: https://gitter.im/kube-shell/Lobby\n","funding_links":[],"categories":["Python","Command-line Tools","API/CLI adaptors","资源列表","Tools and Libraries","HarmonyOS","🏗相关开源项目","命令行工具","Command-line Tools [🔝](#readme)","Awesome Python","Developer Workspaces \u0026 Productivity"],"sub_categories":["[Jenkins](#jenkins)","命令行工具","Command Line Tools","Windows Manager","有用的CLI工具","Command-line Tools"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudnativelabs%2Fkube-shell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcloudnativelabs%2Fkube-shell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudnativelabs%2Fkube-shell/lists"}