前言¶
在 DeepSeek Harness(DSH)的插件生态中,直接管理 NPM 注册表是一个常见需求。dsh-npm 作为一个联网工具,旨在让智能体直接通过注册表 API 或本地 npm CLI 完成包信息的查询、搜索、版本核对以及发布和弃用操作,无需开发者手动干预。
插件介绍¶
名称:dsh-npm
维护者:zhengjy01
类别:联网工具
许可证:MIT
该插件通过调用 npm 官方 JSON API 处理查询类操作,对于发布和弃用操作则调用本地 npm CLI,并支持通过配置文件注入 Token 以访问私有包。
核心功能¶
插件提供了以下工具能力:
- npm_status:检查插件运行状态,包括当前生效的注册表、Token 是否配置、本地 npm CLI 是否可用以及配置文件路径。
- npm_config:配置注册表基础 URL 和认证 Token。配置项存储在
~/.dsh/dsh-npm.(权限 0600),支持reset: true清除配置。 - npm_info:获取包的详细元数据,包括最新版本、描述、作者、许可证、仓库地址、发布时间戳以及依赖摘要。
- npm_versions:列出注册表中该包所有已发布的版本及其对应的发布日期。
- npm_search:根据关键词(包名、描述、作者、评分)在注册表中进行搜索。
- npm_publish:执行真实的
npm publish。支持参数包括dir(发布目录)、tag(标签)、access(访问权限)、otp(双因素验证)、registry(指定注册表)、dryRun(预演模式)和force(强制覆盖)。 - npm_deprecate:在注册表中将包或特定版本标记为 deprecated。
- Web 面板:在 DSH 设置页面中提供可视化的 NPM 面板,用于配置注册表和 Token(Token 值会掩码显示)、快速查询包信息和搜索注册表。
安装与启用¶
在安装前请确认 DeepSeek Harness 版本 >= 0.1.5-rc.1。
使用官方安装命令:
dsh plugin --profile web add dsh-npm
安装完成后,需要重启 DSH Web 服务才能生效。
典型用法¶
- 查询公开包信息:无需任何配置,直接使用
npm_info查询express等公开包的元数据。 - 配置私有包认证:使用
npm_config设置私有注册表地址或 Token。 - 发布前检查:在执行
npm_publish前,先使用npm_info或npm_versions确认目标版本不存在,避免冲突。 - 安全发布:先使用
npm_publish配合dryRun: true参数进行预演,确认无误后再执行正式发布。 - Web 界面操作:进入设置页面的 NPM 面板,直接进行配置和搜索。
适用场景与注意¶
- 环境要求:插件依赖 DeepSeek Harness >= 0.1.5-rc.1。
- 权限与安全:插件以当前 DSH 进程的权限运行,安装前请务必检查源码。Token 以 0600 权限存储在本地文件中,并通过临时配置文件注入命令,绝不会被打印在日志或命令行中。
- 操作风险:
npm_publish和npm_deprecate操作会直接写入注册表,且不可逆。force: true参数会强制覆盖已存在的版本(npm 默认会阻止覆盖),使用时需格外小心。- 生态说明:插件目录为社区站点,与 DeepSeek 或幻方无官方从属关系。
结尾¶
dsh-npm 为 DeepSeek Harness 提供了完整的 NPM 注册表管理能力,适合需要在智能体中自动处理包版本、发布或查询的开发者。相关目录页及源码位于:GitHub。