← 返回 Skills 市场
workingdevshero

Wdh

作者 Working Dev's Hero · GitHub ↗ · v0.2.0 · MIT-0
cross-platform ⚠ pending
59
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install wdh
功能描述
Call any of seven paid-per-call CLI utilities on WDH.sh — big-file transfer (≤5 GB), URL shortening, Chart.js rendering, hosted markdown pages, QR codes, pai...
使用说明 (SKILL.md)

WDH.sh

A family of seven small, paid-per-call HTTP services for agents and humans. One CLI wraps every endpoint and signs payments automatically using the agent's wallet — no signups, no API keys, no subscriptions. Every call is settled in USDC on Base mainnet via the x402 protocol.

Prerequisites

  • An EVM wallet with USDC on Base mainnet (eip155:8453). $1 of USDC covers thousands of calls except for feedback ($1) and support ($5).
  • Private key exported as WDH_WALLET_PRIVATE_KEY (a hex string starting with 0x).
  • Node.js 20+ (the CLI ships as @wdhsh/cli on npm and runs anywhere Node runs).

The buyer never submits an on-chain transaction directly. The Coinbase x402 facilitator handles settlement and pays gas. See https://x402.org for protocol detail.

Services Overview

Tool Cost (USDC) Purpose
files $0.001 – $0.10 (size-tiered) Big-file transfer to a public expiring URL (≤5 GB, ≤7 days)
short $0.001 URL shortener — links never expire by default
charts $0.005 Chart rendering proxy (Chart.js payload → PNG)
md $0.002 Publish a markdown file as a hosted HTML page (≤30 days)
qr $0.001 QR code image (PNG or SVG)
feedback $1.00 Paid feature request — opens a Linear issue on the WDH team's tracker
support $5.00 Paid support ticket — opens a high-priority Linear issue

Install

The CLI is published as @wdhsh/cli on npm. Use it via bunx or npx for zero-install, or install globally:

bunx @wdhsh/cli --help        # zero-install, one-shot
npm i -g @wdhsh/cli && wdh --help
export WDH_WALLET_PRIVATE_KEY=0x...

Once the env var is set, every command pays automatically. Without it the CLI refuses to run.

Commands

files upload — Big-file transfer

Multipart upload to files.wdh.sh. Returns a public download URL.

bunx @wdhsh/cli files upload ./report.pdf --expires 7d
bunx @wdhsh/cli files upload ./build.tar.gz                   # 24h default TTL
Flag Required Default Description
\x3Cpath> yes Path to the file to upload (up to 5 GB)
--expires \x3Cttl> no 24h TTL like 30m, 24h, 7d. Max 7 days

Size-tiered pricing: $0.001 (≤10 MB), $0.005 (≤100 MB), $0.02 (≤500 MB), $0.05 (≤2 GB), $0.10 (≤5 GB).

short create — URL shortener

Returns a short https://short.wdh.sh/\x3Cslug> URL. Links never expire by default — safe for business cards, printed materials, anywhere a permanent redirect target is wanted.

bunx @wdhsh/cli short create https://example.com/very/long/path
bunx @wdhsh/cli short create https://example.com --slug launch
bunx @wdhsh/cli short create https://example.com --expires 30d
Flag Required Default Description
\x3Curl> yes URL to shorten (http or https only)
--slug \x3Cs> no auto-generated Custom slug. Matches ^[A-Za-z0-9_-]{3,32}$
--expires \x3Cttl> no never TTL like 24h, 30d. Omit and the link persists indefinitely

charts plot — Chart.js rendering

Proxies a Chart.js payload to the chartsplat renderer. Writes raw PNG bytes to stdout (or to --out if provided).

bunx @wdhsh/cli charts plot \
  --type bar \
  --data '{"labels":["Q1","Q2","Q3","Q4"],"datasets":[{"label":"Revenue","data":[50,75,60,90]}]}' \
  > chart.png
Flag Required Default Description
--type \x3Ckind> yes Chart.js chart type (bar, line, pie, doughnut, radar, etc.)
--data \x3Cjson> yes Chart.js JSON payload as a string (parsed and forwarded as the request body)

See chartsplat docs for the full schema and supported chart types.

md publish — Hosted markdown pages

Publishes a local markdown file as a styled HTML page on md.wdh.sh. Returns the public URL.

bunx @wdhsh/cli md publish ./notes.md
bunx @wdhsh/cli md publish ./post.md --title "Launch notes"
bunx @wdhsh/cli md publish ./scratch.md --expires 24h
Flag Required Default Description
\x3Cfile> yes Path to a local markdown file (max 1 MB)
--title \x3Ct> no Shared markdown Page title for the rendered HTML
--expires \x3Cttl> no 7d TTL like 24h, 7d, 30d. Max 30 days

Renderer is markdown-it with HTML escaped and javascript: / data: / vbscript: / file: links dropped.

qr generate — QR code images

Renders a QR code as a PNG (default) or SVG.

bunx @wdhsh/cli qr generate "https://wdh.sh" --out wdh.png
bunx @wdhsh/cli qr generate "wifi:T:WPA;S:...;P:..." --size 1024 > wifi.png
bunx @wdhsh/cli qr generate "ping" --format svg > ping.svg
Flag Required Default Description
\x3Cdata> yes Text or URL to encode (max 2048 chars)
--size \x3Cpx> no 512 Output size in pixels. Clamped to 64–2048
--format \x3Cpng|svg> no png Output format
--out \x3Cfile> no stdout Write the image to a file path instead

feedback — Paid feature requests

Files a $1.00 paid feature request as a Linear issue on the WDH team's tracker. Returns the issue URL.

bunx @wdhsh/cli feedback "Add Solana support" --body "We'd use this for..."
echo "long-form body here" | bunx @wdhsh/cli feedback "Title goes here"
bunx @wdhsh/cli feedback "Bug in qr" --body "..." --contact [email protected]
Flag Required Default Description
\x3Ctitle> yes Issue title (max 200 chars)
--body \x3Ctext> no from stdin Issue body (max 10 000 chars). Omit to read from stdin
--contact \x3Cemail> no Optional reply-to address

support — Paid support tickets

Files a $5.00 paid support ticket as a high-priority Linear issue. Severity maps to Linear priority. --contact is required so the team can follow up.

bunx @wdhsh/cli support "Files endpoint 500s" \
  --contact [email protected] \
  --body "every /init returns 500 since 14:00 UTC" \
  --severity high

cat incident.md | bunx @wdhsh/cli support "x402 settlement timing out" \
  --contact [email protected] --severity critical
Flag Required Default Description
\x3Ctitle> yes Ticket title (prefixed with [support], max 200 chars)
--contact \x3Cemail> yes Reply-to email
--body \x3Ctext> no from stdin Ticket body (max 10 000 chars). Omit to read from stdin
--severity \x3Clvl> no medium low | medium | high | critical → Linear priority 4|3|2|1

Output Handling

  • Most commands print a single line to stdout: the resulting URL (files, short, md, feedback, support) or the path that was written (qr --out \x3Cfile>).
  • qr (without --out) and charts write raw image bytes to stdout — always pipe to a file: > chart.png.

Tips

  • Wallet hygiene. Use a throwaway Base wallet for the agent — load it with the budget you're willing to spend and revoke by deleting the key.
  • Idempotency for feedback / support. Those endpoints accept an Idempotency-Key header server-side (24h cache). The CLI doesn't surface that flag yet — re-running a command will file a duplicate Linear issue and charge again.
  • Short links are permanent by default. Omitting --expires on short create means the redirect persists indefinitely — fine for business cards, printed QR targets, social bios. Add --expires only if you want it to lapse.
  • Files are temporary. files upload defaults to a 24-hour TTL. Pass --expires 7d for the maximum.
  • Charts payload. The --data JSON is a full Chart.js config (or just the inner data object — chartsplat accepts both). For OHLC / candlestick charts pass { x, o, h, l, c } points.

Error Handling

Error Cause Fix
WDH_WALLET_PRIVATE_KEY env var is required Env var unset export WDH_WALLET_PRIVATE_KEY=0x...
402 retry fails / insufficient funds Wallet has no USDC on Base Top up; even $1 covers thousands of small calls
failed: 413 on files upload File >5 GB Split the upload; 5 GB is the per-call max
failed: 400 on md publish Markdown >1 MB Trim or split the document
invalid duration Bad --expires value Use formats like 30m, 24h, 7d
failed: 503 on short create --slug 8 slug collisions in a row Pick a different slug or let it auto-generate

Related

  • CLI on npm: @wdhsh/cli
  • Per-service web docs: wdh.sh/docs
  • The x402 protocol: x402.org
  • The standalone chartsplat-x402 skill (uses chartsplat directly without WDH's proxy markup): chartsplat-x402 on ClawHub.
能力标签
cryptofinancial-authorityrequires-walletcan-make-purchasescan-sign-transactionsrequires-sensitive-credentials
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install wdh
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /wdh 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v0.2.0
- Adds support for all seven WDH.sh pay-per-call utilities through a single CLI and USDC/x402 payment flow on Base mainnet. - No signup, no API key, and gas handled by the backend; only need to provide a USDC-funded EVM wallet private key. - Covers big file uploads, URL shortening, Chart.js chart image rendering, hosted markdown publishing, QR code generation, paid feature requests, and paid support tickets. - Documents service pricing ($0.001–$5.00 USDC per call), supported flags, environment variable requirements, and example usage for each tool. - Recommends usage scenarios and provides installation and usage details for agents and users.
元数据
Slug wdh
版本 0.2.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

Wdh 是什么?

Call any of seven paid-per-call CLI utilities on WDH.sh — big-file transfer (≤5 GB), URL shortening, Chart.js rendering, hosted markdown pages, QR codes, pai... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 59 次。

如何安装 Wdh?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install wdh」即可一键安装,无需额外配置。

Wdh 是免费的吗?

是的,Wdh 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Wdh 支持哪些平台?

Wdh 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Wdh?

由 Working Dev's Hero(@workingdevshero)开发并维护,当前版本 v0.2.0。

💬 留言讨论