数据库 · 终端 · 文件 · 容器 · 真机 · AI —— 收进同一个窗口
数据截至 2026/10/23 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
dsh plugin --profile web add dabaicai001/starhub状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
安装兼容性检查需源码安装缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/30 06:17:22
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
查看扫描证据(共 96 处,展示前 18 条)
- 读取本地文件test-sftp/verify_bridge_compat.mjs:64
if (!existsSync(binary)) { - 写入本地文件test-sftp/verify_bridge_compat.mjs:70
writeFileSync(assetsFile, JSON.stringify({ assets })) - 执行外部命令来自配置/变量test-sftp/verify_bridge_compat.mjs:71
const child = spawn(binary, [], { - 执行外部命令来自配置/变量test-sftp/verify_bridge_compat.mjs:100
const probe = spawn(cmd, ['--version'], { stdio: 'ignore' }) - 写入本地文件test-sftp/verify_bridge_compat.mjs:109
writeFileSync(path, process.platform === 'win32' - 执行外部命令固定命令test-sftp/verify_bridge_compat.mjs:113
spawn('chmod', ['+x', path]) - 发起网络请求test-sftp/verify_bridge_compat.mjs:151
const status = await peer.request('starhub/tool.execute', { - 发起网络请求test-sftp/verify_bridge_compat.mjs:158
const missing = await peer.request('starhub/tool.execute', { - 发起网络请求test-sftp/verify_bridge_compat.mjs:168
const capabilities = await peer.request('starhub/tool.execute', { - 发起网络请求test-sftp/verify_bridge_compat.mjs:175
const assets = await peer.request('starhub/tool.execute', { - 发起网络请求test-sftp/verify_bridge_compat.mjs:185
const bound = await peer.request('starhub/bind.asset', { assetId: 'a1', sessionId: 's1' }) - 发起网络请求test-sftp/verify_bridge_compat.mjs:188
const afterBind = await peer.request('starhub/tool.execute', { - 删除本地文件递归test-sftp/verify_bridge_compat.mjs:358
rmSync(dir, { recursive: true, force: true }) - 删除本地文件递归test-sftp/verify_bridge_compat.mjs:415
rmSync(go.dir, { recursive: true, force: true }) - 删除本地文件递归test-sftp/verify_bridge_compat.mjs:484
rmSync(settings.dir, { recursive: true, force: true }) - 删除本地文件递归test-sftp/verify_bridge_compat.mjs:518
rmSync(devices.dir, { recursive: true, force: true }) - 删除本地文件递归test-sftp/verify_bridge_compat.mjs:569
rmSync(host.dir, { recursive: true, force: true }) - 删除本地文件递归test-sftp/verify_bridge_compat.mjs:664
rmSync(live.dir, { recursive: true, force: true })
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
功能亮点
- 数据库客户端
- SSH终端
- SFTP文件传输
StarHub——一体化开发运维桌面指挥中心。把开发运维每天要用的工具收进同一个窗口:数据库客户端 · SSH 终端 · SFTP · Docker · Android 真机 · AI 助手。
README
由 DeepSeek 最新模型翻译生成展开完整文档(README 剩余 1 节)
StarHub All-in-One DevOps Desktop Command Center 数据库 · 终端 · 文件 · 容器 · 真机 · AI —— 收进同一个窗口 你的桌面上一半是「生产力工具」:Navicat 连库、Xshell 开终端、WinSCP 传文件、Portainer 看容器、网页里挂着个 AI 对话框——每天在五六个窗口之间来回切,复制粘贴当「集成」。StarHub 把这些收进同一个窗口:左边是资产,中间是工作台,AI 在侧栏待命——@ 一下把服务器交给它,# 一下把日志贴给它;它每一次动手,都要先弹一张确认卡问你。 不是把五个图标摆进一个启动器,而是让它们共享同一套资产、同一条连接、同一份 AI 上下文。 官网:starthub.waouzzz.cc 为什么是 StarHub | 痛点 | 别人的做法 | StarHub 的做法 | | 工具多 | Navicat + Xshell + Portainer + 资源管理器同时开 | 一个窗口:数据库 / SSH / SFTP / Docker / Android / AI | | 连接碎 | 终端连一次、SFTP 再连一次、Docker 又配一套 | SFTP 与终端共用同一条 SSH 连接;Docker 可经 SSH 通道连远程主机 | | 上下文丢 | 操作 A 时被 B 打断,错误信息靠人肉搬运 | 同屏三栏、命令广播;@ 绑资产、# 绑上下文直接喂给 AI | | AI 只会聊天 | 问答归问答,执行归执行 | Function Calling 直连真实资产,自然语言 → 自动拆解 → 跨工具执行 | | 操作不可追溯 | 出了事翻聊天记录 | 写操作必经确认卡(超时按拒绝),全程落审计日志;真机直播可回放 | 功能 数据库:MySQL、PostgreSQL、SQLite、Redis、ClickHouse、SQL Server、Elasticsearch。表结构浏览、SQL 编辑器(CodeMirror 6,补全/格式化/历史)、虚拟滚动结果网格(可编辑、按主键批量保存)、DDL 生成、监控 Dashboard、Excel 导入导出、备份恢复、审计与告警。Oracle / MongoDB / 国产库 ODBC 在规划中。 SSH 终端:xterm.js 6,跳板机、端口转发、分屏、命令广播、危险命令拦截、ZMODEM(rz/sz)、Xshell 快捷命令导入、MFA/2FA、cwd 跟踪、断线重连。命令面板(Ctrl/⌘+K)、输出查找、主机监控页签、终端设置浮层一应俱全。 SFTP:与终端共用同一条连接,三栏浏览、拖拽传输、断点续传、暂停/继续、全局传输任务条。 Docker:容器/镜像管理、交互式 Exec TTY、日志查看、Compose、支持经 SSH 通道连远程 Docker 主机。 AI 助手:OpenAI 兼容协议(可接 GPT / Claude / DeepSeek / Ollama 等),Function Calling 直接驱动 SSH / 数据库 / SFTP / Docker / 本地文件 / Android 真机等工具;@ 绑定资产、# 绑定上下文;三级记忆卡 + 会话全文存档;所有 AI 发起的写操作都要经过确认卡审批并落审计日志。 Android 实体机直连(adb):AI 直接操作用户真实的 Android 手机(开发者模式 → USB 调试 / 无线调试)——截屏看画面、点按/滑动/滚动、按键、输入文本、按包名启动 App、设备文件传输、无线配对,共 19 个 android_ 工具;直播画面在壳内直播面板里看(scrcpy-server 的 H.264 实时,不可用自动降级截图轮询),支持围观/接管;任务级授权(60 分钟)、任意 shell 恒确认 hard 档、每次写操作自动截屏留档可回放——真实设备,每一步都有据可查。 其他:Kafka/NSQ 元数据、深浅双主题、自动更新。 架构 三层进程模型: - 上游 Electron 桌面壳 — DeepSeek Harness 自家的 Electron 壳,零改动原样使用;品牌、签名、自动更新都是它的。StarHub 不做自己的桌面项目。 - dsh Host + starhub-bridge 插件 — Host(Node)进程里的 bridge 插件 spawn 两个 sidecar,把 sidecar 的方法面暴露成模型工具与工作台命令面。 - 两个 sidecar — Rust sidecar(sidecar-rust/)承载 SSH/SFTP、Android 真机与直播帧枢纽;Go Sidecar(sidecar/)承载 MySQL / PostgreSQL / SQLite / Redis / ClickHouse / SQL Server / Elasticsearch / Docker / Kafka 等适配器和连接池。均经 stdio 换行分帧 JSON-RPC 通信。 - 前端 — DeepSeek Harness(dsh)主壳、StarHub 的工作台和插件都住在 vendor/deepseek-harness 里:apps/starhub-window 是资产工作台的构建入口,packages/starhub/ 是 10 个内置插件(导航、工具桥、直播、审批、领域事件等),经 dsh 的槽位系统接入,不改上游内核。 当前版本 v0.140.3 (2026-10-23) - 🔧 🔧 SSH AI 命令一律走 exec 通道:堡垒机「选机器」pty 分支与 bastionMode 勾选框整体退役:v0.140.0~v0.140.2 对堡垒机类资产(kb-interactive MFA)把 AI 命令写入用户终端 pty,再经 tap 哨兵回采,并配资产级「堡垒机(登录后需选择目标机器)」勾选框。在阿里云 BastionHost 上实测(不断线,复用终端页「监控」面板的 exec 采集做探针,三页三数据集对账):用户选完目标机后 exec 通道可用,且落在该连接所选的机器上;历史那条「Channel send error」是旧模型 AI 自建连接停在选机器菜单时开 exec 所致,不是 exec 不被支持。现在 ssh_exec_core 去掉 bastion_interactive 参数与整条 pty 分支(AI 与 UI 路径共用同一执行体),删除 SshSession::is_bastion()、SshConfig.bastion_mode、asset_config 的 bastionMode 解析、随之死亡的 pty tap 机器(pty_tap/pty_alive/exec_on_terminal_pty/collect_terminal_command/clean_pty_stdout/strip_ansi 等)与 ssh_session_status 的堡垒机文案分支;前端连接表单删勾选框/状态/配置字段,ui.ssh_connect 不再下发 bastion_mode;ssh_exec/ssh_session_status 工具描述与助手 persona 改述为「同一连接的 exec 通道,不打扰用户终端」。存量资产 config 里残留的 bastionMode 键被两端忽略,零回归。 - 🔧 🔧 live-context 注入改会话级收敛:AI 只看见自己会话产生的执行:此前 starhub-live-context 的 pre-step 注入是全局级——[Recent AI execs] 按资产缓存「最近一次 AI 工具执行 + ≤2KB 输出尾」,不区分是哪个 agent 会话发起的,主壳会话因此能看见 SSH 终端页助手刚跑过的命令(命令级,非对话原文)。现在 sidecar 的 after_tool_success 把发起会话 id(starhub/tool.execute 信封里的 sessionId,桥摊平后注入工具参数)写进领域事件(DomainEvent.sessionId)与 recentExecs(RecentExec.sessionId),live-context 注入时只放行当前 agent 会话自己产生的执行与 AI 起源事件;用户起源事件(终端连接/断开)是资产事实,无会话归属,全局保留;工具直调形态(无 sessionId)的执行无法归属,按「非本会话」不注入。主壳与 SSH 助手两个方向的「上下文串味」同时消除。 历史版本见 CHANGELOG.md。 下载 GitHub Releases 提供: | 平台 | 产物 | | Windows | NSIS .exe(未签名) | Linux / macOS 暫不发版(2026-10-09 决策 A:等上游)。桌面壳是上游 DeepSeek Harness 的 Electron 壳,它的 SUPPORTED_TARGETS 目前只有 mac-arm64 / mac-x64 / win-x64,没有 Linux target;原来的 deb/rpm 能力随 Tauri 壳一起退役。等上游出了 Linux target,加一个 CI job 即可,StarHub 不自己维护第二条打包路径。macOS 同理(缺签名/公证证书,证书就位后照抄 Windows job 改 target 名)。 开发 前置:Node 20 LTS、Rust 1.96+、Go 1.25+、pnpm 11+。Windows 需要 MSVC 构建环境。 git clone https://github.com/dabaicai001/starhub.git cd starhub npm install pnpm --dir vendor/deepseek-harness install npm run build:window && npm run sidecar:build && npm run sidecar-rust:build npm run smoke:dsh-desktop # provisioning + 宿主进程冒烟(五条断言) 常用命令: | 命令 | 作用 | | npm run build:window | 构建 React 工作台(输出 dist-starhub-react/) | | npm run sidecar:build / :release | 构建 Go Sidecar | | npm run sidecar-rust:build / :test | Rust sidecar 构建 / 测试(Windows 自动加载 MSVC) | | npm run test:utils 等 | Node node --test 纯逻辑测试(见 package.json) | | npm run test:provision | provisioning 合并逻辑单测 | | npm run smoke:dsh-desktop | provisioning + 宿主进程冒烟 | | npm run package:dsh-runtime | 打包 dsh 运行时(输出 dsh-runtime/) | | npm run provision:dsh | 把 StarHub 组合装进一个 dsh profile | | npm run version | 版本号同步(四处) | 上游 Electron 壳打包(发布链): pnpm --dir vendor/deepseek-harness/apps/desktop run package:win:x64:unsigned 文档 - docs/技术方案.md — 完整技术方案与功能矩阵 - docs/设计系统.md — UI token 与组件规范 - docs/踩坑记录.md + docs/已知坑索引.md — 已知坑 - CHANGELOG.md — 版本演进 - AGENTS.md — AI 智能体 / 贡献者协作指引(目录结构、命令、提交与发版约定) 安全 - 密码、私钥、API Key 存 sidecar 的密钥存储(文件或内存;系统 Keyring 迁移见技术方案 §六) - AI 执行写操作(SSH 写、SQL 写、文件删除、传输等)一律弹确认卡,超时按拒绝处理 - hostkey 自动接受不持久化,MFA 验证码不回写 - 直播/接管的帧通道只绑 127.0.0.1,一次性令牌握手后即弃 关于(About) StarHub — All-in-One DevOps Desktop Command Center。把开发运维每天要用到的工具收进同一个窗口:数据库客户端 · SSH 终端 · SFTP · Docker · Android 真机 · AI 助手。 三条产品原则: 1. 一个窗口,而不是一个启动器。 工具切换是纯损耗。StarHub 让数据库、终端、SFTP、Docker、Android 真机共享同一套资产、同一条连接,AI 共享同一份上下文——不是把五个图标摆进一个格子。 2. AI 是操作面,不是聊天框。 助手通过 Function Calling 直接驱动真实资产;每一次写操作(SSH 命令、SQL、文件删除、传输)都弹确认卡,超时按拒绝处理,全程落审计日志。 3. 每一步都有据可查。 密码与私钥只进 sidecar 密钥存储,hostkey 自动接受不持久化,直播/接管的帧通道只绑 127.0.0.1——真实设备上的每个动作都自动截屏留档、可回放。 | 项 | 值 | | 当前版本 | v0.136.1 | | 官网 | starthub.waouzzz.cc | | 仓库 | github.com/dabaicai001/starhub | | 问题反馈 | GitHub Issues | | 协议 | MIT · Copyright © 2026 StarHub Authors | 致谢与依赖: - AI 主壳基于 DeepSeek Harness(插件化智能体 harness,vendor/deepseek-harness 整树 vendored); - Android 直播的 H.264 通道使用 scrcpy server(Apache-2.0); - 终端 xterm.js,数据库/中间件适配由内置 Go sidecar 承载。 License MIT · Copyright © 2026 StarHub Authors
预览分享卡片长什么样 ↓
数据库 · 终端 · 文件 · 容器 · 真机 · AI —— 收进同一个窗口
相关插件 · 市场 / 管理
这是你的仓库?认领条目