fiddler-download-setup について
fiddler-download-setup は、Fiddler Everywhere のダウンロード、インストール、起動を案内するスキルで、新規導入や更新を行うユーザー向けです。OSやバージョンを確認し、完了後にMCP設定の手順を案内します。
主な機能
- 01インストール状況とバージョンの確認
- 02OSとアーキテクチャの検出
- 03マニフェストから最新バージョンを取得
- 04アプリのダウンロードとインストール
- 05Fiddler Everywhere の起動
- 06MCP設定への次の手順を案内
活用シーン
- 01端末への Fiddler Everywhere の導入
- 02既存インストールの更新要否の確認
- 03OSに応じたダウンロードとインストール
- 04導入後の Fiddler MCP 接続設定
MCP 対応
このスキル自体はMCPサーバーを提供しません。Fiddler Everywhere のインストールと起動後、Fiddler MCP サーバー接続の設定を案内します。承諾された場合、fiddler-mcp-setup スキルを呼び出します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ telerik/ fiddler-agent-tools --skill fiddler-download-setupインストール後、Claude Code で/fiddler-download-setupを入力して読み込まれたか確認します。
詳細
Fiddler のダウンロードとセットアップ
Fiddler Everywhere のダウンロード、インストール、起動をユーザーに案内します。
実行ルール
- このスキルはシェルを優先します。Fiddler はまだインストールされていないため、MCP ツールは利用できません。
- ダウンロード URL を作成する前に、マニフェストから現在のバージョンを確認してください。 バージョン番号をハードコードしないでください。
- Windows の場合 — 起動中のターミナルを検出します。PowerShell ではない場合に限り、スクリプトを
powershell.exe -Command 'script'でラップして実行します。スクリプトはシングルクォートで囲んでください!
フェーズ 1 — Fiddler がすでにインストールされているか確認する
ダウンロードする前に、Fiddler Everywhere がすでにインストールされているか確認してください。 インストールされている場合は、インストール済みのバージョンも読み取り、最新のリリースと比較してください。アプリがインストールされていない場合、またはアップデートが利用可能でユーザーがアップグレードを希望する場合に限り、フェーズ 2 に進んでください。
macOS — 検出とバージョン確認
if [ -d "/Applications/Fiddler Everywhere.app" ]; then
INSTALLED_VERSION=$(/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" \
"/Applications/Fiddler Everywhere.app/Contents/Info.plist" 2>/dev/null)
echo "INSTALLED: $INSTALLED_VERSION"
else
echo "NOT_INSTALLED"
fi
INSTALLED の場合、検出されたアーキテクチャに対応する最新バージョンを取得して比較します。
ARCH=$(uname -m)
if [ "$ARCH" = "arm64" ]; then
MANIFEST_URL="https://downloads.getfiddler.com/mac-arm64/latest-mac.yml"
else
MANIFEST_URL="https://downloads.getfiddler.com/mac/latest-mac.yml"
fi
LATEST_VERSION=$(curl -s "$MANIFEST_URL" | grep '^version:' | awk '{print $2}')
echo "Installed: $INSTALLED_VERSION | Latest: $LATEST_VERSION"
if [ "$INSTALLED_VERSION" = "$LATEST_VERSION" ]; then
echo "UP_TO_DATE"
else
echo "UPDATE_AVAILABLE"
fi
Linux — 検出とバージョン確認
APPIMAGE=$(ls ~/Downloads/fiddler-everywhere-*.AppImage 2>/dev/null | sort -V | tail -1)
if command -v fiddler-everywhere &>/dev/null || [ -n "$APPIMAGE" ]; then
# Extract version from AppImage filename as the most reliable source
INSTALLED_VERSION=$(echo "$APPIMAGE" | grep -oP '[\d]+\.[\d]+\.[\d]+')
echo "INSTALLED: $INSTALLED_VERSION"
LATEST_VERSION=$(curl -s "https://downloads.getfiddler.com/linux/latest-linux.yml" \
| grep '^version:' | awk '{print $2}')
echo "Installed: $INSTALLED_VERSION | Latest: $LATEST_VERSION"
if [ "$INSTALLED_VERSION" = "$LATEST_VERSION" ]; then
echo "UP_TO_DATE"
else
echo "UPDATE_AVAILABLE"
fi
else
echo "NOT_INSTALLED"
fi
Windows(PowerShell)— 検出とバージョン確認
$installed = Get-ItemProperty `
"HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*",
"HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*",
"HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*" `
-ErrorAction SilentlyContinue |
Where-Object { $_.DisplayName -like "*Fiddler Everywhere*" }
if ($installed) {
$installedVersion = $installed.DisplayVersion
Write-Host "INSTALLED: $installedVersion"
$manifest = Invoke-WebRequest "https://downloads.getfiddler.com/win/latest.yml" -UseBasicParsing
$text = [System.Text.Encoding]::UTF8.GetString($manifest.RawContentStream.ToArray())
$latestVersion = ($text | Select-String '(?m)^version:\s*(.+)').Matches.Groups[1].Value.Trim()
Write-Host "Installed: $installedVersion | Latest: $latestVersion"
if ($installedVersion -eq $latestVersion) { "UP_TO_DATE" } else { "UPDATE_AVAILABLE" }
} else {
"NOT_INSTALLED"
}
結果の解釈:
NOT_INSTALLED— フェーズ 2 に進み、ダウンロードしてインストールします。UP_TO_DATE— Fiddler Everywhere がすでに最新バージョンであることをユーザーに伝え、このスキルの以降の実行を停止します。UPDATE_AVAILABLE— インストール済みのバージョンと最新バージョンをユーザーに伝え、アップグレードするかどうかを尋ねます。希望する場合はフェーズ 2 に進みます(新しいインストーラーが既存のものを置き換えます)。希望しない場合は停止します。
フェーズ 2 — OS を検出してバージョンを確認する
2 つのコマンドをまとめて実行します。マニフェストの確認でネットワークアクセスも確認できます。
uname -s && uname -m
VERSION=$(curl -s "https://downloads.getfiddler.com/mac-arm64/latest-mac.yml" \
| grep '^version:' | awk '{print $2}')
echo "Latest Fiddler Everywhere: $VERSION"
Windows(PowerShell)の場合:
$env:PROCESSOR_ARCHITECTURE # AMD64 or ARM64
$manifest = Invoke-WebRequest "https://downloads.getfiddler.com/win/latest.yml" -UseBasicParsing
$text = [System.Text.Encoding]::UTF8.GetString($manifest.RawContentStream.ToArray())
$VERSION = ($text | Select-String '(?m)^version:\s*(.+)').Matches.Groups[1].Value.Trim()
Write-Host "Latest Fiddler Everywhere: $VERSION"
uname -s | uname -m | プラットフォーム |
|---|---|---|
Darwin | arm64 | macOS Apple Silicon |
Darwin | x86_64 | macOS Intel |
Linux | 任意 | Linux |
| — | — | Windows — 上記の PowerShell の手順を使用 |
フェーズ 3 — ダウンロード
フェーズ 2 で確認した $VERSION を使って、バージョンを指定した直接 URL を作成します。
macOS では .pkg 形式を推奨します。
macOS
# Apple Silicon (arm64)
curl -L \
"https://agent-downloads.getfiddler.com/mac-arm64/Fiddler%20Everywhere%20${VERSION}.pkg" \
-o ~/Downloads/FiddlerEverywhere.pkg
# Intel (x86_64)
curl -L \
"https://agent-downloads.getfiddler.com/mac/Fiddler%20Everywhere%20${VERSION}.pkg" \
-o ~/Downloads/FiddlerEverywhere.pkg
Linux
VERSION=$(curl -s "https://downloads.getfiddler.com/linux/latest-linux.yml" \
| grep '^version:' | awk '{print $2}')
curl -L \
"https://agent-downloads.getfiddler.com/linux/fiddler-everywhere-${VERSION}.AppImage" \
-o ~/Downloads/FiddlerEverywhere.AppImage
Windows(PowerShell)
Invoke-WebRequest `
"https://agent-downloads.getfiddler.com/win/Fiddler%20Everywhere%20$VERSION.exe" `
-OutFile "$env:USERPROFILE\Downloads\FiddlerEverywhere.exe"
フェーズ 4 — インストール
macOS — PKG(ヘッドレス、ウィザードなし)
sudo installer を直接使用しないでください。エージェントの非表示のシェル内では、ユーザーが入力できないパスワードプロンプトで sudo が停止するためです。代わりに osascript を使用してください。画面上にユーザーが確認できる、macOS 標準の認証ダイアログが表示されます。
do shell script with administrator privileges は root として実行されるため、macOS のサンドボックス制限により ~/Downloads にアクセスできません。まずパッケージを /tmp にコピーして(全ユーザーが読み取り可能)、そこからインストールしてください。
bash ツールの呼び出しで、次の 2 つのコマンドを実行します。
cp ~/Downloads/FiddlerEverywhere.pkg /tmp/FiddlerEverywhere.pkg
次のコマンドを実行する前に、次のように伝えてください。
「画面に macOS のパスワードダイアログが表示されます。ログインパスワードを入力してインストールを許可してください。その後、自動的に続行します。」
osascript -e 'do shell script "installer -pkg /tmp/FiddlerEverywhere.pkg -target /" with administrator privileges'
osascript は、ユーザーがダイアログを承認し、インストールが完了するまで待機します。終了コード 0 で終了したら、後片付けを行います。
rm /tmp/FiddlerEverywhere.pkg
macOS — DMG(ユーザーがドラッグ&ドロップを希望する場合)
hdiutil attach ~/Downloads/FiddlerEverywhere.dmg -nobrowse
cp -R "/Volumes/Fiddler Everywhere/Fiddler Everywhere.app" /Applications/
hdiutil detach "/Volumes/Fiddler Everywhere"
Linux
chmod +x ~/Downloads/FiddlerEverywhere.AppImage
~/Downloads/FiddlerEverywhere.AppImage &
Windows — サイレントインストール
Start-Process "$env:USERPROFILE\Downloads\FiddlerEverywhere.exe" -ArgumentList "/S" -Wait
Fiddler の起動:
macOS:
open -a "Fiddler Everywhere" && sleep 15
Linux:
(nohup fiddler-everywhere &>/dev/null &); sleep 15
Windows: 重要 現在使用中のターミナルが bash の場合は、専用の GitBash スクリプトを使用してください。
PowerShell
$candidates = @(
"$env:LOCALAPPDATA\Programs\Fiddler Everywhere\Fiddler Everywhere.exe",
"C:\Program Files\Fiddler Everywhere\Fiddler Everywhere.exe",
"C:\Program Files (x86)\Fiddler Everywhere\Fiddler Everywhere.exe"
)
$fiddlerExe = $candidates | Where-Object { Test-Path $_ } | Select-Object -First 1
if ($fiddlerExe) {
$cmdLine = '"' + $fiddlerExe + '"'
Invoke-CimMethod -ClassName Win32_Process -MethodName Create -Arguments @{ CommandLine = $cmdLine } | Out-Null
Start-Sleep 15
}
Git Bash
FIDDLER_EXE=""
for dir in "$LOCALAPPDATA/Programs/Fiddler Everywhere" \
"/c/Program Files/Fiddler Everywhere" \
"/c/Program Files (x86)/Fiddler Everywhere"; do
if [ -f "$dir/Fiddler Everywhere.exe" ]; then
FIDDLER_EXE="$dir/Fiddler Everywhere.exe"
break
fi
done
if [ -n "$FIDDLER_EXE" ]; then
"$FIDDLER_EXE" &
sleep 15
fi
フェーズ 5 — MCP のセットアップを提案する
Fiddler Everywhere のインストールと起動が完了したら、Fiddler MCP サーバーへの接続を設定できる自動 MCP セットアップスキルがあることをユーザーに伝えます。
次のメッセージを表示します。
Fiddler Everywhere がインストールされ、実行中です。
AI エージェント向けに Fiddler MCP サーバーへの接続を設定できる、自動 MCP セットアップスキルがあります。これにより、エージェントのツールがエディター内から Fiddler と直接連携し、トラフィックのキャプチャ、セッションの検査、ルールの作成などを行えるようになります。
MCP を自動設定しますか?
質問ツールを使って、ユーザーが次から選択できるようにします。
- はい、MCP を自動設定する(推奨)
- いいえ、後で手動で設定する
ユーザーが同意した場合
リモートの場所から fiddler-mcp-setup スキルをインストールして、実行します。
リモートスキルの URL: https://github.com/telerik/fiddler-agent-tools/tree/master/skills/fiddler-mcp-setup
fiddler-mcp-setup スキルの手順に従い、MCP の設定を最初から最後まで完了します。
ユーザーが辞退した場合
了解したことを伝え、MCP セットアップスキルはいつでも後からダウンロードできることを知らせます。
トラブルシューティング
| 問題 | 解決策 |
|---|---|
| macOS のパスワードダイアログがキャンセルされた/インストールが中断された | osascript コマンドを再実行します。/tmp に pkg が残っています |
hdiutil: attach failed | ファイルが完全にダウンロードされていない可能性があります。curl コマンドを再実行します |
| Windows の EXE が SmartScreen にブロックされた | 右クリックして → 管理者として実行 |
| macOS でアプリが開かない | xattr -cr "/Applications/Fiddler Everywhere.app" を実行して、隔離属性を解除します |