bash-completions
Instructions for adding to bash auto completions in the AutomateLinux project.
Installation
Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.
View source ↗GuidesSkill instructions
Bash Auto-Completions
This project uses a modular system for bash auto-completions. Each major command has its own completion script located in ./terminal/completions/.
1. Create the Completion Script
Create a new .bash file in the ./terminal/completions/ directory.
Basic Template
_my_command_completion() {
local cur prev
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
# Define words to complete
local opts="start stop restart status"
if [[ ${cur} == * ]] ; then
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
fi
}
complete -F _my_command_completion my_command
2. Register the Script
All completion scripts must be explicitly sourced in ./terminal/completions/completion.sh to be active in the terminal.
Add a line to source your new file:
# In ./terminal/completions/completion.sh
. $(theRealPath my_new_completion.bash)
[!NOTE] The
theRealPathutility ensures the script is sourced correctly regardless of the current working directory.
3. Apply Changes
To see your new completions in action, either open a new terminal or source your bashrc:
sb # Shorthand for sourcing ~/.bashrc
Existing Examples
For more complex logic (like handling sub-commands or dynamic arguments), refer to:
-
daemon.bash: Handles
danddaemoncommands. - cd.bash: Handles directory history navigation.
Examples
Read the usage examples in the source repository.
View source ↗Source history
- Indexed on
- 2026-01-20
- Index updated
- 2026-01-26
- Branch
- main
Index and sync dates describe this directory. View the source repository for code history.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!