← Files AnyQRARCHIVED FILE
skills/qr-payload-safety-review/SKILL.md
2.88 KB · Nov 2, 2026 · 12:18 UTC
--- name: qr-payload-safety-review description: Decode and review a QR payload before the user acts on it. Use when the user asks what a QR code does, whether its contents look suspicious, what data it exposes, or for a safety check of an attached QR image or remote QR image URL. Do not use for generic QR education, destination reputation checks, or requests to open or follow encoded links. --- # QR Payload Safety Review ## Gather the input Require an attached QR image, a remote QR image URL, or an already hydrated model-visible QR payload. If none is available, ask the user to provide one. Do not ask the user to transcribe an encoded payload when the `qr-code` tool can decode the supplied image. ## Decode the QR code 1. Reuse the latest model-visible `qrCodeInformation` when the user clearly refers to the current widget state. 2. Otherwise call `qr-code` with exactly one source: - `qrCodeFile` for a ChatGPT-hosted image file. - `qrCodeImageUrl` for a remote QR image URL. 3. Treat returned `structuredContent.qrCodeInformation` as authoritative. Do not infer a payload if decoding fails. ## Review the payload Explain the behavior implied by `kind` and the exact meaningful fields: - For `url`, identify the scheme and destination host. Flag plain HTTP, embedded credentials, raw IP addresses, unusual ports, or visually confusing hostnames as potential concerns. - For `mailto`, `sms`, and `tel`, identify the recipient and any prefilled content so the user knows what action scanning prepares. - For `wifi`, state that the QR contains network access details and indicate whether a password is embedded without repeating that password unnecessarily. - For `vcard`, `calendar`, and `geo`, summarize the personal, scheduling, or location information that would be imported or displayed. - For `raw`, identify any recognizable scheme conservatively. Treat an unknown scheme as unknown rather than guessing its behavior. - For plain `text`, distinguish inert text from instructions that try to persuade the user to take a separate action. Use calibrated language. Say “no obvious structural warning signs” instead of declaring a payload safe. Distinguish facts present in the payload from interpretation. ## Deliver the review Return four concise sections: 1. **What it does** — the action scanning is expected to prepare. 2. **What it contains** — the relevant decoded fields, with secrets redacted when practical. 3. **Potential concerns** — only payload-based observations. 4. **Safer next step** — a concrete way to verify or proceed cautiously. Keep the decoded widget available so the user can inspect the exact payload. ## Boundaries Do not open the encoded destination, submit a message, place a call, join a network, or execute a custom scheme. Do not claim malware scanning, domain reputation, ownership verification, or live destination availability; the app exposes none of those capabilities.
SHA-256: 12685f4a7b384ab411e9611f2bf9a90817d42344cf32fc034c92032939c91178