| name | agent-wallet-nwc-bridge |
|---|---|
| version | 0.1.0 |
| description | Expose a local @moneydevkit/agent-wallet as a Nostr Wallet Connect (NIP-47) wallet-service (systemd user service). |
| repo | https://github.com/kristapsk/agent-wallet-nwc-bridge |
This skill provides a small, self-hosted Nostr Wallet Connect (NIP-47) bridge that lets an NWC client (e.g. Stacker.News) send make_invoice / pay_invoice requests to a local @moneydevkit/agent-wallet.
It is intended to be run as a systemd user service.
index.jsbridge implementation- portable
agent-wallet-nwc-bridge.serviceunit (uses%h) - installer script
install_systemd_user.sh - env + state files (
nwc.env,state.json) stored locally (not committed)
- Linux with systemd user services
- Node.js + npm
- Nostr relay access (default example uses
wss://nos.lol)
git clone https://github.com/kristapsk/agent-wallet-nwc-bridge
cd agent-wallet-nwc-bridge
npm install
cp -n nwc.env.example nwc.env
# initialize state + create wallet service pubkey
node index.js init --relay wss://nos.lol
# install + start as user service
./install_systemd_user.sh
# follow logs
journalctl --user -u agent-wallet-nwc-bridge.service -fEdit nwc.env:
NWC_RELAYS— comma-separated relay list (e.g.wss://nos.lol,wss://relay.damus.io)NWC_STATE— defaults tostate.json(relative to WorkingDirectory)NWC_AUTO_REGISTER—0recommended (use explicit URIs/permissions)NWC_DEFAULT_BUDGET_SATS— default spending cap when generating URIs
Security note: state.json contains NWC connection secrets. Do not commit it.
- Run the bridge.
- Generate an NWC URI for receive and attach it in SN wallets UI.
- Generate a separate NWC URI for send (spending permission) and attach it.
- Verify end-to-end:
- SN
make_invoicerequests appear in bridge logs - SN
pay_invoicerequests appear and result in a paid invoice
- SN
Restart after changes:
systemctl --user restart agent-wallet-nwc-bridge.serviceDisable:
systemctl --user disable --now agent-wallet-nwc-bridge.service- Ensure
README.md,SKILL.md, andpackage.jsonare present. - Keep secrets out of git (
nwc.env,state.json,node_modules/are ignored by default).