<div align="center"
<picture <source srcset="img/rect/ahoy-logo-rect-v2.webp" type="image/webp" <img src="img/rect/ahoy-logo-rect-v2.svg" alt="Ahoy logo" width="300" </picture
<h1Ahoy!</h1
<h3Automate and organise your workflows, no matter what technology you use.</h3
</div
Ahoy is a command line tool that gives each of your projects its own CLI app with zero code and dependencies.
Write your commands in a YAML file and then Ahoy gives you lots of features like:
- a command listing
- per-command help text
- command tab completion
- run commands from any subdirectory
Ahoy makes it easy to create aliases and templates for commands that are useful. It was created to help with running interactive commands within Docker containers, but it's just as useful for local commands, commands over ssh, or really anything that could be run from the command line in a single clean interface.
Examples
Say you want to import a MySQL database running in docker-compose using another container called cli. The command could look like this:
docker exec -i $(docker-compose ps -q cli) bash -c 'mysql -u$DBENVMYSQLUSER -p$DBENVMYSQLPASSWORD -h$DBPORT3306TCPADDR $DBENVMYSQLDATABASE' < some-database.sql
With Ahoy, you can turn this into:
ahoy mysql-import < some-database.sql
Quick Start
Get started immediately with our comprehensive examples file:
# Create a new project with example commands
ahoy init
# Or download the examples file directly
curl -o .ahoy.yml https://raw.githubusercontent.com/ahoy-cli/ahoy/master/examples/examples.ahoy.ymlThe examples file includes 30+ usable example commands for: