Agent skill

Wallet Quickstart

by Nethereum in Nethereum/Nethereum

Build a multi-platform wallet application using the Nethereum Wallet SDK with MVVM architecture (.NET/C).

MITAuto-check passedMobile

Install Wallet Quickstart

skills CLI
$ npx skills add Nethereum/Nethereum --skill wallet-quickstart -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Nethereum/Nethereum wallet-quickstart --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Nethereum/Nethereum.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/nethereum-skills/skills/wallet-quickstart .claude/skills/wallet-quickstart && rm -rf skills-src

Use ~/.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/

Facts

Skill name
wallet-quickstart
GitHub stars
2.3k
Token cost
~1.6k tokens
SKILL.md length
194 words
Files
1
Skills in repo
71
Repo updated
First seen
Licence
MIT

At a glance

Build a multi-platform wallet application using the Nethereum Wallet SDK with MVVM architecture (.NET/C).

  • The user asks about building a wallet app
  • SKILL.md covers Architecture, Quick Start, WalletVault — Encrypted Storage and Account Types, plus 7 more sections
  • Calls dotnet
  • Nethereum.Wallet

What it does

Wallet Quickstart is an agent skill from Nethereum/Nethereum. Build a multi-platform wallet application using the Nethereum Wallet SDK with MVVM architecture (.NET/C). Use this skill when the user asks about building a wallet app, Nethereum.Wallet, wallet UI components, MVVM wallet, WalletVault, account management in the wallet SDK, or creating wallet screens in Blazor or MAUI.

Its SKILL.md is about 1.6k 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 Mobile, covering Cross-platform mobile apps and Customer success. It works with Blazor, C# and .NET. The repository describes itself as: Ethereum .Net cross platform integration library. The licence is MIT.

When your agent uses it

  • The user asks about building a wallet app
  • Nethereum.Wallet
  • Wallet UI components
  • Account management in the wallet SDK

Example prompts

  • “/wallet-quickstart”

What it can do on your machine

Read from SKILL.md and the folder at commit 229f278. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Shell commands in SKILL.md call:

    • dotnet

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • docs.nethereum.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Wallet Quickstart loads about 1.6k tokens when it runs. Until then it costs about 84 tokens; SKILL.md has 194 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~84
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from Nethereum/Nethereum at commit 229f278, republished under its MIT licence (© Nethereum). 194 words, ~1,638 tokens.

Download SKILL.mdSave it as .claude/skills/wallet-quickstart/SKILL.md (or your agent's skills folder).
name
wallet-quickstart
description
Build a multi-platform wallet application using the Nethereum Wallet SDK with MVVM architecture (.NET/C#). Use this skill when the user asks about building a wallet app, Nethereum.Wallet, wallet UI components, MVVM wallet, WalletVault, account management in the wallet SDK, or creating wallet screens in Blazor or MAUI.
user-invocable
true

Nethereum Wallet SDK

Build multi-platform self-custodial wallet applications using a layered MVVM architecture with shared ViewModels and platform-specific renderers.

Architecture

Nethereum.Wallet                              Core services
  + Nethereum.Wallet.UI.Components            Shared MVVM ViewModels
  + Nethereum.Wallet.UI.Components.Blazor     Blazor/MudBlazor renderer
    or .Maui                                  .NET MAUI renderer

NuGet packages:

bash
dotnet add package Nethereum.Wallet
dotnet add package Nethereum.Wallet.UI.Components.Blazor

Quick Start

Register Services (Program.cs)
csharp
builder.Services.AddNethereumWallet();
builder.Services.AddNethereumWalletBlazorComponents();
Add the Wallet Component
razor
@using Nethereum.Wallet.UI.Components.Blazor
<NethereumWallet />

This gives you the full wallet UI: account creation, vault management, dashboard, and transaction screens.

WalletVault — Encrypted Storage

The WalletVault encrypts all wallet data (private keys, mnemonic seeds) with a user password:

csharp
var vault = new WalletVault();
vault.CreateNew("strong-password-here");

Lock and unlock:

csharp
vault.Lock();
bool success = vault.Unlock("strong-password-here");

The vault uses AES encryption. The IWalletVaultService abstraction handles platform-specific secure storage.

Account Types

Mnemonic (BIP39/BIP44)
csharp
var accountService = new CoreWalletAccountService(vault);
var mnemonicAccount = accountService.CreateMnemonicAccount(
    "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about",
    password: null,
    accountIndex: 0);

The MnemonicWalletAccountFactory creates accounts with standard derivation paths (m/44'/60'/0'/0/x).

Private Key
csharp
var account = accountService.CreatePrivateKeyAccount(
    "0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80",
    name: "My Account");
View-Only
csharp
var viewOnly = accountService.CreateViewOnlyAccount(
    "0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B",
    name: "Vitalik Watch");

ViewModel Pattern

All wallet screens follow the same MVVM pattern using CommunityToolkit.Mvvm:

csharp
public partial class MyScreenViewModel : ObservableObject
{
    [ObservableProperty] private string _fieldName = "";
    [ObservableProperty] private string? _fieldNameError;

    partial void OnFieldNameChanged(string value) => ValidateFieldName();

    private void ValidateFieldName()
    {
        FieldNameError = string.IsNullOrWhiteSpace(FieldName)
            ? _localizer.GetString(Keys.FieldRequired)
            : null;
    }

    public bool IsFormValid => string.IsNullOrEmpty(FieldNameError)
        && !string.IsNullOrWhiteSpace(FieldName);

    [RelayCommand]
    private async Task SaveAsync()
    {
        if (!IsFormValid) return;
        // ...
    }
}

Localisation

Every screen has a Localizer with EN/ES translations:

csharp
public class MyScreenLocalizer : ComponentLocalizerBase<MyScreenViewModel>
{
    public static class Keys
    {
        public const string Title = "Title";
        public const string FieldRequired = "FieldRequired";
    }

    protected override void RegisterTranslations()
    {
        _globalService.RegisterTranslations(_componentName, "en-US", new Dictionary<string, string>
        {
            [Keys.Title] = "My Screen",
            [Keys.FieldRequired] = "This field is required",
        });
        _globalService.RegisterTranslations(_componentName, "es-ES", new Dictionary<string, string>
        {
            [Keys.Title] = "Mi Pantalla",
            [Keys.FieldRequired] = "Este campo es obligatorio",
        });
    }
}

Service Registration Pattern

Each feature area registers its services:

csharp
public static IServiceCollection AddMyFeatureServices(this IServiceCollection services)
{
    services.AddTransient<MyScreenViewModel>();
    services.AddSingleton<MyScreenLocalizer>();
    services.AddTransient<IComponentLocalizer<MyScreenViewModel>>(provider =>
        provider.GetRequiredService<MyScreenLocalizer>());
    return services;
}

Blazor Component Pattern

razor
@using Nethereum.Wallet.UI.Components.Blazor.Shared
@inject MyScreenViewModel ViewModel
@inject IComponentLocalizer<MyScreenViewModel> Localizer

<WalletFormLayout Title="@Localizer.GetString(Keys.Title)"
                  PrimaryText="@Localizer.GetString(Keys.Save)"
                  OnPrimary="@HandleSave">
    <ChildContent>
        <WalletFormSection Title="@Localizer.GetString(Keys.SectionTitle)">
            <MudTextField @bind-Value="ViewModel.FieldName"
                          Label="@Localizer.GetString(Keys.FieldLabel)"
                          Error="@(!string.IsNullOrEmpty(ViewModel.FieldNameError))"
                          ErrorText="@ViewModel.FieldNameError"
                          Required="true" />
        </WalletFormSection>
    </ChildContent>
</WalletFormLayout>

Hardware Wallet Support

For Trezor integration:

bash
dotnet add package Nethereum.Wallet.UI.Components.Trezor
dotnet add package Nethereum.Wallet.UI.Components.Blazor.Trezor

For Ledger/Trezor on Android MAUI:

bash
dotnet add package Nethereum.Maui.AndroidUsb

Key Packages

PackagePurpose
Nethereum.WalletCore: accounts, vaults, chains, transactions
Nethereum.UIIEthereumHostProvider, SIWE authenticator
Nethereum.Wallet.UI.ComponentsShared MVVM ViewModels
Nethereum.Wallet.UI.Components.BlazorBlazor renderer
Nethereum.Wallet.UI.Components.MauiMAUI renderer
Nethereum.Wallet.RpcRequestsEIP-1193 JSON-RPC handlers

Console Tests / Examples

Working examples in the Nethereum repo:

  • consoletests/NethereumWCBlazor/ — WalletConnect Blazor integration
  • consoletests/NethereumReownAppKitBlazor/ — Reown AppKit Blazor integration
  • src/demos/Nethereum.Wallet.Blazor.Demo/ — Full Blazor wallet demo

For full documentation, see: https://docs.nethereum.com/docs/wallet-sdk/overview

© Nethereum, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in plugins/nethereum-skills/skills/wallet-quickstart of Nethereum/Nethereum.

Open the folder on GitHubat commit 229f278

Compare with similar skills

Wallet Quickstart 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.

Wallet Quickstart compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Wallet Quickstart this skillNethereum/Nethereum2.3k—~1.6kAutomated safety check: PassMIT
Maui Hot Reload Diagnosticsdavidortinau/maui-skills174—~1.3kAutomated safety check: PassMIT
Maui Safe Areadotnet/skills5.6k1 repos~3.2kAutomated safety check: PassMIT
Sentry Dotnet SDKgetsentry/sentry-for-ai268—~5.8kAutomated safety check: PassApache-2.0
Using Dotnetnovotnyllc/dotnet-artisan233—~2.3kAutomated safety check: WarnMIT
Run Maui Apptig/winprint101—~1.2kAutomated safety check: PassMIT

Similar skills

  • Maui Hot Reload Diagnostics

    davidortinau/maui-skills

    Diagnose and troubleshoot .NET MAUI Hot Reload issues (C Hot Reload, XAML Hot Reload, Blazor Hybrid).

    174 GitHub stars~1.3k tokensUpdated 3 mo ago
    MobileAuto-check passed
  • Maui Safe Area

    dotnet/skills

    Official

    .NET MAUI safe area and edge-to-edge layout guidance for .NET 10+.

    5.6k GitHub starsUsed in 1 repo~3.2k tokens
    MobileAuto-check passed
  • Sentry Dotnet SDK

    getsentry/sentry-for-ai

    Official

    Full Sentry SDK setup for .NET. An agent skill from getsentry/sentry-for-ai.

    268 GitHub stars~5.8k tokensUpdated today
    Productivity & AutomationAuto-check passed
  • Using Dotnet

    novotnyllc/dotnet-artisan

    Detects .NET intent for any C, ASP.NET Core, EF Core, Blazor, MAUI, Uno Platform, WPF, WinUI, SignalR, gRPC, xUnit, NuGet, or MSBuild request from prompt keywords and repository signals (.sln…

    233 GitHub stars~2.3k tokensUpdated today
    Backend & APIsAuto-check: warnings
  • Run Maui App

    tig/winprint

    Build, launch, screenshot, and drive the WinPrint.Maui Windows app (winprint.exe) — including UIA automation of the File button and native Open dialog, and pixel capture that works for WinUI3 content.

    101 GitHub stars~1.2k tokensUpdated 1 mo ago
    MobileAuto-check passed
  • Maui AI Debugging

    Redth/Maui.Gtk

    End-to-end workflow for building, deploying, inspecting, and debugging .NET MAUI and MAUI Blazor Hybrid apps as an AI agent.

    101 GitHub stars~4.1k tokensUpdated 5 mo ago
    MobileAuto-check passed

More from Nethereum/Nethereum

All 71 skills in this repo
  • Aa Batching Paymasters

    Nethereum/Nethereum

    Help users batch multiple calls into a single UserOperation and sponsor gas with paymasters using Nethereum Account Abstraction.

    2.3k GitHub stars~1.5k tokensUpdated 3 days ago
    Auto-check passed
  • Aa Bundler

    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.

    2.3k GitHub stars~1.2k tokensUpdated 3 days ago
    Auto-check passed
  • Abi Encoding

    Nethereum/Nethereum

    Encode and decode Ethereum ABI data with Nethereum. An agent skill from Nethereum/Nethereum.

    2.3k GitHub stars~1.3k tokensUpdated 3 days ago
    Auto-check passed
  • Abi Retrieval

    Nethereum/Nethereum

    Fetch contract ABIs from Sourcify, Etherscan, and 4Byte Directory using the composite ABIInfoStorage pattern (.NET/C).

    2.3k GitHub stars~1.5k tokensUpdated 3 days ago
    Auto-check passed
  • Account Abstraction

    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…

    2.3k GitHub stars~1.7k tokensUpdated 3 days ago
    Auto-check passed
  • Address Utils

    Nethereum/Nethereum

    Validate and format Ethereum addresses with Nethereum. An agent skill from Nethereum/Nethereum.

    2.3k GitHub stars~1.2k tokensUpdated 3 days ago
    Auto-check passed

Works with

Questions about Wallet Quickstart

What does Wallet Quickstart do?

Build a multi-platform wallet application using the Nethereum Wallet SDK with MVVM architecture (.NET/C). Wallet Quickstart is an agent skill from Nethereum/Nethereum.NET/C).

When should I use Wallet Quickstart?

Wallet Quickstart fits situations like: the user asks about building a wallet app; nethereum.Wallet; wallet UI components; account management in the wallet SDK.

How do I install Wallet Quickstart in Claude Code?

Run `npx skills add Nethereum/Nethereum --skill wallet-quickstart -a claude-code`. Or copy the skill folder (plugins/nethereum-skills/skills/wallet-quickstart in Nethereum/Nethereum) into .claude/skills/wallet-quickstart in your project. Claude Code loads it when a task matches its description.

How do I install Wallet Quickstart in Codex?

Run `npx skills add Nethereum/Nethereum --skill wallet-quickstart -a codex`. Or copy the skill folder (plugins/nethereum-skills/skills/wallet-quickstart in Nethereum/Nethereum) into .agents/skills/wallet-quickstart in your project. Codex loads it when a task matches its description.

Can I use Wallet Quickstart in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Nethereum/Nethereum --skill wallet-quickstart -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/wallet-quickstart, .gemini/skills/wallet-quickstart, .github/skills/wallet-quickstart and .opencode/skills/wallet-quickstart in your project.

What does Wallet Quickstart need to run?

Going by SKILL.md and its folder, Wallet Quickstart needs the command-line tools its instructions call (dotnet).

Does Wallet Quickstart access the network?

SKILL.md names 1 domain. As links in the text: docs.nethereum.com. This is read from the text; nothing was executed.

Is Wallet Quickstart safe to install?

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.

What licence does Wallet Quickstart use?

Wallet Quickstart is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Wallet Quickstart use?

About 1.6k tokens (SKILL.md is roughly 6.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Wallet Quickstart?

Skills that share tags, products or a category with Wallet Quickstart: Maui Hot Reload Diagnostics (davidortinau/maui-skills, 174 stars), Maui Safe Area (dotnet/skills, 5.6k stars), Sentry Dotnet SDK (getsentry/sentry-for-ai, 268 stars) and Using Dotnet (novotnyllc/dotnet-artisan, 233 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Wallet Quickstart?

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.