Skip to content

Installation

Day Shift is distributed through versioned release assets on tnsds.tech. The website owns archives, installers, manifests, checksums, and release notes; this page explains how to use those assets safely.

  • Install system Node.js >=20.0.0 and confirm it with node --version before changing an installation.
  • Choose the macOS/Linux archive for a POSIX shell or the Windows archive for PowerShell. Both x64 and arm64 release assets are supported when listed for the release.
  • Extract the release into a user-owned directory and run its installer from the extracted archive root.

Day Shift does not currently use public npm publication as an installation channel. Do not substitute npm install, npx, or pnpm dlx for the website-owned release archive and installer flow.

Use an exact /downloads/<version>/ release when recording automation or review evidence. The latest path is convenient for discovery, but it is mutable: resolve it to an exact version before pinning a command or artifact.

Download the archive, platform installer, release manifest, checksum file, and release notes from the same exact versioned directory. Check that the manifest names the intended platform archive and required Node.js version, then verify the archive against the published checksum. Stop before running an installer when versions, filenames, or checksums disagree.

The current release assets and exact paths are listed on the downloads page.

Review the downloaded installer before execution. On macOS or Linux, run the release’s install.sh; on Windows, run install.ps1. The installers use a user-local destination and validate prerequisites before changing the existing installation. Follow the destination and PATH guidance printed by the script.

After installation, open a new shell if necessary and verify both command resolution and the installed release:

Terminal window
command -v day-shift # POSIX
day-shift --version
day-shift about
day-shift --help

In PowerShell, use Get-Command day-shift in place of command -v day-shift.

Download and verify a new exact release, extract it separately, and repeat its platform installer. The installer stages the new payload before switching the current installation. A failure before that switch leaves the previous working installation in place; fix the reported prerequisite, permission, or lock problem and retry from the verified archive.

An executable upgrade and a workspace metadata migration are separate operations. If a command reports an incompatible or partially upgraded workspace, diagnose first and preview the complete migration before authorizing writes:

Terminal window
day-shift doctor
day-shift workspace migrate --target-schema-version <supported-version> --dry-run

Review the preview and preserve user-owned customization. Apply only the complete supported migration with its explicit confirmation token; do not manually move or delete .day-shift files as an upgrade shortcut.

The day-shift version family manages locally installed Day Shift package sources. It is separate from the website installer and does not turn public package registries into a supported distribution channel.

Start with read-only inspection:

Terminal window
day-shift version list
day-shift version current
day-shift version doctor
day-shift version alias list
day-shift version check <exact-version> --network

version check performs a network availability check only when --network explicitly approves it. To add a verified local archive or unpacked package, assert its exact version before the host-state write:

Terminal window
day-shift version install --from <local-archive-or-package-root> --assert-version <exact-version>

Selection commands mutate different scopes:

Terminal window
day-shift version use <exact-version> # global default
day-shift version pin <exact-version> # repository pin
day-shift version alias set default <exact-version> # local alias

Use exact installed versions for durable automation. Inspect aliases and the effective current selection after changes. Uninstall is also a host-state mutation: prefer day-shift version uninstall <exact-version> --replace-with <installed-version> when selectors still reference the version being removed. --confirm-selected-removal permits removal without replacement and should be reserved for an intentional broken-selection recovery.

Use the least-mutating step that addresses the failure:

Symptom Safe first response Mutation boundary
Node.js is missing or too old Run node --version; install Node.js >=20.0.0 Changes the system runtime outside Day Shift
Archive, manifest, or checksum differs Stop and download all assets again from one exact release No Day Shift state write
day-shift is not found Run the extracted launcher or installed absolute path, inspect PATH, and open a new shell Shell-profile edits are user-controlled
Installer reports permissions, locks, or interrupted staging Keep the prior current install, fix the cause, remove only the reported staging directory if instructed, and retry Do not delete the working install first
Managed selection is missing or corrupt Run day-shift version doctor, then repair the named alias, pin, or installed package install, use, pin, alias writes, and uninstall change host or repository state
Workspace is incompatible or partially upgraded Run day-shift doctor, then workspace migrate ... --dry-run Migration apply requires explicit confirmation and may write workspace metadata

Manual deletion is a last-resort uninstall action, not routine repair. Back up user-owned state, confirm the exact installation directory and command shim, and never delete repository workspace customization to repair the executable.

  • Run day-shift agent in a Day Shift repository to see the automation-agent contract.
  • If you have a signed license file, continue with license management.
  • If the command is missing or verification fails, use troubleshooting and include the exact release version, platform archive name, day-shift --version, day-shift about, and installer error in a support handoff.

Release delivery, pricing, purchases, and license recovery remain website-owned responsibilities.