Cashu命令行钱包Skill cashu

Cashu命令行钱包是一款基于比特币闪电网络的电子现金管理工具,支持私密发送接收代币、支付闪电发票、处理402支付请求,适用于数字货币支付、微支付场景和Web3应用集成。关键词:比特币支付、闪电网络、电子现金、命令行钱包、Cashu协议、微支付、数字货币钱包、Web3工具。

Web3 0 次安装 11 次浏览 更新于 2/24/2026

name: cashu description: 这是用于比特币支付的工具。使用Nutshell (cashu) CLI管理Cashu电子现金钱包、发送/接收代币以及支付闪电网络发票。 compatibility: 需要cashu CLI(通过pipx安装)。 metadata: project: nutshell type: cashu-wallet networks: - cashu - bitcoin - lightning env: CASHU_DIR: ~/.cashu

Nutshell (Cashu CLI)

Nutshell是Cashu的命令行钱包,Cashu是比特币的电子现金协议。它允许您私密地发送和接收电子现金代币,并与闪电网络交互。

安装

此技能需要cashu CLI。通过pipx(推荐)或pip安装:

# 推荐(隔离环境)
pipx install cashu

# 替代方案(系统/用户全局)
pip install cashu

确保二进制路径在您的PATH中。

环境配置(必需)

CLI需要两个环境变量才能正常运行:

  1. CASHU_DIR:钱包数据目录(通常为~/.cashu)。
  2. MINT_URL(或MINT_HOST):您要使用的Cashu铸币厂的URL。

Linux / macOS: 在命令前添加变量或在shell配置文件中导出它们。

# 每条命令单独设置
CASHU_DIR=~/.cashu MINT_URL=https://mint.example.com cashu balance

# 持久化(添加到~/.bashrc或~/.zshrc)
export CASHU_DIR=~/.cashu
export MINT_URL=https://mint.example.com

Windows (PowerShell):

$env:CASHU_DIR = "$HOME\.cashu"
$env:MINT_URL = "https://mint.example.com"
cashu balance

CLI使用

以下所有示例均假设已设置CASHU_DIRMINT_URL。如果未在shell配置文件中持久化它们,请在每条命令前添加。

代理提示: 始终使用--yes(或-y)标志以跳过交互式提示和确认。这对于代理使用是强制性的,因为代理无法响应stdin提示(如“确认付款?[y/N]”);省略它将导致命令挂起并超时。

余额与信息

# 检查钱包余额
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes balance

# 检查待处理代币
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes pending

# 获取钱包信息
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes info

# 列出钱包
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes wallets

发送与接收

发送Cashu代币(电子现金):

# 发送金额(生成要共享的代币字符串)
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes send <金额>
# 示例:CASHU_DIR=~/.cashu MINT_URL=https://8333.space:3338 cashu --yes send 100

接收Cashu代币:

# 接收代币字符串
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes receive <代币字符串>

闪电网络

支付闪电网络发票(熔化):

# 支付发票
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes pay <bolt11发票>

支付闪电地址(LNURL):

# 支付LNURL/闪电地址(自动解析发票)
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes pay <用户@域名.com> <金额_聪>
# 示例:CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes pay user@npubx.cash 100

创建闪电网络发票(铸造):

# 创建发票以接收资金到钱包
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes invoice <金额>

闪电地址(LNURL)

管理您的Nostr闪电地址(例如,user@npubx.cash)以接收付款。

# 创建(或显示)您的静态闪电地址
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes lnurl create

# 检查发送到您地址的待处理付款
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes lnurl check

# 铸造(申领)待处理付款
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes lnurl mint

支付Cashu 402(代理模式)

支持Cashu的API可能会返回402 Payment Required错误,并在X-Cashu标头中包含付款请求。这对于计量API或付费端点很常见。

流程:

  1. 发出HTTP请求
  2. 如果收到带有X-Cashu: creqA...标头的402,提取付款请求
  3. (可选)解码以检查接受的铸币厂:cashu decode <付款请求>
  4. 支付:cashu --yes pay <付款请求>
  5. 从响应中获取代币
  6. 重试原始请求,在X-Cashu标头中包含代币

铸币厂兼容性: 付款请求可能编码了接受电子现金的特定铸币厂。如果您尝试使用不在允许列表中的铸币厂支持的钱包支付,将会出错。在尝试付款之前,使用cashu decode <creq>查看接受哪些铸币厂。

示例:

# 1. 初始请求(返回402)
curl -s -i https://api.example.com/data

# 响应包括:
# HTTP/1.1 402 Payment Required
# X-Cashu: creqA1...

# 2. 支付付款请求
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes pay "creqA1..."

# 返回类似代币:cashuA...

# 3. 使用代币重试
curl -s -H "X-Cashu: cashuA..." https://api.example.com/data

此模式对代理友好:自动处理402、支付、重试——就像处理速率限制或身份验证重定向一样。

高级

# 销毁已花费的代币
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes burn

# 查看所有发票
CASHU_DIR=~/.cashu MINT_URL=<url> cashu --yes invoices

配置

Nutshell在CASHU_DIR内使用.env文件进行额外配置。 如果未提供MINT_URL,它可能默认为公共测试铸币厂或失败。请始终指定您信任的铸币厂。

注意事项

  • 代币是以cashuA...(V3)或cashuB...(V4)开头的大字符串。
  • 如果使用大量资金,请确保备份您的助记词(参见cashu info)。

贡献

https://github.com/cashubtc/nutshell提交问题或贡献