#!/usr/bin/env bash # Generate bash/zsh completion script for yargs-based CLI set -euo pipefail CLI_NAME="${1:-mycli}" OUTPUT_FILE="${2:-${CLI_NAME}-completion.sh}" cat > "$OUTPUT_FILE" </dev/null | while read -r line; do COMPREPLY+=("\$line") done return 0 } complete -F _${CLI_NAME}_completions ${CLI_NAME} EOF chmod +x "$OUTPUT_FILE" echo "✅ Completion script generated: $OUTPUT_FILE" echo "" echo "To enable completion, add this to your ~/.bashrc or ~/.zshrc:" echo " source $(pwd)/$OUTPUT_FILE"