# AGENTS.md — Ollama-Updater Single-file Bash script (`ollama-update`) that updates Ollama to latest stable or beta. ## Commands ```bash # Run script (stable channel) ./ollama-update # Run script (beta channel) ./ollama-update --beta ./ollama-update -b # Show help ./ollama-update --help ``` ## Lint / Check ```bash # ShellCheck (recommended) shellcheck ollama-update # Run with bash strict mode (what the script uses) bash -euo pipefail ollama-update --help ``` ## Structure - `ollama-update` — main script (executable, bash, ~240 lines) - `README.md` — usage docs ## Key behaviors - Uses GitHub API (`api.github.com/repos/ollama/ollama/releases`) to fetch versions - Downloads and runs official `ollama.com/install.sh` via `OLLAMA_VERSION` env var for version pinning - SemVer comparison with suffix support (`cmp_versions` function) - Requires: `curl`, `grep`, `sed`, `sort`, `mktemp`, `chmod` - Runs without root for version checks; install may need root (systemd service) ## Testing No formal test suite. Manual verification: ```bash # Dry-run version checks (no install) ./ollama-update # shows local/stable/beta versions ./ollama-update --beta # shows beta comparison ``` ## Gotchas - Script uses `set -euo pipefail` and `nullglob` — preserve these - GitHub API rate limits: unauthenticated = 60 req/hr - Beta channel compares against stable; only updates if beta > stable AND beta > local - Temp install script cleaned via `trap` on EXIT