Fuzzy autocomplete for commands you actually use.
brd<Tab> → bun run dev
Tabbr learns commands that finish successfully. Tab expands the best match, repeated Tab cycles through matches, and normal shell completion remains available.
- Tabbr only stores successfully completed commands that contain at least six characters.
- Completion requires a whitespace-free query of at least two characters.
- Commands not used within the last month are ignored.
Caution
The built-in exclusions are not exhaustive. Commands are stored unencrypted in a local SQLite database, so add exclusion patterns for anything you do not want stored.
With Homebrew:
brew install waradu/tap/tabbrOr with Go:
go install github.com/waradu/tabbr/cmd/tabbr@latestEnsure $(go env GOPATH)/bin is in your PATH.
Add to ~/.zshrc:
eval "$(tabbr init zsh)"Bash 4.4 or newer is required.
Add to ~/.bashrc:
eval "$(tabbr init bash)"PowerShell integration requires PowerShell 5.1 or newer and PSReadLine 2.0 or newer (should be installed by default).
Add to your PowerShell profile:
Invoke-Expression (& { (tabbr init pwsh | Out-String) })Print the adapter for zsh, bash, or pwsh.
Add a command manually.
Remove a stored command.
Print matching commands in ranked order.
List stored commands with their score and last-used time.
Print the absolute path to the local SQLite database.
Exclusions use case-insensitive glob patterns such as *--token=*, not regular expressions.
Built-in exclusions cover cd *, ls * and common sensitive values such as API_KEY and --api-key.
Add an exclusion and remove existing matching commands.
Remove an exclusion.
List all exclusion patterns.
Tabbr is licensed under the GNU General Public License v3.0 (GPL-3.0-only).