Installation
Install the tarski CLI, pin versions, keep it updated, and understand what runs locally versus in the cloud.
Supported platforms
The CLI ships for:
| Platform | Asset key |
|---|---|
| Linux x86_64 | linux-x86_64 |
| Linux arm64 | linux-arm64 |
| macOS (Apple silicon), signed and notarized | macos-arm64 |
| Windows x86_64 | windows-x86_64 |
Some preview releases ship under a scoped distribution; when a platform is intentionally omitted, the installer reports an explicit availability diagnostic naming the platform, version, and distribution scope — never a broken download.
Installing and updating
Install from a channel
The supported installer resolves your platform, verifies the bundle checksum, unpacks it,
and runs the bundle’s own install.sh:
curl -fsSL https://tarski.run/install.sh | sh
The default destination is the first writable directory among
/usr/local/bin, $HOME/.local/bin, and $HOME/bin. Override it without editing the
script:
curl -fsSL https://tarski.run/install.sh | \
TARSKI_INSTALL_DIR="$HOME/.local/bin" sh
The downloaded archive contains both the tarski binary and a bundle-local install.sh.
The hosted installer verifies the asset against the channel’s checksums.txt before
executing that script. It can also seed a workspace with the bundle’s opt-in workspace
variables; run curl -fsSL https://tarski.run/install.sh | sh -s -- --help for the
current installer options.
Releases publish signed, checksummed platform bundles plus channel metadata at
https://download.tarski.run/channels/<channel>.json. The older
download.getjacqos.com hostname remains a compatibility mirror, but new automation
should use download.tarski.run.
- Pin a version with the
TARSKI_VERSIONenvironment variable. - Select a channel with
TARSKI_CHANNEL(currentlypreview). - Update in place with
tarski self-update, which reads the channel’s asset table before constructing a download URL.
Releases are artifact-pinned and immutable: a tag’s assets never change. Defects get a new correction release rather than a mutated old one.
Available channels
The only populated channel today is preview. stable is intentionally absent while the
public contract is still on the preview release line, so
https://download.tarski.run/channels/stable.json returns 404 by design. Channel metadata
also records this as stable_channel_state: "absent-by-intent".
The hosted installer defaults to stable for long-term forward compatibility and, while
that state is explicitly absent-by-intent, selects preview. If a stable channel fails
for any other reason, installation fails rather than silently changing channels.
Corporate networks
The CLI uses your host platform’s certificate store plus built-in web roots. For private
CAs, add roots additively with the TARSKI_CA_BUNDLE environment variable or the
--ca-bundle flag. Standard HTTPS_PROXY, ALL_PROXY, and NO_PROXY variables are
honored, with an unconditional loopback bypass. There is no insecure-verification escape
hatch.
What runs where
Tarski’s public development path is cloud-first. Your files, editor, and terminal loop stay local — source discovery, manifest parsing, syntax and schema preflight, diff rendering, and evidence inspection all run on your machine. Protected semantic work — package admission, fixed-point evaluation, provenance construction, deterministic provider execution, and signed evidence — runs in Tarski Cloud or another accepted semantic authority (enterprise runtime, BYOC cell, or an entitled full local runtime).
Practically: tarski dev syncs your source bundle to a cloud dev environment by content
digest, while tarski test and tarski verify keep local ergonomics and return
authority-backed evidence. Output not backed by an authority receipt is labeled
non-semantic preflight or cached evidence — it never silently impersonates a current
pass.