← ClaudeAtlas

bash-scriptlisted

Generates production Bash scripts with a visual timeline UI, state-based interactive prompts, and strict error handling. Use when asked for "a human-facing shell tool", an interactive bash script, or a DevOps tool with framed terminal output. Do NOT use for a non-interactive automation, CI, or pipeline script, that is `bash-cli-script`.
erclx/canon · ★ 2 · AI & Automation · score 68
Install: claude install-skill erclx/canon
# Bash script Generate production-ready Bash scripts for DevOps and CLI workflows. Enforce strict formatting with a visual timeline UI and state-based interactivity. Load `${CLAUDE_SKILL_DIR}/references/patterns.md` for the timeline lifecycle, logging, interactive prompt, help-screen, and full-script code templates. `${CLAUDE_SKILL_DIR}` expands to this skill's own directory, so the path resolves from any project. Copy those definitions verbatim, keeping only the colors and functions the script actually uses. ## Guards - A request for a script with no human at the terminal stops and routes to `bash-cli-script`. CI jobs, cron entries, agent-run tasks, and any script whose output is consumed by a pipe render no timeline, so generating one costs the frame and returns nothing. ## Script setup - Start with `#!/usr/bin/env bash`, `set -e`, and `set -o pipefail`. - Bash 4+ features (namerefs, associative arrays) are allowed. - Implement a visual help screen via `show_help` if the script accepts arguments. - Do not rely on unset variables. Use `${VAR:-default}`. ## Visual timeline - Maintain a vertical timeline (`│`) from `┌` to `└` throughout all output. - Write all frame output (`┌`, `│`, `├`, `└`, log lines, prompts) to stderr via `>&2`. Write data (JSON, lists, piped values) to stdout. `--help` is the exception and prints to stdout. - Open the timeline once at the start of `main()` via `open_timeline "Title"`, before any logic, prompts, or checks. - Close the timeline via