ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

electerm 扩展功能完整指南:从启动 Widget 到远程监控,一文走通全流程

electerm 扩展功能完整指南:从启动 Widget 到远程监控,一文走通全流程 electerm 扩展功能完整指南从启动 Widget 到远程监控一文走通全流程【免费下载链接】electermFree and open-sourced terminal/ssh/sftp/ftp/telnet/serialport/RDP/VNC/Spice client(Linux, Mac, Windows, Android, HarmonyOS, iOS)项目地址: https://gitcode.com/GitHub_Trending/el/electermelecterm 是一款免费开源的跨平台终端工具SSH、SFTP、FTP、Telnet、串口、RDP、VNC 一网打尽。很多人只把它当 SSH 客户端用其实它的扩展能力藏在「Widget部件」体系里本地起个 FTP 文件服务器、把本机变成 SSH 服务端做连接测试、跑批量命令、甚至接入 MCP 服务都可以通过 electerm widget 直接启动和配置。下面按找入口→跑起来→用好内置件→自己写一个→排错的顺序带你完整走一遍。第一步打开 electerm 的扩展中心Widget 面板electerm 没有独立的插件商店它的扩展入口就是设置面板里的Widgets 页签。所有内置扩展以部件形式内置在应用里你负责搜索、配置、启动。打开方式点主界面左上角的菜单图标进入设置面板切到 Widgets 页签。左侧是列表显示所有可用的部件顶部带搜索框按名称关键词过滤实现见 src/client/components/widgets/widgets-list.jsx。右侧是配置区选中某个部件后会列出它的参数表单主机、端口、目录等点启动即可运行。页面组装逻辑在 src/client/components/setting-panel/tab-widgets.jsx列表和运行中实例Running Instances 页签都在这里渲染。三步启动一个 widget 实例以在本机起一个 SFTP 文件服务器为例操作清单如下在 Widgets 搜索框输入FTP找到 Local FTP Server点它。右侧表单里确认端口、根目录默认主目录、用户名密码有autoRun选项的部件可以设为开机自启。点启动切到 Running Instances 页签确认实例在运行之后就能用任意 SFTP 客户端连回本机。背后机制值得看一眼 src/app/widgets/load-widget.js应用启动时扫描src/app/widgets/下所有widget-*.js文件每个文件导出两段内容——widgetInfo名称、描述、参数定义和widgetRun启动逻辑。带type: instance的部件支持多实例运行标记了singleInstance的则只允许跑一个重复启动会直接报错这就是 electerm 自带的冲突保护不需要额外做冲突检测。内置部件一共六个都在 src/app/widgets/ 目录widget-ssh-server.js # 本地 SSH/SFTP 服务端用于连接测试 widget-local-ftp-server.js # 本地 FTP 服务器 widget-local-file-server.js # 本地 HTTP 文件服务器 widget-mcp-server.js # MCP 服务 widget-batch-op.js # 批量操作 widget-rename.js # 批量重命名不用装任何东西就能用的四个内置扩展这几个内置部件覆盖了原插件文章里推荐的绝大部分场景打开就能用SSH 服务端连接测试神器在 22225 之类的端口把本机变成 SSH/SFTP 服务器SFTP 目录被锁定在你指定的根目录内shell 用你系统的默认 shell。写自动化、测客户端配置时非常好用实现见 src/app/widgets/widget-ssh-server.js。本地文件服务器起一个 HTTP 服务把本地目录里的文件丢给浏览器或手机下载传文件不用装额外工具。MCP 服务把 electerm 的能力以 MCP 协议暴露出去给 AI 工具调用服务端实现见 src/app/mcp/server/mcp.js。批量操作对多个标签页一次性执行命令或批量管理会话配合批量输入历史一起用效率翻倍。顺手用好传输速度、远程监控与主题这三项不是 widget但和扩展终端体验强相关顺手配好传输速度显示SFTP 面板传输时自带实时速度KB/s、MB/s与预计剩余时间格式化逻辑在 src/client/components/file-transfer/transfer-speed-format.js文件读写核心在 src/app/server/sftp-file.js。远程服务器监控条SSH 连接后终端上方可以挂一条监控栏实时显示主机名、CPU、内存、磁盘、在线用户、上传/下载速率。显示项开关和解析都在 src/client/components/remote-monitor/monitor-model.js想精简就关掉不用的项。终端主题内置多套配色也可自定义编辑。主题表单和编辑入口在 src/client/components/theme/深色浅色的反色处理由reverse-color一类工具函数自动完成。自己动手写一个 widget文件结构和关键点electerm 的部件就是一个 JS 文件门槛很低。结构示意// widget-mine.js const widgetInfo { name: My Widget, description: 一句话说明, version: 1.0.0, type: instance, // 支持实例化运行 singleInstance: true, // 可选只允许一个实例 configs: [{ name: port, type: number, default: 8080, description: 端口 }] } function widgetRun (config) { /* 返回带 start()/stop() 的实例对象 */ } module.exports { widgetInfo, widgetRun }三个关键点configs数组直接映射成设置面板里的表单参数校验、默认值都在里面声明不用手写 UI。widgetRun返回的对象要实现start()和stop()实例的注册、去重、退出时统一清理SIGTERM钩子都由 load-widget.js 托管。写完后放进 widgets 目录重启应用它就会出现在 Widgets 列表里。想参考完整实现直接读内置的widget-ssh-server.js即可。常见排错与版本维护 启动后列表里看不到Widget 列表加载失败会走console.error打开开发者工具控制台看第一手报错参数不合法比如 ID 不符合^[a-z0-9-]$会在加载阶段被拒绝。报already has a running instance这是singleInstance保护生效了去 Running Instances 页签先停掉旧实例再重新启动。行为异常先查版本兼容版本比较逻辑在 src/app/common/version-compare.js应用自身是否有新版本检查流程在 src/client/common/update-check.js日志级别可通过 src/app/common/log.js 调整排障时把日志调详细一档通常能直接定位问题。动手提示今天就打开 Widgets 页签先启动一个本地文件服务器用手机浏览器访问http://你的IP:端口一分钟验证整个扩展链路是否通畅——通了其余功能基本不会再有问题。【免费下载链接】electermFree and open-sourced terminal/ssh/sftp/ftp/telnet/serialport/RDP/VNC/Spice client(Linux, Mac, Windows, Android, HarmonyOS, iOS)项目地址: https://gitcode.com/GitHub_Trending/el/electerm创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表