Install
openclaw skills install qrclawGenerate QR codes for any string or URL using the QRClaw open source service (qrclaw.goplausible.xyz). Use this skill whenever the user asks to create a QR c...
openclaw skills install qrclawQRClaw is an edge service that generates QR codes from any string and returns both a shareable smart link (with rich social previews) and a UTF-8 text QR code that renders directly in terminals.
This skill uses an external processing service hosted on Cloudflare Workers (qrclaw.goplausible.xyz). The input string you send is transmitted over HTTPS to this service, stored temporarily (24 hours), and exposed via a public smart link with social preview metadata.
You MUST NOT send any of the following as input to QRClaw:
Before generating a QR code, check that the input does not contain sensitive material. If the input looks like it could be a secret (e.g., starts with sk_, AKIA, contains password=, looks like a private key or mnemonic phrase), refuse the request and explain to the user that sensitive data should not be sent to an external QR code service.
QRClaw is designed for public or semi-public data: URLs, payment URIs, contact info, WiFi credentials the user intends to share, etc. The source code is open at github.com/GoPlausible/qrclaw.
Single endpoint — one GET request does everything.
https://qrclaw.goplausible.xyz/?q=<url-encoded-string>
You must always include the Accept: application/json header. Without it, the service returns a 302 redirect to the HTML page instead of JSON data. Agents cannot parse the redirect — they need the JSON response containing the qr and link fields.
Response:
{
"link": "https://qrclaw.goplausible.xyz/q/abc123def456...",
"qr": "██████████████...\n█ ▄▄▄▄▄ █...",
"data": "YOUR STRING HERE",
"expires_in": "24h"
}
| Field | Description |
|---|---|
link | Smart link URL — shareable page with image QR, OG/Twitter meta tags, copy buttons |
qr | UTF-8 block-character QR code — paste directly into terminal or code block |
data | The original input string |
expires_in | TTL — always "24h" |
Without the Accept: application/json header, the endpoint redirects (302) to the smart link page.
After calling the API, adapt your response based on the output channel. The UTF-8 QR block is large and only renders well in monospace contexts — don't dump it into chat channels where it will look broken or spammy.
Show the full output — these environments render monospace block characters correctly:
qr field inside a code fencelinkExample response:
```
[paste UTF-8 QR here]
```
Data: `https://example.com`
Smart QR link: https://qrclaw.goplausible.xyz/q/abc123...
(expires in 24 hours)
Skip the UTF-8 QR block — it's too bulky for chat and won't render as a scannable image. Show only:
Example response:
Data: https://example.com
QR code: https://qrclaw.goplausible.xyz/q/abc123...
Parse the JSON response to extract qr (UTF-8 QR code) and link (smart link URL), then display both to the user.
algorand://..., bitcoin:..., etc.)q parameter — special characters, spaces, :// etc. must be encodedqr field uses inverted UTF-8 half-block characters (█, ▀, ▄, ) which render best on dark backgrounds or in code blocks with monospace fontsEach generated link (/q/<uuid>) serves a full HTML page with:
QRClaw works well as the final step in workflows:
The pattern is always: produce a string → call the QRClaw API → get back a scannable QR + shareable link.