# エディション (/ja/docs/get-started/editions)

Echolotには、同じコードから作られた2つのエディションがあります。[echolot.dev](https://echolot.dev)から入手する<strong>直接ダウンロード版</strong>と、<strong>Mac App Store</strong>版です。
App Store版はAppleのApp Sandboxの中で動作します。サンドボックス内のアプリは、ネットワークの利用、ユーザが選んだファイルの読み書き、アプリ自身のデータの保持ができます。
一方で、Macで他のプログラムを起動したり、他のアプリのファイルを読み書きしたりすることはできません。以下の違いのほとんどは、この制限によるものです。

App Store版はまだApp Storeで公開されていません。このページでは、そのしくみを説明しています。

## 各エディションの機能 [#what-each-edition-has]

| | 直接ダウンロード版 | Mac App Store |
| --- | --- | --- |
| すべてのプロトコル：HTTP/1.1、HTTP/2、HTTP/3、GraphQL、gRPC、WebSocket、SSE、Socket.IO、MQTT | ✓ | ✓ |
| ファイルとしてのワークスペース、Git、環境、キーチェーンのシークレット | ✓ | ✓ |
| スクリプト、テスト、ランナー、データ駆動の実行 | ✓ | ✓ |
| 履歴、保存済みのレスポンス、保存時の暗号化 | ✓ | ✓ |
| 仕様、モック、スケジュールとWebhookを使うフロー | ✓ | ✓ |
| 読み込みと書き出し | ✓ | ✓ |
| クイック送信、そのグローバルショートカット、ショートカットのアクション、クイックルック | ✓ | ✓ |
| HTTP経由のMCPサーバ | ✓ | ✓ |
| ローカルプログラムとして動くMCPサーバ（stdio：`npx`、`uvx` など） | ✓ | ワークスペースには残りますが、起動はしません。コマンドラインツールか直接ダウンロード版を使ってください。 |
| APIキー、Ollamaなどの互換サーバ、Appleのオンデバイスモデルを使うアシスタント | ✓ | ✓ |
| コマンドラインのエージェント（Claude Code、Codex、Gemini CLI）を使うアシスタント | ✓ | ✗ |
| Echoとそのコメント機能（AI） | ✓ | ✓ |
| 外部エージェント向けのEcholotのMCPサーバ | ✓ | ✓（別途インストールするコマンドラインツール経由） |
| 他のアプリの設定からのMCPサーバの読み込み | 自動で検出 | 設定ファイルを自分で選びます。パネルは適切なフォルダで開きます |
| Claude Code、Cursor、VS Code、Codexの接続 | ✓ | ✓（別途インストールするコマンドラインツール経由） |
| Claude Desktop拡張機能（`.mcpb`）、<strong>Claudeに追加</strong> | ✓ | ✗ |
| コマンドラインツール | アプリに内蔵。<strong>Echolot › コマンドラインツールをインストール…</strong> | 単体でインストール（リリースページのzip） |
| アップデート | アプリ内で、<strong>Echolot › アップデートを確認…</strong> | App Store |
| ベータ版の有効期限 | あり（リリースから30日） | なし（ベータ版はTestFlightで配布） |

ワークスペース外のファイルの扱いも異なります。App Store版のEcholotは、「開く」パネルでユーザが選んだファイルしか読み取れません。
ワークスペースを開いたとき、およびリクエストに使うファイル（ファイルからストリーミングするボディ、フォームの部分、クライアント証明書）を選んだときは、そのつど記憶します。
記憶は再起動後も、ファイルを移動した後も有効です。
リクエストファイルにパスを手で書いた場合など、Echolotに渡されていないファイルが必要な送信は、`Echolot is not allowed to read “…”`というエラーで失敗します。
失敗したレスポンスで<strong>アクセスを許可…</strong>を選び、そのファイルを選んでください。
[トラブルシューティング](/docs/troubleshooting)も参照してください。

## どちらを選ぶか [#which-to-choose]

次のような場合は<strong>直接ダウンロード版</strong>を選びます。

- ローカルプログラムとして動くMCPサーバを使う（`npx`、`uvx`、`docker`、バイナリで起動するサーバのほとんど）。
- アシスタントにClaude Code、Codex、Gemini CLIを操作させたい。
- コマンドラインツールをアプリと一緒にインストール・更新したい。または、ワンクリックのClaude Desktop拡張機能を使いたい。

次のような場合は<strong>App Store版</strong>を選びます。

- App Storeのアプリを好み、そのアップデートとアプリを囲むサンドボックスを使いたい。
- MCPサーバにHTTPで接続できる。

どちらも同じワークスペースを開けるので、後から変更できます。

## エディション間の移行 [#moving-between-editions]

macOSから見ると、2つのエディションは同じアプリです。そのため、同時にインストールできるのは一方だけです。
使わなくなる方を終了して削除し（[アンインストール](/docs/get-started/install#uninstall)）、もう一方をインストールします。

- <strong>ワークスペース</strong>は通常のフォルダなので、どちらのエディションでも開けます。App Store版では、それぞれ1回、<strong>ファイル › ワークスペースを開く…</strong>またはFinderから開いてください。
  これでサンドボックスがEcholotに読み取りを許可します。以降は<strong>ファイル › 最近使った項目を開く</strong>に残ります。
- <strong>シークレット</strong>はログインキーチェーンに残り、共有されます。もう一方のエディションが、作成していないシークレットを初めて読み取るとき、macOSが項目ごとに1回確認します。
  <strong>常に許可</strong>を選んでください。コマンドラインツールも同じように確認します。
- アシスタントの<strong>モデルキー</strong>も、もう一方のエディションで1回確認されます。<strong>設定 › アシスタント</strong>でもう一度追加することもできます。
- <strong>履歴と保存済みのレスポンス</strong>は、記録したエディションに残ります。エディションごとに保存先のフォルダが異なります。失われるのは過去のレスポンスだけで、リクエストは失われません。

## 各エディションのデータの保存先 [#where-each-edition-keeps-its-data]

ワークスペースは、どちらのエディションでも保存した場所にあります。Echolot自身のデータ（保存済みのレスポンスボディ、履歴、クラッシュレポート、アシスタントの会話、サンプルワークスペース）は次の場所にあります。

| エディション | フォルダ |
| --- | --- |
| 直接ダウンロード版 | `~/Library/Application Support/Echolot` |
| Mac App Store | `~/Library/Containers/com.staticdreams.Echolot/Data/Library/Application Support/Echolot` |

<strong>設定 › 情報 › レスポンスと履歴 › Finderに表示</strong>で、該当するフォルダが開きます。このフォルダを削除すると、履歴と保存済みのレスポンスは失われますが、リクエストは失われません。

## App Store版のコマンドラインツール [#the-command-line-tool-for-app-store-users]

App Storeではアプリの外にコードをインストールできないため、App Store版にはコマンドラインツールが含まれません。ツールは単体でインストールしてください。
[リリースページ](https://github.com/staticdreams/echolot-public/releases)から`echolot-<version>-macos.zip`をダウンロードします。ツールに有効期限はありません。
[コマンドラインツール](/docs/cli)を参照してください。

次のような場合に必要です。

- ターミナルやCIでワークスペースを実行する。
- ローカルプログラムとして起動するMCPサーバを実行する（`echolot mcp check`、`echolot mcp serve`）。
- Claude Code、Cursor、VS Code、Codexなどの外部エージェントを接続する。これらの設定にはツールの名前が書かれます。ワークスペースがアプリで開いている間、その呼び出しはアプリ内で実行され、そこで承認します。
  [エージェント](/docs/ai/agents)を参照してください。
