dsh-community-plugins 使用指南
DSH 设置页内的社区插件市场卡片:搜索/分类筛选浏览贡献者插件,并在装好插件管理器后支持一键安装与卸载。
本文为派生内容(基于 wiki / faq / compatibility_json 自动组装),非 AI 即时创作。
本文由本站基于该插件已收录的字段自动派生(wiki / faq / compatibility_json / readme),非 AI 即时创作。每节末尾标源字段。
快速上手
dsh-community-plugins
— 源: plugin_wiki.wiki_content
安装与验证
dsh plugin --profile web add @linxin666/dsh-client-ui-community-plugins
复制以上命令在 DSH Web Profile 内运行。安装完成后在「插件列表」启用即可。
— 源: plugins.install
关键要点
- Web 终端:xterm.js 远程终端,实时输出,窗口大小自适应;
- 文件传输:SFTP 上传 / 下载,有进度条,能浏览远程目录;
- 端口转发:本地隧道直连远程内网服务(数据库、API、管理后台),只监听 127.0.0.1;
- 集群执行:一条命令并发跑多台主机,按别名 / 环境 / 标签过滤;
- Agent 直连:Agent 和面板共用同一份主机配置,对话里说一句「连一下 xxx 看看状态」,智能体就去执行远程命令。
— 源: plugin_wiki.readme_zh (fallback readme_raw)
常见问题
这个插件是干什么用的?
在 DSH 网页版设置页新增一个「社区插件」一级分区,用搜索框+分类胶囊+双列卡片网格的形式展示社区贡献者维护的插件,每张卡片带仓库跳转与一键复制安装命令按钮。
为什么要装「插件管理器」才能在界面里安装?
界面内安装/卸载依赖插件管理器插件(@linxin666/dsh-client-ui-plugin-manager)暴露的 pluginManager cordis 服务和本机(loopback)浏览器权限。远程浏览器只能看到只读索引与复制命令按钮(src/client/index.ts:54-81 / src/client/CommunityPluginsCard.tsx:514-519)。
已安装列表和「插件管理」标签页会同步吗?
同步。本插件订阅 pluginManager.onChange,在卡片上点安装/卸载后立即刷新已安装快照;同一时间只允许一个变更操作,进行中其他卡片按钮会禁用(src/client/CommunityPluginsCard.tsx:190-216)。
点完「安装」为什么还没生效?
卡片上会显示「已安装 · 重启后生效」徽标;必须重启 dsh web,被装插件的开关与配置才会出现在设置页的插件配置区(README.md:38 / README.zh.md:38)。
怎么区分「npm 已发布」和「仓库安装」?
看卡片上的徽标:写了 npm 字段的条目会显示「Published on npm / npm 已发布」,否则显示「Install from repo / 仓库安装」(src/client/locales.ts:59-60,122-123)。
这个插件本身需要配置吗?
默认无需配置。分区自带的「启用社区插件索引」开关是唯一的可配项(默认 true),关闭后只在该分区折叠索引列表,不影响其他设置(src/index.ts:33-35)。
可以贡献新的社区插件条目吗?
可以。条目由维护者审核登记到 community.json,再由 scripts/community-index 重新生成 src/client/generated/community.ts 打进客户端 bundle(src/client/generated/community.ts:1-7 / README.md:43-45)。
装了社区插件卡后远程访问 DSH web 会有什么不同?
远程浏览器自动降级为只读索引,每张卡片仍保留复制安装命令按钮;顶部多一行提示说明远程浏览器为什么不能界面内安装(src/client/locales.ts:53 / src/client/CommunityPluginsCard.tsx:516-518)。
— 源: plugin_wiki.faq_json
兼容性
- DSH: 未声明(package.json 无 dsh.engines;通过 @deepseek-ai/* SDK 隐式锁定,需 dsh-client-ui-settings 提供 settings.section 槽位)
- Node: ^22.19 || >=24(据 packages/AGENTS.md:9;本包 package.json 未声明 engines)
— 源: plugin_wiki.compatibility_json
踩坑提醒
安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。
— 来源:通用规则