# Searoom > Searoom is a free, MIT-licensed, native macOS menu-bar instrument for watching unified-memory pressure and remaining system capacity while local LLMs and other sustained workloads run on Apple Silicon. Every page listed below is also available as Markdown at the same URL. Request it with `Accept: text/markdown`; there is no separate `.md` path to follow. Version 0.7.0, requiring macOS 14 or later on Apple Silicon. Written in Swift 6 with direct AppKit rendering and no runtime dependencies. There is no account, analytics, crash uploader, or remote configuration, and the only network request is a version check the reader starts from Check for Updates, which sends nothing describing the Mac and installs nothing. Direct temperature, fan speed, and GPU utilization are read-only, best-effort signals that vary by Mac model and macOS release; an unavailable sensor is reported as unavailable and never as zero. Searoom is not a fan controller, uses no privileged helper, and does not support Intel Macs. Searoom 0.7.0 also ships a read-only `searoom` command inside the same signed binary: thirteen offline subcommands that emit versioned JSON telemetry, plus the machine-readable contracts describing it. `searoom help --json` is the discovery entry point and lists every command with its output document, exit codes, and whether it collects telemetry or changes the filesystem; it also gives each option's one-letter shorthand (`-i`, `-p`, `-j`, `-c`, `-n`, `-s`, `-u`, `-l`), and `searoom COMMAND -h` prints one command's reference. `searoom schema` and `searoom metrics --json` return the JSON Schema and the 49 metric definitions; both are published at the URLs listed under Optional below, byte-identical to the copies inside the app. Only `install-cli` and `uninstall-cli` write anything, and nothing in the command set reaches the network. The command is linked on first launch whatever the install source, and Settings can turn it off again and install the Agent Skill into the folders Claude Code, Codex, Cursor and OpenCode read. Every measurement published on this site names the Mac, the macOS build, and the Searoom version that produced it. Where a measurement has not been run, the article says so rather than estimating. ## Product - [Searoom](https://searoom.app/): what it watches, the privacy and implementation claims in full, the measured results the field notes are built on, and the landing-page answers to the questions Mac owners ask most. - [Free Mac system monitors, compared](https://searoom.app/blog/system-monitors/): a maintained reference. The free macOS monitors you can install today — Activity Monitor, Stats, AirStats, RunCat Neo and Searoom — on licence, requirements, coverage and the cost each adds while it runs, with every performance claim attributed to whoever measured it. Also available as FAQPage structured data. - [Download and checksums](https://searoom.app/download/): notarized DMG and ZIP with SHA-256 digests, and the Homebrew one-liner `brew install emaitchess/searoom/searoom`, which taps, trusts and installs in one command. - [Mac memory pressure: what the number means and when it misleads](https://searoom.app/blog/memory-pressure/): a maintained reference. Why three tools report different numbers for one Mac, why free memory near zero is normal, the measured escalation from cache reclaim to compression to swap, and why swap allocation and swap traffic answer different questions. - [Mac thermal throttling: how to tell, and what it costs](https://searoom.app/blog/thermal-throttling/): a maintained reference. How to check whether macOS is reducing performance, what the fair thermal state costs in measured throughput, and why fan noise and temperature are both poor evidence. - [Mac performance questions, answered from measurement](https://searoom.app/faq/): short measured answers with the run or source behind each — how to check thermal throttling, what memory pressure means, how much RAM a local LLM needs, MLX vs GGUF, and what a menu-bar monitor costs. Also available as FAQPage structured data. - [The Searoom command line](https://searoom.app/cli/): a maintained reference. The `searoom` command in full: the thirteen commands, the versioned JSON contract, the availability values that distinguish a real zero from an unread sensor, the exit codes, and the offline discovery sequence for agents. - [Everything Searoom does](https://searoom.app/features/): a maintained reference. The complete capability list: the menu bar selection and its two layouts, dashboard card order, trend windows, sampling, history bounds, haptics, keyboard and VoiceOver support, and the limit on each. - [Metric definitions and limitations](https://searoom.app/metrics/): the canonical meaning of every value Searoom reports, with the limit attached to each. - [Privacy](https://searoom.app/privacy/): what stays on the Mac, and the one request the app can make. ## Field notes - [How much RAM a local model really needs, measured](https://searoom.app/blog/how-much-ram-local-model/): sizing by file size is wrong in both directions. Five models measured under one workload: resident cost ran from 88% to 195% of file size, worst at the small end. - [What a menu-bar monitor costs, measured in idle wake-ups](https://searoom.app/blog/menu-bar-monitor-wakeups/): a polling monitor's cost is its wake rate, not its download size. Searoom measured with powermetrics at every sampling interval, with the method to check any monitor. - [What macOS memory pressure actually measures](https://searoom.app/blog/macos-memory-pressure/): three tools reported three different numbers for one Mac at one moment and all three were correct. Includes a measured 8 GiB allocation and what every counter did. - [Reading SMC sensors from Swift without a privileged helper](https://searoom.app/blog/smc-sensors-swift/): temperature and fan readings come from an undocumented interface with no stable key set, and how to read it honestly when the key is absent. - [Swap I/O vs swap size, which one predicts a stall](https://searoom.app/blog/swap-io-vs-swap-size/): allocation says where a Mac has been, throughput says where it is. Includes a measured trace of an induced memory shortfall. - [Unified memory, what the GPU takes from your RAM](https://searoom.app/blog/unified-memory-gpu/): there is no separate VRAM on Apple Silicon, and the Metal ceilings that decide what fits. - [Why your Mac's fans spin up when running a local model](https://searoom.app/blog/mac-fans-local-llm/): fans respond to sustained heat rather than to load. Includes a measured fan curve across six minutes of continuous generation. - [Diagnosing thermal throttling during long inference runs](https://searoom.app/blog/thermal-throttling-inference/): four causes produce the same symptom and only one is heat. The fair thermal state is where degradation begins, not an all-clear. - [Your Mac slowed down after loading a second model](https://searoom.app/blog/second-model-slowdown/): most runtimes keep a model resident, so two sets of weights compete for one pool. Includes the measured escalation from cache reclaim to compression to swap. - [Five models on one Mac](https://searoom.app/blog/five-models-one-mac/): five local models under one sustained workload on a named machine. Resident memory from 88% to 195% of file size, a mixture-of-experts model 4.2x faster than a dense one of similar size, and measured throughput loss inside the fair thermal state. - [Drawing a dashboard in AppKit with no view hierarchy](https://searoom.app/blog/appkit-no-view-hierarchy/): eleven independently invalidated live regions and seven trend graphs from a single NSView, and what that costs. ## Optional - [Blog index](https://searoom.app/blog/): all field notes and maintained reference pages with dates and summaries. - [Expanded product and metric context](https://searoom.app/llms-full.txt): the full semantics of every metric, the pressure thresholds, and the diagnostic rules, in one file. - [Agent skill for interpreting telemetry](https://searoom.app/.well-known/agent-skills/interpret-searoom-telemetry/SKILL.md): how to read a Searoom sample without overstating it. Identical to `searoom agent-guide`. - [Telemetry JSON Schema, version 1](https://searoom.app/schemas/telemetry-v1.schema.json): the schema every document emitted by the command names in its own `$schema` field. Self-contained, with no remote references. - [Metric catalog](https://searoom.app/schemas/metrics.json): all 49 emitted fields with JSON path, unit, range, nullability, source, derivation, thresholds, first-sample behaviour and limitations. The same 49 definitions `searoom metrics --json` returns; the command wraps them in a document envelope and adds an explicit null `refreshCadenceSeconds` where the file omits it. - [Source code](https://github.com/emaitchess/searoom): the MIT-licensed repository, including the sensor and dashboard code the engineering notes describe. - [Product README](https://github.com/emaitchess/searoom#readme): build instructions and the contributor contract.