dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
StarHub 是一款跨平台桌面应用(Tauri 2 + Rust 主进程 + DeepSeek Harness React 工作台 + Go Sidecar),把开发运维日常高频工具整合到同一个窗口 —— 数据库、SSH/SFTP、Docker 面板与 AI 助手。目标是减少在 Navicat、Xshell、Portainer、文件管理器和 AI 对话窗口之间来回切换的成本。 前端架构:基于 DeepSeek Harness 原生 React 工作台(/starhub-react 路由)。资产、设置、SSH 终端、SFTP、数据库
你的桌面上一半是"生产力工具":Navicat 连库、Xshell 开终端、WinSCP 传文件、Portainer 看容器、网页里挂着个 AI 对话框——每天在五六个窗口之间来回切,复制粘贴当"集成"。StarHub 把这些收进同一个窗口:左边是资产,中间是工作台,AI 在侧栏待命——@ 一下把服务器交给它,# 一下把日志贴给它;它每一次动手,都要先弹一张确认卡问你。
不是把五个图标摆进一个启动器,而是让它们共享同一套资产、同一条连接、同一份 AI 上下文。
| 痛点 | 别人的做法 | 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 元数据、深浅双主题、自动更新。
三层进程模型:
sidecar-rust/)承载 SSH/SFTP、Android 真机与直播帧枢纽;Go Sidecar(sidecar/)承载 MySQL / PostgreSQL / SQLite / Redis / ClickHouse / SQL Server / Elasticsearch / Docker / Kafka 等适配器和连接池。均经 stdio 换行分帧 JSON-RPC 通信。vendor/deepseek-harness 里:apps/starhub-window 是资产工作台构建入口,packages/starhub/* 是 10 个内置插件(导航、工具桥、直播、审批、领域事件等),经 dsh 的槽位系统接入,不改上游内核。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 键被两端忽略,零回归。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
StarHub — All-in-One DevOps Desktop Command Center。把开发运维每天要用到的工具收进同一个窗口:数据库客户端 · SSH 终端 · SFTP · Docker · Android 真机 · AI 助手。
三条产品原则:
| 项 | 值 |
|---|---|
| 当前版本 | v0.136.1 |
| 官网 | starthub.waouzzz.cc |
| 仓库 | github.com/dabaicai001/starhub |
| 问题反馈 | GitHub Issues |
| 协议 | MIT · Copyright © 2026 StarHub Authors |
致谢与依赖:
vendor/deepseek-harness 整树 vendored);MIT · Copyright © 2026 StarHub Authors