airstats

byrencheemaMIT活跃维护

macOS 菜单栏系统监控工具,实时显示 CPU、内存、GPU、网络、磁盘、电池和温度,自身仅占 0.046% CPU。

A menu bar system monitor for macOS. CPU, memory, GPU, network, disk, battery and thermals at 0.046% CPU.

v1.6发布于 2026-10-15 23:37 UTC502star +7 / 7 天22fork同步于 2026-11-11 05:54 UTC

怎么上手

由 README 提炼,执行前请确认
brew install --cask airstats
硬件要求按 README 说明

需要 macOS 14 或更高版本,支持 Intel 和 Apple silicon,单个 app 内含 x86_64 与 arm64 两种构建。README 未提及显存或 GPU 型号要求。

支持 Apple Silicon
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

macOS 菜单栏系统监控工具,常驻后台只占几 MB 内存和不到 0.1% 单核

macOS 菜单栏系统监控工具,实时显示 CPU、内存、GPU、网络、磁盘、电池和温度,自身仅占 0.046% CPU。

核心能力

  • 从内核读取 CPU、内存、GPU、网络、磁盘、电池和温度数据
  • 在菜单栏、下拉面板和桌面小组件三处展示监控数据
  • 通过 Mach、IOKit、sysctl 和 CoreWLAN 采集系统指标
  • 无 Dock 图标,以 LSUIElement 状态项形式常驻
  • 内置 Sparkle 自动更新,可关闭检查与安装

容易踩的坑

从源码构建时,macOS 只给带签名的 bundle 授予状态项,需用 Scripts/build.sh 构建并 ad-hoc 签名;自行构建的 ad-hoc 签名包经网络传输后会被 macOS 拒绝打开;源码构建仅在 Apple silicon + Xcode 27 上验证过,旧环境未验证。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v1.6
  1. v1.6AirStats 1.6最新正式版2026-10-15 · 2026-10-15 23:37 UTC

    New

    • Support for macOS 27
    • Liquid Glass on macOS 26 and later in the panel, Settings and the desktop widget

    Improved

    • Check Now in Settings shows its result beside the button instead of in an alert
    • The menu bar item skips redrawing when its numbers have not changed

    Fixed

    • Battery health, capacity and temperature show again on macOS 27
    • Temperature history no longer records a near-freezing reading right after the Mac wakes
  2. v1.5AirStats 1.52026-09-23 · 2026-09-23 04:30 UTC
    查看更新说明

    New

    • 24-hour history charts under each panel module and in the desktop widget, which mark time on the charger and name the process behind a peak
    • Top memory users in the memory module
    • Accessory batteries in the battery module
    • Compact Bar, a menu bar style with its labels stacked beside the bar
    • A status dot style for the network readout

    Improved

    • The panel opens one module at a time and is a little wider
    • Less background work while the panel is closed

    Fixed

    • Disk keeps purgeable space across restarts and hides disk images
    • Per-core bars fit the panel on chips with many cores
  3. v1.4AirStats 1.42026-09-02 · 2026-09-02 04:32 UTC
    查看更新说明
    • A switch in Settings takes AirStats out of the menu bar entirely, leaving the desktop widget
    • A hot key shows or hides the menu bar item
    • The panel no longer flickers while it refreshes
    • Module headers drop the per-row gear
    • The caption column in the panel is sized to the widest caption on screen
  4. v1.3.2AirStats 1.3.22026-08-25 · 2026-08-25 03:10 UTC
    查看更新说明
    • Automatic updates now install on their own, the next time the screen locks or the display sleeps, instead of waiting for a quit that never comes
    • An update found by a scheduled check stays in the panel across relaunches and after Remind Me Later; Skip This Version clears it
    • The panel row says when an update is already downloaded and only needs a restart
    • Settings shows why the last update check failed
  5. v1.3.1AirStats 1.3.12026-08-23 · 2026-08-23 10:22 UTC
    查看更新说明
    • Clicking the update notification now opens the update
    • The Install button in the panel now brings the update window to the front

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    An ultra lightweight macOS system monitor.

    AirStats is a system monitor for the Mac menu bar. It reads CPU, memory, GPU, network, disk, battery, temperature, process and host statistics from the kernel and shows them in three places: the menu bar itself, a panel that drops down when you click the status item, and a desktop widget you can leave on screen.

    It is built to be genuinely light. A menu bar monitor runs all day, every day, so AirStats holds a few megabytes and a fraction of a percent of one core rather than the tens of megabytes its peers take. It has no Dock icon, and reads the system through Mach, IOKit, sysctl and CoreWLAN.

    Requirements

    • macOS 14 or later
    • Intel or Apple silicon

    Install

    Download it from airstats.app, open the dmg and drag the app to Applications. The release includes both Intel (x86_64) and Apple silicon (arm64) builds in one app. It is signed and notarized, so it opens with no warning.

    Or with Homebrew:

    brew install --cask airstats
    

    AirStats updates itself with Sparkle. It asks airstats.app once a week whether a newer version exists, and installs one only when you say so. Both of those can be turned off in General settings.

    Build from source

    The universal build has been verified with Xcode 27 on Apple silicon. Older Xcode and macOS build environments may work, but have not been verified. The macOS 26 SDK enables Liquid Glass; builds with an earlier SDK use AirStats' existing material and sheen fallback.

    Scripts/build.sh release
    cp -R .build/release/AirStats.app /Applications/
    open /Applications/AirStats.app
    

    Scripts/build.sh builds both architectures, wraps them in one universal .app bundle, copies Sparkle.framework into Contents/Frameworks, and signs it ad hoc. macOS grants a status item only to a signed bundle with LSUIElement set. Run the script with no argument for a debug build.

    An ad-hoc signature is enough to run a build you made yourself, and not enough to travel: macOS refuses an ad-hoc bundle that arrived over the internet. Scripts/release.sh is what produces the download above, signing with a Developer ID certificate and stapling Apple's notarization ticket to the .dmg.

    Source layout

    PathWhat lives there
    Sources/AirStatKitCollectors, the sampling engine, settings, formatting. No UI.
    Sources/AirStatUIMenu bar drawing, panel, desktop widget, settings window, charts, design system.
    Sources/AirStatsThe executable, app delegate, and the probe and render commands.
    Tests/AirStatKitTestsContract tests for the collectors, plus settings and formatting.
    Scripts/build.shBuilds the binary and assembles the .app.
    Scripts/release.shSigns, notarizes and packages the .dmg that ships.
    Scripts/appcast.pyWrites a release into the appcast Sparkle reads.
    Scripts/benchmark.pySamples the menu bar monitors on your Mac over one shared window.

    AirStatKit never imports SwiftUI or AppKit, which is what lets the tests and the probe run in a windowless process.

    Contributing

    CONTRIBUTING.md has the checks to run before a pull request and the house rules.

    Contact

    Bugs and feature requests go on the issue tracker. For anything private, email [email protected].

    License

    MIT. See LICENSE.