返回项目

项目

Local Clipboard

GitHubGitLab
clipboardlanfile-transfermacOSwindowslinuxpwa

Local Clipboard 是一个只在可信局域网或私有 VPN 中工作的文本、图片和文件传输工具。一台常开的设备——通常是 NAS——运行 Hub,桌面设备运行本地客户端;手机则直接打开 Hub 页面。它不依赖云服务,也没有账号系统。

按需发送

Local Clipboard 不会监视每一次剪贴板变化。普通的 Cmd+C 或 Ctrl+C 仍然只在本机生效;只有按下专用快捷键、点击托盘菜单或执行命令时,内容才会被发送。

macOS 和 Windows 的内置快捷键会先复制当前选择,再发送新的剪贴板内容;托盘菜单和 send-clipboard 只发送剪贴板中已有的内容。收到文本或图片时,桌面客户端会写入本机剪贴板;收到文件时则创建待接收项目,确认后保存到下载目录。

手机通过 Hub 页面显式收发内容。单张图片可以发送到桌面剪贴板,也可以和其他内容一样作为文件发送;收到的文本、图片和文件由用户复制、保存或下载。

Hub 与网络

桌面 A ── WebSocket ──▶ NAS Hub ◀── WebSocket ── 桌面 B
                              │
                              └── 手机网页

Hub 负责设备连接、消息转发和临时文件中转。桌面客户端通过 WebSocket 保持连接,并在 127.0.0.1:9101 提供本地控制台;Hub 页面供手机使用。HTTP 与 WebSocket 请求使用共享令牌授权,受信任的移动浏览器可以保存派生凭证,之后不必每次重新输入令牌。

Hub 使用明文 HTTP 和 WebSocket,共享令牌不提供传输加密。服务只适合可信局域网或私有 VPN,9100 端口不应直接暴露到公网。

平台范围

仓库提供 Linux amd64 Hub 的 Docker 部署、Apple Silicon macOS 安装器、Windows amd64 安装脚本和 Linux 客户端。macOS 与 Windows 客户端包含内置快捷键;静态 Linux 构建需要先复制,再通过桌面快捷方式调用 send-clipboard。

手机页面包含 Web App Manifest。普通 HTTP 下,安装方式和剪贴板 API 会受浏览器限制;使用设备信任的 HTTPS 地址可以获得更完整的 PWA 和剪贴板能力。

本页目录