Out Plane

Install

Install the CLI, keep it current, and pin a version when a pipeline needs one.

The CLI is a single static binary. There is no runtime to install with it and nothing it downloads afterwards.

curl -fsSL https://outplane.com/install.sh | sh

The script works out which binary this machine needs, downloads it with the release's own checksums, verifies it, and puts it in /usr/local/bin when that is writable and ~/.local/bin when it is not. It never asks for a password and writes nothing outside the install directory.

It also installs the agent skill into any coding tool it finds, so your agent knows how to use Out Plane. Set OUTPLANE_SKIP_SKILLS=1 to leave your editor's configuration alone.

If your tools already arrive through Node, npm i -g outplane works here too.

curl -fsSL https://outplane.com/install.sh | sh

The script works out which binary this machine needs, downloads it with the release's own checksums, verifies it, and puts it in /usr/local/bin when that is writable and ~/.local/bin when it is not. It never asks for a password and writes nothing outside the install directory.

It also installs the agent skill into any coding tool it finds, so your agent knows how to use Out Plane. Set OUTPLANE_SKIP_SKILLS=1 to leave your editor's configuration alone.

If your tools already arrive through Node, npm i -g outplane works here too.

npm i -g outplane

This package is a delivery mechanism rather than a JavaScript program. Installing it pulls in exactly one more package, the binary for your platform, chosen by npm from os and cpu. There is no install script and nothing is fetched afterwards, so whatever npm verified is what runs.

The shell installer is not offered on Windows: a PowerShell twin would be a second thing to keep correct for a platform that already has a working channel.

This package installs the binary and nothing else, with no install script, so the agent skill is a separate step: outplane skills install.

Pinning a Version

A machine that installs the newest release every time is a machine whose behaviour changes without anyone deciding it should.

OUTPLANE_VERSION=v0.2.9 sh -c "$(curl -fsSL https://outplane.com/install.sh)"
npm i -g [email protected]

OUTPLANE_INSTALL_DIR chooses where the binary goes, for a machine where neither default is wanted.

Anywhere Else

Download an archive from the releases page, check it against checksums.txt, and put the binary on your PATH. Builds are published for macOS, Linux and Windows, on both amd64 and arm64.

Keeping It Current

outplane update           # replaces this binary, however it was installed
outplane update --check   # says what it would do, and does nothing
outplane version

An installation that neither npm nor the install script put there is left alone: whatever placed the binary is what should replace it.

Exit code 9 from any command means the API has stopped serving that release. It is the one failure with a single remedy, and outplane update is it.

Shell Completion

outplane completion zsh > "${fpath[1]}/_outplane"    # zsh
outplane completion bash > /etc/bash_completion.d/outplane

fish and powershell are also available. Each prints a script to standard output and writes nothing itself.

In a Pipeline

Pin the version. A runner that installs the newest release on every run is a runner whose behaviour changes without a commit:

- run: OUTPLANE_VERSION=v0.2.9 sh -c "$(curl -fsSL https://outplane.com/install.sh)"

Then set OUTPLANE_TOKEN and skip signing in entirely. The CI page has the rest.

On this page