Skip to content

Getting started

Install as a macOS service

bash
git clone https://github.com/walisayu/walis.git
cd walis-dev
sudo ./deploy/install.sh --user "$(whoami)" --port 11120

That publishes a self-contained binary to /usr/local/walis/releases/<timestamp>, builds the admin UI into the same release, and registers two launch daemons:

DaemonRuns asPurpose
com.spex.walisyour accountthe service itself
com.spex.walis-restarterrootwatches a trigger file and restarts the service

The service is a LaunchDaemon so it starts at boot, but the plist names a regular user — Walis runs arbitrary shell, and root is not the account you want that on.

Open http://127.0.0.1:11120.

Or run it from source

bash
dotnet run --project Source/Walis.Api --no-launch-profile -- --urls http://127.0.0.1:11126
npm --prefix Source/Walis.Admin run dev

Your first job

  1. Jobs → New job
  2. Give it a name and a working directory
  3. Either write shell directly, or build a flow out of actions
  4. Press Run

The log window shows each step separately: status, exit code, duration, and output that streams while the step is still running.

Turn on sign-in before exposing it

Walis executes arbitrary shell. Anyone who can reach the API can run commands as the service account.

  1. Create an account under Accounts
  2. Enable Require sign-in in Settings → Security
  3. Consider requiring one-time passwords as well

Only then put it behind a tunnel or reverse proxy.

Released under the MIT License.