mirror of
https://github.com/Ark0N/Codeman.git
synced 2026-10-20 09:09:35 +02:00
The DeepSeek install command asked npm for dsh and pnpm in one go. On a machine that already has pnpm through corepack (`corepack enable` puts a pnpm shim in node's own bin directory, which is npm's global bin for nvm and Homebrew installs), `npm install -g pnpm` refuses to overwrite that shim with EEXIST, and because both packages were in the same command the whole install failed: dsh was not installed either. Measured with npm 10 against a scratch prefix holding a corepack-style shim. On master the same machine installed dsh fine and the profile install used the existing pnpm. The command is now `npm install -g @deepseek-ai/dsh && (command -v pnpm >/dev/null || npm install -g pnpm)`, so pnpm is installed only when the install environment has none, and a failed dsh install still fails the command. The two hints that embed it follow (the launch-table drift test requires that), and the catalogue is regenerated; install.sh withholds the command for a launcher-only CLI, so its block is unchanged. The test now runs the real stock string through /bin/sh with a fake npm on a PATH it controls, for the three cases: no pnpm, an existing pnpm, and a failing dsh install. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
550 B
550 B
aicodeman
| aicodeman |
|---|
| patch |
Installing DeepSeek from CLI management no longer leaves it "not installed". The dsh terminal profile install ran dsh plugin, which needs pnpm on its PATH, but the server's own PATH usually lacks the user prefix (~/.local/bin) where CLI management puts dsh. The profile install now puts dsh's directory first on PATH, and the DeepSeek install command installs pnpm alongside dsh when none is on PATH (an existing one, such as a corepack shim, is left alone: npm install -g pnpm refuses to overwrite it).