通过手机语音输入,实时同步到电脑端剪贴板的工具。
介绍文章:https://maxqi.top/p/98.html
作者比较懒,不喜欢手打字。
最近发现豆包输入法非常好用,尤其是它的语音转文字功能。
但是,每一次都要在手机上输入完之后,发到微信或者 QQ,再从电脑上接收,有点太慢了。
于是,就想制作了这样一款软件,基于 WebSocket 实现通信。手机安卓安装一款 APP,当文本框的内容改变时,就发送 WebSocket 请求同步到电脑上。然后,电脑就会有一个右下角的窗口弹出,并展示文字,然后可以一键复制。
其实就是一个共享文本框的功能。
如果这符合你的需求,请随便使用。
对了,这个软件是我和 Claude Code 一起在一个小时内写完的。
作者打包了一份Go编译的服务器、Python桌面客户端,并用Coco编辑器随手搓了一个APP,也打包进来了。如果你想自己开发手机端,可以参考 API.md 文档。
无毒,但介意者勿用哈,打包一个很快的。
安装好环境(Go和Python),运行 build.bat 可以重新打包全套。然后双击运行clippy-desktop.exe即可(可以设置开机自启和服务器管理)。
Clippy/
├── server.exe # Go后端服务器(已编译)
├── clippy-desktop.exe # Python桌面客户端(打包后)
├── desktop.py # Python桌面客户端源码
├── requirements.txt # Python依赖
├── API.md # API文档
│
├── build.bat # 打包脚本
├── start-clippy.bat # 启动脚本(显示窗口)
├── start-clippy-silent.vbs # 静默启动脚本(无窗口)
├── add-to-startup.bat # 添加到开机启动
├── remove-from-startup.bat # 从开机启动移除
│
└── cmd/ # Go源代码
├── server/ # 服务器源码
└── desktop/ # Fyne桌面端源码(未使用)
双击 start-clippy-silent.vbs 即可静默启动(无黑窗口)
- 双击
server.exe启动服务器 - 双击
clippy-desktop.exe启动桌面客户端
- 双击
add-to-startup.bat添加到开机启动 - 重启电脑后会自动运行
- 如需移除,双击
remove-from-startup.bat
安装Python依赖:
pip install -r requirements.txt启动服务器:
server.exe启动桌面客户端(开发模式):
python desktop.py双击 build.bat 或运行:
pyinstaller --onefile --windowed --name=clippy-desktop desktop.py打包后的文件在 dist/clippy-desktop.exe
参考 API.md 文档,连接到:
ws://你的电脑IP:8948/ws
发送消息格式:
{
"type": "update",
"content": "语音输入的文字"
}-
启动Clippy
- 双击
start-clippy-silent.vbs启动服务器和桌面客户端 - 桌面客户端会最小化到系统托盘(绿色圆圈图标,透明背景)
- 双击
-
手机连接
- 确保手机和电脑在同一局域网
- 查看电脑IP地址(cmd输入
ipconfig) - 手机端连接
ws://电脑IP:8948/ws
-
发送文本
- 手机语音输入 → 发送
update消息到服务器 - 电脑右下角自动弹窗显示文本
- 手机语音输入 → 发送
-
复制文本
- 点击蓝色"复制"按钮 → 文本复制到剪贴板
- 粘贴到任意位置使用
-
关闭窗口
- 点击窗口的 ✕ 按钮即可隐藏
- 程序继续在后台运行
- ✅ WebSocket 实时通信
- ✅ 动态状态指示(绿色=已连接,红色=未连接)
- ✅ 系统托盘图标(透明背景圆圈)
- ✅ 右下角弹窗显示
- ✅ 一键复制到剪贴板
- ✅ 自动重连机制
- ✅ 静默启动(无黑窗口)
- ✅ 开机自启动管理(托盘菜单可勾选)
- ✅ 完整的服务器控制(启动/重启/关闭)
- ✅ 智能动态菜单(根据服务器状态自动切换)
- ✅ 无需鉴权(局域网使用)
右键点击托盘图标,可使用以下功能:
| 菜单项 | 功能说明 | 显示条件 |
|---|---|---|
| 显示窗口 | 手动显示文本弹窗(如果有内容) | 始终显示 |
| ✓ 开机启动 | 勾选/取消开机自启动 | 始终显示 |
| 启动服务器 | 启动WebSocket服务器 | 仅当服务器关闭时 |
| 重启服务器 | 重启WebSocket服务器 | 仅当服务器运行时 |
| 关闭服务器 | 关闭WebSocket服务器 | 仅当服务器运行时 |
| 退出 | 完全退出客户端(不关闭服务器) | 始终显示 |
| 颜色 | 状态 | 说明 |
|---|---|---|
| 🟢 绿色 | 已连接 | 服务器运行中,WebSocket已连接 |
| 🔴 红色 | 未连接 | 服务器未启动或连接断开 |
提示:
- 托盘图标颜色会实时反映服务器连接状态
- 菜单项会根据服务器状态智能显示/隐藏
- 开机启动状态会实时显示勾选标记 ✓
- 后端: Go + gorilla/websocket
- 桌面端: Python + tkinter + ttkbootstrap + pystray
- 通信: WebSocket (JSON格式)
A: 检查以下几点:
- 电脑和手机是否在同一WiFi
- 电脑防火墙是否允许8948端口
- IP地址是否正确(cmd输入
ipconfig查看)
A: 查看系统托盘是否有绿色圆圈图标
A: 右键托盘图标 → 退出
A:
# Windows
ipconfig
# 查找"无线局域网适配器"或"以太网适配器"下的IPv4地址
# 通常是 192.168.x.x 格式A: 有两种方法:
- 推荐: 右键托盘图标 → 取消勾选"开机启动"
- 运行
remove-from-startup.bat
A: 右键托盘图标 → 点击"重启服务器"
A: 说明当前没有设置开机自启。点击即可添加,再次点击可取消。
- 确保防火墙允许 8948 端口
- 手机和电脑需在同一局域网
- 详细API文档见
API.md - 首次使用建议手动运行测试后再设置开机启动
| 文件 | 用途 |
|---|---|
build.bat |
打包Python桌面客户端为exe |
start-clippy.bat |
启动服务器和客户端(显示cmd窗口) |
start-clippy-silent.vbs |
静默启动(推荐,无窗口) |
add-to-startup.bat |
添加到Windows开机启动 |
remove-from-startup.bat |
从开机启动移除 |
- 添加连接密码保护
- 支持文本历史记录
- 添加配置文件
- 打包为单一可执行文件

