This page lists what spectroscope needs on your machine, level by level. Level 1 is all you need to run the app. The levels after it are optional, and one route per level is enough. Mark a step with "I have this" and the ring of its level fills.
0 of 22 steps marked
macOS means Apple silicon. Linux means Debian 12 and 13, Ubuntu 22.04 and 24.04. Windows is not covered. (README.mdApple silicon only, S37, S39, S53, S54)
before you start
Homebrew The macOS commands marked "needs Homebrew" use it, and so does the speech script. If brew is not found, install Homebrew first. Its page shows the install line and explains what it does. The DMG needs no Homebrew. brew.sh(S1, README.mdis the same kit without the tap, setup-stt.shHomebrew missing)
git The commands marked "needs git" clone a repository. To install git, run brew install git, or xcode-select --install for Apple's git in the Command Line Tools. git-scm.com(S48)
git The commands marked "needs git" clone a repository. To install git, run sudo apt-get install git. git-scm.com(S49)
Docker's apt repository The Linux Docker command installs packages from Docker's own apt repository. Add that repository first, with the lines on Docker's install page for your system. Docker on Ubuntu and Docker on Debian(S37, S38, S39)
cmake and a C and C++ compiler The whisper.cpp build lines on Linux call cmake and a C and C++ compiler. Install both from your distribution first. The whisper.cpp README shows the build. whisper.cpp README(S24)
Ollama The Linux line marked "needs Ollama" talks to a running Ollama. Install Ollama first, with its installer or the manual route on its Linux page. Step 2.2 quotes the installer. docs.ollama.com(S12)
level 1
run the app
The app opens and answers.
1.1
install the app
Installs the desktop app. The DMG, the Homebrew cask, the apt package and the AppImage bring their own Java runtime and their own llama-server.
This step is not needed for the DMG, Homebrew cask, apt package and AppImage. They bring their own Java runtime. (README.mdbrings its own Java runtime)
One local route answers a prompt without a cloud key. One of the four steps is enough. With the DMG, the cask, the apt package or the AppImage, the first step needs no extra install.
2.1
the built-in model
A model that runs inside the app with nothing else installed. The kits bring the llama-server engine it runs on.
qwen3-4b, the default built-in model: 2,497,280,256 bytes. Measured 2026-10-11, method: sizeBytes in the product's model catalogue (models.json"sizeBytes": 2497280256).
2.2
Ollama
A local model server. spectroscope connects to it at http://localhost:11434.
Scripts are files to download, read and run yourself. The page runs nothing.
Linux
This is Ollama's own installer for Linux. It downloads a script and runs it in your shell. Read the script first. The same page shows a manual route that unpacks the program without a script. The vendor page.
On Linux, the install page of llama.cpp lists the ways to get llama-server. (S21)
Keep --port 8080. The master branch of llama.cpp listens on 9931 when no port is given; spectroscope looks on 8080. (S22, SpectroConfig.javacase "llamacpp" -> "http://localhost:8080")
Scripts are files to download, read and run yourself. The page runs nothing.
The script downloads the model and checks its sha256. The app can also download this file from Settings, and it checks the same sha256. (setup-stt.shsha256_of)
install-searxng.sh calls docker without sudo. On Linux, do Docker's post-installation steps from step 4.1 first, or the script stops at a permission error. (S37, install.sh--project-directory "$state_dir" up -d)
Scripts are files to download, read and run yourself. The page runs nothing.
The script needs openssl. It writes settings.yml with JSON switched on, starts one container, waits for a JSON answer, and only then writes SPECTRO_SEARXNG_URL. (install.shIt does exactly three things)
install-searxng.sh runs on its own. If there is no docker-compose.yml in its folder, it writes one with the same content as the docker-compose.yml on this page. The app offers the same script in Settings, under web search. (install.shnone was beside this script, webSearchSetup.tsSEARXNG_SCRIPT_ROUTE)
Create a key with Tavily or Brave and type it in Settings. The variables are TAVILY_API_KEY and BRAVE_API_KEY. With both keys, web_search uses Tavily. A saved SearXNG address comes before both. (WebSearchTiers.javaTAVILY_KEY_ENV = "TAVILY_API_KEY")
check
spectro doctor
The web search line names the Tavily or the Brave Search API.
Install Google Chrome. Chromium, Microsoft Edge or Brave in /Applications also count, and SPECTRO_CHROME can point at another binary. (BrowsePageTool.javaGoogle Chrome.app)
Linux
Install Chrome or Chromium. The tool looks for google-chrome, google-chrome-stable, chromium, chromium-browser or chrome on the PATH, and SPECTRO_CHROME can point at another binary. (BrowsePageTool.javaPATH_BINARIES)
Each of the playbook's four model slots has a model that answers. The fast slot names the Ollama tag qwen3.5:27b-q4_K_M; the other three need an Anthropic key.