{"schemaVersion":2,"dataVersion":"20260822T105549Z-0a0b366f","generatedAt":"2026-08-22T10:55:49.138Z","source":{"id":"mervyn-teo-dsh-plugin-qr-connect","slug":"mervyn-teo-dsh-plugin-qr-connect","rank":795,"url":"https://github.com/mervyn-teo/dsh-plugin-qr-connect","name":"mervyn-teo/dsh-plugin-qr-connect","category":"remote","description":{"zh":"「设置」按钮上方的一键二维码，让手机通过带鉴权的反向代理连接 Web 界面。","en":"A QR-code button above Settings that lets phones connect to the web UI through an auth-gated reverse proxy."},"stars":3,"starsCheckedAt":"2026-08-21","repository":{"owner":"mervyn-teo","repo":"dsh-plugin-qr-connect","requestedRef":null,"subpath":""},"npm":"dsh-plugin-qr-connect","downloads":0,"installMode":"npm","upstreamInstall":"dsh plugin --profile web add dsh-plugin-qr-connect","tarball":null,"added":"2026-08-16","page":"https://awesome-dsh-plugin.com/p/mervyn-teo/dsh-plugin-qr-connect/","screenshots":[],"discovery":{"provider":"awesome-dsh-plugin","channel":"plugins.json","indexUrl":"https://github.com/awesome-dsh-plugin/awesome-dsh-plugin","selection":"all curated entries"}},"report":{"sourceId":"mervyn-teo-dsh-plugin-qr-connect","slug":"mervyn-teo-dsh-plugin-qr-connect","policyVersion":"HT-DSH-0.2.2","scannedAt":"2026-08-22T08:28:40.130Z","scanStatus":"static-complete","verdict":"caution","score":95,"commit":"938b32a13fb2634c3bc671ae1f95da1b61e62a17","commitDate":"2026-08-20T14:07:01+08:00","artifactDigest":"sha256:72946e04e1fcba860880d2cab9ae70efdeae5db9f7b81d41d841a38fbcb11c7f","downloadUrl":"https://github.com/mervyn-teo/dsh-plugin-qr-connect/archive/938b32a13fb2634c3bc671ae1f95da1b61e62a17.tar.gz","installMode":"npm","installCommand":"dsh plugin --profile web add dsh-plugin-qr-connect","manifest":{"found":true,"path":"package.json","parseError":null,"packageName":"dsh-plugin-qr-connect","packageVersion":"0.1.1","bundle":{"patch":"./cordis.patch.yml"},"client":{"platform":"web","inject":["@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-slots"]},"lifecycleScripts":{},"peerDependencies":["@deepseek-ai/cordis","@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-ui-primitives","@deepseek-ai/dsh-client-ui-slots","@deepseek-ai/dsh-host-webserver","@deepseek-ai/dsh-invariants","@deepseek-ai/dsh-settings","@deepseek-ai/schemastery"]},"identity":{"status":"found","installMode":"npm","upstreamNpm":"dsh-plugin-qr-connect","manifestName":"dsh-plugin-qr-connect","nameMatch":true,"npm":{"name":"dsh-plugin-qr-connect","latestVersion":"0.1.1","publishedAt":"2026-08-20T06:31:12.543Z","createdAt":"2026-08-20T06:31:12.143Z","versionCount":1,"maintainers":1,"repository":"git+https://github.com/mervyn-teo/dsh-plugin-qr-connect.git","hasInstallScripts":false,"deprecated":false},"repositoryMatch":"match","provenance":"none","tarballHost":null,"versionMatch":"match"},"permissions":{"bundlePatch":"cordis.patch.yml","inserts":[{"id":"qr-connect","name":"dsh-plugin-qr-connect","path":"cordis.patch.yml","disabled":false}],"overrides":[],"jsExpressions":0,"clientPlatform":"web","parseErrors":[]},"capabilities":["browser-ui","filesystem","host-bundle","network","subprocess"],"outboundHosts":[{"host":"api.ipify.org","count":1},{"host":"api64.ipify.org","count":1}],"findings":[{"id":"HT-CLIENT-001","title":"浏览器端使用危险 HTML 注入点","severity":"medium","confidence":"medium","layer":"static","path":"lib/client.js","pathClass":"source","line":608,"evidence":"dangerouslySetInnerHTML","remediation":"使用安全 DOM API，并在不可避免时对不可信内容进行严格清洗。","hash":"48792e8ff9af270b03d1c839"}],"counts":{"critical":0,"high":0,"medium":1,"low":0},"rawCounts":{"critical":0,"high":0,"medium":1,"low":0},"vulnerabilities":[],"coverage":{"source":"complete","manifest":"complete","bundleConfig":"complete","dependencies":"lockfile-missing","vulnerabilities":"lockfile-missing","identity":"complete","artifact":"not-compared","llmReview":"not-needed","dynamicRuntime":"not-run","humanReview":"not-run"},"inventory":{"filesScanned":8,"bytesScanned":62715,"truncated":false,"lockfiles":[],"pathClasses":{"markdown":2,"cordis":1,"source":4,"manifest":1}},"limitations":["此结果为源码静态检测，不等同于无漏洞证明。","尚未比对 npm 发布包与源码的一致性，也未执行隔离运行和人工复核。","危险能力可能是插件功能所需，需结合用途与证据人工判断。"],"limitationKeys":["static-analysis-only","no-artifact-runtime-human-review","capability-needs-context"]},"timeline":[{"scannedAt":"2026-08-22T08:28:40.130Z","commit":"938b32a13fb2634c3bc671ae1f95da1b61e62a17","policyVersion":"HT-DSH-0.2.2","verdict":"caution","status":"static-complete"},{"scannedAt":"2026-08-21T11:30:39.575Z","commit":"938b32a13fb2634c3bc671ae1f95da1b61e62a17","policyVersion":"HT-DSH-0.2.1","verdict":"caution","status":"static-complete"},{"scannedAt":"2026-08-21T10:59:44.242Z","commit":"938b32a13fb2634c3bc671ae1f95da1b61e62a17","policyVersion":"HT-DSH-0.2.0","verdict":"caution","status":"static-complete"}],"events":[{"kind":"policy-change","from":"HT-DSH-0.2.1","to":"HT-DSH-0.2.2","commit":"938b32a13fb2634c3bc671ae1f95da1b61e62a17","policyVersion":"HT-DSH-0.2.2","at":"2026-08-22T08:28:40.130Z"},{"kind":"policy-change","from":"HT-DSH-0.2.0","to":"HT-DSH-0.2.1","commit":"938b32a13fb2634c3bc671ae1f95da1b61e62a17","policyVersion":"HT-DSH-0.2.1","at":"2026-08-21T11:30:39.575Z"},{"kind":"first-scan","from":null,"to":"caution","commit":"938b32a13fb2634c3bc671ae1f95da1b61e62a17","policyVersion":"HT-DSH-0.2.0","at":"2026-08-21T10:59:44.242Z"}]}