[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M79WSVYAYRS4RR51SWWHK2FR":3,"skill-same:01M79WSVYAYRS4RR51SWWHK2FR":48},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":25,"commitSha":26,"skillDirectory":27,"forksCount":28,"repositoryHtmlUrl":29,"repositoryHomepageUrl":6,"ownerHtmlUrl":30,"ownerBlogUrl":31,"ownerDescription":32,"updatedAt":33,"install":34,"resources":47},"01M79WSVYAYRS4RR51SWWHK2FR","ilspy-decompile",null,"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.","Blind-Striker\u002Fagent-skills-and-plugins","Blind-Striker","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1965259?v=4","01M79WFXTE5PH0C1VB7B54ANMN","Deniz İrgin","01M79WFXV5KZ5GST1K8G035DM5",1,"MIT","https:\u002F\u002Fgithub.com\u002FBlind-Striker\u002Fagent-skills-and-plugins\u002Fblob\u002Fmaster\u002Fcodex\u002Fdeniz-dotnet-general\u002Fskills\u002Filspy-decompile\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: ilspy-decompile\ndescription: Understand implementation details of .NET code by decompiling\n  assemblies. Use when you want to see how a .NET API works internally, inspect\n  NuGet package source, view framework implementation, or understand compiled\n  .NET binaries.\nallowed-tools: Bash(dnx:*)\n---\n\n# .NET Assembly Decompilation with ILSpy\n\nUse this skill to understand how .NET code works internally by decompiling compiled assemblies.\n\n## Prerequisites\n\n- .NET SDK installed\n- ILSpy command-line tool available via one of the following:\n  - `dnx ilspycmd` (if available in your SDK or runtime)\n  - `dotnet tool install --global ilspycmd`\n\nBoth forms are shown below. Use the one that works in your environment.\n\n> Note: ILSpyCmd options may vary slightly by version.  \n> Always verify supported flags with `ilspycmd -h`.\n\n## Quick start\n\n```bash\n# Decompile an assembly to stdout\nilspycmd MyLibrary.dll\n# or\ndnx ilspycmd MyLibrary.dll\n\n# Decompile to an output folder\nilspycmd -o output-folder MyLibrary.dll\n```\n\n## Common .NET Assembly Locations\n\n### NuGet packages\n\n```bash\n~\u002F.nuget\u002Fpackages\u002F\u003Cpackage-name>\u002F\u003Cversion>\u002Flib\u002F\u003Ctfm>\u002F\n```\n\n### .NET runtime libraries\n\n```bash\ndotnet --list-runtimes\n```\n\n### .NET SDK reference assemblies\n\n```bash\ndotnet --list-sdks\n```\n\n> Reference assemblies do not contain implementations.\n\n### Project build output\n\n```bash\n.\u002Fbin\u002FDebug\u002Fnet8.0\u002F\u003CAssemblyName>.dll\n.\u002Fbin\u002FRelease\u002Fnet8.0\u002Fpublish\u002F\u003CAssemblyName>.dll\n```\n\n## Core workflow\n\n1. Identify what you want to understand\n2. Locate the assembly\n3. List types\n4. Decompile the target\n\n## Commands\n\n### Basic decompilation\n\n```bash\nilspycmd MyLibrary.dll\nilspycmd -o .\u002Fdecompiled MyLibrary.dll\nilspycmd -p -o .\u002Fproject MyLibrary.dll\n```\n\n### Targeted decompilation\n\n```bash\nilspycmd -t Namespace.ClassName MyLibrary.dll\nilspycmd -lv CSharp12_0 MyLibrary.dll\n```\n\n### View IL code\n\n```bash\nilspycmd -il MyLibrary.dll\n```\n\n## Notes on modern .NET builds\n\n- ReadyToRun images may reduce readability\n- Trimmed or AOT builds may omit code\n- Prefer non-trimmed builds\n\n## Legal note\n\nDecompiling assemblies may be subject to license restrictions.\n","# .NET Assembly Decompilation with ILSpy\n\nUse this skill to understand how .NET code works internally by decompiling compiled assemblies.\n\n## Prerequisites\n\n- .NET SDK installed\n- ILSpy command-line tool available via one of the following:\n  - `dnx ilspycmd` (if available in your SDK or runtime)\n  - `dotnet tool install --global ilspycmd`\n\nBoth forms are shown below. Use the one that works in your environment.\n\n> Note: ILSpyCmd options may vary slightly by version.  \n> Always verify supported flags with `ilspycmd -h`.\n\n## Quick start\n\n```bash\n# Decompile an assembly to stdout\nilspycmd MyLibrary.dll\n# or\ndnx ilspycmd MyLibrary.dll\n\n# Decompile to an output folder\nilspycmd -o output-folder MyLibrary.dll\n```\n\n## Common .NET Assembly Locations\n\n### NuGet packages\n\n```bash\n~\u002F.nuget\u002Fpackages\u002F\u003Cpackage-name>\u002F\u003Cversion>\u002Flib\u002F\u003Ctfm>\u002F\n```\n\n### .NET runtime libraries\n\n```bash\ndotnet --list-runtimes\n```\n\n### .NET SDK reference assemblies\n\n```bash\ndotnet --list-sdks\n```\n\n> Reference assemblies do not contain implementations.\n\n### Project build output\n\n```bash\n.\u002Fbin\u002FDebug\u002Fnet8.0\u002F\u003CAssemblyName>.dll\n.\u002Fbin\u002FRelease\u002Fnet8.0\u002Fpublish\u002F\u003CAssemblyName>.dll\n```\n\n## Core workflow\n\n1. Identify what you want to understand\n2. Locate the assembly\n3. List types\n4. Decompile the target\n\n## Commands\n\n### Basic decompilation\n\n```bash\nilspycmd MyLibrary.dll\nilspycmd -o .\u002Fdecompiled MyLibrary.dll\nilspycmd -p -o .\u002Fproject MyLibrary.dll\n```\n\n### Targeted decompilation\n\n```bash\nilspycmd -t Namespace.ClassName MyLibrary.dll\nilspycmd -lv CSharp12_0 MyLibrary.dll\n```\n\n### View IL code\n\n```bash\nilspycmd -il MyLibrary.dll\n```\n\n## Notes on modern .NET builds\n\n- ReadyToRun images may reduce readability\n- Trimmed or AOT builds may omit code\n- Prefer non-trimmed builds\n\n## Legal note\n\nDecompiling assemblies may be subject to license restrictions.\n",{"name":5,"description":7,"allowed-tools":24},"Bash(dnx:*)","master","b30b1c1908dbc56a8184128f18803053d762ccb5","codex\u002Fdeniz-dotnet-general\u002Fskills\u002Filspy-decompile",0,"https:\u002F\u002Fgithub.com\u002FBlind-Striker\u002Fagent-skills-and-plugins","https:\u002F\u002Fgithub.com\u002FBlind-Striker","denizirgin.com","VP of Engineering - \r\n@armutcom @homeruntech @prontopro\r\n |  Speaker \r\n@CodeFiction\r\n, http:\u002F\u002Fcodefiction.tech | Developer, gamer, blogger, maiden iron fan","2026-11-13 00:23:18",{"source":8,"skillName":5,"commands":35,"prompt":45,"zipAvailable":46},[36,39,42],{"tool":37,"command":38},"npx","npx skills add Blind-Striker\u002Fagent-skills-and-plugins --skill ilspy-decompile",{"tool":40,"command":41},"bunx","bunx skills add Blind-Striker\u002Fagent-skills-and-plugins --skill ilspy-decompile",{"tool":43,"command":44},"pnpm","pnpm dlx skills add Blind-Striker\u002Fagent-skills-and-plugins --skill ilspy-decompile","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FBlind-Striker\u002Fagent-skills-and-plugins\u002Fblob\u002Fmaster\u002Fcodex\u002Fdeniz-dotnet-general\u002Fskills\u002Filspy-decompile\u002FSKILL.md",true,[],[49,56,63,70,77,84],{"skillNo":50,"name":51,"nameZh":6,"description":52,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":53,"categories":54,"keywords":55,"publishedAt":19},"01M79YGWBJ52PHMSTKJ3RJ3AWR","writing-tunit-tests","Write tests in TUnit — the attributes, the async assertion model, data-driven cases, lifecycle hooks, and the parallelism rules. USE FOR writing or fixing a test in a TUnit project, translating a test idea into TUnit syntax, or reviewing TUnit test code for API mistakes. DO NOT USE FOR deciding what to test, judging whether a test is any good, or running tests.","https:\u002F\u002Fgithub.com\u002FBlind-Striker\u002Fagent-skills-and-plugins\u002Fblob\u002Fmaster\u002Fskills\u002Fdeniz-dotnet-general\u002Fwriting-tunit-tests\u002FSKILL.md",[],[],{"skillNo":57,"name":58,"nameZh":6,"description":59,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":60,"categories":61,"keywords":62,"publishedAt":19},"01M79YGR3Y9RCRS6TD71D0KKP8","dotnet-walls","Walls for a .NET change in a repository without its own quality gates — pinned, ephemeral analyzer, format, clone and scanner commands for the verify step, their identity ratchet, and the build traps. Use during a walls preflight, or when a worker's verify step needs .NET quality gates.","https:\u002F\u002Fgithub.com\u002FBlind-Striker\u002Fagent-skills-and-plugins\u002Fblob\u002Fmaster\u002Fskills\u002Fdeniz-dotnet-general\u002Fdotnet-walls\u002FSKILL.md",[],[],{"skillNo":64,"name":65,"nameZh":6,"description":66,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":67,"categories":68,"keywords":69,"publishedAt":19},"01M79YGFNJBST7D803NQW3SBYM","csharp-15","Write, review and modernize C# 15 (.NET 11) code correctly. Covers every C# 15 feature - collection expression arguments (`[with(...), ...]`), union types (`union`, `[Union]`, `IUnion`, custom unions), closed class hierarchies (`closed`), extension indexers, labeled `break`\u002F`continue`, non-virtual static interface members on runtimes without default interface methods, and the preview memory-safety model (`unsafe(expr)`, `safe`, requires-unsafe members). Use when code targets net11.0 or LangVersion 15\u002Fpreview, when the user mentions any of these features, when replacing marker interfaces, OneOf-style results, `goto`\u002Fflag loop exits or capacity\u002Fcomparer boilerplate, or when the build reports CS8121, CS8509, CS8655, CS8510, CS0121\u002FCS0411 on a `with(...)` element, CS9370, CS9380 or CS9363.","https:\u002F\u002Fgithub.com\u002FBlind-Striker\u002Fagent-skills-and-plugins\u002Fblob\u002Fmaster\u002Fskills\u002Fdeniz-dotnet-general\u002Fcsharp-15\u002FSKILL.md",[],[],{"skillNo":71,"name":72,"nameZh":6,"description":73,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":74,"categories":75,"keywords":76,"publishedAt":19},"01M79YGAV031473HSX6FN87ENH","verified-waves","Run one task as verified multi-agent waves. Plans the fan-out, sends findings to fresh skeptics, keeps a ledger, and reports N of M done; small tasks stay solo.","https:\u002F\u002Fgithub.com\u002FBlind-Striker\u002Fagent-skills-and-plugins\u002Fblob\u002Fmaster\u002Fskills\u002Fdeniz-coordination\u002Fverified-waves\u002FSKILL.md",[],[],{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":83,"publishedAt":19},"01M79YG6QXNND4WRPP3GATSY8J","harness","The bundled dispatch harness, which runs a task file on worker models through OpenCode or Codex, fences their writes, escalates their asks to the operator, settles each result from git and its verify commands, and records every step in a ledger. Its commands, task file, modes and write fence, configuration, runs and their recovery, ledger and exit codes.","https:\u002F\u002Fgithub.com\u002FBlind-Striker\u002Fagent-skills-and-plugins\u002Fblob\u002Fmaster\u002Fskills\u002Fdeniz-coordination\u002Fharness\u002FSKILL.md",[],[],{"skillNo":85,"name":86,"nameZh":6,"description":87,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":19},"01M79YG2P5S91SDTA5912XJ4FV","delegating-to-worker-models","Use when you hand off implementation, a plan, research a decision will rely on, or a review, and you brief the worker and check what comes back. A subagent that searches, reads in parallel, or keeps your context small is ordinary tool use. Covers what stays with you, the mechanism, assigning work by strength, the walls preflight, prompts without contradictions, the worker contract and model profiles, evidence from your own run, review, and the fix-up loop.","https:\u002F\u002Fgithub.com\u002FBlind-Striker\u002Fagent-skills-and-plugins\u002Fblob\u002Fmaster\u002Fskills\u002Fdeniz-coordination\u002Fdelegating-to-worker-models\u002FSKILL.md",[],[]]