#!/bin/bash # Bash completions for Claude Code automation scripts # Source this file: source ~/.claude/automation/completions.bash _claude_automation() { local cur="${COMP_WORDS[COMP_CWORD]}" local scripts="validate-setup quick-status backup restore clean memory-add memory-list" COMPREPLY=($(compgen -W "${scripts}" -- "${cur}")) } _claude_memory_add() { local cur="${COMP_WORDS[COMP_CWORD]}" local prev="${COMP_WORDS[COMP_CWORD-1]}" if [[ ${COMP_CWORD} -eq 1 ]]; then COMPREPLY=($(compgen -W "preference decision project fact auto" -- "${cur}")) fi } _claude_memory_list() { local cur="${COMP_WORDS[COMP_CWORD]}" COMPREPLY=($(compgen -W "preferences decisions projects facts --all" -- "${cur}")) } _claude_restore() { local cur="${COMP_WORDS[COMP_CWORD]}" local backup_dir="${HOME}/.claude/backups" if [[ -d "${backup_dir}" ]]; then local backups=$(ls -1 "${backup_dir}"/*.tar.gz 2>/dev/null | xargs -n1 basename) COMPREPLY=($(compgen -W "${backups}" -- "${cur}")) fi } # Register completions complete -F _claude_memory_add memory-add.py complete -F _claude_memory_list memory-list.py complete -F _claude_restore restore.sh # Alias completions for convenience alias claude-validate='~/.claude/automation/validate-setup.sh' alias claude-status='~/.claude/automation/quick-status.sh' alias claude-backup='~/.claude/automation/backup.sh' alias claude-restore='~/.claude/automation/restore.sh' alias claude-clean='~/.claude/automation/clean.sh' alias claude-memory-add='python3 ~/.claude/automation/memory-add.py' alias claude-memory-list='python3 ~/.claude/automation/memory-list.py' echo "Claude Code completions loaded. Available aliases:" echo " claude-validate, claude-status, claude-backup, claude-restore" echo " claude-clean, claude-memory-add, claude-memory-list"