REFERENCE

ASD Command Line Interface

Manage services, tunnels, and project automation with simple, consistent commands.

Service Control Tunnel Management Project Automation

Installation

$ curl -fsSL https://asd.host/install.sh | bash

This installs the ASD CLI and adds it to your PATH. Run asd --help to verify.

Flexible Syntax

Both command forms are valid and equivalent: asd caddy start = asd start caddy

Command Matrix

ServiceTunnel UpTunnel DownStart (local)Stop
caddy
Reverse proxy + path routing
--asd caddy startasd caddy stop
terminal
Web terminal (ttyd)
asd terminal start tunnel-asd terminal startasd terminal stop
code
VS Code in browser
asd code start tunnel-asd code startasd code stop
share
Tunnel hub server (share services)
--asd share startasd share stop

Services

caddy

Reverse proxy + path routing

Enables path-based routing on a single domain

start: asd caddy start

terminal

Web terminal (ttyd)

tunnel: asd terminal start tunnel
start: asd terminal start

code

VS Code in browser

tunnel: asd code start tunnel
start: asd code start

share

Tunnel hub server (share services)

Start/stop the local share hub server

start: asd share start

Network Management

asd net

Interactive network TUI

bash
$ asd net

Interactive TUI for managing all services and tunnels

Project Automation

asd up / asd down

Project automations from asd.yaml

Start project

bash
$ asd up           # Default environment
$ asd up --dev     # Development environment
$ asd up --staging # Staging environment
$ asd up --prod    # Production environment

Stop project

bash
$ asd down         # Stop and cleanup

Uses asd.yaml for project configuration. Flags: --dev, --staging, --prod

Configuration (asd.yaml)

Define services and automation tasks in your project root:

asd.yaml
# 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 build

network.services

Define services with their local addresses, tunnel prefixes, and URL paths.

automation

Define tasks that run with asd up --dev etc.

Frequently Asked Questions

What's the difference between up and start?

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.

Can I use both command syntaxes interchangeably?

Yes! Both 'asd caddy start' and 'asd start caddy' are equivalent. Use whichever feels more natural to you.

What environment flags are available for asd up?

You can use --dev, --staging, or --prod to run environment-specific automation tasks defined in your asd.yaml file.

How do I see all running services?

Run 'asd net' to open the interactive TUI showing all services, their status, and public URLs.

Related Tools

Explore the network TUI and dashboard.

Ready to get started?

Install the CLI and start managing your services.