Thaw(thaw-app/Thaw)は、macOS のメニューバーに並ぶアイコンを隠す・出す・並べ替える「メニューバー管理」の OSS で、有料の Bartender の代替として定着している。もとは jordanbaird/Ice から派生したプロジェクトだが、2026年9月時点では安定版 2.0.1(macOS 26)・beta の 2.1 系・macOS 27 専用に作り直された 3.0 alpha の3系統が同時に動いており、どれを入れるかで挙動が変わる。本記事は公式リポジトリ(★10.9k・GPL-3.0)の一次情報だけを使い、機能の整理よりリリース系統の見分け方・thaw:// による自動化・配布物の検証手順に重心を置く。なお、AI 関連の機能は無い。

Thawの3つのリリース系統:3.0.0-alpha.5(macOS 27専用・2026-09-15)、2.1.0-beta.3(macOS 26・2026-09-14)、2.0.1安定版(macOS 26・2026-09-02)、1.3.0-beta.1(macOS 14/15最終)
2026-09-15 時点の系統。alpha・beta・stable の3本が同じ週に更新されている(GitHub Releases・CHANGELOG.md・Homebrew cask をもとに編集部作図)
30秒でわかるThaw(2026-09-15時点)
  • 正体:Swift 製の macOS メニューバー管理アプリ。Ice のフォークで、thaw-app 組織(オーナー3名)が開発。★10.9k・fork 259・コミット 2,673
  • 入れるべき版:macOS 26 → 安定版 2.0.1(brew install thaw)。試したい人 → 2.1.0-beta.3(brew install thaw@beta)。macOS 27 → 3.0.0-alpha.5(Nightly のみ・未移植機能あり)
  • 権限:アクセシビリティは必須、画面収録は任意。macOS 27 では「メニューバーレイアウトへのアクセス」の許可が追加で要る
  • 開発者向けthaw:// の7アクション、設定の読み書き URI(アプリ単位のホワイトリスト認可)、プロファイル適用時のスクリプトフック、Shortcuts、Raycast 公式拡張
  • 配布物の検証:Developer ID 署名+公証、SLSA provenance、Cosign の keyless 署名、CycloneDX SBOM、GPG 署名タグの5経路。SLSA レベルは README バッジが L3、文書が L2 で表記が割れている

Thaw は AI 機能を持たない純粋な macOS ユーティリティで、当サイトの主軸からは外れる。同じく macOS の画面端に常駐して開発者向けの情報を出す道具としてはCodenotchとは|Claude Code・Cursor・Codexの利用上限を画面端に常時表示するmacOSアプリを扱っており、Thaw の Thaw Bar(ノッチ対応の別バー)と画面上の居場所が重なる。

Thawとは——Iceから派生したメニューバー管理OSS

公式の docs/ARCHITECTURE.md は冒頭で Thaw の起源を Ice と明記している。README のキャッチコピーは「The open source menu bar manager」で、機能は次の5群にまとめられる。

隠す:不要なアイコンを Hidden セクションへ。さらに「常に隠す(Always-hidden)」セクションを持ち、Option+クリックや空き領域のダブルクリックで一時的に開ける
出す:ホバー・クリック・スクロール・スワイプ・ホットキーで隠した項目を表示。キーボードから項目を検索してジャンプする Search パネルもある
条件で切り替える:バッテリー残量・最前面アプリ・Wi-Fi・Focus・スクリプトの終了コードなどを条件に項目を出し入れする Triggers。プロファイルをディスプレイ・Space・Focus フィルタに紐付けて切り替える
見た目:ティント(単色・グラデーション・壁紙から抽出)、影、枠、角丸や分割などの形状を、ライト/ダークと Space ごとに設定。ノッチのある MacBook 向けに、隠した項目を別のバー(Thaw Bar)へ出せる
運用:設定をプロファイルとして保存・書き出し、Simple Mode で設定画面を1ページに畳む、Zen mode で全セクションを一括で隠してジェスチャも封じる(画面共有中に自動で入る設定あり)

Thawの権限モデルの比較。アクセシビリティのみでも隠す・出す・並べ替えは動き、画面収録を許可するとライブプレビューと壁紙連動ティントが使える
画面収録の許可で変わるのは「見え方」だけで、管理機能そのものは動く(README「Transparency」・FREQUENT_ISSUES.md をもとに編集部作図)

権限まわりは README が明確だ。アクセシビリティは項目を動かすために必須で、初回起動時に要求される。画面収録は任意で、拒否しても隠す・出す・並べ替えは動き、取得できない項目は所属アプリのアイコンで代替描画される。許可すると項目のライブプレビューと壁紙由来のティントが有効になる。3.0(macOS 27)ではこれに加えて、~/Library/Preferences/com.apple.menubarstate.plist へのファイルアクセス許可(メニューバーレイアウトへのアクセス)が1回だけ求められる。

透明性については README の「Transparency」節がそのまま採用判断の材料になる。無料で購入・サブスクリプション・OS 更新時のアップグレード料金がないこと、GPL-3.0、アカウント不要、解析・テレメトリなし、Apple による署名と公証、OpenSSF Best Practices の Gold バッジ、OpenSSF Scorecard による評価が列挙されている。言語は20か国語で、日本語も含まれる(翻訳は Crowdin で管理され、リポジトリ内に .lproj は無い)。

3系統のリリースをどう見分けるか

Thaw の分かりにくさは、alpha・beta・stable が同じ週に更新されている点にある。2026-09-15 時点の状態を表にする。

系統 日付 対応 macOS 入手経路 位置づけ
stable 2.0.1 2026-09-02 26(Tahoe) brew install thaw/Releases の Latest Homebrew cask の version "2.0.1"depends_on macos: :tahoeauto_updates true
beta 2.1.0-beta.3 2026-09-14 26 brew install thaw@beta/Releases の Pre-release 項目グループ・トリガー・Zen mode・Simple Mode など 2.1 の新機能を先行提供。既定ブランチ development の Xcode 設定も MARKETING_VERSION = 2.1.0-beta.3
alpha 3.0.0-alpha.5(Build 105) 2026-09-15 27 のみ(Beta 8 以降) Nightly チャンネル(アプリ内で切替) macOS 27 向けにエンジンと設定画面を作り直し。Swift 6.4。2.x との互換層なし
legacy 1.3.0-beta.1 2026年4月 14/15 Releases macOS 14/15 で動く最終版。2.0 以降は macOS 26 が必須

3.0 alpha は「macOS 27 で動く Thaw」であって「全機能を備えた次期版」ではまだない。CHANGELOG の 3.0.0-alpha.1(2026-09-09)は未移植の項目を明示している。

Scripts:スクリプト駆動のバーモジュールは 2.1.0 beta で macOS 26 ユーザーが検証中で、後の 3.0 ビルドで追加予定。Scripts ペインは置き場所だけ先行
Widgets:ペインはプレースホルダで設定なし
Item triggers:2.1 の条件エンジン(バッテリー・最前面アプリ・ネットワーク・Focus 等)は未移植。「アイコンの変化で表示」のルールだけ入っている
ローテーションする診断ログ:未実装

さらに alpha.5 の冒頭には macOS 27 側の制約が「Thaw のバグではない」と断って書かれている。一部のネイティブ項目や Control Center の項目・Shortcuts がメニューバーに出ないこと、同一アプリの複数項目を個別に隠せないこと(Issue #1125)、間隔設定を反映するためにメニューバーアプリを再起動することがある点だ。3.0 では「Thaw は項目を動かさない。ユーザーが ⌘ドラッグで並べ、Thaw はそれを記録して隠すことに徹する」という方針転換もあり、2.x の「Thaw が並べ替える」挙動に慣れていると戸惑う。

Iceからの移行と、2.x→3.0のアップグレード注意

CHANGELOG のアップグレード注記は版ごとに違う。2.0.0 は「1.x からの更新には macOS 26 が必要で、macOS 14/15 では 1.3.0-beta.1 に留まる」「更新フィードは新規インストールで thaw-app/updates に移り、旧 stonerl フィードの利用者にもミラーが配信される」「ディスプレイごとの間隔設定はスキーマが変わったが、旧プロファイルは現在のディスプレイ値へフォールバックする」と書く。Ice 時代(V1)の外観データは 2.x では取り込み時に変換される一方、3.0 では「Ice 時代の設定移行は新しい defaults ドメインでは実行され得ないため削除した」と明記されており、Ice から直接 3.0 へ移る経路は無い。Ice 利用者は一度 2.x を経由して設定を取り込んでから 3.0 へ進むのが、CHANGELOG の記述から読める安全な順序になる。

判断の目安:macOS 26 で日常利用するなら 2.0.1。2.1 の項目グループやトリガーが欲しければ beta。macOS 27 のベータを入れている開発機だけ 3.0 alpha を Nightly で追う。

導入と権限設定(macOS 26・安定版)

インストールは Homebrew か、Releases の .dmg をドラッグするかの2択で、README にそのまま書かれている。

# 安定版(Homebrew cask "thaw"、2026-09-15 時点で 2.0.1)
brew install thaw
# 新機能を先行して試す場合(安定版の方が新しければ安定版が入る)
brew install thaw@beta

初回起動でアクセシビリティ権限を求められ、画面収録は任意で1回だけ確認される。3.0 alpha の場合は Nightly チャンネルをアプリ内で選ぶ必要があり、Homebrew からは入らない。

当サイトの検証環境は Linux のみで macOS 実機が無いため、上記コマンドと以降の操作は公式ドキュメントの転記であり、当サイトでは実行していない(未検証)。導入後に多いつまずきは FREQUENT_ISSUES.md に集約されており、代表的なものを挙げる。

症状 原因(公式の説明) 対処
新しい項目が勝手に Hidden に入る macOS は新規ステータス項目を左端に挿入し、Thaw はそこを Hidden(または Always-hidden)として扱う Settings → Menu Bar Layout でドラッグ、または ⌘ドラッグ。New Items バッジの既定セクションを変える
「自動的に隠すメニューバーでは項目を並べ替えられない」エラー メニューバーの自動非表示中は macOS がレイアウト情報を十分に公開しない システム設定 → コントロールセンターで自動非表示を「しない」にしてから並べ替え、あとで戻す
メニューバーに見えるのに Layout 設定に出ない ステータス項目 API の外で描画するアプリや、com.apple.controlcenter 配下で安定した識別子を持たない項目 Little Snitch・CodexBar は既知の上流要因として個別に記載
表示が「踊る」・レイアウトが勝手に変わる ホストアプリが項目の位置を保存しない、ディスプレイ構成の変化、間隔変更に伴うアプリ再起動 Settings → Displays の「再起動前に確認」を有効にする

開発者向け:thaw://スキームとスクリプトフックで自動化する

Thaw が開発者にとって面白いのは、コア操作がすべて thaw:// のディープリンクになっている点だ。README の「Integrations」節は「使い慣れたランチャーに差し込める」と書き、Raycast の公式拡張、Droppy との組み合わせ、Alfred/Shortcuts/Keyboard Maestro/BetterTouchTool/シェルスクリプトを挙げている。

# 隠した項目の表示切替・検索パネル・設定画面(docs/URI_SCHEMES.md より)
open "thaw://toggle-hidden"
open "thaw://search"
open "thaw://open-settings"
Thawの自動化手段:thaw://アクション、設定の読み書きURI(ホワイトリスト認可)、スクリプトフック、Shortcuts/Spotlight、Raycast公式拡張
`docs/URI_SCHEMES.md` と README「Integrations」に基づく自動化の入口。設定 URI だけは呼び出し元アプリの認可が要る(編集部作図)

docs/URI_SCHEMES.md によれば、URI は2層に分かれている。

アクション(7種)toggle-hiddentoggle-always-hiddensearchtoggle-thawbartoggle-application-menusopen-settingsauthorize。認可不要で、ランチャーからそのまま叩ける
設定の読み書きthaw://set?key=autoRehide&value=true のように設定キーを直接書き換えられる。こちらは呼び出し元アプリのホワイトリストで保護され、初回はアプリ名と署名 ID を示す確認ダイアログが出る。未認可の呼び出しは黙って失敗する。グローバル設定(自動再非表示、ホバー表示など)と、ディスプレイ UUID で絞る per-display 設定(Thaw Bar の有無・位置・レイアウト等)がある
スクリプトフック:プロファイル適用の前後にシェルスクリプトを実行できる(グローバルまたはプロファイル単位)。THAW_PROFILE_NAME などの環境変数とタイムアウトが用意され、失敗しても適用はブロックされない
Shortcuts/Spotlight:3.0 では App Intents として「項目のメニューを開く」「隠した項目を出す」「Zen mode 切替」「プロファイル適用」が公開される
ThawCtl:リポジトリ同梱の SwiftPM 製コマンドラインクライアント。thaw:// を叩いて thawctl:// のコールバックを受ける検証用ユーティリティ

UI に出ない診断フラグも docs/HIDDEN_FLAGS.md に公開されている。並べ替え時にカーソルを「奪われる」現象が出るハードウェア向けの逃げ道で、通常は触らない。

# 並べ替え前に要求する入力停止時間を 50ms → 150ms に広げる(docs/HIDDEN_FLAGS.md より)
defaults write com.stonerl.Thaw inputPauseThresholdMs -int 150
# 既定に戻す
defaults delete com.stonerl.Thaw inputPauseThresholdMs
flowchart LR A["Raycast / Alfred / Shortcuts / シェル"] --> B["thaw:// アクション(7種・認可不要)"] A --> C["thaw://set / get(設定URI)"] C --> D{"呼び出し元アプリは
ホワイトリストにあるか"} D -- "はい" --> E["設定を書き換え・JSONで応答"] D -- "いいえ" --> F["確認ダイアログ→拒否なら無視"] B --> G["Thaw 本体"] E --> G G --> H["プロファイル適用フック
(前後にスクリプト実行)"]

配布物を自分で検証する——SLSA・Cosign・SBOM

セキュリティを柱にする当サイトとして注目したいのは、Thaw が配布物の検証手段を文書化していることだ。docs/VERIFYING_RELEASES.md に、.dmg.zip・SBOM の真正性を確かめる5つの経路が並ぶ。macOS 実機での実行は当サイトでは未検証で、コマンドは同文書の転記である。

# 1) Apple の署名と公証(Gatekeeper 相当の確認)
spctl --assess -v /Applications/Thaw.app
xcrun stapler validate /Applications/Thaw.app
# 2) SLSA ビルド来歴(GitHub Artifact Attestations。署名ワークフローを固定して検証)
gh attestation verify Thaw.dmg --repo thaw-app/Thaw \
  --signer-workflow thaw-app/Thaw/.github/workflows/attest-build-provenance.yml
# 3) Cosign の keyless 署名(Releases 同梱の *.sigstore.json)
cosign verify-blob --bundle Thaw.dmg.sigstore.json \
  --certificate-identity-regexp '^https://github\.com/thaw-app/Thaw/\.github/workflows/release\.yml@refs/' \
  --certificate-oidc-issuer https://token.actions.githubusercontent.com Thaw.dmg
Thawの配布物検証手段:Developer ID署名と公証、SLSA provenance、Cosign keyless署名、CycloneDX SBOM、GPG署名タグ
`docs/VERIFYING_RELEASES.md` が示す5経路。CI 側では OSV-Scanner が依存の既知 CVE でマージをブロックする(編集部作図)
手段 何を保証するか 出所
Developer ID 署名+公証 Apple が署名と公証を検査した配布物であること spctlstapler
SLSA ビルド来歴 このリポジトリのリリースパイプラインが生成したこと。来歴は専用の再利用ワークフローで署名され、署名者を固定して検証できる actions/attest・GitHub Attestation Store・*.intoto.jsonl
Cosign(keyless) .dmg と SBOM が release.yml ワークフローの OIDC 身元で署名されたこと Releases の *.sigstore.json
CycloneDX SBOM SwiftPM 依存の機械可読な一覧(Syft で生成、ダイジェスト固定) Thaw_<tag>.cdx.json
GPG 署名タグ リリースタグが保守者の鍵で署名されていること git verify-tag <tag>
Sparkle EdDSA アプリ内更新の zip/差分が公開鍵で検証されること。appcast は HTTPS 配信 SUPublicEDKeythaw-app.github.io/updates/appcast.xml

1点、表記の食い違いがある。README のバッジは「SLSA Build L3」を掲げるが、docs/VERIFYING_RELEASES.md は同じ来歴を「SLSA v1.0 Build L2」と2箇所で説明している。L3 はビルド環境の隔離とプラットフォームによる来歴生成を要求するため、どちらが正確かで意味が変わる。当サイトは文書側(L2)を採り、バッジは要確認として扱う。

CI 側の防御も .github/SECURITY.md に書かれている。OSV-Scanner が Package.resolved の依存に未抑制の CVE があるとマージを止め、抑制する場合は osv-scanner.toml に理由と期限(ignoreUntil)が必須になる。3.0 の Privacy ペインには「アプリが行う全ネットワーク通信」が一覧され、一覧に無いネットワーククライアントがコードに現れるとビルドが失敗するテストがある。アプリ自体は App Sandbox ではない(entitlements に com.apple.security.app-sandbox が無い。アクセシビリティ API で他アプリの項目を動かす性質上、サンドボックス化は難しい)。

類似ツールとの比較と、Thawを選ぶ基準

メニューバー管理は有料の Bartender が長く定番で、無料側は Ice と、その後継である Thaw が担っている。公式資料で裏の取れる範囲で比べる。

観点 Thaw Ice(派生元) 有料の商用ツール(Bartender 等)
ライセンス・価格 GPL-3.0・無料・サブスク無し MIT 系 OSS・無料 有償(各社の価格は当サイトでは未確認)
対応 macOS 2.x は 26 以上、3.x は 27 のみ、14/15 は 1.3.0-beta.1 Thaw の派生時点の対応 各社の公表値に依存
自動化 thaw:// アクション・設定 URI・スクリプトフック・Shortcuts・Raycast 公式拡張 製品ごとに異なる
配布物の検証 公証・SLSA・Cosign・SBOM・GPG タグを文書化 公証は一般的、来歴・SBOM は稀
テレメトリ なし(README 明記・3.0 で通信一覧を UI 化) 製品ごとに異なる
画面収録権限 任意(無くても管理機能は動く) 製品ごとに異なる

Ice と商用ツールの列は当サイトで一次資料に当たっていない項目を「—」にしている。Thaw を選ぶ基準は次の3つに絞れる。

macOS 26 以降を使っている:2.0 以降は 26 必須。14/15 の Mac は 1.3.0-beta.1 で止まるため、他の選択肢を検討した方がよい
ランチャーやスクリプトから操作したいthaw:// と設定 URI、フックの3点は無料ツールとしては珍しく、Raycast 利用者には公式拡張がある
配布物の来歴を確認したい組織:SLSA・Cosign・SBOM・OSV-Scanner の運用が文書化されており、社内配布の審査材料になる

まとめ

Thaw は「メニューバーを片付ける」道具として十分に成熟しつつ、開発者が自動化に組み込める入口と、配布物を検証する経路を公式に用意している点で他と違う。一方で 2026年9月は alpha・beta・stable が同時に動く過渡期で、macOS 27 向けの 3.0 はまだトリガーやスクリプトが移植されていない。

macOS 26 の常用機には 2.0.1、2.1 の項目グループやトリガーが欲しければ beta、macOS 27 のベータ機だけ 3.0 alpha を Nightly で追う。導入したら `thaw://` の7アクションをランチャーに割り当て、社内配布なら `gh attestation verify` と `cosign verify-blob` で来歴を確かめてから配る。SLSA レベルの表記揺れ(バッジ L3・文書 L2)は、現時点では文書側の L2 で読んでおくのが安全だ。

参照ソース

thaw-app/Thaw(公式リポジトリ) — README・CHANGELOG.md・FREQUENT_ISSUES.md・docs/ARCHITECTURE.mddocs/URI_SCHEMES.mddocs/HIDDEN_FLAGS.mddocs/VERIFYING_RELEASES.md.github/SECURITY.md(2026-09-15 時点、既定ブランチ development・コミット dacd656)
Thaw Releases(GitHub) — 2.0.1(Latest・2026-09-02)、2.1.0-beta.3(2026-09-14)、3.0.0-alpha.5(2026-09-15)
Homebrew Cask: thawversion "2.0.1"depends_on macos: :tahoeauto_updates true
jordanbaird/Ice — 派生元