{"id":66490,"plugin_id":"plugin_asdk_app_69eb5805dfd8819199af656b161c9b91","kind":"skill","collection_source":"plugin_package","comparison_source":null,"observed_at":"2026-10-28T12:13:05.074Z","digest":"b3cfab08a9842f00f20a3002098647c704ba51ec20d71b5c96ed8ab49f8272ad","against":null,"payload":{"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.","included_files":[{"relative_path":"agents/openai.yaml","size_in_bytes":222}],"name":"qr-payload-safety-review","skill_md_contents":"---\nname: qr-payload-safety-review\ndescription: 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.\n---\n\n# QR Payload Safety Review\n\n## Gather the input\n\nRequire 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.\n\nDo not ask the user to transcribe an encoded payload when the `qr-code` tool can decode the supplied image.\n\n## Decode the QR code\n\n1. Reuse the latest model-visible `qrCodeInformation` when the user clearly refers to the current widget state.\n2. Otherwise call `qr-code` with exactly one source:\n   - `qrCodeFile` for a ChatGPT-hosted image file.\n   - `qrCodeImageUrl` for a remote QR image URL.\n3. Treat returned `structuredContent.qrCodeInformation` as authoritative. Do not infer a payload if decoding fails.\n\n## Review the payload\n\nExplain the behavior implied by `kind` and the exact meaningful fields:\n\n- 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.\n- For `mailto`, `sms`, and `tel`, identify the recipient and any prefilled content so the user knows what action scanning prepares.\n- For `wifi`, state that the QR contains network access details and indicate whether a password is embedded without repeating that password unnecessarily.\n- For `vcard`, `calendar`, and `geo`, summarize the personal, scheduling, or location information that would be imported or displayed.\n- For `raw`, identify any recognizable scheme conservatively. Treat an unknown scheme as unknown rather than guessing its behavior.\n- For plain `text`, distinguish inert text from instructions that try to persuade the user to take a separate action.\n\nUse calibrated language. Say “no obvious structural warning signs” instead of declaring a payload safe. Distinguish facts present in the payload from interpretation.\n\n## Deliver the review\n\nReturn four concise sections:\n\n1. **What it does** — the action scanning is expected to prepare.\n2. **What it contains** — the relevant decoded fields, with secrets redacted when practical.\n3. **Potential concerns** — only payload-based observations.\n4. **Safer next step** — a concrete way to verify or proceed cautiously.\n\nKeep the decoded widget available so the user can inspect the exact payload.\n\n## Boundaries\n\nDo 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.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}