Manage services, tunnels, and project automation with simple, consistent commands.
$ curl -sSL https://install.asd.host | bashThis installs the ASD CLI and adds it to your PATH. Run asd --help to verify.
Both command forms are valid and equivalent: asd caddy start = asd start caddy
| Service | Tunnel Up | Tunnel Down | Start (local) | Stop |
|---|---|---|---|---|
caddy Reverse proxy + path routing | - | - | asd caddy start | asd caddy stop |
terminal Web terminal (ttyd) | asd tunnel terminal up | asd tunnel terminal down | asd terminal start | asd terminal stop |
code VS Code in browser | asd tunnel code up | asd tunnel code down | asd code start | asd code stop |
share Shareable public links | asd tunnel share up | asd tunnel share down | asd share start | asd share stop |
Reverse proxy + path routing
Enables path-based routing on a single domain
asd caddy startWeb terminal (ttyd)
asd tunnel terminal upasd terminal startVS Code in browser
asd tunnel code upasd code startShareable public links
Displays public URLs for all exposed services
asd tunnel share upasd share startInteractive network TUI
$ asd netInteractive TUI for managing all services and tunnels
Project automations from asd.yaml
$ asd up # Default environment
$ asd up --dev # Development environment
$ asd up --staging # Staging environment
$ asd up --prod # Production environment$ asd down # Stop and cleanupUses asd.yaml for project configuration. Flags: --dev, --staging, --prod
Define services and automation tasks in your project root:
# asd.yaml
network:
services:
app:
dial: "127.0.0.1:3000"
tunnelPrefix: "myapp"
path: "/"
api:
dial: "127.0.0.1:4000"
tunnelPrefix: "myapp"
path: "/api"
automation:
dev:
- npm run dev
test:
- npm run test
build:
- npm run buildDefine services with their local addresses, tunnel prefixes, and URL paths.
Define tasks that run with asd up --dev etc.
Both start a service, but 'up' also exposes it via tunnel for external access. 'start' runs the service locally only. Use 'up' when you need to share or access remotely, 'start' for local-only development.
Yes! Both 'asd caddy start' and 'asd start caddy' are equivalent. Use whichever feels more natural to you.
You can use --dev, --staging, or --prod to run environment-specific automation tasks defined in your asd.yaml file.
Run 'asd net' to open the interactive TUI showing all services, their status, and public URLs.
Install the CLI and start managing your services.