walkinglabs/learn-harness-engineering| 认证等级 | L2 |
| 验证状态 | self-declared(单方声明,待独立验证) |
| 验证方法 | 未登记 structured verifiedBy |
| 运行级实测 | 未做运行级实测 |
| 内容锚 | git commit 77e7a3e21469 · walkinglabs/learn-harness-engineering · git ls-remote / clone 复现可对账 |
| DID | did:cha2a:package:walkinglabs/learn-harness-engineering |
| 身份锚点 | npm 未声明 GitHub 仓库——装前请自行核验来源 |
| 来源 | git |
| 插件版本 | — |
| 安装 | dsh plugin add github:walkinglabs/learn-harness-engineering |
| 扫描日期 | 2026-08-28(35 天前) |
| 扫描层级 | 静态扫描(自研规则 + GuardDog 复核 + OSV 依赖) |
| 扫描器版本 | dshlib-scan v0.1 · GuardDog 3.2.0 · OSV.dev |
自研扫描:⚠️ 待审 · GuardDog 复核:未扫描 · OSV 依赖:未扫描
True
{'excessive_permissions': [{'file': 'learn-harness-engineering-main/docs/ar/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/de/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/en/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/es/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/fr/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/ja/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/ko/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/pt-BR/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/ru/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/tr/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/uk/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/uz/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/vi/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/zh-TW/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/docs/zh/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init-check.ts', 'line': 93, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-01/solution/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-01/solution/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-01/solution/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-01/starter/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-01/starter/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-01/starter/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-02/solution/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-02/solution/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-02/solution/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-02/starter/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-02/starter/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-02/starter/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-03/solution/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-03/solution/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-03/solution/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-03/starter/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-03/starter/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-03/starter/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-04/solution/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-04/solution/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-04/solution/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-04/starter/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-04/starter/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-04/starter/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-05/solution/gen-eval/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-05/solution/gen-eval/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-05/solution/gen-eval/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-05/solution/plan-gen-eval/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-05/solution/plan-gen-eval/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-05/solution/plan-gen-eval/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-05/solution/single-role/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-05/solution/single-role/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-05/solution/single-role/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-05/starter/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-05/starter/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-05/starter/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-06/solution/scripts/dev.js', 'line': 22, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-06/solution/scripts/dev.js', 'line': 30, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-06/solution/scripts/dev.js', 'line': 38, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-06/starter/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-06/starter/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/project-06/starter/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/shared/scripts/dev.js', 'line': 8, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/shared/scripts/dev.js', 'line': 16, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'learn-harness-engineering-main/projects/shared/scripts/dev.js', 'line': 24, 'match': 'execSync(', 'label': '命令执行'}], 'dangerous_commands': [{'file': 'learn-harness-engineering-main/docs/ar/lectures/lecture-11-why-observability-belongs-inside-the-harness/index.md', 'line': 75, 'match': 'shutdown', 'label': '系统关机'}, {'file': 'learn-harness-engineering-main/docs/de/lectures/lecture-11-why-observability-belongs-inside-the-harness/index.md', 'line': 75, 'match': 'shutdown', 'label': '系统关机'}, {'file': 'learn-harness-engineering-main/docs/en/lectures/lecture-11-why-observability-belongs-inside-the-harness/index.md', 'line': 79, 'match': 'shutdown', 'label': '系统关机'}, {'file': 'learn-harness-engineering-main/docs/es/lectures/lecture-11-why-observability-belongs-inside-the-harness/index.md', 'line': 75, 'match': 'shutdown', 'label': '系统关机'}, {'file': 'learn-harness-engineering-main/docs/fr/lectures/lecture-11-why-observability-belongs-inside-the-harness/index.md', 'line': 75, 'match': 'shutdown', 'label': '系统关机'}, {'file': 'learn-harness-engineering-main/docs/ja/lectures/lecture-11-why-observability-belongs-inside-the-harness/index.md', 'line': 75, 'match': 'shutdown', 'label': '系统关机'}, {'file': 'learn-harness-engineering-main/docs/ru/lectures/lecture-11-why-observability-belongs-inside-the-harness/index.md', 'line': 75, 'match': 'shutdown', 'label': '系统关机'}, {'file': 'learn-harness-engineering-main/docs/uz/lectures/lecture-11-why-observability-belongs-inside-the-harness/index.md', 'line': 75, 'match': 'shutdown', 'label': '系统关机'}, {'file': 'learn-harness-engineering-main/docs/vi/lectures/lecture-11-why-observability-belongs-inside-the-harness/index.md', 'line': 79, 'match': 'shutdown', 'label': '系统关机'}, {'file': 'learn-harness-engineering-main/projects/project-06/solution/docs/ARCHITECTURE.md', 'line': 45, 'match': 'shutdown', 'label': '系统关机'}, {'file': 'learn-harness-engineering-main/skills/harness-creator/references/lifecycle-bootstrap-pattern.md', 'line': 249, 'match': 'shutdown', 'label': '系统关机'}, {'file': 'learn-harness-engineering-main/skills/harness-creator/references/tool-registry-pattern.md', 'line': 32, 'match': 'rm -rf build/\n ', 'label': 'rm -rf 危险删除'}, {'file': 'learn-harness-engineering-main/skills/harness-creator/references/tool-registry-pattern.md', 'line': 148, 'match': 'rm -rf*', 'label': 'rm -rf 危险删除'}, {'file': 'learn-harness-engineering-main/skills/harness-creator/references/tool-registry-pattern.md', 'line': 7, 'match': 'DROP TABLE', 'label': '数据库破坏'}, {'file': 'learn-harness-engineering-main/skills/harness-creator/references/tool-registry-pattern.md', 'line': 149, 'match': 'DROP TABLE', 'label': '数据库破坏'}], 'manifest_contract': [{'file': 'package.json', 'line': 0, 'match': 'main: dist/main/main.js', 'label': 'main 入口「dist/main/main.js」在包内不存在——加载会报 Cannot find module'}]}git-refresh
main
未复核。
未查询。