# アプリウィンドウ {#app-window}

Mac デバイスのメニューバーに表示される Takumi のパンダのアイコン <img src={require("../installation-step7-menubar-icon.png").default} alt="メニューバーの Takumi のパンダ" width="44" style={{verticalAlign: "middle", borderRadius: 6}} />をクリックした際に表示されるパネルの下部の**「Takumi Agent を開く」** をクリックすると、アプリウィンドウが開きます。ウィンドウは 1 つだけで、もう一度開くと同じウィンドウが前面に表示されます。ウィンドウが開いている間はアプリが Dock に表示され、閉じるとメニューバーのみの表示に戻ります。ウィンドウの開閉は保護状態に影響しません。

:::info
アプリの表示言語は、Mac の言語設定（Takumi Agent 向け）に従います（現在は英語と日本語に対応しています）。
:::

アプリウィンドウのサイドバーは **Guard**（エコシステム・コンテナ）、**デバイス**（エグレスロック・識別情報・ヘルス）、**一般**（通知・ヘルプ）の 3 つのグループに分かれています。

このページでは、アプリウィンドウにのみ表示される内容を持つページについて説明します。

:::note
**デバイス** 配下の各ページには、メニューバーのパネルと同じ情報が広いレイアウトで表示されるため、後続の説明では割愛します。
:::

## エコシステム {#ecosystems}

Guard の各エコシステムの保護状態が一覧表示されます。一覧の下の **ポリシーで直接送信されたフロー** は、組織が保護対象としていないエコシステムについて、エージェントの最終起動以降にレジストリへ直接送られた接続の数です。すべてのエコシステムが保護対象の場合は 0 と表示されます。

<img src={require("./app-window-ecosystems.png").default} alt="エコシステムページ" className="zoomable" />

## コンテナ {#containers}

コンテナページでは、この Mac デバイス上の各コンテナランタイムでデバイス証明書を信頼させるための設定を確認できます。ページ上部には「ランタイムはデバイス証明書を信頼しますが、その中のコンテナはまだ信頼していません。」と表示されます。ランタイムごとに必要な設定と、リポジトリにコミットすべき内容については[コンテナと VM](/docs/ja/t/endpoint/development.md#containers)を参照してください。

<img src={require("./app-window-containers.png").default} alt="コンテナページ" className="zoomable" />

左部のランタイムの一覧ではコンテナのランタイムが **ブロック中**・**インストール済み**・**未インストール** に分類されています。ランタイムを選択すると、そのランタイムで起動しているコンテナ内で Takumi Agent の証明書を信頼するために必要な設定が表示されます。独自の VM を動かすランタイムでは、**「セットアップコマンドをコピー」** から VM にバンドルをインストールするコマンドを取得できます。

:::info
仮想マシンランタイムの場合 **「ゲスト用コマンドをコピー」** から、ゲスト OS 内で実行が必要なコマンドを取得できます。
:::

### コンテナ内の設定 {#inside-containers}

コンテナ内で開発する場合、コンテナの起動方法を **docker run**・**compose**・**Dockerfile**・**env file** から選び、それらに対応したコマンドを取得してください。いずれのコマンドスニペットも、トラストバンドル `/Library/Application Support/takumi-agent-endpoint-trust/bundle.pem` をコンテナ内の `/takumi/trust.pem` に設置し、`SSL_CERT_FILE`・`NODE_EXTRA_CA_CERTS`・`REQUESTS_CA_BUNDLE` でその場所を指定します。

:::info
未対応のコンテナランタイム、または独自のツール等でコンテナを起動する場合、**「バンドルのパスをコピー」** あるいは **「Finder でバンドルを表示」** からトラストバンドルの保管場所を確認し、上記と同等にトラストバンドルの設置・環境変数の指定をしてください。
:::

:::warning
バンドルは Takumi Agent をインストールした Mac デバイスにしか存在しないため、これらのスニペットはチームでコミットするファイルに含めないでください。スニペットの置き場所については[リポジトリに設定を含めない](/docs/ja/t/endpoint/development.md#keep-out-of-repo)を参照してください。
:::

## 通知 {#notifications}

コンテナ内の通信が Takumi Agent によりブロックされた際に macOS の通知を受け取るよう設定が可能です。**初期設定はオフで、このページでオンにしない限り通知されません。**

<img src={require("./app-window-notifications.png").default} alt="通知ページ" className="zoomable" />

通知の頻度と、このページの設定項目は次のとおりです。

- 通知は **ブロックが続く間、ランタイムごとに 1 日 1 回**発生します。通知の **「コンテナの信頼設定…」** を選択することでコンテナページへ直接移動できます
- 通知画面の上部トグル操作により、この Mac デバイス上のすべてのコンテナランタイムの通知をまとめて設定できます。下部では、インストール済みのランタイムごとのトグルが設定可能です。同じトグルは、コンテナページの各ランタイムのカードにも表示されます
- ページ上部のバナーには、macOS が通知を許可しているかが表示されます。macOS がまだ通知の許可を求めていない場合は **「通知を許可…」**、システム設定で通知がオフの場合は **「システム設定でオンにする…」** のボタンが表示されます

赤い「この Mac は保護されていません」の通知はこれとは別のもので、このページでオンにする必要はありません。[デバイスの状態](/docs/ja/t/endpoint/features/states.md#verdict)を参照してください。
