{"schemaVersion":2,"dataVersion":"20260822T105549Z-0a0b366f","generatedAt":"2026-08-22T10:55:49.138Z","source":{"id":"linenxi-ctrl-dsh-vision","slug":"linenxi-ctrl-dsh-vision","rank":244,"url":"https://github.com/linenxi-ctrl/dsh-vision","name":"linenxi-ctrl/dsh-vision","category":"vision","description":{"zh":"外挂识图插件：鲸鱼按钮配置面板、图片识图自动回传、模型自主截图识图工具。","en":"External vision plugin for DeepSeek Harness: whale-button config panel, image recognition with auto-reply, and agent screenshot/recognize tools."},"stars":12,"starsCheckedAt":"2026-08-21","repository":{"owner":"linenxi-ctrl","repo":"dsh-vision","requestedRef":null,"subpath":""},"npm":null,"downloads":null,"installMode":"github-source","upstreamInstall":"dsh plugin --profile web add github:linenxi-ctrl/dsh-vision","tarball":null,"added":"2026-08-14","page":"https://awesome-dsh-plugin.com/p/linenxi-ctrl/dsh-vision/","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":"linenxi-ctrl-dsh-vision","slug":"linenxi-ctrl-dsh-vision","policyVersion":"HT-DSH-0.2.2","scannedAt":"2026-08-22T08:22:41.677Z","scanStatus":"static-complete","verdict":"caution","score":94,"commit":"50f6ba065e8cf42c4ecc5a06c4e96dc2d5c69b11","commitDate":"2026-08-15T23:00:56+08:00","artifactDigest":"sha256:d26124d79ad8aea026b8e95f8afdc4e77d3344dd6faba0b12dc768120d992367","downloadUrl":"https://github.com/linenxi-ctrl/dsh-vision/archive/50f6ba065e8cf42c4ecc5a06c4e96dc2d5c69b11.tar.gz","installMode":"github-source","installCommand":"dsh plugin --profile web add github:linenxi-ctrl/dsh-vision","manifest":{"found":true,"path":"package.json","parseError":null,"packageName":"@linenxi-ctrl/dsh-vision","packageVersion":"0.2.6","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime"],"platform":"web","immediately":true},"lifecycleScripts":{},"peerDependencies":["@deepseek-ai/cordis","@deepseek-ai/dsh-tools","@deepseek-ai/dsh-system-prompt","@deepseek-ai/dsh-settings","@deepseek-ai/dsh-host-webserver","@deepseek-ai/schemastery"]},"identity":{"status":"found","installMode":"github-source","upstreamNpm":null,"manifestName":"@linenxi-ctrl/dsh-vision","nameMatch":null,"npm":{"name":"@linenxi-ctrl/dsh-vision","latestVersion":"0.2.6","publishedAt":"2026-08-15T15:01:10.791Z","createdAt":"2026-08-14T13:31:53.698Z","versionCount":7,"maintainers":1,"repository":null,"hasInstallScripts":false,"deprecated":false},"repositoryMatch":"missing","provenance":"none","tarballHost":null,"versionMatch":"match"},"permissions":{"bundlePatch":"cordis.patch.yml","inserts":[{"id":"vision","name":"@linenxi-ctrl/dsh-vision","path":"cordis.patch.yml","disabled":false}],"overrides":[],"jsExpressions":0,"clientPlatform":"web","parseErrors":[]},"capabilities":["agent-control","browser-ui","credentials","environment","filesystem","host-bundle","network","session","subprocess"],"outboundHosts":[{"host":"registry.npmmirror.com","count":6},{"host":"mirrors.huaweicloud.com","count":3},{"host":"mirrors.cloud.tencent.com","count":3},{"host":"api.openai.com","count":2}],"findings":[{"id":"HT-CLIENT-001","title":"浏览器端使用危险 HTML 注入点","severity":"medium","confidence":"medium","layer":"static","path":"lib/client.js","pathClass":"source","line":302,"evidence":".innerHTML =","remediation":"使用安全 DOM API，并在不可避免时对不可信内容进行严格清洗。","hash":"87e8e136bfe0ec624b8b4ecd"},{"id":"HT-CLIENT-001","title":"浏览器端使用危险 HTML 注入点","severity":"medium","confidence":"medium","layer":"static","path":"lib/client.js","pathClass":"source","line":499,"evidence":".innerHTML =","remediation":"使用安全 DOM API，并在不可避免时对不可信内容进行严格清洗。","hash":"87e8e136bfe0ec624b8b4ecd"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/tool.js","pathClass":"source","line":17,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"4f274103c55b03c8d71f61f6"}],"counts":{"critical":0,"high":0,"medium":2,"low":1},"rawCounts":{"critical":0,"high":0,"medium":2,"low":1},"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":14,"bytesScanned":106792,"truncated":false,"lockfiles":[],"pathClasses":{"markdown":3,"cordis":2,"script":3,"source":5,"manifest":1}},"limitations":["此结果为源码静态检测，不等同于无漏洞证明。","尚未比对 npm 发布包与源码的一致性，也未执行隔离运行和人工复核。","危险能力可能是插件功能所需，需结合用途与证据人工判断。"],"limitationKeys":["static-analysis-only","no-artifact-runtime-human-review","capability-needs-context"]},"timeline":[{"scannedAt":"2026-08-22T08:22:41.677Z","commit":"50f6ba065e8cf42c4ecc5a06c4e96dc2d5c69b11","policyVersion":"HT-DSH-0.2.2","verdict":"caution","status":"static-complete"},{"scannedAt":"2026-08-21T11:22:23.027Z","commit":"50f6ba065e8cf42c4ecc5a06c4e96dc2d5c69b11","policyVersion":"HT-DSH-0.2.1","verdict":"caution","status":"static-complete"},{"scannedAt":"2026-08-21T10:50:51.046Z","commit":"50f6ba065e8cf42c4ecc5a06c4e96dc2d5c69b11","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":"50f6ba065e8cf42c4ecc5a06c4e96dc2d5c69b11","policyVersion":"HT-DSH-0.2.2","at":"2026-08-22T08:22:41.677Z"},{"kind":"policy-change","from":"HT-DSH-0.2.0","to":"HT-DSH-0.2.1","commit":"50f6ba065e8cf42c4ecc5a06c4e96dc2d5c69b11","policyVersion":"HT-DSH-0.2.1","at":"2026-08-21T11:22:23.027Z"},{"kind":"first-scan","from":null,"to":"caution","commit":"50f6ba065e8cf42c4ecc5a06c4e96dc2d5c69b11","policyVersion":"HT-DSH-0.2.0","at":"2026-08-21T10:50:51.046Z"}]}