{"schemaVersion":2,"dataVersion":"20260822T105549Z-0a0b366f","generatedAt":"2026-08-22T10:55:49.138Z","source":{"id":"yangyongzhen-dsh-git-workflow","slug":"yangyongzhen-dsh-git-workflow","rank":1049,"url":"https://github.com/yangyongzhen/dsh-git-workflow","name":"yangyongzhen/dsh-git-workflow","category":"git","description":{"zh":"规范提交（Conventional Commits）、自动 changelog、PR 描述生成与分支推送，纯 git CLI 实现。","en":"Conventional-commit enforcement, changelog generation, PR summaries and branch pushes through the plain git CLI."},"stars":2,"starsCheckedAt":"2026-08-21","repository":{"owner":"yangyongzhen","repo":"dsh-git-workflow","requestedRef":null,"subpath":""},"npm":null,"downloads":null,"installMode":"github-source","upstreamInstall":"dsh plugin --profile web add github:yangyongzhen/dsh-git-workflow","tarball":null,"added":"2026-08-15","page":"https://awesome-dsh-plugin.com/p/yangyongzhen/dsh-git-workflow/","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":"yangyongzhen-dsh-git-workflow","slug":"yangyongzhen-dsh-git-workflow","policyVersion":"HT-DSH-0.2.2","scannedAt":"2026-08-22T08:31:09.811Z","scanStatus":"static-complete","verdict":"pass","score":99,"commit":"a7c2a9c7bdd65e0c89358cce1f6e38dc7e3d66d2","commitDate":"2026-08-15T10:54:31+08:00","artifactDigest":"sha256:55173cb54ff0092e6debb1ad51053ff1be434597a40758b372874e938cd06780","downloadUrl":"https://github.com/yangyongzhen/dsh-git-workflow/archive/a7c2a9c7bdd65e0c89358cce1f6e38dc7e3d66d2.tar.gz","installMode":"github-source","installCommand":"dsh plugin --profile web add github:yangyongzhen/dsh-git-workflow","manifest":{"found":true,"path":"package.json","parseError":null,"packageName":"dsh-git-workflow","packageVersion":"0.1.0","bundle":{"patch":"./cordis.patch.yml"},"client":null,"lifecycleScripts":{},"peerDependencies":["@deepseek-ai/dsh-tools"]},"identity":{"status":"not-published","installMode":"github-source","upstreamNpm":null,"manifestName":"dsh-git-workflow","nameMatch":null,"npm":null,"repositoryMatch":"not-checked","provenance":"not-checked","tarballHost":null},"permissions":{"bundlePatch":"cordis.patch.yml","inserts":[{"id":"git-workflow","name":"dsh-git-workflow","path":"cordis.patch.yml","disabled":false}],"overrides":[],"jsExpressions":0,"clientPlatform":null,"parseErrors":[]},"capabilities":["agent-control","host-bundle","subprocess"],"outboundHosts":[],"findings":[{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"lib/git.js","pathClass":"source","line":10,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"2493b5f25f1f97c58af76ef7"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"medium","layer":"static","path":"src/git.ts","pathClass":"source","line":10,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","hash":"bdc87ed605fa8a9fcf276b39"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"test/git-workflow.test.mjs","pathClass":"test-example-docs","line":11,"evidence":"execFileSync","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"524170b28f5de0a324e177e6"},{"id":"HT-EXEC-001","title":"直接创建宿主子进程","severity":"low","confidence":"low","layer":"static","path":"test/git-workflow.test.mjs","pathClass":"test-example-docs","line":11,"evidence":"node:child_process","remediation":"通过 DSH 的受控 subprocess/shell seam 执行，并公开命令、参数及审批策略。","note":"位于测试、示例或文档目录","hash":"5746808bccd1d49fa4b190e9"}],"counts":{"critical":0,"high":0,"medium":0,"low":2},"rawCounts":{"critical":0,"high":0,"medium":0,"low":4},"vulnerabilities":[],"coverage":{"source":"complete","manifest":"complete","bundleConfig":"complete","dependencies":"lockfile-present","vulnerabilities":"complete","identity":"complete","artifact":"not-compared","llmReview":"not-needed","dynamicRuntime":"not-run","humanReview":"not-run"},"inventory":{"filesScanned":14,"bytesScanned":74170,"truncated":false,"lockfiles":["pnpm-lock.yaml"],"pathClasses":{"markdown":2,"cordis":1,"source":6,"manifest":1,"yaml":2,"test-example-docs":1,"data":1}},"limitations":["此结果为源码静态检测，不等同于无漏洞证明。","尚未比对 npm 发布包与源码的一致性，也未执行隔离运行和人工复核。","危险能力可能是插件功能所需，需结合用途与证据人工判断。"],"limitationKeys":["static-analysis-only","no-artifact-runtime-human-review","capability-needs-context"]},"timeline":[{"scannedAt":"2026-08-22T08:31:09.811Z","commit":"a7c2a9c7bdd65e0c89358cce1f6e38dc7e3d66d2","policyVersion":"HT-DSH-0.2.2","verdict":"pass","status":"static-complete"},{"scannedAt":"2026-08-21T11:34:35.713Z","commit":"a7c2a9c7bdd65e0c89358cce1f6e38dc7e3d66d2","policyVersion":"HT-DSH-0.2.1","verdict":"pass","status":"static-complete"},{"scannedAt":"2026-08-21T11:03:27.187Z","commit":"a7c2a9c7bdd65e0c89358cce1f6e38dc7e3d66d2","policyVersion":"HT-DSH-0.2.0","verdict":"pass","status":"static-complete"}],"events":[{"kind":"policy-change","from":"HT-DSH-0.2.1","to":"HT-DSH-0.2.2","commit":"a7c2a9c7bdd65e0c89358cce1f6e38dc7e3d66d2","policyVersion":"HT-DSH-0.2.2","at":"2026-08-22T08:31:09.811Z"},{"kind":"policy-change","from":"HT-DSH-0.2.0","to":"HT-DSH-0.2.1","commit":"a7c2a9c7bdd65e0c89358cce1f6e38dc7e3d66d2","policyVersion":"HT-DSH-0.2.1","at":"2026-08-21T11:34:35.713Z"},{"kind":"first-scan","from":null,"to":"pass","commit":"a7c2a9c7bdd65e0c89358cce1f6e38dc7e3d66d2","policyVersion":"HT-DSH-0.2.0","at":"2026-08-21T11:03:27.187Z"}]}