Skip to content

MarkYangKp/vibe-input

Repository files navigation

Vibe Input

为 Vibe Coding 而生的跨平台语音输入工具

用声音思考,让文字自然流淌

在与 AI 进行 Vibe Coding 时,打字速度往往跟不上思维。Vibe Input 让你直接对着手机说出想法,文字即刻出现在电脑光标处——用最自然的方式与 AI 对话。

✨ 特性

  • 🎤 零成本语音输入 - 利用手机自带语音输入法,无需部署模型或调用 API
  • 📱 跨平台支持 - macOS / Windows / Linux 全平台通用
  • 即时上屏 - 点击发送,文字立即粘贴到电脑当前焦点位置
  • 🔗 局域网连接 - 手机电脑同 WiFi 即可使用,无需互联网
  • 🎨 精美界面 - 现代化设计,支持深色模式
  • 🛠️ 命令行运行 - 无需打包,直接命令行启动

📦 快速开始

1. 安装依赖

npm install

2. 运行程序

# 方式一:直接运行(推荐)
node vibe-input.js

# 方式二:全局安装后任意位置运行
npm link
vibe-input

3. 手机连接

  1. 程序启动后,终端会显示二维码
  2. 确保手机和电脑在同一 WiFi 网络
  3. 用手机浏览器扫描二维码
  4. 在手机页面点击麦克风开始语音输入

4. 开始使用

  1. 在手机页面上输入文字(或语音转文字)
  2. 点击「发送到电脑」按钮
  3. 文字会自动粘贴到电脑当前光标位置

🎯 使用场景

  • 💻 Vibe Coding - 向 AI 描述需求时,解放双手,思维不打断
  • 📝 快速笔记 - 走路或做家务时,随时记录灵感
  • 💬 消息回复 - 不方便打字时,语音输入快速回复
  • 📧 邮件撰写 - 长篇内容用说的,效率更高

🔧 系统要求

平台 要求
macOS 需授予终端「辅助功能」权限
Windows 建议以管理员身份运行终端
Linux 需安装 xdotoolxclip

Linux 额外安装

# Debian/Ubuntu
sudo apt install xdotool xclip

# Arch Linux
sudo pacman -S xdotool xclip

macOS 权限设置

  1. 打开 系统设置隐私与安全性辅助功能
  2. 点击 + 添加你的终端应用(Terminal / iTerm2)
  3. 确保终端应用已被勾选启用

📁 项目结构

vibe-input/
├── vibe-input.js        # 主程序入口(CLI)
├── package.json          # 项目配置
├── public/
│   ├── index.html       # 手机端输入页面 (/input)
│   └── desktop.html     # 桌面端二维码页面 (/)
└── README.md            # 本说明文档

🌐 API 端点

端点 方法 说明
/ GET 桌面端二维码页面
/input GET 手机端输入页面
/api/type POST 接收文字并执行粘贴
/api/qrcode GET 获取二维码图片
/api/health GET 健康检查端点

POST /api/type

接收文本并模拟粘贴操作。

请求体:

{
  "text": "要粘贴的文字内容"
}

响应:

{ "ok": true }
// 或
{ "ok": false, "error": "错误信息" }

⚙️ 自定义端口

默认端口为 3900,可通过以下方式修改:

# 方式 1:命令行参数
node vibe-input.js --port 4000

# 方式 2:环境变量
PORT=4000 node vibe-input.js

❓ 常见问题

手机无法访问网页

可能原因:

  • 手机和电脑不在同一 WiFi 网络
  • 电脑防火墙阻止了端口访问
  • 显示的 IP 地址不正确

解决方法:

  1. 确认手机连接的是同一个 WiFi
  2. 检查防火墙设置,允许 3900 端口
  3. 尝试访问终端显示的完整 URL(包含 IP 地址)

发送后没有粘贴效果

macOS:

  • 检查终端是否获得「辅助功能」权限
  • 确保有窗口处于焦点状态(不能是桌面)

Windows:

  • 以管理员身份重新运行终端
  • 确保目标窗口处于焦点状态

Linux:

  • 确认已安装 xdotoolxclip
  • 检查 X11 权限设置

二维码扫描后打不开

尝试手动在手机浏览器输入终端显示的 URL,格式为:

http://<你的电脑 IP>:3900/input

🛠️ 开发

本地测试

# 启动服务
node vibe-input.js

# 桌面端访问
open http://localhost:3900

# 手机端模拟访问
open http://localhost:3900/input

修改代码后

直接重启服务即可,无需编译:

# 停止当前服务(Ctrl+C)
# 重新启动
node vibe-input.js

📝 版本历史

v1.0.0

  • 移除 Electron,改为纯 CLI 运行
  • 简化依赖,减小安装包体积
  • 支持全局安装 (npm link)
  • 优化终端输出,显示 ASCII 二维码
  • 改进错误处理和用户提示

📄 许可证

ISC License

🙏 致谢

感谢所有为 Vibe Input 贡献代码和使用反馈的开发者!


让输入跟上思维的速度 🚀

About

vibe-input

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors