MacBookのノッチをAIコーディングエージェントのコントロールセンターに変えた

Dev.to / 2026/4/5

💬 オピニオンDeveloper Stack & InfrastructureTools & Practical Usage

要点

  • この記事では、MacBookのDynamic Island(ノッチ)を複数のAIコーディングエージェントセッション(例:Claude Code)のためのリアルタイム・ダッシュボードとして再活用する、無料のオープンソースmacOSアプリ「CodeIsland」を紹介する。
  • CodeIslandは「コンテキストスイッチング」のつらさに対処し、どのターミナル/プロジェクトがアクティブか、承認や入力が必要なセッションはどれか、サブエージェント/ツールの動作状況などを一目で把握できるようにする。
  • アプリには、AnthropicのOAuth APIを使ってリアルタイムの5h/7dの利用率を取得し、AnthropicトークンはmacOSのキーチェーンに保存することで、Claudeの利用状況のモニタリング機能を備える。
  • セッションは端末タグを色分け(例:cmux/ghostty/iTerm)して表示し、アクティブなセッションを強調することで、ノッチから権限や応答の管理をより簡単にする。
  • この記事ではCodeIslandをワークフロー改善の手段として位置づけ、Alt-Tabの回数を減らし、AIコーディングの監視と制御を1つのコンパクトなUI面に集約する点を強調している。

Claude Code を使っているすべての開発者が知っているであろう悩みがあります。ターミナルのセッションが5つ以上動いていて、Claude が1つのタブで許可を求めてきているのに、別のタブでは入力待ち、さらに3つ目のタブでは埋もれている——そんな状況です。あなたは必死に Alt-Tab して状況を見失い、時間を無駄にします。

そこで私は CodeIsland を作りました。これは無料のオープンソースの macOS アプリで、MacBook のノッチ(Dynamic Island)を、AI コーディングエージェントすべてのためのリアルタイムダッシュボードに変えます。

問題

複数の Claude Code セッションを、異なるプロジェクトにまたがって実行しているとき、すべてを一目で確認する方法がありません。あなたは次のために、常にターミナルを切り替えています。

  • どのセッションが完了したかを確認する
  • 許可リクエストを承認する
  • Claude の質問に答える
  • 使用量の上限を監視する

CodeIsland での全体ワークスペース
cmux 上で複数の Claude Code セッション。CodeIsland がノッチからすべてを監視

解決策:ノッチを強化

CodeIsland は MacBook のノッチに常駐します。折りたたまれているときは小さなステータス表示を行い、展開すると完全なコントロールパネルになります。

使用量の統計が表示されたセッション一覧
稼働中のプロジェクト、ターミナルのタグ、使用量の統計、Claude Code の相棒が表示されたセッション一覧

ノッチからできること

1. すべてのセッションを監視

すべての Claude Code セッションが、見やすい一覧で表示されます。

  • 色分けされたターミナルタグ(cmux ブルー、Ghostty パープル、iTerm グリーン)
  • アクティブなセッションはアクセント背景で強調表示
  • リアルタイムのツール追跡とサブエージェントのステータス

2. Claude の使用状況の監視

使用率(5h/7d)を、Anthropic の OAuth API からリアルタイムで取得します。プラグインは不要です。macOS のキーチェーンからトークンを読み取るだけです。

使用量の統計バー
5h 22% と 7d 30% をプログレスバーとリセットタイマー付きで表示

3. チャット履歴 & コード差分

任意のセッションをクリックすると、ツール呼び出しのステータス表示や、緑/赤で強調されたコード差分を含む、完全な会話内容を確認できます。

チャットの詳細表示
ツール呼び出し、コード編集、「ターミナルへ移動」ボタンを含む完全な会話ビュー

4. 相棒に会おう

Claude Code の /buddy システムと完全に統合しています。相棒の種族、レア度、ステータス、そして性格がわかります。

相棒カード
伝説のタコ「Kris」:完全な ASCII アートとステータスバー付き

5. スマート設定

必要なものがすべて揃った、コンパクトな2カラムレイアウトです。

設定ページ
Star & Feedback ボタン付きでスッキリした設定 — v1.8.0

重要な「スマート機能」

スマートなポップアップ抑制

通知アプリで一番イラつくことは何でしょう?通知している“その画面”をすでに見ているときに割り込んでくることです。

CodeIsland は いま見ているターミナルタブがどれかを検出します。もし、あなたがすでに見ている cmux ワークスペースで Claude セッションが完了しているなら、ポップアップは表示されません。見えていないセッションにだけ通知します。

対応:cmux(ワークスペース単位)、iTerm2(セッション単位)、Ghostty(ウィンドウ単位)、Terminal.app(タブ単位)。

AskUserQuestion のクイック返信

Claude が複数選択肢の質問を投げてきたとき、選択肢はノッチ内にボタンとして表示されます。どれかをクリックすると、cmux send 経由で答えが自動的にあなたのターミナルへ送信されます。ウィンドウを切り替える必要はありません。

1クリックでターミナルへジャンプ

各セッションには緑のターミナルボタンがあります。クリックすると、CodeIsland が正確な cmux ワークスペース(または iTerm のタブ、Ghostty のウィンドウ)を見つけて、手前に表示します。

サブエージェントの追跡

Claude がサブエージェントを立ち上げると、リアルタイムで ⚡ バッジとともに表示されます。各エージェントのタスクを示す折りたたみ可能な詳細ビューも確認できます。

ターミナル対応

ターミナル 検出 ジャンプ クイック返信 スマート抑制
cmux 自動 ワークスペース単位 ワークスペース単位
iTerm2 自動 AppleScript セッション単位
Ghostty 自動 AppleScript - ウィンドウ単位
Terminal.app 自動 有効化 タブ単位
Warp 自動 有効化 - -
VS Code 自動 有効化 - -
+ 5 more 自動 有効化 - -

技術スタック

  • Swift + SwiftUI — ネイティブの macOS、約70の Swift ファイル
  • Unix Socket — Python ブリッジ経由で Claude Code からイベントをフック
  • Anthropic OAuth API — 直接の利用統計、ミドルウェアなし
  • macOS Keychain — 追加設定不要の認証
  • AppleScript — ターミナルの検出と制御
  • Get It

    完全に無料でオープンソースです。商業的な意図はありません——ただの情熱プロジェクトです。

    git clone https://github.com/xmqywx/CodeIsland.git
    cd CodeIsland
    xcodebuild -scheme ClaudeIsland -configuration Release build
    

    GitHub: github.com/xmqywx/CodeIsland

    cmux(Ghostty をベースにした最新のターミナルマルチプレクサ)と組み合わせると最も効果的です。

    もし役に立つと思ったら、GitHubで ⭐ をつけていただけると本当に励みになります。アップデートを継続して出せるのは、それが理由です。

    もちろん、Claude Code だけで完全に作られています。