Documentation

Commands

Every OwnCI command and its flags. Global flags: --data-dir and -v/--verbose.

Reference

CommandWhat it does
ownci version [--json]OwnCI version, commit, date, and the runner version when set up.
ownci doctor [--json]Health checks: platform, user, data directory, ICU, Docker, isolation. It changes nothing except creating the data directory if it is missing. Exits with code 3 if one fails.
ownci setup --repo owner/nameDownload and verify the pinned runner, register it with the label ownci plus any --labels (never GitHub’s default labels), and install the isolation settings and cleanup hook. --repo takes owner/name or the repository URL; once set up, it defaults to the configured repository. Flags: --name, --labels a,b (up to 10 extra labels; GitHub’s default labels such as self-hosted, linux and x64, and hosted-runner labels ubuntu-*, windows-* and macos-*, are refused; default: keep the current ones), --mode host|container-runner (default: keep the current mode, or host), --image (container-runner mode), --force (re-register in place, also to switch modes or to replace a runner that could not self-update; refused while the runner runs), --allow-public-repo, --dry-run, --download-only.
ownci start [--detach]Re-assert isolation, clean up leftovers and start the runner under supervision (restarts on crashes with backoff; in container-runner mode a fresh container per job). --wait sets how long --detach waits for “listening” (default 60 s); --image overrides the runner image for this session (container-runner mode).
ownci stop [--force]Gracefully stop the runner; a running job is cancelled. Registration and files are kept. --timeout defaults to 45 s (75 s in container-runner mode); --force kills the runner if it has not stopped by then.
ownci status [--remote] [--json]What is actually true: installed, registered, mode, process, runner state, last job, isolation, Docker, last error. --remote also asks GitHub.
ownci logs [--source runner|ownci|supervisor|diag] [-n N] [-f]Tail OwnCI’s and the runner’s logs, with secrets redacted. Defaults: --source runner, -n 100.
ownci uninstall [--unregister] [--purge] [--local-only] [--yes] [--name n]Stop the runner and, optionally, remove the GitHub registration and OwnCI’s files. Without flags it only stops and explains what is left. With no runner set up, --purge still removes the data directory. The ownci binary is never deleted; after a purge the summary prints the rm command.

Global flags

  • --data-dir: where OwnCI keeps its runner and state. Without it: $OWNCI_DATA_DIR, then $XDG_DATA_HOME/ownci, then ~/.local/share/ownci.
  • -v, --verbose: more detail in OwnCI’s output.