DSH HUB
首页插件商店插件包社区排行榜资源发布指南
插件源码
返回插件目录

Mshir0 /

Mshir0/dsh-conda-workspace-env

已验证

Choose and persist a Conda environment per DeepSeek Harness workspace

★ 0 Stars0 Forks0 IssuesN/A 社区评分0 已确认安装
查看 GitHub
README来源: main@2ad687cd

Conda Workspace Environment for DeepSeek Harness

DeepSeek Harness DSH plugin Conda

这个插件给 DeepSeek Harness 的每个工作区记住一个 Conda 环境。

Conda Workspace Environment 演示

它解决什么问题

一台机器上往往有好几个 Conda 环境,不同项目又各用各的 Python 和依赖。这个插件提供一个放在 Harness 输入栏里的环境选择器,让每个工作区记住自己的 Conda prefix。

它会:

  • 读取 Harness 当前能看到的 conda env list --json。
  • 在当前工作区的输入栏里选择环境,并单独保存选择。
  • 随工作区切换恢复对应的环境,不会串到别的项目。
  • 提供给 Agent 查询和保存环境的工具。
  • 只接受 Harness 已注册的工作区路径。

环境要求

  • DeepSeek Harness 0.1.0-rc.6 或兼容的 0.1.x 版本
  • Node.js 22 或更高版本
  • 已安装 Conda、Miniconda 或 Anaconda
  • 启动 Harness 的进程可以执行 conda

先确认 Conda 对 Harness 所在的 shell 可见:

conda env list --json

安装

从 GitHub 安装

在 DeepSeek Harness 项目目录执行:

cd ~/deepseek-harness
pnpm dsh plugin --profile web add -w github:Mshir0/dsh-conda-workspace-env
pnpm dsh --profile web --dump-config
pnpm dsh web

如果使用独立的 DSH CLI:

npx -y @deepseek-ai/dsh@0.1.0-rc.6 plugin --profile web add -w github:Mshir0/dsh-conda-workspace-env
npx -y @deepseek-ai/dsh@0.1.0-rc.6 --profile web --dump-config
npx -y @deepseek-ai/dsh@0.1.0-rc.6 web

安装或升级后需要重启 Harness。浏览器仍显示旧界面时,按 Ctrl+Shift+R 强制刷新。

本地源码安装

git clone https://github.com/Mshir0/dsh-conda-workspace-env.git ~/dsh-conda-workspace-env
cd ~/deepseek-harness
pnpm dsh plugin --profile web add -w ~/dsh-conda-workspace-env
pnpm dsh web

修改插件源码后,重新执行 plugin ... add -w 并重启 Harness。

使用

  1. 打开 Harness Web 界面,进入一个带工作区的会话。
  2. 在底部输入栏点击“环境”。
  3. 选择当前项目要用的 Conda 环境。
  4. 选择会立即保存到当前工作区;切换工作区后会读取各自的选择。

选择结果保存在:

<workspace>/.context/conda-environment.json

文件内容示例:

{
  "workspace": "/home/user/project",
  "environment": {
    "name": "project-env",
    "prefix": "/home/user/miniconda3/envs/project-env",
    "source": "conda"
  },
  "updatedAt": "2026-08-19T10:00:00.000Z"
}

菜单中的“未选择”会清除当前工作区的环境记录。

Agent 工具

插件注册两个 DeepSeek Harness 工具:

工具 用途
conda_list_environments 列出 Harness 主机可见的 Conda 环境及其 prefix
conda_workspace_environment 读取或保存当前工作区选择的环境
conda_run 使用当前工作区选择的环境执行一次命令;python 自动使用该环境解释器

例如,可以让 Agent 验证当前选择:

调用 conda_workspace_environment 读取当前工作区选择的 Conda 环境,
然后只报告环境名称和解释器 prefix,不修改任何文件。

当前行为边界

这个插件负责发现、选择和保存环境。它不会执行 conda activate,也不会替 Harness 修改所有原生命令的 PATH 或 Python 解释器。

只有通过 conda_run 执行的命令会使用输入栏中选择的环境。Harness 原生终端仍由 Harness 主进程管理。

插件会要求 Agent 在已选择环境时把 Python 命令交给 conda_run,并设置 PYTHONNOUSERSITE=1,防止 ~/.local/lib/python* 中的用户包混入空 Conda 环境。Harness 原生终端本身仍由 Harness 主进程管理。

为避免模型在后续轮次绕过规则,插件还会在工具执行边界拒绝 Bash 中的 Python 命令。ls、git 等非 Python Bash 命令不受影响;清除环境选择后,Bash 的 Python 限制也会解除。

需要运行指定环境中的 Python 时,应使用保存的 prefix 构造明确路径,例如:

/home/user/miniconda3/envs/project-env/bin/python --version

直接使用 prefix 可以避开非交互 shell 中 conda activate 不生效的问题,也方便确认实际调用的是哪个解释器。

故障排查

输入栏没有“环境”按钮

确认配置中存在 conda-workspace-env,重启 Harness 后强制刷新浏览器:

pnpm dsh --profile web --dump-config
pnpm dsh web

然后按 Ctrl+Shift+R。

显示“环境错误”

在启动 Harness 的同一个 shell 中执行:

command -v conda
conda env list --json

如果命令不可用,需要先初始化 Conda,或者让启动 Harness 的 shell 能找到 Conda 可执行文件。

选择没有保存

确认当前会话已经关联工作区,并检查 Harness 对以下目录是否具有写权限:

<workspace>/.context/

更新

cd ~/deepseek-harness
pnpm dsh plugin --profile web add -w github:Mshir0/dsh-conda-workspace-env
pnpm dsh web

重启后按 Ctrl+Shift+R,确保客户端加载最新 bundle。

卸载

cd ~/deepseek-harness
pnpm dsh plugin --profile web remove -w dsh-conda-workspace-env
pnpm dsh web

卸载插件不会删除各工作区已有的 .context/conda-environment.json;不再需要时可由用户自行移除该文件。

License

MIT

—/ 5

暂无评分

已验证 DSH bundle

Commit 2ad687cd607e

社区评论

还没有评论,来写第一条。

DSH HUB

社区维护的 DSH 插件索引。不是 GitHub 或 DeepSeek AI 的官方产品。

社区资源API关于