The API-First, Lightweight Process Orchestrator for the Edge.
Super is a modern replacement for tools like Supervisor or PM2, built with Rust. It is designed for edge computing, cloud-edge collaboration, and high-performance servers.
Documentation: https://super.docs.sconts.com/docs/
- Single binary — Rust
superdprocess manager; TOML or REST config; CLI, HTTP API, and an embedded Dashboard - Ordered orchestration —
depends_on+ health gates for startup; group/batch start·stop·restart follow dependency order (reverse on stop); declarative stacks - Migration import —
super import supervisor <conf>turns an existing Supervisor INI into a Super stack (preview / dry-run / collision modes); see the Supervisor migration guide - Multi-process programs —
numprocsstarts N workers from one definition (process_name,SUPER_PROCESS_NUM/SUPER_PROCESS_TOTAL); not Node cluster / zero-downtime reload - Lifecycle hooks —
pre_start,post_start,post_stop, and global event hooks - Observability — WebSocket logs, historical logs API, system metrics
- Auto-recovery — Supervisor-compatible
autorestart,exitcodes,startsecs
Licensed under the MIT License.
OSS host CLI — deploy → create demo-web → list / info / logs / restart. Full walkthrough: Quick Start docs.
curl -fsSL https://github.com/schiplat/super/releases/latest/download/install.sh | shInstalls superd and super, creates a minimal instance root (/opt/super or ~/.super), and enables an OS service (systemd on Linux, launchd on macOS, rc.d on FreeBSD) with boot start. Verifies the SHA-256 of the release archive.
Options: --version, --prefix, --root, --user / --system, --no-service, --no-start, --no-init, --no-sudo.
Bleeding-edge (may differ from the latest tagged binaries): curl -fsSL https://raw.githubusercontent.com/schiplat/super/master/install.sh | sh.
Docker image (linux/amd64, linux/arm64). This is the supported path on Windows (Docker Desktop or WSL2) — there is no native superd.exe release. The image binds 0.0.0.0 with placeholder auth_secret = "CHANGE-ME-BEFORE-EXPOSE" (replace before publishing beyond the host); publish only to loopback on the host unless you intentionally expose the API:
docker pull schiplat/super:latest
docker run --rm -p 127.0.0.1:9002:9002 schiplat/super:latestWith a custom config directory:
docker run --rm -p 127.0.0.1:9002:9002 -v ./packaging/docker/conf:/app/super/conf schiplat/super:latestRequires Rust 1.85+ (stable):
git clone https://github.com/schiplat/super.git && cd super
make build
./target/release/superd # foreground (default; use under systemd/Docker)
# ./target/release/superd --daemon # optional Unix self-daemonize without systemdsuper add --name redis --autostart /usr/bin/redis-server
super list
super logs <id> --tail
# From Supervisor: preview then import
# super import supervisor /etc/supervisor/conf.d/app.conf --dry-run
super shutdown # stop superd (foreground or --daemon)Diagnose a setup (config, daemon connectivity, license, daemon/pidfile hints) in one shot:
super doctorSee Installation for install.sh (systemd / launchd / rc.d), manual units (superd --foreground), and optional --daemon.
Super 1.x is production-ready. Every release is held to the same public contract:
- Stability — no known panic paths in the daemon on malformed config or API input; graceful degradation when a plugin fails.
- Upgrade safety — OTA updates are transactional (backup → verify → commit/rollback) and covered by integration tests.
- Security defaults — fail-closed network binding, signed-plugin verification, and no secrets in API/CLI output;
cargo auditclean on release branches. - Operability —
super doctordiagnoses a deployment end-to-end; logs and metrics are sufficient to triage without a debugger. - API stability — the REST API and the plugin C ABI (
PLUGIN_API_VERSION) are versioned; breaking changes ship only with a major bump and migration notes.
Notable changes land in the changelog.
| Topic | Link |
|---|---|
| Getting started | Docs |
| Configuration | Config reference |
| API | API reference |
| Changelog | Changelog |
Want your AI assistant (Cursor, Claude, Copilot, …) to configure and troubleshoot Super correctly? Point it at docs/SKILL.md (e.g. from CLAUDE.md, .cursor/rules, or pasted into the prompt). It covers everyday commands, the super.toml / stack JSON schema, cron & health semantics, and common failure modes — and helps avoid the usual supervisor/PM2 semantic mix-ups.
| Path | Role |
|---|---|
common/ core/ cli/ superd/ |
Cargo workspace crates (superd + super CLI) |
packaging/docker/ |
Official image Dockerfile + baked-in conf (was dockerbuild/) |
packaging/contrib/ |
Default super.toml + systemd / launchd / rc.d templates (copied into release tarballs as contrib/) |
examples/demo/ |
Sample SUPER_ROOT-style conf and stack files |
tools/benchmark/ |
Peer benchmark suite |
tools/scripts/ |
Install smoke + OTA e2e helpers |
docs/ |
Public Hugo documentation site |
install.sh |
Release install script (kept at repo root for stable download URLs) |
See CONTRIBUTING.md. Security issues: SECURITY.md. Community standards: CODE_OF_CONDUCT.md.
