start-command — Rust crate
Rust implementation of the start-command CLI. The binary is
called start and behaves like the $ command from the JavaScript package.
Installation
# From crates.io:
# From source:
Usage
See the project-wide README, docs/USAGE.md, docs/PIPES.md, and docs/EXAMPLES.md for the full user-facing guide and checked examples.
-h also prints usage. Labels persist across Docker resumes. New detached
containers support copy-free command handoff; legacy snapshots require capacity
preflight. Log uploads are private and sanitized; manual --no-sanitize opts out.
Sanitization runs the sensitive-data-sanitizer CLI of
@link-foundation/sensitive-data-sanitizer 0.12.2 or later (Node.js 22.13 or
later) from PATH or START_SENSITIVE_DATA_SANITIZER; --upload-log installs
it with Bun or npm when it is missing or older, and automatic uploads without a
current one are blocked.
Snapshot resumes take --snapshot-wait, --snapshot-disk-wait,
--remove-original-after, --snapshot-size-hint and --snapshot-prepare, and
exit 75 when they should be retried later; --cleanup <id> removes one
execution's containers and snapshot images without forcing.
Development
Releases
Rust releases are published to crates.io and tagged rust-v<version> in
GitHub Releases. The release title carries the [Rust] prefix, e.g.
[Rust] 0.14.0, so JS and Rust releases can be told apart at a glance.
- Release history: https://github.com/link-foundation/start/releases?q=%5BRust%5D
- Changelog fragments:
changelog.d/— each PR adds one fragment with abump: patch|minor|majorfrontmatter, which is collapsed into the consolidatedCHANGELOG.mdat release time.
License
Released into the public domain under the Unlicense.
Docker resource and recovery controls
Launch with --memory 64m, --memory-swap 64m, --memory-reservation 32m and --cpus 1, or use daemon
percentages and uniform ranges such as --memory '70%-80%'. Memory-swap defaults
to memory. Reservation is a soft cap and must be below the hard memory cap when
one is set. It accepts the same sizes and percentages, is shown in --status,
and survives resumes. --cpu-penalty enables delayed caps and reports state through status.
Manual --resume <id> --memory 128m updates before starting;
--on-kill-resume-memory changes memory only after a fresh qualifying OOM.
See the full resource and recovery guide
and incident research.