Skip to content

Downloads: command-line tools and the kernel ​

The desktop app is on the home page. This page lists the standalone binaries: the wish CLI, the wish-core kernel and the wsh remote shell. Each is published under https://developer.wishtech.fi/downloads/<tool>/ with a latest.json manifest that names the current version, the download base URL and a sha256 per file.

One-line install ​

The installer detects your OS and architecture, reads the manifest, verifies the checksum and installs to ~/.local/bin. No sudo, no toolchain. Re-running upgrades in place.

sh
curl -fsSL https://developer.wishtech.fi/install.sh | sh                  # wish CLI
curl -fsSL https://developer.wishtech.fi/install.sh | sh -s -- wish-core  # kernel
curl -fsSL https://developer.wishtech.fi/install.sh | sh -s -- wsh        # remote shell (+ wcp)

WISH_INSTALL_DIR overrides the target directory.

wish (CLI) ​

Command-line interface to a local wish-core: identities, contacts, app grants, connections. Usage on the wish-cli page.

  • Manifest: https://developer.wishtech.fi/downloads/wish-cli/latest.json
  • Binaries: wish-cli-<arch>-<os> for arm64-darwin, x64-darwin, x64-linux, arm64-linux, armv6-linux (Raspberry Pi Zero / 1), and wish-cli-x64-windows.exe. Rename to wish (or wish.exe) after a manual download.

wish-core (kernel) ​

The P2P kernel as a standalone binary, for headless hosts and servers. The desktop app embeds the same kernel; a standalone kernel is only needed where no desktop app runs.

  • Stable channel (tagged releases): https://developer.wishtech.fi/downloads/wish-core/stable/latest.json
  • Binaries: wish-core-<arch>-<os> for arm64-darwin, x64-darwin, x64-linux, arm64-linux, armv6-linux, each also as -debug (symbols kept). No Windows binary: on Windows the kernel runs inside the Wish app.
  • A test channel at downloads/wish-core/test/latest.json carries builds of arbitrary commits, named by short SHA, for the test fleet.

Run it from the directory that should hold its state (it writes its identity database and config into the current directory), with the app socket the CLI expects:

sh
mkdir -p ~/.wish && cd ~/.wish
wish-core -s -r -t unix:$HOME/.wish/core.sock   # accept connections, use the relay

wish-core -h lists every flag (TCP app transport, DHT, STUN, local discovery).

wsh and wcp (remote shell) ​

SSH-like shell, file copy and TCP port forwarding over Wish connections, with contacts and app grants as the only access control.

  • Manifest: https://developer.wishtech.fi/downloads/wish-shell/latest.json
  • Binaries: wish-shell-<arch>-<os> for arm64-darwin, x64-darwin, x64-linux, arm64-linux, armv6-linux, and wish-shell-x64-windows.exe. wcp is the same binary; the installer creates it as a symlink next to wsh.
sh
wsh serve                        # on the machine you want to reach
wsh peers                        # from another: who is reachable
wsh <peer>                       # interactive shell
wsh <peer> <cmd> [args..]        # run a command
wcp <peer>:<path> <local>        # copy files either way
wsh forward <peer> <lport>[:host:port]   # like ssh -L

Verifying a download ​

Every manifest lists a sha256 per file:

sh
curl -s https://developer.wishtech.fi/downloads/wish-cli/latest.json | jq .
sha256sum wish-cli-x64-linux