jpskill.com
🛠️ 開発・MCP コミュニティ

ilspy-decompile

.NETで開発されたソフトウェアの内部構造を、コンパイルされた状態から元のコードに近づけて解析し、APIの動作原理やNuGetパッケージの中身、フレームワークの実装などを理解するのに役立つSkill。

📜 元の英語説明(参考)

Understand implementation details of .NET code by decompiling assemblies. Use when you want to see how a .NET API works internally, inspect NuGet package source, view framework implementation, or understand compiled .NET binaries.

🇯🇵 日本人クリエイター向け解説

一言でいうと

.NETで開発されたソフトウェアの内部構造を、コンパイルされた状態から元のコードに近づけて解析し、APIの動作原理やNuGetパッケージの中身、フレームワークの実装などを理解するのに役立つSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o ilspy-decompile.zip https://jpskill.com/download/8712.zip && unzip -o ilspy-decompile.zip && rm ilspy-decompile.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/8712.zip -OutFile "$d\ilspy-decompile.zip"; Expand-Archive "$d\ilspy-decompile.zip" -DestinationPath $d -Force; ri "$d\ilspy-decompile.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して ilspy-decompile.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → ilspy-decompile フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

ILSpy を使用した .NET アセンブリの逆コンパイル

この Skill を使用して、コンパイルされたアセンブリを逆コンパイルすることにより、.NET コードが内部でどのように動作するかを理解します。

前提条件

  • .NET SDK がインストールされていること
  • ILSpy コマンドラインツールが、次のいずれかの方法で使用できること:
    • dnx ilspycmd (SDK またはランタイムで使用可能な場合)
    • dotnet tool install --global ilspycmd

両方の形式を以下に示します。お使いの環境で動作する方を使用してください。

注: ILSpyCmd のオプションは、バージョンによって若干異なる場合があります。 常に ilspycmd -h でサポートされているフラグを確認してください。

クイックスタート

# アセンブリを標準出力に逆コンパイルする
ilspycmd MyLibrary.dll
# または
dnx ilspycmd MyLibrary.dll

# 出力フォルダに逆コンパイルする
ilspycmd -o output-folder MyLibrary.dll

一般的な .NET アセンブリの場所

NuGet パッケージ

~/.nuget/packages/<package-name>/<version>/lib/<tfm>/

.NET ランタイムライブラリ

dotnet --list-runtimes

.NET SDK 参照アセンブリ

dotnet --list-sdks

参照アセンブリには実装は含まれていません。

プロジェクトのビルド出力

./bin/Debug/net8.0/<AssemblyName>.dll
./bin/Release/net8.0/publish/<AssemblyName>.dll

コアワークフロー

  1. 理解したい内容を特定する
  2. アセンブリの場所を特定する
  3. 型をリストする
  4. ターゲットを逆コンパイルする

コマンド

基本的な逆コンパイル

ilspycmd MyLibrary.dll
ilspycmd -o ./decompiled MyLibrary.dll
ilspycmd -p -o ./project MyLibrary.dll

ターゲットを絞った逆コンパイル

ilspycmd -t Namespace.ClassName MyLibrary.dll
ilspycmd -lv CSharp12_0 MyLibrary.dll

IL コードの表示

ilspycmd -il MyLibrary.dll

最新の .NET ビルドに関する注意点

  • ReadyToRun イメージは可読性を低下させる可能性があります
  • トリミングまたは AOT ビルドはコードを省略する可能性があります
  • トリミングされていないビルドを優先してください

法的注意

アセンブリの逆コンパイルは、ライセンス制限の対象となる場合があります。

📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

.NET Assembly Decompilation with ILSpy

Use this skill to understand how .NET code works internally by decompiling compiled assemblies.

Prerequisites

  • .NET SDK installed
  • ILSpy command-line tool available via one of the following:
    • dnx ilspycmd (if available in your SDK or runtime)
    • dotnet tool install --global ilspycmd

Both forms are shown below. Use the one that works in your environment.

Note: ILSpyCmd options may vary slightly by version.
Always verify supported flags with ilspycmd -h.

Quick start

# Decompile an assembly to stdout
ilspycmd MyLibrary.dll
# or
dnx ilspycmd MyLibrary.dll

# Decompile to an output folder
ilspycmd -o output-folder MyLibrary.dll

Common .NET Assembly Locations

NuGet packages

~/.nuget/packages/<package-name>/<version>/lib/<tfm>/

.NET runtime libraries

dotnet --list-runtimes

.NET SDK reference assemblies

dotnet --list-sdks

Reference assemblies do not contain implementations.

Project build output

./bin/Debug/net8.0/<AssemblyName>.dll
./bin/Release/net8.0/publish/<AssemblyName>.dll

Core workflow

  1. Identify what you want to understand
  2. Locate the assembly
  3. List types
  4. Decompile the target

Commands

Basic decompilation

ilspycmd MyLibrary.dll
ilspycmd -o ./decompiled MyLibrary.dll
ilspycmd -p -o ./project MyLibrary.dll

Targeted decompilation

ilspycmd -t Namespace.ClassName MyLibrary.dll
ilspycmd -lv CSharp12_0 MyLibrary.dll

View IL code

ilspycmd -il MyLibrary.dll

Notes on modern .NET builds

  • ReadyToRun images may reduce readability
  • Trimmed or AOT builds may omit code
  • Prefer non-trimmed builds

Legal note

Decompiling assemblies may be subject to license restrictions.