SuperAPI AI 工具集

openless-voice-input

通用与其它

查看项目

更新于 10-15 22:33

技能介绍

用途:在任意应用中通过全局热键说话,把语音转写为文本并经 LLM 润色后插入当前光标位置。支持 Push-to-talk(按住说话)与 Toggle(按一次开始、再按停止)两种录音模式,Esc 可随时取消。

主要能力:录音为 16 kHz 单声道 Int16 PCM;转写使用 Volcengine 流式 ASR 或 Whisper;润色通过 OpenAI 兼容的 chat-completions 接口。润色模式有 Raw(不做 LLM 调用,逐字输出)、Light(去口头填充词、修标点)、Structured(把口语重塑为结构化提示词)、Formal(正式书面语、修语法、分段)。关键约束是 LLM 只重塑文本,不回答问题、不执行指令。词典支持热词,可提升 ASR 精度并注入润色提示。插入策略为 AX 焦点元素写入、剪贴板加粘贴、仅复制三级回退。凭据存入系统 Keychain,开发模式下回退到 ~/.openless/credentials.json(0600)。历史、偏好与词汇以 JSON 持久化。

使用方式(最终用户):macOS 从 Releases 下载 OpenLess_<version>aarch64.dmg,拖入 /Applications,启动并授予麦克风与辅助功能权限,退出重开后权限才生效,再到设置中填写 ASR 与 LLM 凭据。Windows 下载 OpenLess<version>_x64-setup.exe 安装,授予麦克风权限,在设置中确认全局热键监听已激活并填写凭据。

从源码构建(开发者):需 Node.js 18+、Rust 1.77+、Tauri CLI v2(cargo install tauri-cli --version "^2");macOS 需 Xcode Command Line Tools,Windows 需 MSVC 或 MinGW。命令:git clone https://github.com/appergb/openless.git,cd openless/openless-all/app,npm ci,npm run tauri dev;macOS 生产构建 ./scripts/build-mac.sh(仅构建用 INSTALL=0 ./scripts/build-mac.sh);类型检查 cargo check --manifest-path src-tauri/Cargo.toml 与 npm run build。日志:macOS 在 ~/Library/Logs/OpenLess/openless.log,Windows 在 %LOCALAPPDATA%\OpenLess\Logs\openless.log。

配置项:Volcengine ASR 的 APP ID、Access Token、Resource ID,以及 Ark/LLM 的 API Key、Model ID、Endpoint(默认 https://ark.cn-beijing.volces.com/api/v3/chat/completions)。切勿提交 API Key,应通过环境变量或设置界面录入。

限制与排障:macOS 未授予或授权后未重启辅助功能权限会导致文本无法插入或热键无响应(CGEventTap 会静默失败);部分 Windows 应用(如 UWP、沙箱化 Electron)会阻止合成输入,此时回退为仅复制。应用为单实例锁。ASR 返回空或乱码需检查凭据与麦克风采样率;LLM 润色超时需检查 API Key、Model ID 与端点可达性。macOS 本地构建可用 CODESIGN_IDENTITY="" INSTALL=0 ./scripts/build-mac.sh 跳过签名。

扩展方式:可通过 IPC(invoke)保存/读取凭据、获取历史、设置润色模式与热键、检查平台权限、添加词典条目;前端使用 Recoil 状态原子与 Tauri 事件监听录音状态变化。自定义润色模式需在 Rust 中扩展 PolishMode 枚举与系统提示词。收费、价格、性能数据与平台效果暂未提供。