dsh-python-env:爲 DSH 提供工作區 Python 虛擬環境管理

前言

在 DSH 中,智能體可能需要爲當前項目準備 Python 虛擬環境、安裝依賴,再調用對應解釋器運行代碼。dsh-python-env 爲這些操作提供一組模型工具。

它把 Python 虛擬環境的發現、創建、安裝、卸載和移除收斂到 DSH 插件內,並通過 DSH 平臺的 subprocess channel 在 host process 中調用標準庫 python -m venv 與 pip。

這是什麼

dsh-python-env 是 DeepSeek Harness(DSH)插件,由 AngelosZou 維護,許可證爲 MIT。它面向單個 DSH 工作區,提供工作區範圍的 Python 虛擬環境管理。

它包含:

  • 五個模型工具:pyenv_discover、pyenv_create、pyenv_install、pyenv_uninstall、pyenv_remove
  • python-env skill
  • system-prompt guidance section

核心功能

覆蓋虛擬環境常用操作

pyenv_discover 用於發現當前工作區內的 Python 虛擬環境。

pyenv_create 用於創建虛擬環境。

pyenv_install 用於向環境中安裝依賴,支持 packages 和 requirements。

pyenv_uninstall 用於從環境中移除依賴。

pyenv_remove 用於移除工作區內的虛擬環境。

使用標準庫和 DSH subprocess channel

插件不依賴 uv、virtualenv 等第三方環境管理器。它通過 DSH 平臺的 subprocess channel 在 host process 中運行標準庫 python -m venv 和 pip。

跨平臺與鏡像回退

插件支持 Windows、macOS、Linux 的跨平臺佈局與解釋器鏈。

它支持 PyPI 鏡像和本地代理回退,鏡像包括 TUNA、Aliyun、USTC,並覆蓋常見本地代理端口。

工作區邊界與執行策略

插件限制操作在會話工作區內,緩存和臨時狀態位於:

<workspace>/.dsh-pyenv/

它不觸碰全局 Python 環境、host pip 緩存和系統臨時目錄。

變更類工具遵守會話沙箱策略,在只讀會話中拒絕執行;pyenv_discover 仍可用。

所有 pyenv 工具受兩分鐘時間預算限制,pyenv_discover 在一分鐘內。

安裝與啓用

要求:

  • Node.js >= 20
  • 由 @deepseek-ai/dsh-base 組合的 DSH profile,提供 subprocess、jobs、tools 和 skills 服務
  • 插件管理的環境需要 Python >= 3.8,可在 PATH 中或顯式傳入

安裝命令:

dsh plugin --profile web add dsh-python-env

安裝後需重啓 DSH backend。工具會在新會話中出現,包括 pyenv_discover、pyenv_create、pyenv_install、pyenv_uninstall、pyenv_remove 和 python-env skill。

典型用法

pyenv_create
pyenv_install { packages: ["pytest>=8"] }
pyenv_install { requirements: "requirements.txt" }
pyenv_uninstall { packages: ["pytest"] }
pyenv_discover

創建或發現環境後,使用工具報告的 interpreter 運行代碼:

Windows: <venv>\Scripts\python.exe
macOS/Linux: <venv>/bin/python

適用場景與注意

適合在 DSH 會話中管理 Python 項目依賴,並希望把環境操作限制在當前工作區內的場景。

注意:

  • 插件以當前 DSH 進程權限運行,python -m venv 與 pip 調用會按該進程可用環境執行;安裝前建議檢查源碼與 MIT 許可證。
  • 變更類工具在只讀會話中拒絕執行,pyenv_discover 仍可用。
  • 所有 pyenv 工具受兩分鐘時間預算限制,pyenv_discover 在一分鐘內。
  • 插件管理的環境需要 Python >= 3.8。

資源

GitHub 倉庫:

https://github.com/AngelosZou/dsh-python-env

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜