メインコンテンツまでスキップ

プロキシを使用する

ネットワーク環境で LLM API やその他の外部サービスにアクセスするためにプロキシサーバーが必要な場合、Elftia では柔軟なプロキシ設定オプションを利用できます。

プロキシモード

Elftia は 3 つのプロキシモードをサポートしています。

モード動作用途
システムプロキシオペレーティングシステムのプロキシ設定に従いますシステムレベルでプロキシを設定済みのユーザー
カスタムプロキシElftia で指定したプロキシアドレスを使用しますElftia 用に個別のプロキシが必要なユーザー
プロキシなしプロキシを使わず直接接続しますネットワークからすべてのサービスに直接アクセスできる場合

設定手順

方法 1: 設定ページで設定する

  1. 設定 → 一般 を開きます。
  2. プロキシ 設定エリアを見つけます。
  3. プロキシモードを選択します。

システムプロキシ

「システムプロキシ」を選択すると、Elftia はオペレーティングシステムのプロキシ設定を自動的に検出して使用します。

  • Windows: インターネットオプションからプロキシ設定を読み取ります。
  • macOS: システム環境設定からネットワークプロキシ設定を読み取ります。
  • Linux: http_proxy/https_proxy 環境変数を読み取ります。

これは最も簡単な方法です。オペレーティングシステムですでにプロキシを設定している場合(例: Clash、V2Ray、または同様のプロキシクライアント経由)、このオプションを選択してください。

カスタムプロキシ

「カスタムプロキシ」を選択すると、プロキシアドレスを入力するための入力欄が表示されます。

  1. 次の形式でプロキシ URL を入力します。
    http://host:port
    または認証付きの場合:
    http://username:password@host:port
  2. 一般的な例:
    • ローカル HTTP プロキシ: http://127.0.0.1:7890
    • ローカル SOCKS5 プロキシ: socks5://127.0.0.1:1080
    • 認証付きプロキシ: http://user:[email protected]:8080
  3. 保存 ボタンをクリックして設定を適用します。

プロキシなし

「プロキシなし」を選択すると、Elftia はすべてのプロキシ設定をスキップし、対象サーバーへ直接接続します。

方法 2: 環境変数で設定する

システム環境変数を使ってプロキシを設定することもできます。Elftia はこれらを自動的に認識します。

環境変数目的
HTTP_PROXYHTTP リクエスト用のプロキシアドレス
HTTPS_PROXYHTTPS リクエスト用のプロキシアドレス
ALL_PROXYすべてのリクエスト用のプロキシアドレス(上記 2 つが設定されていない場合)
NO_PROXYプロキシを使用しないドメインのカンマ区切りリスト

Windows で環境変数を設定する:

# PowerShell (permanent for current user)
[Environment]::SetEnvironmentVariable("HTTPS_PROXY", "http://127.0.0.1:7890", "User")

macOS / Linux で環境変数を設定する:

# Add to ~/.bashrc or ~/.zshrc
export HTTPS_PROXY="http://127.0.0.1:7890"
export HTTP_PROXY="http://127.0.0.1:7890"
備考

Elftia のプロキシモードが「カスタムプロキシ」に設定されている場合、アプリ内で設定したプロキシアドレスが環境変数より優先されます。「システムプロキシ」に設定されている場合は、環境変数とシステムプロキシ設定の両方が考慮されます。

プロキシを使用するサービス

プロキシ設定は、次のネットワークリクエストに影響します。

サービス説明
LLM API 呼び出しすべての LLM プロバイダー(OpenAI、Anthropic、Gemini など)への API リクエスト
MCP 接続MCP サーバーへの SSE/HTTP 接続(stdio モードは影響を受けません)
Web 検索Agent の Web 検索および Web スクレイピングリクエスト
自動更新アプリケーション更新の確認とダウンロード
リモートリソース壁紙画像やリモートフォントなどのリモートリソースの読み込み

次のサービスはプロキシの影響を受けません

サービス理由
MCP stdio 接続ローカルのサブプロセス通信を使用し、ネットワークを使用しません
ローカルファイル操作Agent のファイル読み書き、Shell コマンドなど
データベース操作SQLite ローカルデータベース

プロキシ認証

プロキシでユーザー名とパスワードによる認証が必要な場合:

  1. カスタムプロキシ URL に認証情報を含めます。
    http://username:[email protected]:8080
  2. または、一部のプロキシクライアントでは、ローカルで認証不要の転送ポートを有効にできます。そのポートへ接続できます。

プロキシが動作しているか確認する

プロキシを設定した後、次の手順で動作していることを確認できます。

  1. 設定 → プロバイダー設定 を開きます。
  2. API Key が設定済みのプロバイダーを選択します。
  3. 接続テスト をクリックします。
  4. テストが成功した場合(緑色の通知)、プロキシ設定は正しいです。
  5. テストが失敗した場合は、次を確認してください。
    • プロキシアドレスとポートが正しいか
    • プロキシサービスが実行中か
    • プロキシが対象 API ドメインへのアクセスを許可しているか

よくある問題

ECONNREFUSED エラー

原因: プロキシサーバーが実行されていないか、アドレスまたはポートが正しくありません。

解決策:

  1. プロキシクライアント(Clash、V2Ray など)が実行中であることを確認します。
  2. プロキシの待ち受けアドレスとポートが、Elftia で設定したものと一致しているか確認します。
  3. 一部のプロキシクライアントは、デフォルトで 0.0.0.0 ではなく 127.0.0.1 のみを待ち受けます。

ETIMEDOUT エラー

原因: プロキシサーバーが対象アドレスに接続できません。

解決策:

  1. プロキシの上流接続が動作しているか確認します。
  2. プロキシルールが LLM API ドメイン(例: api.openai.comapi.anthropic.com)へのアクセスを許可していることを確認します。
  3. 一部のプロキシルールパターンでは、デフォルトで API ドメインがプロキシ対象にならない場合があります。手動で追加する必要があることがあります。

SSL/TLS 証明書エラー

原因: プロキシサーバーが HTTPS 復号に自己署名証明書を使用しています。

解決策:

  1. プロキシでルート証明書のインストールが必要な場合は、プロキシクライアントのドキュメントに従って証明書をインストールし、信頼します。
  2. 一部の企業プロキシは HTTPS の中間者検査を行います。システムで企業のルート証明書を信頼する必要がある場合があります。

一部のプロバイダーでのみプロキシが動作する

原因: プロバイダーごとに API ドメインが異なり、異なるプロキシルールが必要な場合があります。

解決策:

  1. プロキシのルーティングルールが、必要なすべての API ドメインをカバーしていることを確認します。
  2. 一般的な LLM API ドメインには次のものがあります。
    • api.openai.com
    • api.anthropic.com
    • generativelanguage.googleapis.com
    • api.deepseek.com

プロキシを設定しても接続の問題が続く場合は、より詳しいトラブルシューティング手順について 接続エラー を参照してください。