{"_id":"@cqpdrcuk/dsh-plugin-npm-advisor","_rev":"2-bfc5e3021de69585f88dbaff8e55fa51","name":"@cqpdrcuk/dsh-plugin-npm-advisor","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@cqpdrcuk/dsh-plugin-npm-advisor","version":"0.1.0","keywords":["dsh","cordis","plugin","npm","dependency"],"license":"MIT","_id":"@cqpdrcuk/dsh-plugin-npm-advisor@0.1.0","maintainers":[{"name":"cqpdrcuk","email":"cqpdrcuk@gmail.com"}],"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"3e2111384bc3e34a43bc6346abd5ff363295f027","tarball":"https://registry.npmjs.org/@cqpdrcuk/dsh-plugin-npm-advisor/-/dsh-plugin-npm-advisor-0.1.0.tgz","fileCount":7,"integrity":"sha512-6ggL4JPZ6Fi0rU+ihdQ9ZjGvOCgM83w02GhaqOOSryFoGGyiw8pagsxzQI+3wlDIGRnG3xhk3wr2lMnOEmXS0A==","signatures":[{"sig":"MEYCIQCODRk+wEOqRU7256VyQ2F5M0lNT2IrbHvHGEZ+JuvTOQIhAME9YZ8nCFbHeNmKvu5eMODOU2ZBgutVgm5PPD4QYtjJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9891},"main":"src/index.ts","types":"src/index.ts","gitHead":"4cbbd2b58d77dd330adeae5ff5b6533d77c22913","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"cqpdrcuk","email":"cqpdrcuk@gmail.com"},"_npmVersion":"11.16.0","description":"DSH 插件：npm 包引入前审查（原生替代 / 维护健康度 / README 迁移线索 / 依赖树可视化）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.5.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-tools":"0.1.0-rc.8"},"peerDependencies":{"@deepseek-ai/cordis":">=4.0.1","@deepseek-ai/dsh-tools":">=0.1.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-plugin-npm-advisor_0.1.0_1787244749280_0.8296450190952394","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@cqpdrcuk/dsh-plugin-npm-advisor","version":"0.1.1","description":"DSH 插件：npm 包引入前审查（原生替代 / 维护健康度 / README 迁移线索 / 依赖树可视化）","main":"dist/index.mjs","types":"dist/index.d.mts","dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"scripts":{"typecheck":"tsc --noEmit","build":"tsup src/index.ts --format esm --dts --out-dir dist --clean"},"peerDependencies":{"@deepseek-ai/cordis":">=4.0.1","@deepseek-ai/dsh-tools":">=0.1.0-rc.0"},"devDependencies":{"@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-tools":"0.1.0-rc.8","tsup":"^8.0.0","typescript":"^5.5.0"},"keywords":["dsh","cordis","plugin","npm","dependency"],"license":"MIT","gitHead":"91d819fed7a150cfa0127e5de6f98dfd9b58f56d","_id":"@cqpdrcuk/dsh-plugin-npm-advisor@0.1.1","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-Grp3KoC5w9OBhUg2+8P7WMD+eidmk0uxmoCxOEXgWz7idHKd+zGGgEknmtaSPTgy57NdtiYv67gxFH/hsIU25w==","shasum":"f157ec888d31cfb72b92b7a63f41803aac62f080","tarball":"https://registry.npmjs.org/@cqpdrcuk/dsh-plugin-npm-advisor/-/dsh-plugin-npm-advisor-0.1.1.tgz","fileCount":5,"unpackedSize":9157,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHjaAw0bTtUyB8Q6swxCbkRKz+MoYIVu6JKhkhdAHqevAiBlL0Rxla6AEyVVsUq7O+f8ePjhCWUudXwG82LlGQMMqA=="}]},"_npmUser":{"name":"cqpdrcuk","email":"cqpdrcuk@gmail.com"},"directories":{},"maintainers":[{"name":"cqpdrcuk","email":"cqpdrcuk@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-plugin-npm-advisor_0.1.1_1787277135600_0.5975464424948451"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-20T16:52:29.032Z","modified":"2026-08-21T01:52:15.957Z","0.1.0":"2026-08-20T16:52:29.423Z","0.1.1":"2026-08-21T01:52:15.785Z"},"license":"MIT","keywords":["dsh","cordis","plugin","npm","dependency"],"description":"DSH 插件：npm 包引入前审查（原生替代 / 维护健康度 / README 迁移线索 / 依赖树可视化）","maintainers":[{"name":"cqpdrcuk","email":"cqpdrcuk@gmail.com"}],"readme":"# @cqpdrcuk/dsh-plugin-npm-advisor\r\n\r\nDeepSeek Harness（DSH）插件：**npm 包引入前审查**。\r\n\r\n引入新依赖前，让 DSH Agent 判断候选包是否是最优解——原生替代、维护健康度、README 迁移线索、依赖树可视化。事实由插件给（npm registry 元数据 + 高置信映射表），最终选型由模型结合 README 迁移声明裁决。\r\n\r\n## 安装与挂载\r\n\r\n`cordis.yml` 加入一行（DSH 从 npm 解析）：\r\n\r\n```yaml\r\n- id: npm-advisor\r\n  name: '@cqpdrcuk/dsh-plugin-npm-advisor'\r\n```\r\n\r\n## 工具\r\n\r\n| 工具 | 说明 |\r\n|------|------|\r\n| `npm_package_audit` | 审查候选包：`deprecated` / 最后发布时间 / maintainers / 直接依赖数 / README 头部（迁移线索）/ 原生替代命中 / 弃坑包命中 |\r\n| `npm_dependency_tree` | 递归拉取依赖，输出 mermaid 依赖图（评估依赖膨胀） |\r\n\r\n## 原生替代示例（映射表内置）\r\n\r\n`axios` → 原生 fetch（Node 18+）｜`moment` → dayjs/date-fns/Temporal｜`uuid` → `crypto.randomUUID()`｜`dotenv` → `process.loadEnvFile()`｜`minimist` → `util.parseArgs()` 等。\r\n\r\n## 示例\r\n\r\n让 DSH Agent 执行：\r\n\r\n```\r\nnpm_package_audit(\"moment\")\r\n```\r\n\r\n返回 JSON 会包含：`deadPackage: \"进入维护模式（官方 README 推荐 dayjs / date-fns / Luxon）\"` + README 头部原文，供模型给出替换建议。\r\n\r\n## License\r\n\r\nMIT\r\n","readmeFilename":"README.md"}