About Ahoy
Automate and organize your workflows, no matter what technology you use
Automate and organize your workflows, no matter what technology you use
Automate and organize your workflows, no matter what technology you use
A patch release that fixes a v3 regression in tab completion, and makes release downloads verifiable.
If you use a completion script written for Ahoy v2, please upgrade. In v3.0.0 and v3.0.1, pressing Tab after a command name could run that command.
Fixes
Tab completion no longer (accidentally) runs your commands.
193, reported and fixed by @hanoii in #194.
Completion scripts from the v2 (urfave/cli) era, including the bash script in our own docs, work by adding --generate-bash-completion to the words typed so far:
opts=$( ${COMP_WORDS[@]:0:$COMP_CWORD} --generate-bash-completion )
So ahoy deploy <TAB> runs ahoy deploy --generate-bash-completion. Since v3.0.0, Ahoy's own flags are only recognised before the command name. That meant the flag was passed to deploy as an ordinary argument, and deploy ran.
──────────────────────────────────────┬──────────────────┬───────
Typed │v3.0.1 │v3.0.2
──────────────────────────────────────┼──────────────────┼───────
ahoy foo <TAB> │runs foo │nothing
──────────────────────────────────────┼──────────────────┼───────
ahoy foo dis<TAB> │runs foo dis │nothing
──────────────────────────────────────┼──────────────────┼───────
ahoy bar <TAB> (bar imports baz and │prints help for │baz qux
qux) │bar │
──────────────────────────────────────┼──────────────────┼───────
ahoy bar ba<TAB> │prints help for │baz qux
│bar │
──────────────────────────────────────┴──────────────────┴───────
A --generate-bash-completion that comes last is now treated as a completion request. Ahoy lists the subcommands of the command you typed and runs nothing, as v2 did. Anywhere else in the arguments, it still reaches your command unchanged, so wrapped tools that take a flag of that name still receive it.
Cleaner completion from ahoy completion <shell>
The same PR fixes the completion scripts that ahoy completion bash|zsh|fish|powershell generates, when you complete the first word after ahoy:
- Each command is listed once, instead of twice.
- Hidden commands, such as complete and anything marked hide: true, are no longer suggested.
- Suggestions now match what you've typed. ahoy f<TAB> gives foo fo instead of the full command list.
- Aliases are still offered alongside command names. …
| Publisher | Ahoy |
|---|---|
| Version | 3.0.2 |
| Release date | 2026-09-25 |
| License | MIT |
| Installer type | portable |
| Architecture | x64, arm64 |
| Package ID | Ahoy.Ahoy |
winget install --id=Ahoy.Ahoy -ewinget upgrade --id=Ahoy.Ahoy -ewinget uninstall --id=Ahoy.Ahoy -eYes. Ahoy is free and open-source software released under the MIT license.
The latest version is 3.0.2, released on Sep 25, 2026.
The download button links to the official installer published on github.com, the same file Windows Package Manager installs. You can verify the downloaded file by comparing its SHA-256 checksum with 507fc33e081b5dfb8553d5bfec021b524f67331a31621004ff44fa717310d9e1.
Ahoy runs on Windows and is available for 64-bit (x64), ARM64 systems.
Open Settings › Apps › Installed apps, find Ahoy and select Uninstall. From the command line, run winget uninstall --id=Ahoy.Ahoy -e.