← Back to Skills Marketplace
manyfestation

Kaspa Wallet

by Manyfestation · GitHub ↗ · v1.0.0
cross-platform ✓ Security Clean
1194
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install kaspa-wallet
Description
Send and receive KAS cryptocurrency. Check balances, send payments, generate wallets.
README (SKILL.md)

Kaspa Wallet CLI

A standalone command-line wallet for the Kaspa blockchain network.

Installation

python3 install.py

Requirements: Python 3.8+ with pip. Works on macOS, Linux, Windows.

Troubleshooting install:

  • If pip fails: pip install kaspa manually, or try KASPA_PYTHON=python3.12 python3 install.py
  • If venv missing: sudo apt install python3-venv (Ubuntu/Debian)
  • To reinstall: rm -rf .venv && python3 install.py

Environment Variables

Required (one of):

export KASPA_PRIVATE_KEY="64-character-hex-string"
# OR
export KASPA_MNEMONIC="your twelve or twenty four word seed phrase"

Optional:

export KASPA_NETWORK="mainnet"              # mainnet (default), testnet-10
export KASPA_RPC_URL="wss://..."            # Custom RPC endpoint
export KASPA_RPC_CONNECT_TIMEOUT_MS="30000" # Connection timeout (default: 15000)

Commands

All commands output JSON. Exit code 0 = success, 1 = error.

Check Balance

./kaswallet.sh balance                    # Your wallet balance
./kaswallet.sh balance kaspa:qrc8y...     # Any address balance

Output:

{"address": "kaspa:q...", "balance": "1.5", "sompi": "150000000", "network": "mainnet"}

Send KAS

./kaswallet.sh send \x3Caddress> \x3Camount>           # Send specific amount
./kaswallet.sh send \x3Caddress> max                # Send entire balance
./kaswallet.sh send \x3Caddress> \x3Camount> priority  # Priority fee tier

Output (success):

{"status": "sent", "txid": "abc123...", "from": "kaspa:q...", "to": "kaspa:q...", "amount": "0.5", "fee": "0.0002"}

Output (error):

{"error": "Storage mass exceeds maximum", "errorCode": "STORAGE_MASS_EXCEEDED", "hint": "...", "action": "consolidate_utxos"}

Network Info

./kaswallet.sh info

Output:

{"network": "mainnet", "url": "wss://...", "blocks": 12345678, "synced": true, "version": "1.0.0"}

Fee Estimates

./kaswallet.sh fees

Output:

{"network": "mainnet", "low": {"feerate": 1.0, "estimatedSeconds": 60}, "economic": {...}, "priority": {...}}

Generate New Wallet

./kaswallet.sh generate-mnemonic

Output:

{"mnemonic": "word1 word2 word3 ... word24"}

Payment URI

./kaswallet.sh uri                          # Your address
./kaswallet.sh uri kaspa:q... 1.5 "payment" # With amount and message

Error Handling

All errors return JSON with structured information:

errorCode Meaning Resolution
STORAGE_MASS_EXCEEDED Amount too small for current UTXOs Send max to yourself first to consolidate
NO_UTXOS No spendable outputs Wait for confirmations or fund wallet
INSUFFICIENT_FUNDS Balance too low Check balance, reduce amount
RPC_TIMEOUT Network slow Retry or increase timeout
NO_CREDENTIALS Missing wallet key Set KASPA_PRIVATE_KEY or KASPA_MNEMONIC
SDK_NOT_INSTALLED Kaspa SDK missing Run python3 install.py

Common Workflows

Consolidate UTXOs (Fix Storage Mass Error)

When sending fails with STORAGE_MASS_EXCEEDED:

# 1. Get your address
./kaswallet.sh balance
# Returns: {"address": "kaspa:qYOUR_ADDRESS...", ...}

# 2. Send max to yourself (consolidates UTXOs)
./kaswallet.sh send kaspa:qYOUR_ADDRESS... max

# 3. Now send the original amount (will work)
./kaswallet.sh send kaspa:qRECIPIENT... 0.5

Check Transaction Status

After sending, use the txid to verify on a block explorer:

  • Mainnet: https://explorer.kaspa.org/txs/{txid}
  • Testnet: https://explorer-tn10.kaspa.org/txs/{txid}

Switch Networks

# Testnet
export KASPA_NETWORK="testnet-10"
./kaswallet.sh info

# Back to mainnet
export KASPA_NETWORK="mainnet"
./kaswallet.sh info

Units

  • KAS: Human-readable unit (e.g., 1.5 KAS)
  • sompi: Smallest unit, 1 KAS = 100,000,000 sompi

All command inputs accept KAS. Outputs include both KAS and sompi where relevant.

Security Notes

  • Private keys and mnemonics are passed via environment variables only
  • Never log or expose these values
  • The wallet does not store credentials on disk
  • Each command establishes a fresh RPC connection

Examples for Agents

# Check if wallet is configured and has funds
./kaswallet.sh balance
# Parse: if balance > 0, wallet is ready

# Send payment with error handling
./kaswallet.sh send kaspa:recipient... 1.0
# If errorCode == "STORAGE_MASS_EXCEEDED":
#   Run: ./kaswallet.sh send YOUR_ADDRESS max
#   Then retry original send

# Verify network connectivity
./kaswallet.sh info
# Check: synced == true before sending
Usage Guidance
This package appears to be a legitimate CLI wallet implementation and its requirements (private key or mnemonic via env, optional RPC URL) match its stated purpose. Things to consider before installing: - Review the kaspa package on PyPI (the installer uses pip to fetch it); verify the package's publisher and versions to reduce supply‑chain risk. - Inspect the included scripts (you already have them) and, if possible, run installation in an isolated environment (container or VM) before using real keys. - Prefer ephemeral environment variables (don't store secrets in shell startup files). If you plan to hold significant funds, use a hardware wallet or audited software. - Confirm the upstream source/repository (install.py references a GitHub URL) — lack of a clear homepage/origin reduces provenance; verify the repo and maintainer before trusting the binary/library versions installed by pip. Overall the skill is coherent with its purpose, but standard third‑party dependency and secret‑handling precautions apply.
Capability Analysis
Type: OpenClaw Skill Name: Developer: Version: Description: OpenClaw Agent Skill Suspicious High-Entropy/Eval files: 3 The OpenClaw AgentSkills skill bundle provides a command-line interface for a Kaspa cryptocurrency wallet. All files (SKILL.md, kaswallet.sh, install.py, scripts/kaswallet.py, README.md, requirements.txt) align with this stated purpose. Sensitive credentials (private keys, mnemonics) are handled via environment variables, which is a standard and explicitly documented secure practice for CLI tools. The installation process uses a local virtual environment and installs the legitimate 'kaspa' SDK from PyPI. The core Python script performs expected wallet operations, including RPC communication to Kaspa network endpoints. There is no evidence of data exfiltration to unauthorized destinations, persistence mechanisms, obfuscation, or malicious prompt injection attempts against the agent; all instructions and code logic are functional and directly related to wallet operations.
Capability Assessment
Purpose & Capability
Name/description (Kaspa wallet) match the code and instructions: CLI wrapper, wallet creation, balance checks, sends, and RPC use. Required env vars (private key or mnemonic, optional RPC URL/network) are appropriate for a wallet.
Instruction Scope
SKILL.md and examples restrict operations to wallet-related actions (balance, send, info, fees, generate-mnemonic). The instructions ask the agent to run the included scripts and to set wallet credentials via environment variables; they do not instruct reading arbitrary files or unrelated system state.
Install Mechanism
No exotic installer; install.py creates a venv and runs pip to install the single requirement 'kaspa' from PyPI. This is expected for a Python SDK but does introduce standard PyPI/supply‑chain risk (the kaspa package from PyPI should be reviewed/verified if you care about provenance). No downloads from shorteners, personal servers, or unknown archives in the manifest.
Credentials
Requested environment variables (KASPA_PRIVATE_KEY or KASPA_MNEMONIC, optional NETWORK/RPC/timeout/KASPA_PYTHON) are directly tied to wallet operation. The skill does not declare unrelated secrets or request system credentials or config paths.
Persistence & Privilege
Skill is not always-enabled and does not modify other skills or system-wide config. Installer creates a local .venv and pip cache under the project directory — expected for a local CLI tool. No evidence of the skill persisting credentials to disk (SKILL.md and code assert keys come from env).
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install kaspa-wallet
  3. After installation, invoke the skill by name or use /kaspa-wallet
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Kaspa Wallet 1.0.0 initial release - Standalone CLI wallet for the Kaspa blockchain. - Check wallet and address balances, send KAS, and generate new wallet mnemonics. - Supports viewing fee estimates and building payment URIs. - Uses environment variables for private key/mnemonic. - Outputs consistent JSON responses for both commands and error handling. - Includes troubleshooting steps, security notes, and agent automation examples.
Metadata
Slug kaspa-wallet
Version 1.0.0
License
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Kaspa Wallet?

Send and receive KAS cryptocurrency. Check balances, send payments, generate wallets. It is an AI Agent Skill for Claude Code / OpenClaw, with 1194 downloads so far.

How do I install Kaspa Wallet?

Run "/install kaspa-wallet" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Kaspa Wallet free?

Yes, Kaspa Wallet is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Kaspa Wallet support?

Kaspa Wallet is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Kaspa Wallet?

It is built and maintained by Manyfestation (@manyfestation); the current version is v1.0.0.

💬 Comments