Nano钱包管理CLI与MCP服务器

xno-skills 是面向AI代理和开发者的Nano加密货币钱包管理工具,通过CLI、MCP服务器和AI技能实现余额查询、发送接收、二维码生成、地址验证、支付请求等操作。

  • by CasualSecurityInc
  • TypeScript
  • 本地部署
  • 6 星标
  • 更新于
在 GitHub 查看 CasualSecurityInc/xno-skills

使用说明

xno-skills

A CLI, MCP server, and AI skills for Nano (XNO). Built on top of Open Wallet Standard (OWS) for secure key custody.

Design Overview

CLI/MCP transaction command
        ↓
build unsigned Nano state block
        ↓
OWS signs the block hash
        ↓
choose work root + threshold
        ↓
local PoW, or remote work_generate → local fallback
        ↓
attach signature + work
        ↓
RPC process

xno-skills separates block construction, signing, proof of work, and publication. The CLI and MCP server use the same transaction code. The transaction code reads the account frontier and balance, builds the state block, and asks OWS to sign it without exposing wallet keys. It selects the Nano work root and threshold from the block subtype.

PoW runs locally through the nano-core work provider when recommended. Otherwise, xno-skills tries the configured work_generate endpoints and falls back to local generation if they fail. It then attaches the signature and work nonce and publishes the block with RPC process. Send and representative-change blocks use the send threshold. Receive and open blocks use the lower receive threshold. Open blocks use the account public key as their work root.

Agent Skills

Built-in skill for Personal AI Agents (OpenClaw etc.) and humans with AI Coding Assistants (Claude Code, Cursor, etc.) alike:

npx skills add CasualSecurityInc/xno-skills -g
# or non-interactively, i.e. for agent use:
npx -y skills add CasualSecurityInc/xno-skills -g -y --all

Claude Code

/plugin marketplace add CasualSecurityInc/xno-skills
/plugin install xno-skills@casual-security-inc

[!IMPORTANT] If you installed skills from this repository before May 4, 2026, you have 11 individual nano-* skills that have been consolidated into a single nano skill. Remove the old ones first:

npx skills remove nano-block-lattice-expert nano-check-balance nano-convert-units nano-create-wallet nano-generate-qr nano-mcp-wallet nano-request-payment nano-return-funds nano-sign-message nano-validate-address nano-verify-message -g -y

Then reinstall as above.

Available skills:

  • nano: Wallet ops, balance, send/receive, QR codes, address validation, unit conversion, payment requests, refunds, block-lattice protocol expertise, and more — all in one skill. Uses xno-mcp MCP tools first, falls back to xno-skills CLI.

CLI

Installation & Upgrades

To install or upgrade the CLI, AI agent skills, and wallet dependencies to the latest version, run:

npm install -g xno-skills && npx -y skills add CasualSecurityInc/xno-skills -g -y --all
xno-skills --help

To pin to the current stable release instead:

npm install -g xno-skills@5.0.0 && npx -y skills add CasualSecurityInc/xno-skills -g -y --all

Wallet Operations

Command Description
wallets [options] List wallets that have Nano accounts
balance [options] Show balance and pending amount
receive [options] Receive pending blocks
send [options] Send Nano
change-rep [options] Submit a change representative block
submit-block [options] Sign and submit a prepared block hex
history [options] Show transaction history

Utilities

Command Description
info [options] Discover the current state and representative of any Nano account
convert [options] <amount> <from> Convert between XNO units
qr [options] <address> Generate a QR code for a Nano address
validate [options] <input> Validate a Nano address or block hash

Cryptography & Signing

Command Description
sign [options] <message> Sign a NOMS message with a private key
verify [options] <address> <message> <signature> Verify a NOMS message signature

Advanced & RPC

Command Description
rpc Query a Nano node RPC
rpc probe-caps [url] Probe one or more comma-separated RPC URLs for JSON RPC, ledger-read, process, and remote PoW support
block Build unsigned Nano state blocks for manual/expert workflows

System

Command Description
diag Show version, environment, effective RPC/work URLs, and local PoW recommendation without network probes
mcp Start the MCP server or view configuration instructions

All commands support -j / --json for machine-readable output.

Use diag for local configuration diagnostics. Use rpc probe-caps <effective-work-url> when you need live endpoint capability checks, including work_generate support.

Wallet lifecycle (create, import, rename, delete) is managed by OWS. xno-skills bundles OWS as a dependency — no separate install needed. See the OWS quick-start for terminal usage, or install OWS agent skills with npx skills add open-wallet-standard/core@ows.

MCP Server

Exposes Nano wallet functions as tools for AI agents (Claude Desktop, Cursor, Codex, etc.). MCP resources (xno-wallet:// URIs) are served but require client-side resources/read support — not yet available in OpenCode (#15535).

Preferred (global install — avoids npx concurrency handshake failures):

npm install -g xno-skills@5.0.0
{
  "mcpServers": {
    "nano": {
      "command": "xno-skills",
      "args": ["mcp"]
    }
  }
}

Fallback (if global install is not possible):

{
  "mcpServers": {
    "nano": {
      "command": "npx",
      "args": ["-y", "-p", "xno-skills@5.0.0", "xno-mcp"]
    }
  }
}

Client Setup Examples

Codex
# Preferred (after npm install -g xno-skills@5.0.0):
codex mcp add nano \
  -c sandbox_mode="danger-full-access" \
  -c 'sandbox_permissions=["network-access"]' \
  -- xno-skills mcp

# Fallback:
codex mcp add nano \
  -c sandbox_mode="danger-full-access" \
  -c 'sandbox_permissions=["network-access"]' \
  -- npx -y -p xno-skills@5.0.0 xno-mcp
Claude Desktop (claude_desktop_config.json)
{
  "mcpServers": {
    "nano": {
      "command": "xno-skills",
      "args": ["mcp"]
    }
  }
}
OpenCode (~/.config/opencode/opencode.json)
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "nano": {
      "type": "local",
      "command": ["xno-skills", "mcp"],
      "enabled": true,
    },
  },
}
Gemini CLI (~/.gemini/settings.json)
{
  "mcpServers": {
    "nano": {
      "command": "xno-skills",
      "args": ["mcp"]
    }
  }
}
Antigravity (~/.gemini/antigravity/mcp_config.json)
{
  "mcpServers": {
    "nano": {
      "command": "xno-skills",
      "args": ["mcp"]
    }
  }
}
VS Code (.vscode/mcp.json)
{
  "servers": {
    "nano": {
      "type": "stdio",
      "command": "xno-skills",
      "args": ["mcp"]
    }
  }
}

Library

For using xno-skills as a TypeScript library, see LIBRARY.md.

Security Notes

  • Never share your seed or private keys. Anyone with access can fully control your wallet.
  • Store seeds securely. Use hardware wallets or encrypted storage — never in plain text or version control.
  • Address validation. Always validate addresses before sending. Nano addresses include checksums.
  • Unit precision. Nano uses 30 decimal places. Always use string-based conversion to avoid floating-point errors.

Development

npm install
npm test
npm run build

Opt-in Codex wallet journey evaluation

This live evaluator makes ten real, owned transfers (five CLI and five MCP). It creates and retains the recipient wallets, places a local guard in front of the supplied Nano RPC, and writes raw Codex JSONL plus an independently checked report. Use only a dedicated source wallet whose balance meets the preflight requirements:

npm run eval:codex-wallet-journey -- --model <model> --source-wallet <name> --upstream-rpc <url> --out <private-output-dir>

For OpenCode’s Kilo Auto Free router, use the parallel command below. It runs opencode run --format json --model kilo/kilo-auto/free and requires the normal Kilo/OpenCode provider authentication or free-tier access:

npm run eval:opencode-wallet-journey -- --source-wallet <name> --upstream-rpc <url> --out <private-output-dir>

It is never part of CI or the release flow. The report deliberately makes no token-efficiency claim unless the captured Codex events provide an authoritative per-run token count.

For a manual, tool-by-tool routing check instead of the end-to-end journey, use test/user-journey-prompts.md: 28 prompts mapped one-to-one to the 28 MCP tools, run one at a time in a fresh agent session with the file withheld. It is also never part of CI.

Releasing

See RELEASING.md.

Similar Projects

License

MIT