Skip to content

πŸ“¦ Install

Get one slmcode binary on your PATH. Same energy as the big coding CLIs β€” fewer zeros on the invoice. πŸ’…

πŸͺ„

Plot twist: you do not need Go installed. One-liners fetch a shiny GitHub Release. Keep the compiler for contributing (or vibes).

πŸŽ‰ No Go required

Prebuilt binaries for macOS / Linux / Windows. Your laptop can stay a laptop.


Choose your path πŸ—ΊοΈ

  • 🍎 macOS / Linux / WSL


    curl -fsSL https://raw.githubusercontent.com/UnicoLab/smlcode/main/scripts/install-remote.sh | bash
    

    Classic. Reliable. Slightly mysterious until doctor smiles.

  • πŸͺŸ Windows


    irm https://raw.githubusercontent.com/UnicoLab/smlcode/main/scripts/install.ps1 | iex
    

    PowerShell one-liner. SmartScreen may raise an eyebrow β€” unblock and proceed.

  • 🍺 Homebrew


    brew install --formula https://raw.githubusercontent.com/UnicoLab/smlcode/main/Formula/slmcode.rb
    

    For people who install everything with brew, including existential dread.

  • πŸ”’ Locked-down machine


    git clone --depth 1 https://github.com/UnicoLab/smlcode.git
    cd smlcode && ./scripts/install-offline.sh
    

    Everything above 403s at work? The binaries ship inside the repo. Full guide β†’


One-liners (all the flavors) 🍦

curl -fsSL https://raw.githubusercontent.com/UnicoLab/smlcode/main/scripts/install-remote.sh | bash
curl -fsSL https://raw.githubusercontent.com/UnicoLab/smlcode/main/scripts/install-remote.sh | bash -s -- --system

Lands in Homebrew prefix or /usr/local (may ask for sudo). Also symlinks into ~/.local/bin so PATH priority doesn't fork your brain. 🧠

curl -fsSL https://raw.githubusercontent.com/UnicoLab/smlcode/main/scripts/install-remote.sh \
  | bash -s -- --version v0.20.0
irm https://raw.githubusercontent.com/UnicoLab/smlcode/main/scripts/install.ps1 | iex
curl -fsSL https://raw.githubusercontent.com/UnicoLab/smlcode/main/scripts/install.cmd -o install.cmd && install.cmd && del install.cmd
brew tap UnicoLab/smlcode https://github.com/UnicoLab/smlcode
brew install slmcode

Verify βœ…

slmcode version
slmcode doctor

Every install path above verifies a SHA-256 checksum for you: the shell installer and the PowerShell installer both fetch the release's SHA256SUMS and refuse to install on a mismatch, and Homebrew checks the sha256 in the formula. If a checksum could not be fetched, the installer says so loudly rather than pretending it checked.

To check by hand, or to verify a binary you downloaded from the Releases page:

curl -fsSLO https://github.com/UnicoLab/smlcode/releases/download/v0.24.0/SHA256SUMS
shasum -a 256 -c SHA256SUMS --ignore-missing     # macOS
sha256sum -c SHA256SUMS --ignore-missing         # Linux

You want: binary on PATH, a provider/model listed, and a model server that answers the phone. doctor exits 4 when the provider check fails β€” an unreachable endpoint, a rejected or missing API key, or a model the endpoint does not serve β€” and the message says which.

next upquick start πŸš€

cd your-project
slmcode init
slmcode                 # premium TUI β€” board goes brrr

β†’ ⏱️ Quick start Β· πŸ”Œ Providers


Update / uninstall ♻️

slmcode update
slmcode update --check

Binary installs re-download the latest release asset for your OS/arch, verify it against the release SHA256SUMS, and replace the running binary atomically β€” no curl | bash. Source installs rebuild from the checkout recorded in ~/.config/slmcode/install.json. --check reports without installing; --yes skips the confirmation prompt.

curl -fsSL https://raw.githubusercontent.com/UnicoLab/smlcode/main/scripts/install-remote.sh \
  | bash -s -- --uninstall
brew uninstall slmcode

Where does it land? πŸ“

Mode Location
πŸ‘€ User ~/.local/bin/slmcode
🧰 System $(brew --prefix)/bin or /usr/local/bin
πŸͺŸ Windows %LOCALAPPDATA%\slmcode\bin\slmcode.exe
🍺 Homebrew Cellar β†’ linked on PATH

Metadata: ~/.config/slmcode/install.json (Windows: %APPDATA%\slmcode\install.json).


Build from source πŸ› οΈ

Needs Go 1.23+. Module proxy pulls GoLangGraph β€” no sibling clone required.

git clone https://github.com/UnicoLab/smlcode.git
cd smlcode
make install-system
# or make install

Node is optional β€” for a source build. make install builds the Studio SPA when npm is available and the registry is reachable; when it is not, it says so and installs anyway with the built-in placeholder page. The CLI, the API and every command are unaffected β€” only the Studio web page is missing, and slmcode studio tells you that on startup. Build it later with make bootstrap.

Released binaries always ship the real Studio

This caveat applies to source builds only. Every binary published to GitHub Releases β€” which is what the curl one-liner, the PowerShell one-liner, Homebrew and slmcode update all install β€” is built by CI with the Studio SPA compiled in, and the release workflow fails outright rather than publishing a binary that would serve the placeholder. If you installed with a one-liner, slmcode studio gives you the real UI.

Optional: GOLANGGRAPH=/path/to/GoLangGraph for local framework hacking. Bring snacks.


Troubleshooting 🧯

Symptom Fix
command not found πŸ‘» Fix PATH, open a new shell
Checksum mismatch πŸ” Re-run; check proxies / TLS inspection
SmartScreen πŸ›‘οΈ Unblock or use PowerShell one-liner
Go build fails πŸ’₯ Use the one-liner (seriously)

More comedy β†’ ❓ FAQ

πŸ’š

Pro tip: if slmcode doctor is green, resist the urge to β€œjust tweak one more config”. Ship a tiny task first. Future-you will send a thank-you emoji.

β˜€οΈ Made with β™₯ by UnicoLab