Skip to content

Releases: AIcivilization/dsh-vps-manager

v0.6.3 · Update from the settings page / 设置页一键更新

Choose a tag to compare

@AIcivilization AIcivilization released this 04 Oct 03:10

Update from the settings page. DSH Settings → VPS Manager now shows the running version next to a button:

  • When a newer version is released on GitHub, the button becomes Update to vX.Y.Z, with a note linking to what's new
  • Clicking it installs the new version through DSH's own plugin manager, the same one DSH's Plugins page uses. It runs pnpm under a lock and restores your configuration if anything fails. Quit DSH completely and reopen it to run the new version
  • If npm hasn't caught up with GitHub yet, the button waits. If the install fails, you see the reason and the dsh plugin add command to run yourself
  • The check is cached for 6 hours; clicking Check for updates checks again right away

This button helps from the next release on: install 0.6.3 the usual way once, and later versions can be installed from the settings page.

在设置页里就能更新。 DSH 设置 → VPS 管理,右上角显示当前版本,旁边一个按钮:

  • GitHub 上发了新版本,按钮就变成 「更新到 vX.Y.Z」,下面一行提示带「查看更新内容」链接
  • 点它交给 DSH 自己的插件管理器安装,和 DSH「插件」页是同一套:带锁运行 pnpm,出错会把配置还原。装好后完全退出 DSH 再打开就是新版
  • npm 上还没同步到新版时,按钮先等着;装失败会写清原因,并给出可以自己运行的 dsh plugin add 命令
  • 查到的结果存 6 小时;点 「检查更新」 马上重查

这个按钮从下一版开始起作用:这次先照常装上 0.6.3,以后的新版就能在设置页里点一下更新。

Install / 安装:dsh plugin add dsh-vps-manager@0.6.3,装完完全退出 DSH 再打开

v0.6.2 · Works in the official desktop app; no more token prompts / 官方桌面版可用、不再提示令牌

Choose a tag to compare

@AIcivilization AIcivilization released this 04 Oct 02:05

Works in the official DeepSeek Harness desktop app; token mismatches fix themselves.

  • In the official desktop app, every action in the plugin's panels failed with "token mismatch". The app opens its page from its own bundle and only passes structured startup data to it, so the plugin's token never reached the page. The token is now passed that way as well.
  • No more "token mismatch" prompts. When the page has no token, or its token is out of date (DSH restarted, the plugin was updated while running), the plugin quietly fetches the current one and retries. You don't see anything. The token is fetched through a plugin route that, like the rest, only answers the DSH page itself behind DSH's own login.
  • The in-conversation terminal connects the way the desktop app expects, and also retries once with a fresh token if it is refused.

在 DeepSeek Harness 官方桌面版里能正常用了;令牌对不上会自己修好。

  • 官方桌面版里,插件面板里的每个操作都会报「令牌对不上」。原因是这个版本的页面从程序自带的文件打开,只接收结构化的启动数据,插件的令牌送不到页面上。现在令牌也会通过这条路送过去。
  • 不会再弹「令牌对不上」。 页面里没有令牌,或者令牌过期了(DSH 重启过、运行中更新了插件),插件会悄悄取一个当前的再重试,你什么都看不到。取令牌的接口和其他接口一样,只回应 DSH 自己的页面,并且先过 DSH 的登录校验。
  • 对话里的终端按桌面版的方式连接;连接被拒时也会换个新令牌再试一次。

Install / 安装:dsh plugin add dsh-vps-manager@0.6.2,装完完全退出 DSH 再打开

v0.6.1 · Collapsible Status sections / 状态页可收起

Choose a tag to compare

@AIcivilization AIcivilization released this 03 Oct 09:54

Collapse the Status sections you don't need. Every section of the Status page except the CPU / memory row and Disks has a triangle at its top right: AI interpretation, Needs attention, and each card (services, containers, processes, ports, firewall, scheduled tasks, certificates, security, plugin data). Click it, or the section's title, to fold the section to one row:

  • Needs attention still shows how many items there are
  • Each card keeps its summary, and its icon stays yellow or red when that section has a problem
  • The other cards move up to fill the space

The choice is kept on this computer and shared by the bottom panel and the right sidebar, for every machine.

「状态」页不想看的可以收起。 除了 CPU、内存那一排和磁盘,每一块右上角都有一个倒三角:AI 解读、需注意,以及服务、容器、进程、端口、防火墙、计划任务、证书、安全、插件占用各张卡片。点倒三角或那一块的标题就收成一行:

  • 「需注意」仍显示有几项
  • 卡片的摘要还在;那一块有问题时,图标仍是黄底或红底
  • 其他卡片自动补位

收起哪些存在本机,所有机器、底部面板和右侧栏都按同一份来。

Install / 安装:dsh plugin add dsh-vps-manager@0.6.1,装完完全退出 DSH 再打开

v0.6.0 · Status in the right sidebar, redesigned / 状态页常驻右侧栏、重新设计

Choose a tag to compare

@AIcivilization AIcivilization released this 03 Oct 06:11

Status in the right sidebar. While the Status tab is showing, a new button left of the panel's three dots opens the page in DSH's right sidebar (the column Files and document previews use):

  • It sits beside the conversation and stays open while you chat. It comes back after you switch conversations or reload, and it is also listed on the right sidebar's start page as VPS status
  • Numbered squares at the top pick which machine to look at, numbered as in the conversation header. A red or yellow dot means that machine's last check found something to look at
  • Picking another machine only views it. The conversation keeps operating its own machine, a note says so, and Use #N here switches if you mean to
  • While visible it checks once a minute. It stops when collapsed, behind another tab or minimised, and checks right away when it comes back. An unreachable machine is tried once a minute, not in a loop

A redesigned Status page.

  • Ring meters for CPU, memory and swap
  • A one-line AI row until there is a reading
  • A conclusion line that states only the conclusion, with the normal checks counted once below it
  • Cards styled by content: service and security stat grids, container states, process bars, ports split into public and local only, certificate validity bars. Each card is only as tall as its content
  • The panel's title bar no longer wraps when the conversation is narrow; below 470px the tabs show icons only

Needs a DSH with the right sidebar (0.2 and later) for the sidebar; on older versions the button simply does not appear. Checked in a real DSH 0.2.0-rc.2 web page.

「状态」可以在右侧栏常驻。 切到「状态」页签时,面板三个圆点左边多了一个按钮,点它就把状态页放进 DSH 自己的右侧栏(文件、文档预览用的那一栏):

  • 和对话并排,边聊边看,一直开着;切到别的对话再回来、刷新页面都还在。右侧栏开始页里也有 「VPS 状态」 入口
  • 顶上一排编号方块选看哪台,编号和对话头部一致;上次看有需注意的项,方块上有小红点或小黄点
  • 选别的机器只是「看」,这个对话操作的还是原来那台;顶上会写清楚,真要换就点 「让这个对话改用 N 号」
  • 看得见时每分钟采一次;收起、切走、窗口最小化时不采,重新看见时马上采;连不上的机器也只是一分钟试一次

「状态」页重新设计。

  • CPU、内存、Swap 用环形图
  • 还没解读时 AI 那一栏只占一行
  • 最上面只写结论,正常的项在下面数一次
  • 卡片按内容排版:服务和安全的数字格子、容器状态、进程横条、端口按对外和只在本机分组、证书有效期细条;每张卡片多高就占多高
  • 对话区变窄时,面板标题栏不再挤成两行;窄于 470px 时三个页签只留图标

右侧栏需要带右侧栏的 DSH(0.2 起),老版本没有这个按钮,其他照旧。已在真实的 DSH 0.2.0-rc.2 网页版里实测。

Install / 安装:dsh plugin add dsh-vps-manager@0.6.0,装完完全退出 DSH 再打开

v0.5.3 · Clearer borders, unified buttons / 边框更清楚、按钮统一

Choose a tag to compare

@AIcivilization AIcivilization released this 02 Oct 12:42

Clearer borders, one style for choice buttons.

  • Section borders on the settings page and the cards on the Status tab are a step more visible, and input boxes a step more than that. Both follow the border levels DSH uses on its own settings pages, so the plugin looks like the rest of DSH in light and dark themes.
  • The Terminal | Files | Status switch in the terminal panel, and the choice buttons on the settings page (colour scheme, keep after disconnect), now share one look: separate buttons in a light track, with the selected one raised, instead of a solid blue block. The three panel tabs also get small icons.
  • Input boxes on the settings page no longer stick out past the edge of their card.

边框更清楚,分段按钮统一一个样子。

  • 设置页各板块的边框、「状态」页各卡片的边框比之前清楚一档,填空框再清楚一档;都按 DSH 自己设置页用的边框等级,浅色、深色下都和 DSH 其他页面一致。
  • 终端面板上的「终端 | 文件 | 状态」和设置页的分段按钮(颜色方案、断线后保留)统一成一个样子:浅色凹槽里分开的几个按钮,选中的那个浮起来,不再是一整块蓝色。面板三个按钮各带一个小图标。
  • 设置页的填空框不再戳出卡片边缘。

Install / 安装:dsh plugin add dsh-vps-manager@0.5.3,装完完全退出 DSH 再打开

v0.5.2 · Status tab fixes from a real server / 「状态」页真机修正

Choose a tag to compare

@AIcivilization AIcivilization released this 02 Oct 12:14

Status tab fixes from a real server.

  • Refreshing no longer fails with "connection dropped". When a command's output was just over 4,000 characters, the plugin cut the line at that point while capturing it. On a real server the status check's output is about that size: a finished check was reported as "the connection dropped", and the machine was shown as unreachable. The same cut once dropped a certificate's year, giving "expired 9058 days". Output is now kept whole unless something really has to be left out, which also fixes this for every other command.
  • A failed status check no longer marks the machine as unreachable unless SSH itself failed, and its message no longer talks about change operations.
  • Certificates: warnings scale with each certificate's own lifetime, so 6-day IP certificates are no longer flagged all the time. An expired certificate left in Caddy's storage, whose name is no longer in the Caddy config, is shown greyed as a leftover instead of as an alarm.

「状态」页在真实服务器上的修正。

  • 刷新不再报「连接中断」。 命令输出刚过 4000 字时,插件截取输出会把正好跨在那里的一行切断。真实服务器上「状态」采到的内容正好在这个大小:跑完的检查被当成「连接中断」,机器也被标成连不上。之前同一个切口还切掉了证书日期里的年份,显示成「已过期 9058 天」。现在除非真要省略,输出都完整保留,其他命令也一并修好了。
  • 「状态」没采到时,只有 SSH 本身连不上才标记机器连不上,提示里也不再提「改动类操作」。
  • 证书:提醒阈值按证书本身的有效期算,6 天的 IP 证书不会一直被标出来。Caddy 存储里已过期、Caddy 配置里也没有它名字的证书,灰色显示为旧文件,不再报警。

Install / 安装:dsh plugin add dsh-vps-manager@0.5.2,装完完全退出 DSH 再打开

v0.5.1 · No duplicate queued questions / 不再重复排队

Choose a tag to compare

@AIcivilization AIcivilization released this 02 Oct 11:53

No duplicate questions from "let the AI look at this file". Clicking it again while the AI was still working queued the same question a second time; after you stopped the run, that copy stayed in the queue. Now a question that is already waiting is not queued again (the same goes for Ask AI on the Status tab), and a repeat click on the same file within a minute just points you to the answer in the conversation.

「让 AI 看看这个文件」不再重复排队。 AI 还在忙时再点一次,同一个问题会再排一条;停掉那一轮后,这条就留在了排队里。现在已经在排队的问题不会再排(「状态」页的 问 AI 也一样),一分钟内再点同一个文件,只提示你结果在上面的对话里。

Install / 安装:dsh plugin add dsh-vps-manager@0.5.1,装完完全退出 DSH 再打开

v0.5.0 · Status tab with AI interpretation / 状态页与 AI 解读

Choose a tag to compare

@AIcivilization AIcivilization released this 02 Oct 11:18

Status tab: how the server is doing, on one page. The terminal panel now has a third tab beside Terminal and Files:

  • Switching to it takes one read-only look (about 2 seconds); after that it refreshes only when you click ↻. The panel still opens on Terminal
  • Needs attention first, judged by fixed rules without the model: failed services and ones enabled at boot but not running, failed scheduled runs, low memory, swap pressure, disks at 85% / 95%, load above the core count, exited containers that will not restart, certificates expiring within 14 / 3 days, pending security updates, reboot required, many failed logins without fail2ban. Each row has Logs, Open (in Files) and Ask AI
  • Then everything else: CPU, memory, swap and traffic; disks; cards for services, containers, busiest processes, listening ports (public or local only), firewall, scheduled tasks, certificates, security, and the plugin's own trash and backups
  • Interpret: DSH's default model reads the data and says in a few sentences how the machine is and what matters most. It is called only when you click, answers in your interface language, and Ask in chat carries the reading into the conversation
  • The last look is kept on this computer per machine, so reopening shows it at once

Also fixed: fail2ban was never detected in the data the plugin collects.

Collection checked on real Ubuntu 24.04 and Debian 12 (GitHub runners and WSL, from Windows and Linux); the interface checked in light and dark, English and 中文.

状态页:服务器怎么样,一页看清。 终端面板在「终端」「文件」旁边多了一个「状态」页签:

  • 切过去时看一遍(只读,约 2 秒),之后只在点 ↻ 时刷新;面板打开时仍先显示「终端」
  • 先列「需注意」,由固定规则判断、不用模型:服务失败或设了开机自启却没在跑、定时任务上次失败、内存不足、swap 吃紧、磁盘到 85% / 95%、负载超过核数、退出后不会重启的容器、14 / 3 天内到期的证书、待装安全更新、需要重启、登录失败很多且没有 fail2ban。每一行有 看日志、打开(在「文件」里)和 问 AI
  • 其余部分:CPU、内存、Swap、流量;磁盘;服务、容器、最忙的进程、监听端口(对外还是只在本机)、防火墙、计划任务、证书、安全,以及插件自己的回收站和备份
  • 让 AI 解读:DSH 的默认模型读一遍数据,用几句话说这台机器怎么样、最要紧的是什么。点了才调用,按界面语言回答;在对话里追问 把解读带进对话
  • 最近一次结果按机器存在本机,再打开立刻显示

另外修好:插件采集的数据里一直认不出 fail2ban。

采集在真实的 Ubuntu 24.04 和 Debian 12 上跑过(GitHub 的机器和 WSL,分别从 Windows、Linux 连过去);界面在浅色、深色、English、中文下都看过。

Install / 安装:dsh plugin add dsh-vps-manager@0.5.0(或 dsh plugin add github:AIcivilization/dsh-vps-manager),装完完全退出 DSH 再打开

v0.4.0 · English / 中文 interface that follows DSH / 界面中英文跟着 DSH 走

Choose a tag to compare

@AIcivilization AIcivilization released this 02 Oct 07:45

English / 中文 interface that follows DSH: pick English or 中文 under DSH Settings → General → Language, and the plugin follows at once, with no reload:

  • the settings page (machine list, add-machine form, basics, terminal settings, feedback, uninstall), the conversation header switch, the terminal and Files panel, and the alerts below the input box
  • server errors and hints, uninstall results and approval dialogs
  • /vps- command output and descriptions, and the names, descriptions and plans of all 29 built-in recipes

DSH ships these two languages today. With another language pack installed, the plugin shows Chinese or English according to the pack's declared fallback. Text written for the AI stays as it was; the AI answers in the language you write in.

Verified in a real DSH 0.2.0-rc.2 by switching the language back and forth, and by the compatibility check, which now also asks for English replies.

界面中英文跟着 DSH 走:在 DSH 设置 → 通用设置 → 语言里选中文或 English,插件立刻跟着变,不用刷新:

  • 设置页(机器列表、添加机器、基础配置、终端设置、反馈、卸载)、对话头部的开关、终端和文件面板、输入框下方的提示
  • 服务端的报错和提示、卸载每一步的结果、审批弹窗
  • /vps- 命令的输出和说明,29 条内置菜谱的名字、说明和计划

DSH 目前自带的就是这两种;装了别的语言包时,按语言包声明的退回语言显示中文或英文。写给 AI 看的说明不变,AI 用什么语言回答取决于你用什么语言跟它说话。

在真实的 DSH 0.2.0-rc.2 里来回切换语言实测过;兼容性检查也加了英文回复的检查。

Install / 安装:dsh plugin add dsh-vps-manager@0.4.0(或 dsh plugin add github:AIcivilization/dsh-vps-manager),装完完全退出 DSH 再打开

v0.3.4 · Downloads work with download managers, the AI looks at shared files right away / 下载不怕下载工具,「让 AI 看看」马上看

Choose a tag to compare

@AIcivilization AIcivilization released this 30 Sep 04:03

Downloads work with download managers installed: a plain download link was taken over by download managers such as IDM or Folx, which requested the file again without DSH's session and got "403 Forbidden". The Files page now fetches the file itself and hands it to the browser to save, with a progress bar and a cancel button at the bottom. Files over 1 GB still go through a direct link, which now stays valid for its full two minutes.

"Let the AI look at this file" makes the AI look right away: it used to only attach the file and wait for your next message, so clicking it seemed to do nothing. It now also sends "take a look at this file" for you, and the AI answers in the conversation. If the input box holds a message you have not sent, nothing is sent for you; the file goes along with your message.

Everything else is the same as 0.3.3.

装了下载工具也能下载:以前直接给浏览器一个下载链接,会被 IDM、Folx 这类下载工具截走,它自己再请求一次,没有 DSH 的登录状态,结果「403 Forbidden」。现在文件页自己把文件取回来再交给浏览器保存,底部显示进度、能取消。超过 1 GB 的文件仍走下载链接,链接在 2 分钟内一直有效。

「让 AI 看看这个文件」点了就开始看:以前只是把文件附上、等你下次发消息,点完像是没反应。现在会替你发一句「看看这个文件」,AI 马上开始看,结果在对话里。输入框里有你还没发出去的话时不替你发,文件会跟着你的话一起给 AI。

其余与 0.3.3 相同。

Install / 安装:dsh plugin add dsh-vps-manager@0.3.4(或 dsh plugin add github:AIcivilization/dsh-vps-manager),装完完全退出 DSH 再打开