#!/usr/bin/env sh
# tmb install script — downloads tmb-cli.tar.gz and installs the `tmb` command.
# Usage:  curl -fsSL https://tmb.slowpapa.com/install.sh | sh
set -e

INSTALL_DIR="${TMB_INSTALL_DIR:-$HOME/.tmb-cli}"
BIN_DIR="${TMB_BIN_DIR:-$HOME/.local/bin}"
URL="${TMB_URL:-https://tmb.slowpapa.com/tmb-cli.tar.gz}"

echo "==> Downloading tmb-cli from $URL"
TMP="$(mktemp -d)"
trap 'rm -rf "$TMP"' EXIT
if command -v curl >/dev/null 2>&1; then
  curl -fsSL "$URL" -o "$TMP/tmb-cli.tar.gz"
elif command -v wget >/dev/null 2>&1; then
  wget -qO "$TMP/tmb-cli.tar.gz" "$URL"
else
  echo "error: need curl or wget" >&2; exit 1
fi

echo "==> Installing to $INSTALL_DIR"
mkdir -p "$INSTALL_DIR" "$BIN_DIR"
tar -xzf "$TMP/tmb-cli.tar.gz" -C "$TMP"
# (re)place the source tree
rm -rf "$INSTALL_DIR/tmb-cli"
mv "$TMP/tmb-cli" "$INSTALL_DIR/tmb-cli"

# Symlink the launcher into BIN_DIR
ln -sfn "$INSTALL_DIR/tmb-cli/bin/tmb" "$BIN_DIR/tmb"
chmod +x "$INSTALL_DIR/tmb-cli/bin/tmb"

echo
echo "Installed: $BIN_DIR/tmb -> $INSTALL_DIR/tmb-cli/bin/tmb"
echo
case ":$PATH:" in
  *":$BIN_DIR:"*) ;;
  *) echo "NOTE: $BIN_DIR is not on your PATH. Add it with:"; echo; echo "  export PATH=\"$BIN_DIR:\$PATH\"";;
esac
echo
echo "  export PATH=\"$BIN_DIR:\$PATH\"   # (or add to ~/.profile / ~/.bashrc)"
echo
echo "Verify:"
echo "  tmb --help"
echo "  tmb skills list"
echo
echo "Optional — install as a proper Python package (gives global tmb + tab-completion):"
echo "  pip install -e \"$INSTALL_DIR/tmb-cli\""
echo
echo "Config lives in ~/.tmb/config.json. Point tmb at an LLM backend:"
echo
echo "  # Option A — Tencent Cloud TokenHub (zero local setup; OpenAI-compatible):"
echo "  tmb config use tokenhub            # Guangzhou (CN); or: tokenhub-intl for Singapore"
echo "  tmb config set api_key <TokenHub-API-Key>   # get it at https://console.cloud.tencent.com/tokenhub/apikey"
echo
echo "  # Option B — a local Ollama-gateway (default):"
echo "  tmb config use local"
echo "  tmb config set api_key <key-or-dummy>"
echo
echo "  # Option C — self-built TokenHub / any OpenAI-compatible gateway (no code change):"
echo "  tmb config set endpoint https://<your-tokenhub>/v1   # e.g. https://th.quickpapa.com/v1"
echo "  tmb config set api_key  <your-API-Key>                # register + create a key on the gateway"
echo "  tmb config set model    <model id>                   # e.g. tokenhub-pro; run: tmb models"
echo
echo "  # env overrides: TMB_ENDPOINT / TMB_MODEL / TMB_API_KEY"
echo "  # self-built TokenHub walkthrough (register → key → config): see https://tmb.slowpapa.com/#install"
echo
echo "Done. Docs: https://tmb.slowpapa.com/"