概述
webchat-voice-proxy 是一个已标记为废弃(deprecated)的技能,原为 OpenClaw WebChat 提供完整的语音输入栈,包括 HTTPS/WSS 反向代理、麦克风按钮 UI、VU 表、多语言支持等功能。
核心功能(历史)
该技能曾提供以下能力:
- HTTPS Control UI:自签名 TLS 证书,默认 8443 端口
- 语音转录代理:将
/transcribe请求转发至本地 faster-whisper 服务(端口 18790) - WebSocket 透传:连接网关 WebSocket(
ws://127.0.0.1:18789) - 麦克风按钮注入:向 Control UI 注入交互式语音脚本
- 实时 VU 表:按钮阴影/缩放响应语音音量
- Push-to-Talk (PTT):按住录音,松开发送
- 切换模式:单击开始/停止录音
- 键盘快捷键:
Ctrl+SpacePTT,Ctrl+Shift+M连续录音 - 多语言 UI:自动检测浏览器语言(英/德/中内置)
废弃原因与替代方案
官方已将此单体技能拆分为两个独立模块以提高可维护性:
- webchat-https-proxy:专注 HTTPS/WSS 反向代理
- webchat-voice-gui:专注麦克风按钮、VU 表、国际化
- webchat-voice-full-stack:元安装器,一键部署完整语音栈
安全特性
- 默认仅绑定
127.0.0.1,不暴露至局域网 - 自签名 TLS 证书(浏览器首次访问需确认)
- 用户级 systemd 服务,无需 root
- CORS 策略可配置
局限性与风险
| 方面 | 说明 |
|------|------|
| 废弃状态 | 不再维护,功能已迁移至新模块 |
| 依赖管理 | 依赖本地 faster-whisper 服务,需单独部署 |
| 证书信任 | 自签名证书导致浏览器警告 |
| 网络暴露 | 手动设置 `VOICE_HOST` 至 LAN IP 会扩大攻击面 |
适用人群
- 不应使用:新用户(直接使用
webchat-voice-full-stack) - 参考用途:需要理解旧架构的维护者,或需手动迁移配置的高级用户
常规风险
1. 继续使用废弃技能可能错过安全更新
2. 依赖的 faster-whisper 服务若未正确隔离,可能存在本地端口暴露风险
3. 历史部署的 systemd 服务和钩子需手动清理(提供 uninstall.sh)