Quick Start
In this guide, we will start the Super daemon with a minimal configuration and use its REST API to dynamically register and start a “Hello World” web server.
Before adding programs: Read the Process Management Contract — managed apps must run in the foreground and must not daemonize or escape Super’s process group.
1. Minimal Configuration
Create a file named super.toml. We only need to configure the server port.
# super.toml
[server]
host = "127.0.0.1"
port = 9002
# OSS has no API auth. superd refuses non-loopback bind unless you opt in here
# or load the security plugin. Keep false for local-only deployments.
allow_insecure_public_bind = falseNote: OSS has no API authentication. The default bind is
127.0.0.1withallow_insecure_public_bind = false, sosuperdwill not start on a public address (e.g.0.0.0.0) unless you deliberately set that flag totrueor load thesecurityplugin — see Authentication. Use a firewall or reverse proxy if you expose the API another way.
If you use the repo’s example config, it also binds to port 9002 — keep CLI/API URLs in sync with your super.toml.
2. Start the Daemon (OSS)
Run the daemon in the foreground (default — required under systemd/Docker):
superdWithout systemd, you may detach with superd --daemon (writes $SUPER_ROOT/run/superd.pid by default). Control programs and stop the daemon the same way either way (super …, super shutdown).
Expected output includes Super Core starting... and the listen address.
3. Create Program via API
Open a new terminal. Use the CLI or curl to register a program:
super add --name demo-web \
--autostart python3 -m http.server 8080On success, the API returns a JSON array with the new program ID.
4. Verify Status
super listcurl http://127.0.0.1:8080
# Directory listing HTML from the managed Python server5. Web UI
Open http://127.0.0.1:9002.
OSS only: You will see a short HTML notice — there is no built-in dashboard. Manage processes with the super CLI or /api/v1/* (see Web UI).
With the ui plugin: The full dashboard (process list, logs, controls) is served from plugins/ui.{so,dylib}.
Next Steps
- API Reference — stop, restart, historical logs
- Configuration — persistent
super.toml - Dependency Orchestration
Appendix: Licensed Plugins 💎
Commercial features use the same OSS superd and super binaries — drop licensed .so / .dylib files under $SUPER_ROOT/plugins/ and add [license].key to conf/super.toml.
Prerequisites:
$SUPER_ROOT/
conf/super.toml # [license].key + auth_secret (when subscribed)
plugins/ # Authorized libraries from subscription package
run/ # Optional: superd.pid when using --daemon
data/ logs/Install licensed plugins (from your subscription delivery package):
# Copy official plugin libraries into the instance
cp /path/to/subscription/plugins/* "$SUPER_ROOT/plugins/"Restart superd after updating plugins or the subscription key.
API authentication (requires security plugin + auth_secret for startup):
# First-time bootstrap (no Access Tokens yet):
./target/release/super login <auth_secret>
./target/release/super token create admin --role admin
# Prefer sk-... for routine CLI use; optionally disable auth_secret from the Dashboard.
./target/release/super token listSee Authentication.