チュートリアル 2026-05-10 · 約 18 分

AWS Agent Toolkit と Amazon Bedrock、関連 CLI がタイムアウトしやすいとき:2026 年、Clash の分流で npm・GitHub・MCP を束ねてエージェント開発環境を安定させる

2026 年春先からドキュメントやイベントでも注目が高まっている AWS Agent Toolkit は、生成 AI エージェントをクラウド側で組み立てやすくする流れの一部として、「コードとインフラ」「モデル API」「ローカル MCP」までを短いサイクルで回したくなるタイミングと相性がよい題材です。とはいえ実務では Amazon Bedrock のエンドポイント、資格情報チェーン、AWS CLI と関連ツール、さらに npmGitHubModel Context Protocol(MCP) がほぼ同時に動くと、ブラウザのコンソールだけが速く見えて、ターミナルやエージェント本体だけが timeout や再試行だらけになることがあります。本稿は汎用エディタの話題とは切り分け、AWS 側 API と開発者向け依存取得出口・DNS・長接続のどこで割れるかに焦点を当て、Clash分流ルールノード選択で整える手順に絞ります。Cursor などエディタ全体の AI 通信と重なるホストは二重管理せず、ログで実名を確認したうえで統合してください。職場のセキュリティ方針と各サービスの利用規約は必ず順守してください。

なぜ「AWS Agent Toolkit を試したら、Bedrock と CLI だけ不安定」になりやすいか

エージェント開発のワークフローは、単一の HTTP セッションではなく、認証・モデル推論・テンプレート取得・依存インストール・Git 操作といった性質の違う通信が短時間に束になるのが普通です。AWS CLI は環境変数や設定ファイルを読み、SDK は別プロセスで動き、Node 系の npm はプロキシを無視しがちです。MCP サーバーがローカルで別ポートを開けば、その子プロセスまで含めて「ブラウザが見ている経路」とズレます。

  • リージョンとサービスの組み合わせAmazon Bedrock は実際に叩くホストがコントロールプレーンとランタイムで分かれ、OIDC/STS や SSO のドメインともセットになりやすい。
  • オブジェクト配布の分散GitHub の HTML が速くても objects.githubusercontent.com が別ポリシーに落ちると、取得途中で張り直される。
  • レジストリとモデルの競合npm の tarball と長めの推論ストリームが同じ測定グループにあると、体感は「全部が遅い」ではなく「特定コマンドだけ失敗」に見える。

観測のコツ

速度より先に、Connections に出たホスト名と実際の outbound 名をメモする。分流ルールは辞書を広げるほど誤爆も増えるので、失敗 URL を起点に 1 行ずつ足す方が安全です。

AWS Agent Toolkit 周辺で束ねたいドメインバケット

環境やアカウント設定で増減しますが、エージェント雛形や IaC、モデル呼び出しをまとめて触るときは、だいたい次のようなバケットに分類すると運用が楽です。表のホストは例であり、必ず自環境のログで実名を確認してください。

バケット 代表ホスト(例) メモ
AWS API(Bedrock ほか) *.amazonaws.com、リージョンを含む実 URL 広すぎるサフィックスより、ログで見えた実際のサフィックスから始める
認証・資格情報 SSO/OIDC を利用する場合の IdP ドメイン、STS 周辺 ブラウザログインと CLI のトークン更新で経路が割れやすい
npm / JS エコシステム registry.npmjs.org、CDN 系 ワークスペースが増えるほど同時接続が跳ねやすい
GitHub github.comraw.githubusercontent.comobjects.githubusercontent.com テンプレート取得・依存バイナリ・Actions 関連で行が増える
MCP と外部ツール MCP が叩く API、追加レジストリ 実装によっては起動時だけ外部、セッション中も常時外部が混在

リモートの rule-providers に頼る場合は、プロバイダ自体の取得が詰まると全体が不安定になるので、更新間隔と取得失敗もあわせて見ておくと安心です。

分流ルールの順序:開発者出口を GEOIP より上へ

広い GEOIP や最終 MATCH の直前まで細かい行を置き忘れると、AWS のみ別出口へ吸われたり、逆に期待しない直結へ落ちたりします。AWS Agent Toolkit を試している途中ほど「デモ用に軽く叩いたつもりのホスト」が増えやすいので、ログで裏取りした行だけを先に置くのがコツです。

# Illustrative snippet — replace PROXY_DEV with your policy group name
rules:
  - DOMAIN-SUFFIX,amazonaws.com,PROXY_DEV
  - DOMAIN-SUFFIX,npmjs.org,PROXY_DEV
  - DOMAIN-SUFFIX,github.com,PROXY_DEV
  - DOMAIN-SUFFIX,githubusercontent.com,PROXY_DEV
  # Add IdP / SSO host suffixes you actually use (verify in logs)
  - GEOIP,CN,DIRECT
  - MATCH,PROXY

amazonaws.com はサフィックスとして広いため、運用が進んだらログベースでより狭い行へ分割すると誤爆を減らせます。社内ミラーがある場合は、そのホストは DIRECT 固定が安全なことが多いです。DOMAIN-KEYWORD は初期設定では避け、まず DOMAIN-SUFFIX と明示 DOMAIN から始めます。

DNS・fake-ip と長接続(Bedrock ストリーム/大包)

fake-ip では、アプリによって名前解決と実接続の見え方がズレ、ターミナルだけ再試行ループに見えることがあります。Amazon Bedrock のストリーム型レスポンスや大きな依存 tarball が重なると、ノード側のアイドル切断や中間機器のタイムアウトが表面化しやすいです。CLI だけおかしいときはブラウザのセキュア DNS を一時オフにして検証経路を一本化し、切り分け後に元へ戻すのが定石です。詳細は DNS 漏れと fake-ip を参照してください。

  • 二重解決:DoH と Clash 内 DNS が別回答を返すと、ルールと実接続の組み合わせがブレる。
  • IPv6:IPv4 だけ安定している出口に、AAAA が先行して失敗するケース。
  • 長めの読み取り:推論ストリームが進む一方で npm が並列ダウンロードすると、同じ測定グループに負荷が伝播する。

コンプライアンス

企業ネットワークではプロキシ迂回が禁止されていることがあります。本稿は許可された環境での経路最適化を想定しています。

ノード選択:url-test のフラップを避ける

開発者向けポリシーは「帯域テストで一位のノード」より、小さな TLS ハンドシェイクが安定するノードを選びたい場面が多いです。url-test の間隔が短すぎると出口が頻繁に切り替わり、進行中の認証フローや git/npm が張り直されてタイムアウトに見えます。間隔と tolerance を緩め、フォールバック鎖の深さを抑えると改善することがあります。

シェル・Git・パッケージマネージャのプロキシ整合は ターミナル HTTP/Git プロキシ で先に揃え、「ブラウザと同じノード名」を選んでいても当たっているルール行が違うケースを潰します。

TUN とプロセス名:エージェント子プロセスを捕まえる

環境変数だけでは拾えないトラフィックは、Clash Meta(Mihomo)系の TUN と PROCESS-NAMEPROCESS-PATH で IDE 付属の node や MCP ランチャーを明示的にマークする手があります。プロセス名は OS ごとに異なるため、タスクマネージャや ps で実名を確認してからルール化してください。

npm/pnpm/yarn を安定させる観点

  • レジストリミラーと Clash の組み合わせでループプロキシになっていないか。
  • strict-ssl 周りのエラーが、実際は経路タイムアウトの二重表示になっていないか。
  • .npmrc のレジストリ URL が、意図しないホストへ向いていないか。

MCP とエージェントを一緒に使うときの分類

MCP はローカル stdio サーバーからリモートまで幅があり、起動時に一度だけ npm で依存を取りに行く実装もあれば、セッション中も GitHub や外部 API を叩き続ける実装もあります。後者は長接続とレート制限の両方に当たりやすいので、ログで「詰まっているのはモデル API か、レジストリか、GitHub か」を分類してください。Claude Code 側の MCP 分流 と手順は似通いますが、AWS Agent Toolkit を軸にするとクラウド側 API の比率が高くなり、認証フローまで含めてホストの種類が増えやすい点が違います。

  • npx 一発起動:毎回キャッシュミスでレジストリへ戻り、渋滞時に失敗しやすい。
  • 複数 MCP の同時起動:同じ CDN 行に集中し、帯域ではなく同時 TCP 数が限界になる。
  • ローカル証明書検査:社内プロキシや検査 HTTPS と相性が出ると CLI だけ失敗に見える。

よくある質問

ブラウザの AWS コンソールは速いのに、Bedrock を叩く CLI だけタイムアウトするのはなぜ?

ブラウザと CLI で参照するプロキシ設定や DNS が一致しないと、OIDC/STS や regional endpoint への初回 TLS が別出口になります。Connections ログで bedrock-runtime など実ホストの outbound を確認してください。

npm install は通るのに、SAM や CDK のダウンロードだけ遅い

GitHub のオブジェクト URL、S3、CloudFront、それ以外の配布 CDN が別ルールに吸われている典型です。失敗 URL をログから拾い、開発者向けポリシーへまとめてください。

MCP サーバーをエージェントから使うと不安定になる

MCP は起動時だけ npm で依存を取り、セッション中も外部 API を叩く実装が混在します。ホストをレジストリ/モデル API/GitHub に分類し、測定グループを分けて混雑の伝播を避けてください。

チェックリスト

  1. ブラウザと CLI で、同一ホストの outbound が一致しているか確認する。
  2. AWS API・認証・npm・GitHub を GEOIP より上に置く(ログで実名確認)。
  3. DNS/fake-ip を切り分け、必要なら検証期間だけ経路を揃える。
  4. 開発者用ポリシーの url-test がフラップしていないか見る。
  5. MCP ごとに「起動時のみ外部」「常時外部」を分類し、混在を避ける。

まとめ

2026 年のエージェント開発では、単一の「速い VPN」よりも、Amazon Bedrock と AWS API、npm・GitHub、MCP が別々の測定グループに飲み込まれていないかを先に潰すほうが体感に効きます。汎用ブラウザ拡張や単純なシステムプロキシだけに頼ると、ターミナル子プロセスの出口が追いにくく、ログに散らばったタイムアウトの原因を特定しづらいまま時間が溶けることがあります。

一方、Clash分流ルールとポリシー分離、DNS、長接続、ノードの切り替わりといった開発者トラフィック特有の詰まりを、GUI とログで観測しながら調整しやすい設計です。ドメイン単位で意図した出口を先に決め、必要なら TUN とプロセス束ねまで踏み込めば、AWS Agent Toolkit を含むクラウド寄りのエージェント試行でも取得失敗の体感は大きく減らせることが多いです。もし同じ課題を抱えているなら、Clash を無料ダウンロードし、まずは Connections ログから出口を揃えるところから試してみてください。

Bedrock/CLI の出口を揃える

AWS API と npm・GitHub・MCP を束ね、DNS とノードのフラップを抑えてエージェント開発を安定させます。

Clash をダウンロード