Automate Git commit workflows with interactive prompts and confirmations.
Build file selection dialogs into deployment or backup scripts.
Create multi-step guided workflows that ask users for input at each stage.
Add loading spinners and progress feedback to long-running shell commands.
Gum is a command-line tool written in Go that lets you add interactive, visually polished elements to plain shell scripts without needing to know Go. Think of a normal shell script as a set of instructions a computer follows, the problem is those scripts are usually just plain text with no way to ask the user for input in a friendly way, or show progress nicely. Gum solves this by giving you simple commands you can drop into any Bash or shell script to add things like text prompts, dropdown choice menus, confirmation dialogs, file pickers, loading spinners, and scrollable text viewers. The way it works is simple: each interactive element is its own subcommand (for example, "gum input" to collect typed text, "gum choose" to present a menu, "gum confirm" to ask yes or no). These commands print their result to standard output, so you can capture the user's answer in a variable and use it later in your script. You control the look and feel through command flags or environment variables, changing colors, borders, widths, and prompts without writing any interface code yourself. You would use Gum when you want to build a script that guides someone through a multi-step task, like automating a Git commit workflow, selecting files to process, or confirming a destructive action, and you want the result to feel polished rather than raw. It runs in the terminal, so it suits developers, system administrators, and power users who live in the command line. It is written in Go and builds on the Bubbles and Lip Gloss libraries from the same team.
Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.