

分享一个超级有趣又实用的开源项目——Vibe Ring,来自开发者 wong2(https://github.com/wong2/vibe-ring)。如果你经常用Mac进行语音输入(比如配合闪电说等AI语音工具)写代码、写文档,却讨厌一直按住Fn键唤醒,或者想边锻炼边Coding,那这个工具简直是为你量身定制的!它把落灰的Nintendo Switch健身环(Ring-Con)变成智能输入设备:挤压健身环 = 长按Fn键(触发语音输入),向外短拉 = 敲击Enter键(发送/确认),让“Vibe Coding”变得又酷又健康!
为什么需要Vibe Ring?
很多Mac用户用AI语音输入时,必须一直按住Fn键才能激活,时间长了手指酸、手腕累。Vibe Ring完美解决了这个痛点。它把健身环的挤压/拉伸动作直接映射成键盘快捷键,让你可以用身体动作控制语音输入和回车,解放双手的同时还能顺便运动一下。特别适合长时间编程、写作或开会记录的“久坐党”,边Vibe边Coding,效率和健康双提升!
Vibe Ring的核心亮点
- 创新输入方式:挤压Ring-Con → 按住Fn键(松开释放);短拉伸 → 敲击Enter键。完美适配语音输入场景。
- 真实硬件交互:利用Switch健身环的flex传感器,通过蓝牙与Joy-Con R通信,响应灵敏。
- 高度可调:支持自定义挤压/拉伸阈值、静止值、最大拉伸时长,根据个人健身环强度轻松校准。
- 纯本地运行:macOS专属,使用Node.js + Swift键盘模拟,隐私安全,无需云端。
- 额外亮点:自动初始化Ring-Con(开启振动、IMU等),实时日志显示flex值和按键动作,调试超级方便。
这个项目把游戏外设变成生产力工具,创意满分!
如何使用Vibe Ring?
安装和使用非常简单(适合有一定动手能力的开发者):
- 确保有Node.js 18+ 和 pnpm,安装Xcode命令行工具。
- 克隆仓库:git clone https://github.com/wong2/vibe-ring.git
- 进入目录运行 pnpm install(会自动编译native绑定)。
- 在Mac蓝牙设置中配对Joy-Con R(带Ring-Con)。
- 在系统设置 → 隐私与安全 → 辅助功能 中,给你的终端(Terminal/iTerm2等)授予权限。
- 运行 pnpm start,看到初始化成功和flex值日志后即可使用。
挤压健身环试试——Fn键立刻按下,松开就释放;短拉一下就是Enter!阈值不合适可以在代码里微调。
优点大盘点
- 免费开源:完全开源(ISC协议),想改就改。
- 创意实用:把健身环从“落灰神器”变成语音输入神器,顺便促进运动。
- 响应精准:支持防抖和阈值调节,实际使用很丝滑。
- 轻量本地:不占用资源,纯硬件+本地模拟。
- 开发者友好:TypeScript编写,代码清晰,容易二次开发。
小局限是目前仅支持macOS,且需要配对右Joy-Con + Ring-Con,对新手可能有一定上手门槛(但文档很详细,包括中文README)。
我的使用体验
我把家里的Switch健身环翻出来接上Mac后,试着边挤压边用语音输入写这篇推文,真的太爽了!不用一直按键盘,身体还能轻微活动,长时间Coding也不觉得累。配合之前的闪电说等语音工具,效率直接起飞。开发者wong2这个想法太有创意了!
总之,Vibe Ring让我实现了真正的“Vibe Coding”——边健身边高效输入。如果你也用Mac做语音输入,或者想给健身环找新用途,赶紧试试吧!GitHub链接:https://github.com/wong2/vibe-ring
