clack-prompts

Guide Node.js CLI development with interactive terminal prompts and cancel handling.

7|4|Updated Mar 2, 2026
One-click install
npx skills add https://github.com/nklisch/skills --skill clack-prompts-nklisch
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: clack-prompts
Source: https://github.com/nklisch/skills/tree/main/.agents/skills/clack-prompts
Command: npx skills add https://github.com/nklisch/skills --skill clack-prompts-nklisch

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Provides a concise reference and operational guidance for building consistent, user-friendly interactive terminal prompts and UI flows so developers can avoid common cancellation, lifecycle, and UX pitfalls when creating CLIs.

Core Features & Use Cases

  • Prompt types: text input, masked password, confirm, single select, multiselect, grouped selection, and key-based quick selection.
  • Flow control: grouped wizards that collect typed results, global cancel handling with isCancel/cancel patterns, and lifecycle hooks (intro/outro).
  • UX primitives: spinners for progress, styled inline logging, boxed notes, and a task runner for sequential async tasks.
  • Agent-mode: non-interactive plain-text output alternative for automated or CI-driven usage.
  • Use Case: Ideal for installer workflows, interactive project scaffolding, configuration wizards, and any CLI that must handle cancellation and provide clear progress and logs.

Quick Start

Use the clack-prompts skill to interactively ask for a project name, handle cancellation safely, and confirm installation choices.

Frequently Asked Questions about clack-prompts

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build interactive terminal prompts for a Node.js CLI?

You build interactive terminal prompts for a Node.js CLI by applying this skill to implement text inputs, selection menus, and confirmation dialogs with robust cancellation handling and lifecycle hooks.

What is the best way to handle cancellation in terminal UI wizards?

Handling cancellation in terminal UI wizards requires applying global cancel patterns and isCancel checks to safely abort installer flows, narrow typed results, and prevent incomplete configuration tasks.

How do I add a spinner and progress logging to a CLI installer?

You add a spinner and progress logging to a CLI installer by utilizing UX primitives that control spinner sequences, display styled inline logs, and show boxed notes during async task execution.

Can I use terminal prompts for non-interactive CI environments?

You can use terminal prompts for non-interactive CI environments by enabling agent-mode, which provides a plain-text output alternative for automated usage without requiring interactive user input.

Does this terminal UI approach support grouped selection and multi-step workflows?

This terminal UI approach supports grouped selection and multi-step workflows by orchestrating grouped wizards that collect typed results, sequence async tasks, and manage intro and outro lifecycle hooks.