Docs

Installing Bluetext

Bluetext is one command, b. Installing it means downloading a single binary and putting it on your PATH: there is no runtime to install first and no service to sign up for.

Using b to build and deploy a system does need tools, because it drives the ones your system is made of. Those are listed at the end of this page.

Install

curl -fsSL https://storage.googleapis.com/bluetext-releases/install.sh | sh

That downloads the package for your machine, unpacks it, and installs b into ~/.local/bin/b. The only things it needs present are curl and tar.

Put ~/.local/bin on your PATH if it is not already. The installer does not change your shell configuration, so on a fresh machine the install can succeed and b still not be found. Add this to your shell's profile:

export PATH="$HOME/.local/bin:$PATH"

Check it worked

b version

It answers with the name, the version and the platform you are on, like b 0.1.9 (darwin-aarch64). If your shell says the command is not found, the binary installed but your PATH does not include ~/.local/bin.

b help lists every command.

What runs it

macOS 11 Big Sur or later, Apple Silicon or Intel
Linux glibc 2.31 or later, x86-64 or ARM64

For Linux that means Debian 11, Ubuntu 20.04, RHEL 9 and anything newer. The binary links only what those systems already carry, so nothing needs installing alongside it. If it does not start on a system that meets the line above, that is a bug worth reporting rather than something to fix locally.

Your two files

Bluetext keeps what it needs in two files that are yours, both under ~/.config/b/:

  • secrets.toml holds credentials, and nothing but you ever writes it.
  • config.toml is optional, and overrides settings the build ships with.

Nothing else on your machine is touched. Data lives under ~/.local/share/bluetext/.

Before the analysis app will run, write your model provider's key:

# ~/.config/b/secrets.toml
[llm]
api-key = "..."

The installer also mentions an [archive] credential. That one is optional: it is for copying your work off the machine, which this build ships switched off, and you can ignore it until you want backups.

Installing a particular version

The installer takes a version, and the pipe needs -s -- to pass it along:

curl -fsSL https://storage.googleapis.com/bluetext-releases/install.sh | sh -s -- 0.1.9

Without one it installs whatever the channel currently calls latest. Every version is published for all four platforms before it becomes latest, so a version that exists for your machine exists for your colleague's too.

What you need to build with it

b itself needs nothing. Deploying does, and what it needs depends on what your system contains. Each is refused by name when it is missing, so you can add them as you go rather than up front.

for you need
a cluster on your machine docker and k3d
running your own code in the dev loop mirrord
a component with toolchain = "cargo" Rust, via rustup
a component with toolchain = "bun" bun
a target in Google Cloud gcloud, and an account

The toolchains are the ones to notice. A component says what it is built with, and b runs that toolchain rather than shipping one, so a system with a Rust service and a TypeScript page needs both installed.

A cluster on your own machine needs no cloud account and no credentials.

Removing it

rm ~/.local/bin/b

That is the whole of the installation. Your two config files and your data stay where they are, so removing the binary loses nothing; delete ~/.config/b/ and ~/.local/share/bluetext/ as well if you want it all gone.