Migrate Dotnet9 To Dotnet10
dotnet/skills
Migrate a .NET 9 project or solution to .NET 10 and resolve all breaking changes.
Help users verify Groth16 zero-knowledge proofs from Circom/snarkjs circuits using Nethereum.ZkProofsVerifier (.NET).
$ npx skills add Nethereum/Nethereum --skill zk-proof-verification -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Nethereum/Nethereum zk-proof-verification --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Nethereum/Nethereum.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/nethereum-skills/skills/zk-proof-verification .claude/skills/zk-proof-verification && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "zk-proof-verification" agent skill from https://github.com/Nethereum/Nethereum/tree/master/plugins/nethereum-skills/skills/zk-proof-verification into .claude/skills/zk-proof-verification/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "zk-proof-verification", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Nethereum/Nethereum/tree/master/plugins/nethereum-skills/skills/zk-proof-verificationType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Nethereum/Nethereum --skill zk-proof-verification -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Nethereum/Nethereum zk-proof-verification --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Nethereum/Nethereum.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/nethereum-skills/skills/zk-proof-verification .agents/skills/zk-proof-verification && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "zk-proof-verification" agent skill from https://github.com/Nethereum/Nethereum/tree/master/plugins/nethereum-skills/skills/zk-proof-verification into .agents/skills/zk-proof-verification/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "zk-proof-verification", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Nethereum/Nethereum --skill zk-proof-verification -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Nethereum/Nethereum zk-proof-verification --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Nethereum/Nethereum.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/nethereum-skills/skills/zk-proof-verification .cursor/skills/zk-proof-verification && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "zk-proof-verification" agent skill from https://github.com/Nethereum/Nethereum/tree/master/plugins/nethereum-skills/skills/zk-proof-verification into .cursor/skills/zk-proof-verification/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "zk-proof-verification", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Nethereum/Nethereum.git --path plugins/nethereum-skills/skills/zk-proof-verification--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Nethereum/Nethereum --skill zk-proof-verification -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Nethereum/Nethereum zk-proof-verification --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Nethereum/Nethereum.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/nethereum-skills/skills/zk-proof-verification .gemini/skills/zk-proof-verification && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "zk-proof-verification" agent skill from https://github.com/Nethereum/Nethereum/tree/master/plugins/nethereum-skills/skills/zk-proof-verification into .gemini/skills/zk-proof-verification/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "zk-proof-verification", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Nethereum/Nethereum zk-proof-verificationInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Nethereum/Nethereum --skill zk-proof-verification -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Nethereum/Nethereum.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/nethereum-skills/skills/zk-proof-verification .github/skills/zk-proof-verification && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "zk-proof-verification" agent skill from https://github.com/Nethereum/Nethereum/tree/master/plugins/nethereum-skills/skills/zk-proof-verification into .github/skills/zk-proof-verification/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "zk-proof-verification", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Nethereum/Nethereum --skill zk-proof-verification -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Nethereum/Nethereum zk-proof-verification --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Nethereum/Nethereum.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/nethereum-skills/skills/zk-proof-verification .opencode/skills/zk-proof-verification && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "zk-proof-verification" agent skill from https://github.com/Nethereum/Nethereum/tree/master/plugins/nethereum-skills/skills/zk-proof-verification into .opencode/skills/zk-proof-verification/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "zk-proof-verification", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
zk-proof-verificationHelp users verify Groth16 zero-knowledge proofs from Circom/snarkjs circuits using Nethereum.ZkProofsVerifier (.NET).
Zk Proof Verification is an agent skill from Nethereum/Nethereum. Help users verify Groth16 zero-knowledge proofs from Circom/snarkjs circuits using Nethereum.ZkProofsVerifier (.NET). Use this skill whenever the user mentions ZK proofs, Groth16, snarkjs, Circom, zero-knowledge verification, BN128 pairing, proof.json, verificationkey.json, or public.json in a C/.NET context.
Its SKILL.md is about 850 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Security, covering Cryptography. It works with .NET and C#. The repository describes itself as: Ethereum .Net cross platform integration library. The licence is MIT.
Read from SKILL.md and the folder at commit 229f278. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
dotnetFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
docs.nethereum.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Zk Proof Verification loads about 853 tokens when it runs. Until then it costs about 84 tokens; SKILL.md has 282 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from Nethereum/Nethereum at commit 229f278, republished under its MIT licence (© Nethereum). 282 words, ~853 tokens.
.claude/skills/zk-proof-verification/SKILL.md (or your agent's skills folder).Use this skill when a user wants to:
dotnet add package Nethereum.ZkProofsVerifierGroth16 is the most widely used ZK proof system in Ethereum. Nethereum.ZkProofsVerifier verifies proofs natively in .NET by checking a BN128 elliptic curve pairing equation. It directly consumes the three JSON files that snarkjs produces after proving a Circom circuit.
The recommended entry point is CircomGroth16Adapter.Verify() — a single static method that parses all three JSON files and returns a result. This hides all cryptographic internals (curve points, field extensions, BouncyCastle types) behind a clean API.
using Nethereum.ZkProofsVerifier.Circom;
var proofJson = File.ReadAllText("proof.json");
var vkJson = File.ReadAllText("verification_key.json");
var publicJson = File.ReadAllText("public.json");
var result = CircomGroth16Adapter.Verify(proofJson, vkJson, publicJson);
if (result.IsValid)
Console.WriteLine("Proof verified!");
else
Console.WriteLine($"Failed: {result.Error}");Verification rejects any modification to proof, inputs, or VK:
// Wrong public inputs — verification fails
var tamperedPublicJson = "[\"999\"]";
var result = CircomGroth16Adapter.Verify(proofJson, vkJson, tamperedPublicJson);
// result.IsValid == false| Error | Meaning |
|---|---|
"Proof is null" | Null proof passed |
"Verification key is null" | Null VK passed |
"Public inputs array is null" | Null inputs passed |
"Verification key IC array is empty" | VK has no IC points |
"Expected N public inputs but got M" | IC length doesn't match inputs + 1 |
"Pairing check failed" | Proof is invalid (tampered or wrong inputs) |
| Type | Purpose |
|---|---|
CircomGroth16Adapter | One-liner verification from JSON strings |
ZkVerificationResult | Result with IsValid and Error properties |
All parsing and cryptographic types (curve points, field extensions, verifier internals) are internal — consumers only interact with CircomGroth16Adapter and ZkVerificationResult.
Only snarkjs JSON output is supported:
proof.json — G1/G2 curve points (pi_a, pi_b, pi_c)verification_key.json — trusted setup output (vk_alpha_1, vk_beta_2, vk_gamma_2, vk_delta_2, IC)public.json — decimal string array of public circuit inputsFor full documentation, see: https://docs.nethereum.com/docs/consensus-and-cryptography/guide-zk-proof-verification
© Nethereum, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in plugins/nethereum-skills/skills/zk-proof-verification of Nethereum/Nethereum.
Open the folder on GitHubat commit 229f278
Zk Proof Verification next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Zk Proof Verification this skillNethereum/Nethereum | 2.3k | — | ~853 | Automated safety check: Pass | MIT | |
| Migrate Dotnet9 To Dotnet10dotnet/skills | 5.6k | 2 repos | ~4.8k | Automated safety check: Pass | MIT | |
| Nes Decompilejonathanpeppers/dotnes | 780 | — | ~1.6k | Automated safety check: Pass | MIT | |
| Azure Security Keyvault Keys Dotnetmicrosoft/skills | 3.1k | 5 repos | ~3.1k | Automated safety check: Pass | MIT | |
| Dotnet Inspect Decompilerrichlander/dotnet-inspect | 151 | — | ~2.4k | Automated safety check: Pass | None | |
| Dotnet Decompilerptn1411/skill | 220 | — | ~929 | Automated safety check: Notes | None |
dotnet/skills
Migrate a .NET 9 project or solution to .NET 10 and resolve all breaking changes.
jonathanpeppers/dotnes
Decompile NES ROM files (.nes) into C projects that can be rebuilt with dotnes.
microsoft/skills
Azure Key Vault Keys SDK for .NET. An agent skill from microsoft/skills.
richlander/dotnet-inspect
Reconstruct a method or type as C and IL — decompiled source, annotated source with hidden facts, raw IL, fidelity levels, and IL-offset lookup.
ptn1411/skill
Automated .NET/C decompilation and security analysis. An agent skill from ptn1411/skill.
dotnet/efcore
Implementation details for EF Core scaffolding (reverse engineering).
Nethereum/Nethereum
Help users batch multiple calls into a single UserOperation and sponsor gas with paymasters using Nethereum Account Abstraction.
Nethereum/Nethereum
Help users run an ERC-4337 bundler using Nethereum — set up in-process or standalone bundlers with mempool, validation, reputation, and JSON-RPC server.
Nethereum/Nethereum
Encode and decode Ethereum ABI data with Nethereum. An agent skill from Nethereum/Nethereum.
Nethereum/Nethereum
Fetch contract ABIs from Sourcify, Etherscan, and 4Byte Directory using the composite ABIInfoStorage pattern (.NET/C).
Nethereum/Nethereum
Help users implement ERC-4337 Account Abstraction with Nethereum — send UserOperations, use smart accounts, route contract calls through a bundler, enable gasless transactions, or work with AA in…
Nethereum/Nethereum
Validate and format Ethereum addresses with Nethereum. An agent skill from Nethereum/Nethereum.
Categories
Help users verify Groth16 zero-knowledge proofs from Circom/snarkjs circuits using Nethereum.ZkProofsVerifier (.NET). Zk Proof Verification is an agent skill from Nethereum/Nethereum.NET).
Zk Proof Verification fits situations like: the user mentions ZK proofs; zero-knowledge verification; verificationkey.json; public.json in a C/.NET context.
Run `npx skills add Nethereum/Nethereum --skill zk-proof-verification -a claude-code`. Or copy the skill folder (plugins/nethereum-skills/skills/zk-proof-verification in Nethereum/Nethereum) into .claude/skills/zk-proof-verification in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Nethereum/Nethereum --skill zk-proof-verification -a codex`. Or copy the skill folder (plugins/nethereum-skills/skills/zk-proof-verification in Nethereum/Nethereum) into .agents/skills/zk-proof-verification in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Nethereum/Nethereum --skill zk-proof-verification -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/zk-proof-verification, .gemini/skills/zk-proof-verification, .github/skills/zk-proof-verification and .opencode/skills/zk-proof-verification in your project.
Going by SKILL.md and its folder, Zk Proof Verification needs the command-line tools its instructions call (dotnet).
SKILL.md names 1 domain. As links in the text: docs.nethereum.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Zk Proof Verification is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 853 tokens (SKILL.md is roughly 3.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Zk Proof Verification: Migrate Dotnet9 To Dotnet10 (dotnet/skills, 5.6k stars), Nes Decompile (jonathanpeppers/dotnes, 780 stars), Azure Security Keyvault Keys Dotnet (microsoft/skills, 3.1k stars) and Dotnet Inspect Decompiler (richlander/dotnet-inspect, 151 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Nethereum (a GitHub organization) maintains it in Nethereum/Nethereum, which has 2,260 GitHub stars. The repository holds 71 skills in this directory. The repository was last updated on October 5, 2026.
Source: Nethereum/Nethereum on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.