v0.48.8
Install
Homebrew (recommended — macOS + Linux):
brew install SmooAI/tools/thcurl | sh:
curl -fsSL https://raw.githubusercontent.com/SmooAI/smooth/main/install.sh | shBuild from source (Cargo):
git clone https://github.com/SmooAI/smooth.git
cd smooth
cargo install --path crates/smooth-cliUpgrade
# Homebrew
brew update && brew upgrade th
# curl|sh — re-run the installer (it overwrites in place)
curl -fsSL https://raw.githubusercontent.com/SmooAI/smooth/main/install.sh | sh
# Cargo — from your cloned checkout
cd smooth && git pull && cargo install --path crates/smooth-cli --forceWhat's new
Patch Changes
-
2a8f30a: th attest: never stall or hang on the build box — fail fast, bound the run, fall back to local
th attest rustroutes to a remote build box. Three ways that stalled or hungth,
now closed:- Unreachable box: the ssh calls had no
ConnectTimeout, so they stalled on the
full TCP handshake. Both now useConnectTimeout=10. - Wedged mid-run: once connected, a check could wedge (measured: cargo finished but
rust.shhung in a docker probe) andchild.wait()never returned, hangingth
with it (th-7db71c). A watchdog now kills the ssh after a deadline
(SMOOTH_ATTEST_REMOTE_DEADLINE_SECS, default 45 min); killing the local client drops
the connection so the remote check is torn down too. - Either way: a remote infrastructure failure (unreachable / no disk / dropped /
timed out) no longer blocks and defers the whole row to CI. It prints a visible
⚠ <host>: <reason>and runs the check locally — a real verdict on this machine.
Slower (no warm cache), which is why the warning is loud.
- Unreachable box: the ssh calls had no
Downloads
| Platform | File name |
|---|---|
| macOS (Apple Silicon) | th-macos-arm64.tar.gz |
| Linux (x86_64) | th-linux-x86_64.tar.gz |
| Linux (arm64) | th-linux-arm64.tar.gz |