verbalcoding
v0.2.13
Published
Discord voice bridge for CLI coding agents.
Maintainers
Readme
VerbalCoding
为什么需要它
VerbalCoding 把 Discord 语音房间变成编码代理的免提驾驶舱。你说出需求,让 CLI 代理工作,并收到简短语音回复和文本记录;diff 和日志不会被 TTS 长篇朗读。
已经在用 Hermes Agent? Hermes 本身已经通过
/voice join//voice channel支持 Discord 语音频道:它可以加入你当前所在的 VC,用 Whisper 做语音转文字,并用 TTS 回答。只需要这个基础闭环时,VerbalCoding 不是必需的。VerbalCoding 是加在上面的工作流层:项目/会话路由、语音+文本共享上下文、插话规则、进度语音、语言预设、延迟指标,以及 Hermes 之外的 CLI 后端切换。
体验亮点
| 能力 | 价值 |
|---|---|
| 电话式工作流 | 在同一个 Discord 语音频道里说话、收听、打断、继续。 |
| 面向人的引导设置 | vc setup 一次引导 prerequisites、Discord token/client ID、voice channel、transcript target、backend 和 TTS 设置。 |
| 本地语音闭环 | Discord audio → local whisper-cli → selected CLI agent → TTS reply。 |
| 可选代理 | 支持 Hermes Agent、Claude Code、Codex、Gemini CLI、OpenCode、OpenClaw、Aider、Cursor CLI 或 custom command。vc setup 自动检测已安装项。 |
| 语音切换代理 | "ask Codex what it thinks" 单 turn 路由,"switch to Aider" 粘性切换,"back to default" 回默认。未安装的二进制会被检测并询问是否回退到默认代理。 |
| 超越 Hermes 内置语音 | 在同一个 VC 语音闭环上增加项目房间、!ask 共享上下文、细粒度打断处理、进度/状态语音和多代理后端控制。 |
| 真实运维支持 | 内置 doctor auto-fix、Docker UDP 指南、latency metrics、multi-instance rooms 和 redacted config checks。 |
快速开始
npm install -g verbalcoding@latest
vc setup
vc doctor
vc start普通用户路径是 vc setup。运行时请打开 Discord Developer Portal,并按提示输入 bot token、application/client ID、transcript target 和 voice channel names。
自动化场景可以跳过提示,然后再补充 Discord 信息。
vc setup --yes
vc setup token <bot-token> --client-id <discord-client-id>
vc setup channels "General,Team Voice"
vc doctor一分钟完成 Discord 设置
- 在 Discord Developer Portal 创建 application 和 bot。
- 启用 Message Content privileged intent。
- 运行
vc setup,粘贴 bot token 和 application/client ID。 - 输入要自动加入的精确 voice channel 名称。
- 用下面的命令邀请 bot。
vc bot invite <discord-client-id>
vc bot invite <discord-client-id> --guild <guild-id>迷你命令地图
vc setup # 引导式设置: prerequisites, Discord, backend, voice
vc setup --yes # 非交互 bootstrap/starter config
vc setup token # 稍后轮换或添加 Discord bot token/client ID
vc setup channels "General,Team Voice" # 更新 auto-join voice channel names
vc bot invite CLIENT_ID # 生成 Discord bot invite URL
vc status # 显示当前设置
vc language ko|en|auto # 切换 language preset
vc doctor # redacted health check 和 auto-fix
vc start # 启动默认 bridge
vc instance setup NAME # 创建隔离的 project voice bot
vc instance start NAME # 后台运行该 bot了解更多
| 指南 | 内容 | |---|---| | 文档中心 | 本地化指南索引。 | | Fresh Install | npm/global setup、Discord 设置、首次运行。 | | Usage | CLI 命令、Discord 命令、运行模式、latency。 | | Harness 使用 | Claude Code、Codex、Aider 等各后端的安装、配置与语音路由。 | | Configuration | .env、agent backends、MCP、TTS、运维。 | | Troubleshooting | Docker UDP、token/channel 缺失检查。 | | Multi-Instance | 每个项目一个固定语音房间。 |
要求
| 层级 | 默认 |
|---|---|
| Runtime | Node.js 20+ 和 npm。 |
| Audio | ffmpeg 和 local whisper-cli。 |
| TTS | 默认 Edge TTS;可选 OpenVoice、SpeechSwift/CosyVoice、Supertonic。 |
| Discord | Bot token、Message Content intent、voice permissions、匹配的 channel names。 |
| Agent | 至少一个已认证 CLI harness;默认 Hermes Agent。 |
Docker / 容器说明
如果日志出现 Cannot perform IP discovery - socket closed,说明 Discord voice UDP 被阻断。在 Linux Docker Compose 中使用:
services:
verbalcoding:
network_mode: "host"不要同时使用 network_mode: "host" 和 ports:。
贡献
node --check app-node/main.mjs
npm test
bash -n run.sh scripts/install.sh scripts/bootstrap_prereqs.sh
npm pack --dry-run
vc doctor状态
VerbalCoding 面向公开发布,但仍处于早期阶段。演示视频/GIF、更广泛的 Linux 验证、CI 和安全审查仍是 TODO。
