Notchy — ノッチに表示する軽量ターミナル(macOS)
概要
Notchyは、MacBookのノッチ(ディスプレイ上部の切り欠き)周辺に浮かぶ小さなターミナルパネルを提供するmacOS向けメニューバーアプリです。ホバーやアイコンクリックで呼び出せる軽量な端末ウィンドウは、複数の埋め込みセッションをサポートし、システム上で開いているXcodeプロジェクトを自動検出してそのディレクトリへ移動します。開発中に素早くターミナル操作へアクセスしたいデベロッパー向けのユーティリティで、画面のノッチ領域をうまく活用するユーザーインターフェースが特徴です。(約300字)
リポジトリの統計情報
- スター数: 63
- フォーク数: 5
- ウォッチャー数: 63
- コミット数: 3
- ファイル数: 6
- メインの言語: Swift
主な特徴
- ノッチ統合:MacBookのノッチ部分にホバーでターミナルパネルを表示
- Xcodeプロジェクト検出:開いているXcodeプロジェクトを自動発見してそのフォルダへcd
- メニューバーからの素早い起動:常駐するNSStatusItemベースの操作
- 埋め込みセッション:複数のターミナルセッションを内部で管理(スイッチ可能)
技術的なポイント
NotchyはSwiftで書かれたmacOSアプリで、典型的なメニューバー常駐アプリの構成を持ちます。UIはAppKitベースで実装されていることが想定され、NSStatusItemやカスタムNSWindow/NSPanelを用いてノッチ付近に浮かぶ軽量ウィンドウを表示します。ノッチ領域の扱いにはスクリーンのセーフエリア情報(safeAreaInsets)やウィンドウのフレーム計算を用いて、表示位置を精密に合わせる必要があります。Xcodeプロジェクトの自動検出は、NSWorkspaceのウィンドウ/アプリケーション通知やファイルシステムの走査、あるいはAppleScript/IDEの公開APIを利用して開いているプロジェクトのパスを取得し、内部でシェルセッション(PTY)を生成してそのディレクトリへcdさせる仕組みが考えられます。埋め込みターミナルは、軽量なVT100エミュレーションや既存の端末ライブラリを組み合わせるか、Web技術を使ったWebView内のターミナル実装を用いることで実現できます。また、ノッチへのホバーでの表示はマウスイベントとウィンドウの動的表示制御が絡むため、レスポンス良く動かすためのイベントデバウンスやアニメーション制御、アクセシビリティ権限の留意が必要です。リポジトリ構成からは小規模でシンプルな実装を意図していることが読み取れ、Xcodeプロジェクトとして配布されるためローカルでのビルド・拡張が容易です。(約700字)
プロジェクトの構成
主要なファイルとディレクトリ:
- .gitignore: file
- CLAUDE.md: file
- LICENSE: file
- Notchy.xcodeproj: dir
- Notchy: dir
…他 1 ファイル
READMEの抜粋:
Notchy
A macOS menu bar app that puts Claude Code right in your MacBook’s notch. Hover over the notch or click the menu bar icon to open a floating terminal panel with embedded sessions that automatically detect your open Xcode projects.
Features
- Notch integration — hover over the MacBook notch to reveal the terminal panel
- Xcode project detection — automatically discovers open Xcode projects and
cds into them - *…
まとめ
ノッチを活かした素早いターミナルアクセスを提供する軽量ツール(約50字)。