关于目前流行的 AI 开发工具不能实现基础功能的疑问

6 小时 20 分钟前
 GoodRui

建议个人比较懒的原因,自从 ai 盛行以来,一直还使用着传统的手搓 ai 的工作模式,即网页问答。对于各种 vibe 方式还是只在一边静静看大家讨论的热火朝天,也知道现在各类 ai 工具能力基本要上天了。

昨天终于在 mac 上安装了 codex 和 claude ,简单用了下发现个很大的问题。对于远程开发这种很常见的模式,现在都 codex 、cluade 这类工具,都无法原生支持使用本地 ai 能力。就是本地有完整的 ai 环境,远端服务器绝无可能安装相关的 ai 环境和工具的情况下,如何通过 ssh 使用本地的 ai 能力。

我的现在主要的工作是在众多 Linux 服务器进行业务部署测试,环境兼容性排查,中间件升级测试之类的运维测试工作。99%的情况是使用 mba ssh 到服务器上进行。大部分是用 windterm 这类 ssh 管理工具,或者 vs code 的 remote-ssh 方式在远程服务器上开发。

类似问题,搜了下有几个相关的讨论帖子,比如 https://global.v2ex.com/t/1190303 ,但是到现在又几个月过去了,对于这种情况还是没有任何技术性的突破。

在我的认知中,这个应该是很好实现的功能吧?比如 ai 工具可以读取远端服务器的输出、文件,并执行相关命令。但令我惊讶的是这种很基础的功能到目前为止竟然都是缺失的?还需要各种类似用 sshfs 将远程服务器文件挂载到本地、本地搭建 mcp 服务、甚至告诉 ai ssh 远程服务器的命令等很别扭的方式实现。而这些方式也都各有弊端,和本地原生使用 ai 工具开发完全不可同日而语。比如将远程文件挂在到本地这一类方案,本质是本地 ai 工具读取本地文件(实际为挂载的远程服务器文件)使用 ai 进行工作后,回写。但是要验证脚本、配置的正确性,必须要在远程服务器上实际的运行、测试、排错等,这些操作只靠挂载文件是无法方便实现的,于是又需要有 ai 能力的终端工具来接手,割裂感非常严重。

所以最后还是 remote-ssh 改配置文件,起服务,查看日志报错信息,复制出来喂给 ai ,然后再去服务器上修改脚本、配置,重复。这样一套下来,反而我成了人肉 MCP 服务器。

令我感到疑惑的是,大家开发的时候都是直接本地开发的吗?都是远程开发服务器能够随心所欲安装各类工具进行各种配置,不怕污染环境的吗?

还是说我不知道正确的方式?有没有大佬指点下?

1912 次点击
所在节点    程序员
36 条回复
miniliuke
6 小时 16 分钟前
自己写一个 mcp 把远程服务器的 terminal 给暴露出去,然后提示词中强调用这个 mcp 来执行命令,效果应该不会太差
weixind
6 小时 10 分钟前
不是“AI 开发工具不能实现基础功能”。

而是你的需求不是“基础”需求。

无论是啥方案,必然要有一层转发来隔离啊。

不敢想 cc 和 codex 没有 sandbox 在服务器裸奔是啥场景,AI 能让你飞起来。
xy2401
6 小时 8 分钟前
假如你把 ssh 当作一个 软件(本来就是)。执行软件获得返回。ai 解析这个返回即可。
我有一个 ps1 脚本 ,ssh 100 台服务器 执行 各种命令 比如 ps 。 保存成 ip.ps.txt

ssh root@192.168.1.10 "df -h" > .\disk-usage.txt
GoodRui
6 小时 6 分钟前
@miniliuke 我觉得 mcp 终究还是一个妥协方案,为什么不能原生支持呢?比如 cc 中直接 ssh <host> 后,cd 到指定目录,能够继续如同打开本地工作目录一样工作? cc 直接读取目录文件,执行动作,分析终端响应,这个要求很过分吗?想不明白为什么这种基础功能反而无法实现...
honjow
6 小时 4 分钟前
直接操作 ssh 当然可以啊。。。我都直接让本地的 agent 帮我到服务器去搭建和维护
GoodRui
6 小时 2 分钟前
@weixind 实际的情况是,如果给与 AI 工具权限,无论是本地自己的环境,还是服务器测试环境,还是线上生产环境,产生的后果都是一样的。你之所以觉得直接操作服务器危险,那是因为基于你的可接受程序来说的,比如搞崩线上服务器你可能要丢工作。
但是有没有一种可能,我的电脑比线上服务器更重要?我可以接受线上服务器被 ai 搞崩,但是不能接受我自己的电脑被 ai 搞崩?
所以说你说的这个假设也是对应于你的需求的。我这边的需求就是我有众多快照完善的测试环境服务器,我需要做的就是不断测试,10s 回滚快照,继续完善配置,继续测试,10s 回滚。
longaiwp
6 小时 1 分钟前
只要你能做,那么 AI 一样能做,只是你需要预设好一个环境告诉它怎么做,这都是最基本的逻辑问题。
GoodRui
6 小时 1 分钟前
@honjow 那是我提到的那种,告诉 agent ssh 服务器的方式,让它自己去 ssh 吗?
honjow
5 小时 52 分钟前
@GoodRui #8 那不然你啥也不告诉他啥信息也不给你,让他怎么操作。哪怕是你自己操作,你也得知道 ssh 的信息,然后连上去吧
GoodRui
5 小时 43 分钟前
@honjow 我的意思是,有没有像 vs code 这种,我 ssh 上服务器,开启 agent 就开始工作的工具? Codex 是有“连接”这个功能的,可以配置上远程服务器,但是它需要远程服务器上也安装了 Codex 。那我还用本地这个 Codex 干啥呀?直接终端 ssh 到服务器上,然后 codex 命令打开 ai 开始搞就行了呀。
GoodRui
5 小时 38 分钟前
@honjow 说白了,我是想将远程的环境、状态,搬回本地来实现。remote-ssh 这种模式已经很成熟的解决了,为什么 ai 工具还没有实现。
honjow
5 小时 26 分钟前
@GoodRui #10 vscode 远程需要在远程安装一个 server 啊,而且所有插件都要再单独安装一下,你以为啥都不用吗。我是不明白让 agent 自己 ssh 过去操作有什么不可行的吗
icyalala
5 小时 20 分钟前
vscode 自带 copilot 就可以啊,只要连上服务器,打开 copilot 就能干活了
Chichele
5 小时 19 分钟前
@GoodRui #8 是的,我一直都是这样玩的,告诉它 ssh ip 和密码就行了
aydengen
4 小时 57 分钟前
warp 一直都可以
liushengxian1230
4 小时 37 分钟前
是的,都是本地开发。远程服务器污染环境这个,生产环境不用 docker 吗
nsjs
4 小时 33 分钟前
vscode 的 ssh remote 还是在远程机器上装了一些东西的吧……并不是纯本地运行的?
ktyang
4 小时 18 分钟前
codex 直接 ssh 连上去干啊,这不是基本操作么
Alias4ck
4 小时 15 分钟前
写一个 wrapper 每次用这个 wrapper 让它获取就行了, 反正我让它这么操作我的 widnows 的 wsl 是可行的也没啥复杂的也是本地开发
lujiaosama
4 小时 12 分钟前
codex 可以 SSH 啊,即使是 CLI 只要配置好密钥,完全可以让 AI 执行 SSH 命令的。我在 1G 的树莓派上就是这么开发的,VSCODE 都不需要。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1217794

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX