{"schemaVersion":2,"dataVersion":"20260822T105549Z-0a0b366f","generatedAt":"2026-08-22T10:55:49.138Z","source":{"id":"xmanrui-dsh-feishu","slug":"xmanrui-dsh-feishu","rank":367,"url":"https://github.com/xmanrui/dsh-feishu","name":"xmanrui/dsh-feishu","category":"notify","description":{"zh":"通过扫码把飞书机器人接入DeepSeek Harness。","en":"Connect a Feishu bot to DeepSeek Harness by scanning a QR code."},"stars":8,"starsCheckedAt":"2026-08-21","repository":{"owner":"xmanrui","repo":"dsh-feishu","requestedRef":null,"subpath":""},"npm":null,"downloads":null,"installMode":"github-source","upstreamInstall":"dsh plugin --profile web add github:xmanrui/dsh-feishu","tarball":null,"added":"2026-08-14","page":"https://awesome-dsh-plugin.com/p/xmanrui/dsh-feishu/","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":"xmanrui-dsh-feishu","slug":"xmanrui-dsh-feishu","policyVersion":"HT-DSH-0.2.2","scannedAt":"2026-08-22T08:24:11.865Z","scanStatus":"static-complete","verdict":"caution","score":94,"commit":"9510b7758af5f393ca5cb0fabacc780a6b7b1d0b","commitDate":"2026-08-17T18:49:06+08:00","artifactDigest":"sha256:d47de639b1e6a3bd51fabab3b068ec62e9493e8a1685ce7d2c95f1037c4e7c70","downloadUrl":"https://github.com/xmanrui/dsh-feishu/archive/9510b7758af5f393ca5cb0fabacc780a6b7b1d0b.tar.gz","installMode":"github-source","installCommand":"dsh plugin --profile web add github:xmanrui/dsh-feishu","manifest":{"found":true,"path":"package.json","parseError":null,"packageName":"@xmanrui/dsh-feishu","packageVersion":"0.1.0","bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-ui-settings","@deepseek-ai/dsh-client-ui-slots","@deepseek-ai/dsh-client-locale"],"platform":"web"},"lifecycleScripts":{},"peerDependencies":[]},"identity":{"status":"not-published","installMode":"github-source","upstreamNpm":null,"manifestName":"@xmanrui/dsh-feishu","nameMatch":null,"npm":null,"repositoryMatch":"not-checked","provenance":"not-checked","tarballHost":null},"permissions":{"bundlePatch":"cordis.patch.yml","inserts":[{"id":"xmanrui-dsh-feishu","name":"@xmanrui/dsh-feishu","path":"cordis.patch.yml","disabled":false}],"overrides":[],"jsExpressions":0,"clientPlatform":"web","parseErrors":[]},"capabilities":["browser-ui","credentials","environment","filesystem","host-bundle","network","subprocess"],"outboundHosts":[{"host":"open.feishu.cn","count":4},{"host":"open.larksuite.com","count":2}],"findings":[{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"bin/dsh-feishu.mjs","pathClass":"source","line":3,"evidence":"spawnSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"157f77609506e00b7a2423fc"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"bin/dsh-feishu.mjs","pathClass":"source","line":3,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"53c4bf74dd604062b55e5aaf"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/index.js","pathClass":"source","line":911,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"89dedaa9e6429e9e52b8af60"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/config.mjs","pathClass":"source","line":1,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"3d02d632703f1a386932e4cd"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/config.mjs","pathClass":"source","line":1,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"f1faf6e8cc8ceca4cb9dc5ef"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/harness-client.mjs","pathClass":"source","line":1,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"5492443fd90611116932dff4"},{"id":"HT-DATA-001","title":"同一模块同时接触凭据与网络","severity":"medium","confidence":"medium","layer":"static","path":"lib/index.js","pathClass":"source","line":1728,"evidence":"credential access at line 1728 + outbound network at line 1017","remediation":"拆分能力边界，限定目的域名，并提供不会发送凭据值的可验证证明。","hash":"574f7125d8076e67cc496022","review":{"verdict":"functional","reason":"config.secretRef通过credentials.resolve取出飞书机器人凭据后用于#startRuntime建立与飞书官方长连接，属于插件声明功能（接入飞书机器人）的必要行为，未见凭据外发第三方。","model":"sonnet@p2","reviewedAt":"2026-08-21T11:25:28.610Z"}}],"counts":{"critical":0,"high":0,"medium":1,"low":6},"rawCounts":{"critical":0,"high":0,"medium":1,"low":6},"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":50,"bytesScanned":534627,"truncated":false,"lockfiles":["package-lock.json"],"pathClasses":{"test-example-docs":16,"markdown":2,"source":29,"cordis":1,"data":1,"manifest":1}},"limitations":["此结果为源码静态检测，不等同于无漏洞证明。","尚未比对 npm 发布包与源码的一致性，也未执行隔离运行和人工复核。","危险能力可能是插件功能所需，需结合用途与证据人工判断。"],"limitationKeys":["static-analysis-only","no-artifact-runtime-human-review","capability-needs-context"],"review":{"model":"sonnet","reviewedAt":"2026-08-22T08:24:11.865Z","summary":null,"intentMatch":null,"findingsReviewed":1,"findingsCandidates":1,"fromCache":1,"usage":null}},"timeline":[{"scannedAt":"2026-08-22T08:24:11.865Z","commit":"9510b7758af5f393ca5cb0fabacc780a6b7b1d0b","policyVersion":"HT-DSH-0.2.2","verdict":"caution","status":"static-complete"},{"scannedAt":"2026-08-21T11:25:28.609Z","commit":"9510b7758af5f393ca5cb0fabacc780a6b7b1d0b","policyVersion":"HT-DSH-0.2.1","verdict":"caution","status":"static-complete"},{"scannedAt":"2026-08-21T10:54:02.543Z","commit":"9510b7758af5f393ca5cb0fabacc780a6b7b1d0b","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":"9510b7758af5f393ca5cb0fabacc780a6b7b1d0b","policyVersion":"HT-DSH-0.2.2","at":"2026-08-22T08:24:11.865Z"},{"kind":"policy-change","from":"HT-DSH-0.2.0","to":"HT-DSH-0.2.1","commit":"9510b7758af5f393ca5cb0fabacc780a6b7b1d0b","policyVersion":"HT-DSH-0.2.1","at":"2026-08-21T11:25:28.609Z"},{"kind":"first-scan","from":null,"to":"caution","commit":"9510b7758af5f393ca5cb0fabacc780a6b7b1d0b","policyVersion":"HT-DSH-0.2.0","at":"2026-08-21T10:54:02.543Z"}]}