# Takumi Agent のアンインストール {#uninstall}

Takumi Agent を Mac デバイスからアンインストールするには、下記のコマンドを実行した後、Takumi Agent のアプリ自体を削除してください。**ユーザーが Mac デバイス上にログインしている状態で**実行する必要があります。

```sh
sudo /Applications/TakumiAgent.app/Contents/Helpers/takumi-agent-endpoint uninstall --system --untrust-ca
```

:::warning
Takumi Agent のアプリを削除するだけではシステム拡張とネットワーク設定が残存します。Takumi Agent を完全にデバイスから取り除く場合は上記コマンドを実行する必要があります。
:::

## コマンドの動作 {#order}

アンインストール用のコマンドは次の順で各段階を実行します。

1. **システム拡張を削除**：この時、macOS が確認を一度表示することがあり、承認が必要となります
2. **管理コンソールへ報告**：管理コンソール上では、当該デバイスは**オフライン**ではなく**削除済み**と表示されます
3. **バックグラウンドサービスおよび関連ファイルの削除**：シェルおよびアプリ向けの信頼設定（`/etc/takumi-agent-endpoint/env.sh` と、それが設定する環境変数）も削除対象に含まれます
4. **システムキーチェーンからデバイス証明書を削除**（`--untrust-ca`）

:::info
当該コマンドは Takumi Agent のアプリケーション自体は削除しません。コマンド実行完了後、Finder で `/Applications/TakumiAgent.app` をゴミ箱にドラッグし、削除してください。
:::

アンインストール中に開いていたターミナルやアプリは、開き直すまで古い信頼設定のまま動作するため、再起動を推奨します。

:::note
Mac デバイス内でホームフォルダをデフォルトの位置から移動している、またはシンボリックリンクでユーザーホームフォルダを設定している（別のボリュームへの移動などのため）場合、コマンドはそのユーザーのファイルの削除をスキップし、手動で削除すべきファイルを出力します。それ以外のファイルはすべて削除されます。

この場合、手動で指定されたファイルの削除が必要となります。
:::

:::warning
アンインストールコマンドが最初の段階の**システム拡張を削除**の段階で失敗した場合、その後の処理は実施されず、アンインストールは完了しません。原因ごとの対処については[トラブルシューティング](/docs/ja/t/endpoint/references/troubleshooting.md#uninstall-stops)を参照してください。
:::

## `--untrust-ca` について {#untrust-ca}

デバイス証明書の削除には、管理者による macOS の確認が必要です。このフラグをアンインストール用のコマンドに付けなかった場合や確認を拒否した場合も、それ以外はすべて削除され、キーチェーンアクセスで証明書を手動で削除する方法が出力されます。秘密鍵は既に削除されているため、残った証明書で署名されることはありません。

## アンインストール後の管理コンソールの表示 {#after}

Takumi Agent をアンインストール後、デバイスは **削除済み** と表示され、詳細には **エージェントが端末上で削除されました** という行が `システム全体のアンインストール · <日時>` の値で表示されます。判定は **保護なし** とされ、**オフライン** とは表示されません。

Takumi Agent がアンインストールされたデバイスは、管理コンソールから[デコミッション](/docs/ja/t/endpoint/features/managing-devices.md#decommission)されるまで**削除済み**と表示された状態で残存します。デコミッションすると **失効済み** の扱いとなり、デバイス一覧にて削除済みの絞り込みからは外れます。

## 再登録 {#re-enrolment}

新しい登録キーで再度インストールすると、**新しいデバイス ID** が発行されます。管理コンソール上では新しいデバイス（行）として表示され、**保護中** の扱いになります。古いデバイス（行）は、デコミッションするまで **削除済み** のまま残ります。

Takumi Agent をアンインストールした後も、管理していた組織上の古いデバイスは自動でデコミッションはされません。アンインストール以降のデバイスの管理が不要であれば、管理コンソールからデコミッションしてください。
