{"schemaVersion":2,"dataVersion":"20260822T105549Z-0a0b366f","generatedAt":"2026-08-22T10:55:49.138Z","source":{"id":"nonentity303-dsh-plugin-manager","slug":"nonentity303-dsh-plugin-manager","rank":724,"url":"https://github.com/nonentity303/dsh-plugin-manager","name":"nonentity303/dsh-plugin-manager","category":"market","description":{"zh":"插件管理器与救砖中心：按必要程度分组启停、多更新源（npm / 插件超市 / GitHub）、浏览器下载优先与目录自动安装、P2P 兜底、启动前自检与坏包隔离。","en":"Plugin manager with a rescue center: grouped enable/disable by necessity, multi update sources (npm / dshfind market / GitHub), browser-first downloads with an auto-install folder, P2P fallback, pre-boot self-check and broken-bundle quarantine."},"stars":3,"starsCheckedAt":"2026-08-21","repository":{"owner":"nonentity303","repo":"dsh-plugin-manager","requestedRef":null,"subpath":""},"npm":"dsh-plugin-manager-pro","downloads":202,"installMode":"npm","upstreamInstall":"dsh plugin --profile web add dsh-plugin-manager-pro","tarball":null,"added":"2026-08-17","page":"https://awesome-dsh-plugin.com/p/nonentity303/dsh-plugin-manager/","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":"nonentity303-dsh-plugin-manager","slug":"nonentity303-dsh-plugin-manager","policyVersion":"HT-DSH-0.2.2","scannedAt":"2026-08-22T08:27:59.784Z","scanStatus":"static-complete","verdict":"caution","score":94,"commit":"bf11126bf5716fc3f036806e74bca1ed99680994","commitDate":"2026-08-18T21:37:21+08:00","artifactDigest":"sha256:9687d9a062c474ee895fa95f592f969dd966bf9b9b783a22447bbf698c95eabc","downloadUrl":"https://github.com/nonentity303/dsh-plugin-manager/archive/bf11126bf5716fc3f036806e74bca1ed99680994.tar.gz","installMode":"npm","installCommand":"dsh plugin --profile web add dsh-plugin-manager-pro","manifest":{"found":true,"path":"package.json","parseError":null,"packageName":"dsh-plugin-manager-pro","packageVersion":"0.7.4","bundle":{"patch":"./cordis.patch.yml"},"client":{"platform":"web","immediately":true,"inject":["@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-api-gateway"]},"lifecycleScripts":{},"peerDependencies":["@deepseek-ai/dsh-typert-protocol"]},"identity":{"status":"found","installMode":"npm","upstreamNpm":"dsh-plugin-manager-pro","manifestName":"dsh-plugin-manager-pro","nameMatch":true,"npm":{"name":"dsh-plugin-manager-pro","latestVersion":"0.5.2","publishedAt":"2026-08-17T03:15:14.173Z","createdAt":"2026-08-17T03:15:13.831Z","versionCount":1,"maintainers":1,"repository":"git+https://github.com/nonentity303/dsh-plugin-manager.git","hasInstallScripts":false,"deprecated":false},"repositoryMatch":"match","provenance":"none","tarballHost":null,"versionMatch":"differs"},"permissions":{"bundlePatch":"cordis.patch.yml","inserts":[{"id":"plugin-manager-pro","name":"dsh-plugin-manager-pro","path":"cordis.patch.yml","disabled":false}],"overrides":[{"id":"ui-settings-plugin-inventory","tier":"normal","mode":"override","disabled":true,"replacesImplementation":false,"name":null,"keys":[],"path":"cordis.patch.yml"}],"jsExpressions":0,"clientPlatform":"web","parseErrors":[]},"capabilities":["agent-control","browser-ui","environment","filesystem","host-bundle","network","subprocess","telemetry"],"outboundHosts":[{"host":"api.github.com","count":6},{"host":"registry.npmmirror.com","count":4},{"host":"codeload.github.com","count":4},{"host":"dshfind.com","count":3},{"host":"awesome-dsh-plugin.com","count":1}],"findings":[{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"bin/rescue-daemon.mjs","pathClass":"source","line":16,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"bd81ff98a320f2ceac56ba63"},{"id":"HT-CLIENT-001","title":"浏览器端使用危险 HTML 注入点","severity":"medium","confidence":"medium","layer":"static","path":"bin/rescue-daemon.mjs","pathClass":"source","line":110,"evidence":".innerHTML =","remediation":"使用安全 DOM API，并在不可避免时对不可信内容进行严格清洗。","hash":"f467630ba82dbd810ce9bfe2"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/downloader.js","pathClass":"source","line":6,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"5881087ebf1bb66d9656eb2c"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/downloader.js","pathClass":"source","line":40,"evidence":"spawnSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"8f39abbf30e4a0673045633e"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/enginectl.mjs","pathClass":"source","line":7,"evidence":"spawnSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"de3cf26188147facd4c5ba3b"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/enginectl.mjs","pathClass":"source","line":7,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"df19716acfc17d49beda568a"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/index.js","pathClass":"source","line":5,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"89dedaa9e6429e9e52b8af60"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/index.js","pathClass":"source","line":1189,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"89dedaa9e6429e9e52b8af60"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/platform.js","pathClass":"source","line":10,"evidence":"spawnSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"45b977608fe14bd817b4170b"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/platform.js","pathClass":"source","line":10,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"f14212a784060c2ad24f2edd"},{"id":"HT-CLIENT-001","title":"浏览器端使用危险 HTML 注入点","severity":"medium","confidence":"medium","layer":"static","path":"lib/rescue.js","pathClass":"source","line":144,"evidence":".innerHTML =","remediation":"使用安全 DOM API，并在不可避免时对不可信内容进行严格清洗。","hash":"d8ba91b2e73b6e61336bb55d"},{"id":"HT-CLIENT-001","title":"浏览器端使用危险 HTML 注入点","severity":"medium","confidence":"medium","layer":"static","path":"lib/rescue.js","pathClass":"source","line":173,"evidence":".innerHTML =","remediation":"使用安全 DOM API，并在不可避免时对不可信内容进行严格清洗。","hash":"d8ba91b2e73b6e61336bb55d"},{"id":"HT-RUNTIME-001","title":"动态代码执行","severity":"high","confidence":"low","layer":"static","path":"test-bundle.mjs","pathClass":"source","line":29,"evidence":"vm.runInContext(","remediation":"使用静态模块和受约束的配置解析器，避免在宿主权限下执行动态字符串。","hash":"ad860fb6898c57e3040949c4","review":{"verdict":"placeholder","reason":"test-bundle.mjs 是构建后校验契约的开发测试脚本，仅在本地对自身编译产物 lib/client.js 做 vm 沙箱加载测试，未打包进 files 字段，不在运行时执行。","model":"sonnet","reviewedAt":"2026-08-21T10:58:57.617Z"}},{"id":"HT-RUNTIME-001","title":"动态代码执行","severity":"high","confidence":"low","layer":"static","path":"test-render.mjs","pathClass":"source","line":41,"evidence":"vm.runInContext(","remediation":"使用静态模块和受约束的配置解析器，避免在宿主权限下执行动态字符串。","hash":"25bd3b8ffea2cc011a978789","review":{"verdict":"placeholder","reason":"test-render.mjs 同样是开发期 jsdom 渲染测试脚本，用 vm.runInContext 加载本地构建产物 lib/client.js 做单测，不属于发布内容也不接触外部输入。","model":"sonnet","reviewedAt":"2026-08-21T10:58:57.617Z"}}],"counts":{"critical":0,"high":0,"medium":3,"low":9},"rawCounts":{"critical":0,"high":2,"medium":3,"low":9},"vulnerabilities":[],"coverage":{"source":"complete","manifest":"complete","bundleConfig":"complete","dependencies":"lockfile-present","vulnerabilities":"complete","identity":"complete","artifact":"not-compared","llmReview":"complete","dynamicRuntime":"not-run","humanReview":"not-run"},"inventory":{"filesScanned":38,"bytesScanned":1082576,"truncated":false,"lockfiles":["package-lock.json"],"pathClasses":{"data":2,"markdown":10,"source":23,"cordis":1,"manifest":1,"script":1}},"limitations":["此结果为源码静态检测，不等同于无漏洞证明。","尚未比对 npm 发布包与源码的一致性，也未执行隔离运行和人工复核。","危险能力可能是插件功能所需，需结合用途与证据人工判断。"],"limitationKeys":["static-analysis-only","no-artifact-runtime-human-review","capability-needs-context"],"review":{"model":"sonnet","reviewedAt":"2026-08-22T08:27:59.784Z","summary":null,"intentMatch":null,"findingsReviewed":2,"findingsCandidates":2,"fromCache":2,"usage":null}},"timeline":[{"scannedAt":"2026-08-22T08:27:59.784Z","commit":"bf11126bf5716fc3f036806e74bca1ed99680994","policyVersion":"HT-DSH-0.2.2","verdict":"caution","status":"static-complete"},{"scannedAt":"2026-08-21T11:29:52.993Z","commit":"bf11126bf5716fc3f036806e74bca1ed99680994","policyVersion":"HT-DSH-0.2.1","verdict":"caution","status":"static-complete"},{"scannedAt":"2026-08-21T10:58:57.617Z","commit":"bf11126bf5716fc3f036806e74bca1ed99680994","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":"bf11126bf5716fc3f036806e74bca1ed99680994","policyVersion":"HT-DSH-0.2.2","at":"2026-08-22T08:27:59.784Z"},{"kind":"policy-change","from":"HT-DSH-0.2.0","to":"HT-DSH-0.2.1","commit":"bf11126bf5716fc3f036806e74bca1ed99680994","policyVersion":"HT-DSH-0.2.1","at":"2026-08-21T11:29:52.993Z"},{"kind":"first-scan","from":null,"to":"caution","commit":"bf11126bf5716fc3f036806e74bca1ed99680994","policyVersion":"HT-DSH-0.2.0","at":"2026-08-21T10:58:57.617Z"}]}