https://www.v2ex.com/t/1195002
摘要如下:
之前我一直在付费用 Termius ,不过后来总觉得,每个月花 15 刀买一个 SSH Client ,还是有点贵。中间也调研过不少平替,但找来找去,除了 Termius 之外,确实没发现第二款支持云同步、同时体验也比较完整的 SSH Client 。于是就想着,干脆自己 vibe 一个出来。
Netcatty 支持多种云同步方式,包括 Google Drive 、Github Gist 、OneDrive 、S3 、WebDav 。同步基本是实时的,只要配置发生变化,就会自动同步到云端。功能上,Netcatty 已经实现了 Termius 的大部分核心能力,交互和布局也参考了 Termius 。如果你本来就是 Termius 老用户,上手 Netcatty 应该会非常自然。
不过,FIDO2 / 生物指纹密钥这部分我暂时还没有做;另外,Netcatty 目前也还不支持移动端。
如果你刚好需要一个带云同步功能的 SSH Client ,同时也觉得 Termius 价格有点高,而且暂时没有移动端需求,那么可以试试这个开源平替。省下来的钱,说不定还能再买一个 AI 订阅 😘
这个项目的定位一直很明确,就是做一个 Termius 的开源平替。后续也不会收费,平时我也会一边自用、一边顺手修 bug 、补功能。如果它刚好能帮到你,也欢迎给项目点个 star ,就当交个朋友。
上次在 V2EX 发帖之后,挺意外地收到了很多 V 友的鼓励和认可,也有不少朋友认真提了很多建议。过去大概 20 天里,我又继续 vibe coding 了一阵,把 Netcatty 在功能和易用性做了很多改进。 所以这次想重新开个贴,和大家汇报一下这段时间的新进展,也顺便再把它分享给更多有需要的朋友。
在花了不少时间把一个终端软件该有的基础功能慢慢补齐之后,我开始意识到:是时候把 AI 加进 Netcatty 了。于是又花了大概一个星期,认真 vibe coding 了一版 AI 相关功能。
关于 AI 应该以什么形态出现,我其实没有想得太复杂。像 Warp 那种比较重的交互形态,我个人会觉得还是有一点理解门槛。对我来说,更自然的方式是:在 terminal 旁边放一个聊天框,你直接告诉 AI 你想做什么,它就帮你操作。简单、直接,也更符合日常使用习惯。
基于这个思路,我先做出了一版可用的形态。下面这张图里的例子,就是让 AI 帮我把两台 server 组一个集群。

这个能力其实能覆盖很多很实用的场景。比如前段时间,我让 AI 帮我在海外节点上做部署,整个过程非常丝滑,到了最后,它甚至直接把配置文件都给出来了,省掉了很多来回切换和查资料的时间。
目前 Model Provider 这块已经支持主流的模型提供商,同时也接入了本地的 Claude Code 和 Codex (通过 ACP 协议桥接到 Netcatty ) 这意味着,如果你本地已经在使用 Claude Code 或 Codex ,基本不需要再做额外折腾,就可以把它们无缝接进 Netcatty ,让 AI 直接帮你操作服务器。

当然,现在也已经支持 web-search 和 web-fetch 。你既可以直接接成熟的 SaaS 方案,比如 Tavily ,也可以根据自己的需求,在本地自建 search provider 。
这部分的典型场景是:比如你在网上看到一篇帖子、一段教程,甚至是一段报错信息,都可以直接发给 AI ,让它结合终端环境去帮你处理。 而且当 AI 遇到不确定的概念、命令或者上下文时,它也会主动去网上搜索,再继续执行后续操作。

除了 AI 之外,这段时间我也顺手把 Netcatty 的整体 UI 做了一轮新的打磨。 相比之前的版本,现在整体观感会更现代一些,布局也更清爽,日常使用时的体验会舒服不少。

最后,还是想认真感谢一下之前支持 Netcatty 的 V 友们。
上次发帖之后,大家给了我很多鼓励支持。我后来试着拿 Netcatty 去申请了 OpenAI 的开源软件支持计划。没想到居然意外通过了,这件事对我来说,确实算是一个小小的鼓舞。

也因为这点鼓励,我后来斥巨资买了 Apple 开发者资格😂,给 Netcatty 的 mac 客户端做了签名。 接下来,Netcatty 的桌面客户端依然会继续保持开源和免费。希望它能在你日常连接服务器、处理运维工作的时候,多少带来一点方便,也少一点折腾。
1
istek999 Mar 20
支持作者,一直都在用。
|
2
xiaoz Mar 20 via Android
看起来不错,一会儿去安装试试。
另外功能成熟后建议适当收费,这样也更有动力维护,保持健康发展。 |
3
asilin Mar 20
之前就开始试用了,很不错,建议尽快添加收费功能,有回报项目才能持续开发!
|
4
datou Mar 20
已经用了一个月了,支持
|
5
rockddd Mar 20
看起来不错,晚上回去试试
|
6
CuteGirl Mar 20
现在就安装试试 感谢分享
|
7
xiaoz Mar 20
刚刚下载安装了下,打开里面就有默认的主机。
一个 AWS 分组,两个主机:DB Master 、Production Web ,这个正常不? MacOS M 版本的。 |
8
lkk Mar 20
Termius 的什么功能要付费?它的免费版不够用吗?如果只是作为 ssh 的登录
|
9
BigcatChen OP @xiaoz 这个是 demo 数据忘记删了。后续我来清掉
|
10
Rokaki Mar 20
打包了啥东西进去这么大的安装包
|
11
402124773 Mar 20
windows 平台上是否可以出个不需要安装的版本
|
12
chinafengzhao Mar 20
腾讯云已经做了一个
|
13
issakchill Mar 20
确实很好用 提了几个 issue op 反应神速
|
14
JoeSmith Mar 20
提个建议哈,现在鼠标中键的行为不太符合 Linux/MacOS 的习惯。
一般终端里面,鼠标选中的内容不会直接进入剪切板而是进入主选择区 (primary selection),点击中键会粘贴到终端里,这个行为在 Linux/macOS 下通常被称为 “中键粘贴” (middle-click paste),cmd-V 和点中键行为是不一样的。 不知道能改一下否? |
15
wbrobot Mar 20
又是几百 M ,你凭啥替代 tabby ?
|
16
jieliu Mar 20
在用,支持
|
17
iomect Mar 20
密钥普遍比较敏感 建议增加可以自定义的 webdav 备份
|
18
BigcatChen OP @iomect 现在就支持
|
19
BigcatChen OP @JoeSmith 我来研究下你说的这个
|
20
iomect Mar 20
@BigcatChen #18 好的我再看看
|
21
mcfever Mar 20
我也搞了一个 ,刚开始的时候,完全是手写,现在天天 vibe code ,现在功能已经不少了 https://dartshell.com/
|
22
BigcatChen OP @mcfever 看到了 做的很棒 主要还支持 vnc 和 rdp 。👍
|
23
NouveauNom Mar 20
给一个建议。
Local Terminal 在 Ai agent 里询问的时候,会提示, 先确认可用的远程主机和会话 ID ,再在对应主机上执行 pwd 查看当前目录。 Tool: netcatty-remote-hosts/get_environment Tool: netcatty-remote-hosts/get_environment 当前没有已连接的远程主机,会话列表是空的,所以现在无法查询远程服务器上的当前目录。 我刚检查到 hostCount = 0 。 如果你连上某台服务器后,我可以立刻帮你执行 pwd 看当前目录。 是否可以如果只有本地终端他就选择本地终端执行命令,不然还得告诉他选择本地终端。然后 问他当前在终端的目录他也获取不到,说是在根目录 |
24
LifeDesigner Mar 20
|
25
LifeDesigner Mar 20
|
26
HFX3389 Mar 20
Termius 我现在用的土区的年订阅,看看 OP 的软件怎么样
|
27
BigcatChen OP @NouveauNom 这个我今天准备完善。 之前 AI 操作的时候 排除了 Local Terminal
|
28
devtk Mar 20
看着像基于 libghostty 的产物,赞一个!
|
30
iorilu Mar 20
关注下, 最近好像不少人开发了终端软件啊
确实, 由于 claude,codex 等, 现在命令行生态比以前火太多了 |
31
BigcatChen OP @devtk 我之前也关注到了 libghostty
|
32
MarioNeTte233 Mar 20
可以增加一个类似 idea 的 fallback 字体的设置么,终端里的默认中文实在是有点不好看
|
33
qiuyue0 Mar 20
我用 termius 的原因是它对安卓支持得很好,平时可以不用,但是需要的时候一定得有,这也是我放弃其他开源终端软件的主要原因
|
34
panwork Mar 20
证书还无法登录,还有一些交互上的小 bug ,准备抽空帮忙提 PR 了,界面挺舒服。
|
35
BigcatChen OP @panwork 谢谢大佬,欢迎提 PR 👏
|
36
iorilu Mar 20
@BigcatChen 最近申请苹果开发者有什么技巧吗, 听说还挺麻烦的, 我可能也想申请
|
37
xing4576 Mar 20
支持作者,一直都在用。
|
38
autumncry Mar 20
支持,非常好用!
有一个 case 一直没有配置通,通过跳板机连接开发机,跳板机和开发机配置和 ide 配置一致,ide 可以正常链接,但是 netcatty 始终无法连接,显示跳板机连接失败。 报错:Connection timed out. Please try again. 日志: Initializing secure channel... Starting chain connection (2 hops)... Chain 1 of 2: 跳板机 - connecting Resolving host and keys... Negotiating ciphers... Exchanging keys... Authenticating user... |
39
BigcatChen OP @autumncry 我调查一下 感谢
|
40
hisunny Mar 20
mac 版,能同时开多个窗口吗?不是开多个标签。或者像 Chrome 等浏览器似的,开多个标签以后,拖出其中一个,自己变成一个新窗口。
|
41
windorz Mar 20
已经用了一段时间了, 不错.
|
42
chenpbh Mar 20
无法设置界面的字体大小,设置了样式也没用,字体太大了,看得不太习惯:root {
--font-size-base: 11px; } .terminal { font-size: var(--font-size-base); } |
43
lemuelthornem Mar 20
好用,感谢大佬,赞一个
|
44
abstract Mar 20
本想下载用用,但是还没等用就发现 BUG 了:
下载后,新建了个 test 分组,添加了一台 vps 服务器+socks5 代理,保存后连接,连接成功后刚看见命令行就闪退了。(而且我添加的那台 vps 也不见了,分组里空了) 试了三次不行,放弃了。没做别的更改,就设置了个中文。 |
45
BigcatChen OP @abstract 啥系统 ?
|
46
fs418082760 Mar 20
Termius 只用免费版的 ssh,是 ai 让我用您的终端替代了他并且玩的乐此不疲
|
47
BigcatChen OP @fs418082760 Bug 比较多 出现问题欢迎反馈,我是业余时间维护 有时候可能修的没那么及时,还请见谅😂
|
48
vst93 Mar 20
蹭热度推荐下自己的 ttm ,想轻量化同步 ssh 的可以试试, https://v2ex.com/t/1198693
|
49
vst93 Mar 20
建议在项目 readme 中说明下数据同步的特点,中文说明下看了半天没看到,比较关心这个,最后在帖子里看到了说明
|
50
abstract Mar 20
@BigcatChen win10
|
51
BigcatChen OP @abstract 这个确实很奇怪,也有其他用户反馈连上以后闪退的问题,我自己平时高强度使用 目前还没碰到。
闪退肯定是主进程崩溃了,不过充分理解你对软件可靠性的顾虑。如果方便的话,可以帮我把代码拉到本地 然后 npm run 跑一下 看看崩溃的日志具体是啥,谢谢啦。 这个 bug 的样本比较稀缺,如果可以帮忙真的十分感谢你了。 |
52
tangqiu0205 Mar 20
|
53
stephenhallo Mar 20
ipad 版本有计划吗?
|
54
BigcatChen OP @tangqiu0205 感谢反馈
|
55
isAK47 Mar 21
体积太大了,感觉方向不对
|
56
Liver6 Mar 21
|
57
BigcatChen OP @Liver6 感谢支持
|
58
ddonano Mar 23
密钥登录没看明白怎么用?
|
59
abstract Mar 23
@BigcatChen 我尝试把代码在本地运行查看报错日志,但是安装依赖总是出错,算了放弃了。
|
60
BigcatChen OP @abstract 谢谢你,新版本上线了 crash log 功能,只要跑一下崩溃的场景 再打开在设置里面就能看到崩溃日志。如果有空的话 还请帮忙看一下,谢谢你啦
|
61
abstract Mar 24
@BigcatChen 给我个邮箱或者联系方式,我给你把崩口日志发过去
|
62
fs418082760 Mar 24
可否让 stp 和 ai 布局可以分开,我更希望可以能三分栏
|
63
BigcatChen OP @abstract 直接在 github 上贴在 issue 里就可以啦 太感谢你了
|
64
BigcatChen OP @fs418082760 理解你说的 我看看怎么处理
|
65
doosit Mar 30
|
66
moxuanyuan Apr 9
既然都 vibe coding 为什么还选 Electron 的技术栈?有机会重构为 tauri
|
67
akafeng Apr 22
已经用上,初步体验很棒!
想问问能否加入 Homebrew 中呢?这样方便批量更新和管理 另外 App 体系感觉有些大了,就像楼上说的 Electron 可能重了些 |
68
BigcatChen OP @akafeng 感谢你的反馈。
桌面客户端的技术选型是个很困难也需要权衡的问题,electron 已经是综合多方面考虑的最优解了。 采用原生技术栈开发,看起来体验上固然是最好的,但是对于个人开发者而言是有点不能承受的。不仅是要花数倍精力维护每个平台的代码,另外对于每个平台的测试工作也需要单独的进行。比如我自己常年使用 mac ,手边没有 windows 机器,对于仅仅业余维护的开源项目,暂时没有什么动机去准备一套齐全的测试环境。 tauri 可能是另一个介于跨平台和原生开发中间的选择。他与 electron 的区别是把 web 渲染的部分交给了系统,因此打包出来的软件体积非常的小,但是在运行期间的资源占用相比于 electron 而言优势并不大,很多人在计算 tauri 的资源占用的时候,只计算了 tauri 本身的,因此得出结论 tauri 很轻,实际上他会起一个 web 服务,这个服务的资源占用也并不小。 在实际开发的过程中 tauri 的问题也非常多,而且也面临框架稳定性,生态匮乏等其他问题,这些问题可能会直接影响软件的可用性。 因此综合来看 electron 几乎是唯一的选择,因为他在很多大型商业软件上都被验证过。稳定性 生态 兼容性都几乎是最好的。他的缺点如你所说,软件体积庞大,即便是一个空白的项目,完全解压后也会占用几百 mb 的磁盘空间。不过对于 netcatty 这样的软件来说,基本上也不会在此基础上占用更多的磁盘空间了,毕竟这是一个微信聊天记录都能占几十个 G 磁盘空间的时代😂。 内存和 CPU 的消耗可能也略高一点点,但是也并没有想象的那么夸张。 大多数情况下 netcatty 在开数量有限的 terminal 的情况下 主进程和渲染进程分别的内存占用大约在 200 - 300 MB, tauri 起的 webview 差不多也是类似的内存占用,甚至部分情况下会更多。 希望上述文字能帮助你了解我的心路历程,再次感谢你的支持。 |
69
akafeng Apr 24
@BigcatChen #68 哇,感谢大猫老师的回复!
没有做过 GUI 项目,确实不太了解这些技术选型背后的差异,学习到了。 Homebrew 的部分是否有机会可以推进一下呢,或者回头我去看看能否提一个 PR 吧~ 另外后续是否会有付费版呢,我想好用的东西总是需要一些支持和动力的,当然了,也别像 Termius ,它家有点太贵了,也可能是我太穷 Orz |
70
rayyume Apr 29
好用 爱用
|