{
  "schemaVersion": "1.0",
  "item": {
    "slug": "mdk-agent-wallet",
    "name": "agent-wallet",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/satbot-mdk/mdk-agent-wallet",
    "canonicalUrl": "https://clawhub.ai/satbot-mdk/mdk-agent-wallet",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/mdk-agent-wallet",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=mdk-agent-wallet",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/mdk-agent-wallet"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/mdk-agent-wallet",
    "agentPageUrl": "https://openagent3.xyz/skills/mdk-agent-wallet/agent",
    "manifestUrl": "https://openagent3.xyz/skills/mdk-agent-wallet/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/mdk-agent-wallet/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "agent-wallet",
        "body": "Self-custodial Lightning wallet for AI agents, built by MoneyDevKit. One command to init. All output is JSON.\n\nSource: @moneydevkit/agent-wallet on npm · GitHub"
      },
      {
        "title": "Security & Transparency",
        "body": "This skill runs @moneydevkit/agent-wallet — an npm package published by MoneyDevKit. What it does:\n\nGenerates and stores a BIP39 mnemonic at ~/.mdk-wallet/config.json — this IS your private key. Treat it like a password.\nRuns a local daemon on localhost:3456 — HTTP server for wallet operations. Binds to localhost only (not externally accessible).\nConnects outbound to MDK's Lightning infrastructure.\nPersists payment history to ~/.mdk-wallet/.\n\nNo data is sent to external servers beyond standard Lightning protocol operations. You can verify this by inspecting the source code or the published npm tarball.\n\nRecommended: Pin a version (npx @moneydevkit/agent-wallet@0.11.0) in production."
      },
      {
        "title": "Quick Start",
        "body": "# Initialize wallet (generates mnemonic)\nnpx @moneydevkit/agent-wallet init\n\n# Get balance\nnpx @moneydevkit/agent-wallet balance\n\n# Create invoice\nnpx @moneydevkit/agent-wallet receive 1000\n\n# Pay someone\nnpx @moneydevkit/agent-wallet send user@getalby.com 500"
      },
      {
        "title": "How It Works",
        "body": "The CLI automatically starts a daemon on first command. The daemon:\n\nRuns a local HTTP server on localhost:3456\nConnects to MDK's Lightning infrastructure\nPolls for incoming payments every 30 seconds\nPersists payment history to ~/.mdk-wallet/\n\nNo webhook endpoint needed — the daemon handles everything locally."
      },
      {
        "title": "First-time initialization",
        "body": "npx @moneydevkit/agent-wallet init\n\nThis command:\n\nGenerates a BIP39 mnemonic — 12-word seed phrase that IS your wallet\nCreates config at ~/.mdk-wallet/config.json\nDerives a walletId — deterministic 8-char hex ID from your mnemonic\nStarts the daemon — local Lightning node on port 3456\n\nThe wallet is ready immediately. No API keys, no signup, no accounts. The agent holds its own keys."
      },
      {
        "title": "View existing config",
        "body": "npx @moneydevkit/agent-wallet init --show\n\nReturns { \"mnemonic\": \"...\", \"network\": \"mainnet\", \"walletId\": \"...\" }.\n\nNote: init will refuse to overwrite an existing wallet. To reinitialize:\n\nnpx @moneydevkit/agent-wallet stop\nrm -rf ~/.mdk-wallet  # WARNING: backup mnemonic first!\nnpx @moneydevkit/agent-wallet init"
      },
      {
        "title": "Commands",
        "body": "All commands return JSON on stdout. Exit 0 on success, 1 on error.\n\nCommandDescriptioninitGenerate mnemonic, create configinit --showShow config (mnemonic redacted)startStart the daemonbalanceGet balance in satsreceive <amount>Generate invoicereceiveGenerate variable-amount invoicereceive <amount> --description \"...\"Invoice with custom descriptionreceive-bolt12Generate a BOLT12 offer (variable amount, reusable)send <destination> [amount]Pay bolt11, bolt12, lnurl, or lightning addresspaymentsList payment historystatusCheck if daemon is runningstopStop the daemonrestartRestart the daemon"
      },
      {
        "title": "Balance",
        "body": "npx @moneydevkit/agent-wallet balance\n\n→ { \"balance_sats\": 3825 }"
      },
      {
        "title": "Receive (generate invoice)",
        "body": "# Fixed amount\nnpx @moneydevkit/agent-wallet receive 1000\n\n# Variable amount (payer chooses)\nnpx @moneydevkit/agent-wallet receive\n\n# With description\nnpx @moneydevkit/agent-wallet receive 1000 --description \"payment for service\"\n\n→ { \"invoice\": \"lnbc...\", \"payment_hash\": \"...\", \"expires_at\": \"...\" }"
      },
      {
        "title": "Receive BOLT12 Offer",
        "body": "npx @moneydevkit/agent-wallet receive-bolt12\n\n→ { \"offer\": \"lno1...\" }\n\nBOLT12 offers are reusable and don't expire — share one offer and receive unlimited payments to it. Unlike BOLT11 invoices, the payer chooses the amount."
      },
      {
        "title": "Send",
        "body": "npx @moneydevkit/agent-wallet send <destination> [amount_sats]\n\nDestination auto-detection:\n\nbolt11 invoice: lnbc10n1... (amount encoded, no arg needed)\nbolt12 offer: lno1...\nlightning address: user@example.com\nLNURL: lnurl1...\n\nFor lightning addresses and LNURL, amount is required:\n\nnpx @moneydevkit/agent-wallet send user@getalby.com 500"
      },
      {
        "title": "Payment History",
        "body": "npx @moneydevkit/agent-wallet payments\n\n→ { \"payments\": [{ \"paymentHash\": \"...\", \"amountSats\": 1000, \"direction\": \"inbound\"|\"outbound\", \"timestamp\": ..., \"destination\": \"...\" }] }"
      },
      {
        "title": "Upgrading",
        "body": "# Stop the running daemon\nnpx @moneydevkit/agent-wallet stop\n\n# Run with @latest to pull the newest version\nnpx @moneydevkit/agent-wallet@latest start\n\nYour wallet config and payment history in ~/.mdk-wallet/ are preserved across upgrades."
      },
      {
        "title": "Usage Notes",
        "body": "Denomination: use ₿ prefix with sats (e.g. ₿1,000 not \"1,000 sats\")\nSelf-custodial: the mnemonic IS the wallet. Back it up. Lose it, lose funds.\nDaemon: runs a local Lightning node on :3456. Auto-starts, persists to disk.\nAgent-to-agent payments: any agent with this wallet can pay any other agent's invoice or lightning address."
      },
      {
        "title": "What's Next?",
        "body": "Want to accept payments from customers? Use the moneydevkit skill to add checkouts to any website. Agent-wallet handles agent-to-agent payments; moneydevkit handles customer-to-agent payments. Together they give your agent full payment superpowers."
      }
    ],
    "body": "agent-wallet\n\nSelf-custodial Lightning wallet for AI agents, built by MoneyDevKit. One command to init. All output is JSON.\n\nSource: @moneydevkit/agent-wallet on npm · GitHub\n\nSecurity & Transparency\n\nThis skill runs @moneydevkit/agent-wallet — an npm package published by MoneyDevKit. What it does:\n\nGenerates and stores a BIP39 mnemonic at ~/.mdk-wallet/config.json — this IS your private key. Treat it like a password.\nRuns a local daemon on localhost:3456 — HTTP server for wallet operations. Binds to localhost only (not externally accessible).\nConnects outbound to MDK's Lightning infrastructure.\nPersists payment history to ~/.mdk-wallet/.\n\nNo data is sent to external servers beyond standard Lightning protocol operations. You can verify this by inspecting the source code or the published npm tarball.\n\nRecommended: Pin a version (npx @moneydevkit/agent-wallet@0.11.0) in production.\n\nQuick Start\n# Initialize wallet (generates mnemonic)\nnpx @moneydevkit/agent-wallet init\n\n# Get balance\nnpx @moneydevkit/agent-wallet balance\n\n# Create invoice\nnpx @moneydevkit/agent-wallet receive 1000\n\n# Pay someone\nnpx @moneydevkit/agent-wallet send user@getalby.com 500\n\nHow It Works\n\nThe CLI automatically starts a daemon on first command. The daemon:\n\nRuns a local HTTP server on localhost:3456\nConnects to MDK's Lightning infrastructure\nPolls for incoming payments every 30 seconds\nPersists payment history to ~/.mdk-wallet/\n\nNo webhook endpoint needed — the daemon handles everything locally.\n\nSetup\nFirst-time initialization\nnpx @moneydevkit/agent-wallet init\n\n\nThis command:\n\nGenerates a BIP39 mnemonic — 12-word seed phrase that IS your wallet\nCreates config at ~/.mdk-wallet/config.json\nDerives a walletId — deterministic 8-char hex ID from your mnemonic\nStarts the daemon — local Lightning node on port 3456\n\nThe wallet is ready immediately. No API keys, no signup, no accounts. The agent holds its own keys.\n\nView existing config\nnpx @moneydevkit/agent-wallet init --show\n\n\nReturns { \"mnemonic\": \"...\", \"network\": \"mainnet\", \"walletId\": \"...\" }.\n\nNote: init will refuse to overwrite an existing wallet. To reinitialize:\n\nnpx @moneydevkit/agent-wallet stop\nrm -rf ~/.mdk-wallet  # WARNING: backup mnemonic first!\nnpx @moneydevkit/agent-wallet init\n\nCommands\n\nAll commands return JSON on stdout. Exit 0 on success, 1 on error.\n\nCommand\tDescription\ninit\tGenerate mnemonic, create config\ninit --show\tShow config (mnemonic redacted)\nstart\tStart the daemon\nbalance\tGet balance in sats\nreceive <amount>\tGenerate invoice\nreceive\tGenerate variable-amount invoice\nreceive <amount> --description \"...\"\tInvoice with custom description\nreceive-bolt12\tGenerate a BOLT12 offer (variable amount, reusable)\nsend <destination> [amount]\tPay bolt11, bolt12, lnurl, or lightning address\npayments\tList payment history\nstatus\tCheck if daemon is running\nstop\tStop the daemon\nrestart\tRestart the daemon\nBalance\nnpx @moneydevkit/agent-wallet balance\n\n\n→ { \"balance_sats\": 3825 }\n\nReceive (generate invoice)\n# Fixed amount\nnpx @moneydevkit/agent-wallet receive 1000\n\n# Variable amount (payer chooses)\nnpx @moneydevkit/agent-wallet receive\n\n# With description\nnpx @moneydevkit/agent-wallet receive 1000 --description \"payment for service\"\n\n\n→ { \"invoice\": \"lnbc...\", \"payment_hash\": \"...\", \"expires_at\": \"...\" }\n\nReceive BOLT12 Offer\nnpx @moneydevkit/agent-wallet receive-bolt12\n\n\n→ { \"offer\": \"lno1...\" }\n\nBOLT12 offers are reusable and don't expire — share one offer and receive unlimited payments to it. Unlike BOLT11 invoices, the payer chooses the amount.\n\nSend\nnpx @moneydevkit/agent-wallet send <destination> [amount_sats]\n\n\nDestination auto-detection:\n\nbolt11 invoice: lnbc10n1... (amount encoded, no arg needed)\nbolt12 offer: lno1...\nlightning address: user@example.com\nLNURL: lnurl1...\n\nFor lightning addresses and LNURL, amount is required:\n\nnpx @moneydevkit/agent-wallet send user@getalby.com 500\n\nPayment History\nnpx @moneydevkit/agent-wallet payments\n\n\n→ { \"payments\": [{ \"paymentHash\": \"...\", \"amountSats\": 1000, \"direction\": \"inbound\"|\"outbound\", \"timestamp\": ..., \"destination\": \"...\" }] }\n\nUpgrading\n# Stop the running daemon\nnpx @moneydevkit/agent-wallet stop\n\n# Run with @latest to pull the newest version\nnpx @moneydevkit/agent-wallet@latest start\n\n\nYour wallet config and payment history in ~/.mdk-wallet/ are preserved across upgrades.\n\nUsage Notes\nDenomination: use ₿ prefix with sats (e.g. ₿1,000 not \"1,000 sats\")\nSelf-custodial: the mnemonic IS the wallet. Back it up. Lose it, lose funds.\nDaemon: runs a local Lightning node on :3456. Auto-starts, persists to disk.\nAgent-to-agent payments: any agent with this wallet can pay any other agent's invoice or lightning address.\nWhat's Next?\n\nWant to accept payments from customers? Use the moneydevkit skill to add checkouts to any website. Agent-wallet handles agent-to-agent payments; moneydevkit handles customer-to-agent payments. Together they give your agent full payment superpowers."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/satbot-mdk/mdk-agent-wallet",
    "publisherUrl": "https://clawhub.ai/satbot-mdk/mdk-agent-wallet",
    "owner": "satbot-mdk",
    "version": "0.3.3",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/mdk-agent-wallet",
    "downloadUrl": "https://openagent3.xyz/downloads/mdk-agent-wallet",
    "agentUrl": "https://openagent3.xyz/skills/mdk-agent-wallet/agent",
    "manifestUrl": "https://openagent3.xyz/skills/mdk-agent-wallet/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/mdk-agent-wallet/agent.md"
  }
}