ShellAnyWhere 让本地终端具备远程访问能力

软件名称

ShellAnyWhere

应用平台

Windows
MacOS
Linux
Web

推荐类型

【开发者自荐】

一句简介

不改变电脑终端使用习惯,所有会话都能远程访问,跟在电脑本地使用一样的体验

应用简介

在PTY层面注入的远程能力,不限制shell(bash、zsh、fish、pwsh…),不限制命令行工具(claude、codex、opencode…),不需要提前执行额外操作(screen、tmux、zellij)

你在Ghostty打开了claude code,进行到一半需要离开电脑,掏出手机,一模一样的会话内容和交互操作,无缝衔接,回到电脑前无需任何操作同样无缝衔接

快速开始

1. 安装 saw 服务端

macOS 可通过 brew install ejfkdev/tap/saw 安装,其他平台从 Releases 下载。然后安装为后台服务:

saw-server install

2. 配置 Shell 代理

下载 saw-shell,将连接配置写入 shell RC 文件:

saw-shell install

然后打开一个新的 shell 使配置生效。新 shell 会自动连接到 saw 服务端。

3. 访问远程 Shell

三种远程方式:Web网页、saw-client、SSH

saw 服务端首次运行时自动生成 token,查看方式:

  • Linux/macOS:cat ~/.config/ShellAnyWhere/token

  • Windows:type %LOCALAPPDATA%\ShellAnyWhere\token

Web 浏览器(支持手机访问) — 打开 https://<saw服务端IP>:18708,输入 token 即可。

终端客户端:

saw-client --server <saw服务端地址> --token <token>

SSH:

首先,从 token 派生 SSH 私钥:

saw-client ssh-key --server <saw服务端地址> --token <token>

这会将私钥保存到 ~/.ssh/saw_<host>-<port>_<id>,并打印使用命令,例如:

ssh -i ~/.ssh/saw_my-server-18708_a1b2c3d4 -p 18708 my-server

saw-server安装在本地电脑,可在局域网远程shell会话,配合 ZeroTier、Tailscale 等异地组网工具使用效果更佳

官方网站

saw-server 装服务器行么,或者换个问法:想要广域网远程shell,除了用异地组网,还有什么中继方法

可以装在公网服务器,但是这个项目处于早期阶段,需要你自己保证公网服务器本身的安全性,现在是一些常规的安全设计:64位token+tls加密+dh密钥交换。

远程shell对安全要求非常高,以后会加上端到端加密、支持tpm、passkey等安全特性,即便部署server的主机被完全攻破也不会影响本地shell

我现在还在用UU远程的方式
这个应用的想法确实很满足我需要,不需要用专门的软件或者warper去运行cc/codex,可以使用已经打开的对话