dsh-plugin-npm-run-shell
Đã xác minhdsh-plugin-npm-run-shell · v1.0.0 · MIT · Giao diện web
NPM Scripts Launcher for DeepSeek Harness (DSH) Web GUI with auto workspace detection and live terminal
Cài đặt
dsh plugin add dsh-plugin-npm-run-shell Xác nhận layer đã áp bằng dsh --profile default --dump-config — xem hướng dẫn cài plugin.
Mã nguồn
Phát hành lên npm mà không có repository công khai. Hãy kiểm tra nội dung package trước khi cài.
Thẻ
Tác giả
Readme
NPM Scripts Launcher for DeepSeek Harness (DSH)
Плагин для веб-интерфейса DeepSeek Harness (DSH), который добавляет в левый нижний угол сайдбара кнопку быстрого запуска NPM-скриптов с автоопределением текущего проекта и выводом в отдельное интерактивное окно терминала.
🌟 Возможности
Компактная кнопка в интерфейсе:
- Находится в левом нижнем углу сайдбара (рядом с настройками).
- Заменяет собой стандартную служебную кнопку "Cordis Plugin".
- Выполнена в виде аккуратного официального логотипа NPM без лишнего текста.
Автоопределение и переключение Workspace:
- Автоматически считывает активный Workspace через хуки сессии DSH.
- Умеет находить
package.jsonкак в корне проекта, так и во вложенных подпапках (например,prj/package.jsonилиsrc/package.json). - Если открыто несколько проектов, в шапке окна доступен мгновенный переключатель-дропдаун для запуска скриптов в любом воркспейсе без необходимости переключать активный чат.
Запуск в живом окне терминала:
- Запуск скриптов происходит через системный вызов
cmd.exe /c start "npm: <script>" cmd.exe /k npm run <script>. - Открывается физическое отдельное окно командной строки Windows в директории проекта.
- Окно остаётся открытым после выполнения команды (
/k), позволяя просматривать логи dev-сервера, сборки, тестов или прерывать их поCtrl+C.
- Запуск скриптов происходит через системный вызов
Удобный UI:
- Всплывающее меню аккуратно открывается вверх от футера.
- Автоматически закрывается при клике в любое свободное место экрана.
📂 Структура файлов
npm-run-shell/
├── client.js # Клиентская половина (UI попапа, хуки сессий/воркспейсов, SVG-иконка)
├── host.js # Хостовая половина (поиск package.json, Host RPC, запуск терминала)
├── package.json # Описание пакета и точек входа DSH
├── cordis.patch.yml # Манифест подключения плагина к Cordis профилю
└── README.md # Документация по установке и использованию
🚀 Установка на постоянной основе в DSH
Чтобы плагин запускался автоматически при каждом старте DSH (без необходимости динамического подтверждения cordis_run):
Вариант 1. Через симлинк в пользовательский веб-профиль (Рекомендуемый)
- Откройте терминал PowerShell и создайте символическую ссылку на папку плагина в
~/.dsh/profiles/web/node_modules:
New-Item -ItemType SymbolicLink -Path "$env:USERPROFILE\.dsh\profiles\web\node_modules\npm-run-shell" -Target "D:\Dev\JS\Prj\2026\dsh-plugins\npm-run-shell" -Force
- Добавьте плагин в
~/.dsh/profiles/web/package.jsonв секциюbundles:
{
"name": "dsh-profile-web",
"private": true,
"dsh": {
"profile": {
"bundles": [
"@deepseek-ai/dsh-base",
"@deepseek-ai/dsh-web-app",
"dshmarket",
"npm-run-shell"
],
"patchReload": "live"
}
},
"dependencies": {
"dshmarket": "^1.65.0",
"npm-run-shell": "workspace:*"
}
}
- Либо добавьте запись активации в файл
~/.dsh/profiles/web/cordis.patch.yml:
- insert:
- id: npm-run-shell
name: 'npm-run-shell'
- Перезапустите веб-сервер DSH или обновите страницу в браузере.
🛠 Динамический запуск (в текущей сессии)
Если плагин не установлен постоянно, его всегда можно запустить на лету через вызовы Cordis Tool:
- Передайте содержимое
client.jsиhost.jsв инструментcordis_define. - Запустите полученный пакет через
cordis_run.