Interactive command line prompts with style!
<a href="https://github.com/erikgeiser/promptkit/releases/latest"><img alt="Release" src="https://img.shields.io/github/release/erikgeiser/promptkit.svg?style=for-the-badge"></a>
<a href="https://pkg.go.dev/github.com/erikgeiser/promptkit"><img alt="Go Doc" src="https://img.shields.io/badge/godoc-reference-blue.svg?style=for-the-badge"></a>
<a href="https://github.com/erikgeiser/promptkit/actions?workflow=Build"><img alt="GitHub Action: Build" src="https://img.shields.io/github/actions/workflow/status/erikgeiser/promptkit/build.yml?branch=main&style=for-the-badge"></a>
<a href="https://github.com/erikgeiser/promptkit/actions?workflow=Check"><img alt="GitHub Action: Check" src="https://img.shields.io/github/actions/workflow/status/erikgeiser/promptkit/check.yml?branch=main&style=for-the-badge"></a>
<a href="https://github.com/erikgeiser/promptkit/raw/v0.11.0/LICENSE.md"><img alt="Software License" src="https://img.shields.io/badge/license-MIT-brightgreen.svg?style=for-the-badge"></a>
<a href="https://goreportcard.com/report/github.com/erikgeiser/promptkit"><img alt="Go Report Card" src="https://goreportcard.com/badge/github.com/erikgeiser/promptkit?style=for-the-badge"></a>
Promptkit is a collection of common command line prompts for interactive programs. Each prompts comes with sensible defaults, re-mappable key bindings and many opportunities for heavy customization.
Disclaimers:
* The API of library is not yet stable. Expect significant changes in minor
versions before v1.0.0.
* Windows is currently not explicitly supported because input events are dropped
when running multiple prompts sequentially due to a bug in
bubbletea. See
https://github.com/charmbracelet/bubbletea/pull/140 and
https://github.com/charmbracelet/bubbletea/issues/121 for more information.
Selection with filter and pagination support: Example Code
The selection prompt is highly customizable and also works well with custom types which for example enables filtering only on custom fields: Example Code
A text input that supports editable default values: Example Code
Custom validation is also supported: Example Code
The text input can also be used in hidden mode for password prompts: Example Code
A confirmation prompt for binary questions: Example Code
The prompts in this library can also be used as bubbletea widgets: Example Code
This library is built on top of many great libraries, especially the following:
$ claude mcp add promptkit \
-- python -m otcore.mcp_server <graph>