Documentation
Installation
Install Auto using one of the following options.
Option 1: Pre-built binary
- Go to the Releases page.
- Download the latest
auto.exeorAutoInstaller.*.exe. - Installer: run the installer and follow the setup wizard.
- Standalone: add
auto.exeto your system PATH.
Option 2: Build from source
See the Building section on GitHub for prerequisites and build commands (Make or CMake).
How to use
Step 1: Create a .autofile
Create a file named .autofile in your project directory and define command blocks. Each block has
a name and a list of commands.
# This is a comment
dev {
$ taskkill /im node.exe
- mongod.exe --dbpath C:\data\db
+ node server.js
+ python fileserver.py
+ set PORT=4000 && npm start --prefix client
}
Step 2: Run Auto
In a terminal, from the same directory (or a subdirectory) as your .autofile, run:
auto dev
To use a custom file (name must start with .):
auto -f .autofile dev
Command syntax
Each command line in a block starts with a mode symbol, then the command. Supported modes:
| Symbol | Mode | Description |
|---|---|---|
+ |
Normal | Runs in a normal cmd window. |
- |
Minimized | Runs in a minimized cmd window. |
$ |
Background | Runs in the background (no window). |
& |
Windows Terminal | Runs in Windows Terminal with a custom tab title: & "Title" command. |
Commands whose first token is wt are passed through unchanged to support full Windows Terminal
options. Arguments can be quoted; quoted parts are one argument and surrounding quotes are removed.
Example
production {
$ nginx.exe
$ redis-server.exe
+ node app.js
- pm2 monit
& "API" node server.js
& "Worker" npm run worker
}
Special blocks
Blocks whose name starts with . (dot) can be run by name like any other block, e.g.
auto .init:
.init {
+ echo "Initializing environment..."
+ npm install
}
Important notes
Running processes
- Do not run
autoagain while processes from the same.autofileare still running. - Some commands support only one instance; rerunning can cause errors.
- Stop existing processes before running
autoagain.
Best practices
- Use clear block names (e.g.
dev,production,test). - Add comments to document your automation.
- Group related commands in the same block.
- Use
$for services that don’t need interaction,-for monitoring tools.
VS Code extension
For syntax highlighting and better editing of .autofile in VS Code, install the autofile-extension. It highlights labels, operators (+, -,
$), and commands.