You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
npm error ERESOLVE unable to resolve dependency tree
npm error Could not resolve dependency:
npm error peer @deepseek-ai/dsh-bash-env@"^0.0.1-rc.1" from @deepseek-ai/dsh-tool-bash@0.0.1-rc.1
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
TL;DR
@deepseek-ai/dsh-*包族中绝大多数包的latestdist-tag 停留在0.0.1-rc.1(首次公开发布版),而dsh-agent和dsh-app-boot的latest已是0.1.0-rc.6;同时所有包的next都是0.1.0-rc.6。后果是:全新项目裸装(npm install @deepseek-ai/dsh-agent-spine-demo等)或按npm view报告的 latest 版本钉^,会混装两条版本线并直接 ERESOLVE。且0.0.1-rc.1这条 latest 线本身的peerDependencies引用了改名前、npm 上从未存在(404)的包名(如@deepseek-ai/dsh-bash-env),即使单独安装 latest 解析出的旧版也无法满足 peer 解析。复现
失败(截取):
@deepseek-ai/dsh-bash-env在 npm 上不存在(npm view返回 404)。根因(两个事实)
1.
latest在包族内不一致。 抽查 13 个包(2026-08-17):$ npm view @deepseek-ai/dsh-agent-spine-demo dist-tags { latest: '0.0.1-rc.1', next: '0.1.0-rc.6' } # spine-demo、tool-bash、llm、session、tools、 # system-prompt、bash-local、subprocess-local、 # session-persistence-jsonl、 # session-checkpoint-policy、skill 均如此 $ npm view @deepseek-ai/dsh-agent dist-tags { latest: '0.1.0-rc.6', next: '0.1.0-rc.6' } # 仅 dsh-agent、dsh-app-boot 例外裸装时大多数包解析到
0.0.1-rc.1、这两个包解析到0.1.0-rc.6,两线的 peer range 互不兼容,必然冲突。2.
0.0.1-rc.1的 peer 元数据引用死包名。$ npm view @deepseek-ai/dsh-tool-bash@0.0.1-rc.1 peerDependencies { '@deepseek-ai/dsh-llm': '^0.0.1-rc.1', '@deepseek-ai/dsh-bash': '^0.0.1-rc.1', # npm 上不存在 '@deepseek-ai/dsh-agent': '^0.0.1-rc.1', '@deepseek-ai/dsh-tasks': '^0.0.1-rc.1', # npm 上不存在 ... '@deepseek-ai/dsh-bash-env': '^0.0.1-rc.1', # npm 上不存在(改名前名字) }这些是改名(
dsh-bash→dsh-shell、dsh-tasks→dsh-jobs、dsh-bash-env→dsh-shell-env)之前的历史名字。作为对比,0.1.0-rc.6的元数据本身是正确的(peers 统一^0.1.0-rc.6,且引用dsh-shell-env等现名)——问题只在latest指向哪里。Workaround
把整个包族钉在同一条线上(
^0.1.0-rc.6,或@next),不要混用默认解析:已实测:全新项目统一钉
^0.1.0-rc.6后 81 个包正常安装,agent-spine-demo+ JSONL persistence + 本地 bash 执行器组合完整跑通了一个含工具调用的 agent 回合(事件日志正常落盘)。建议
latest统一推进到当前发布版(对齐next):npm dist-tag add <pkg>@0.1.0-rc.6 latest;若 latest 停在 0.0.1-rc.1 是刻意策略(只允许 next),那么dsh-agent/dsh-app-boot的 latest 应该回退以保持一致——两选一,但请保持族内一致。npm deprecate <pkg>@0.0.1-rc.1 "renamed peers; use 0.1.0-rc.6",让 npm 对装到旧线的用户给出明确提示。附注
npx @deepseek-ai/dsh web之外没有关于包族版本线选择的说明。All reactions