verbalcoding 0.2.7 → 0.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -27
- package/app-node/cli_install.test.mjs +15 -0
- package/docs/FRESH_INSTALL.md +8 -2
- package/docs/assets/figures/verbalcoding-flow.svg +45 -30
- package/docs/i18n/CONFIGURATION.es.md +138 -49
- package/docs/i18n/CONFIGURATION.fr.md +138 -49
- package/docs/i18n/CONFIGURATION.ja.md +137 -48
- package/docs/i18n/CONFIGURATION.ko.md +137 -48
- package/docs/i18n/CONFIGURATION.ru.md +138 -49
- package/docs/i18n/CONFIGURATION.zh.md +137 -48
- package/docs/i18n/FRESH_INSTALL.es.md +115 -32
- package/docs/i18n/FRESH_INSTALL.fr.md +115 -32
- package/docs/i18n/FRESH_INSTALL.ja.md +119 -36
- package/docs/i18n/FRESH_INSTALL.ko.md +120 -37
- package/docs/i18n/FRESH_INSTALL.ru.md +115 -32
- package/docs/i18n/FRESH_INSTALL.zh.md +119 -36
- package/docs/i18n/MULTI_INSTANCE.es.md +85 -26
- package/docs/i18n/MULTI_INSTANCE.fr.md +85 -26
- package/docs/i18n/MULTI_INSTANCE.ja.md +87 -29
- package/docs/i18n/MULTI_INSTANCE.ko.md +87 -29
- package/docs/i18n/MULTI_INSTANCE.ru.md +84 -26
- package/docs/i18n/MULTI_INSTANCE.zh.md +87 -29
- package/docs/i18n/README.es.md +109 -45
- package/docs/i18n/README.fr.md +109 -45
- package/docs/i18n/README.ja.md +109 -45
- package/docs/i18n/README.ko.md +108 -45
- package/docs/i18n/README.ru.md +109 -45
- package/docs/i18n/README.zh.md +108 -45
- package/docs/i18n/RELEASE.es.md +53 -37
- package/docs/i18n/RELEASE.fr.md +53 -37
- package/docs/i18n/RELEASE.ja.md +52 -36
- package/docs/i18n/RELEASE.ko.md +52 -36
- package/docs/i18n/RELEASE.ru.md +53 -37
- package/docs/i18n/RELEASE.zh.md +53 -37
- package/docs/i18n/USAGE.es.md +91 -64
- package/docs/i18n/USAGE.fr.md +91 -64
- package/docs/i18n/USAGE.ja.md +90 -63
- package/docs/i18n/USAGE.ko.md +90 -63
- package/docs/i18n/USAGE.ru.md +91 -64
- package/docs/i18n/USAGE.zh.md +90 -63
- package/package.json +1 -1
- package/scripts/bootstrap_prereqs.sh +15 -3
- package/scripts/cli.mjs +1 -1
- package/scripts/doctor.mjs +114 -8
|
@@ -1,50 +1,64 @@
|
|
|
1
|
-
# VerbalCoding
|
|
1
|
+
# 多实例 VerbalCoding
|
|
2
2
|
|
|
3
|
-
VerbalCoding
|
|
3
|
+
VerbalCoding 可以运行多个相互独立的 Discord 语音桥接进程。每个进程仍然是现有的单实例 Node 桥接,但会加载不同的 `instances/<name>.env` 文件,并使用不同的 Discord 机器人令牌。
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
当每个项目都应长期占用自己的 Discord 语音频道,并写入自己的转写频道/thread 时,请使用此模式。
|
|
6
6
|
|
|
7
|
-
##
|
|
7
|
+
## 为什么需要多个机器人令牌
|
|
8
8
|
|
|
9
|
-
Discord
|
|
9
|
+
Discord 语音驻留实际上是每个机器人账号在每个 guild 中只能有一个活动语音连接。如果一个机器人令牌加入同一 guild 中的另一个语音频道,它就无法同时永久保持连接到先前的频道。若要同时使用多个项目房间,请为每个项目创建一个 Discord 应用/机器人。
|
|
10
10
|
|
|
11
|
-
##
|
|
11
|
+
## 文件布局
|
|
12
12
|
|
|
13
13
|
```text
|
|
14
14
|
instances/
|
|
15
15
|
README.md
|
|
16
16
|
example.env
|
|
17
|
-
llm-wiki.env #
|
|
18
|
-
verbalcoding.env #
|
|
17
|
+
llm-wiki.env # 仅本地,git 忽略
|
|
18
|
+
verbalcoding.env # 仅本地,git 忽略
|
|
19
19
|
.run/instances/
|
|
20
|
-
llm-wiki.pid #
|
|
20
|
+
llm-wiki.pid # 仅运行时,git 忽略
|
|
21
21
|
```
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
真实的 `instances/*.env` 文件会被忽略,因为它们可能包含 Discord 令牌。`instances/example.env` 是已提交的模板。
|
|
24
24
|
|
|
25
|
-
##
|
|
25
|
+
## 实例设置向导
|
|
26
|
+
|
|
27
|
+
正常使用时,用户不应复制并手动编辑 env 文件。请运行向导:
|
|
26
28
|
|
|
27
29
|
```bash
|
|
28
30
|
vc instance setup llm-wiki
|
|
31
|
+
# 或通过项目设置脚本:
|
|
29
32
|
./scripts/install.sh --instance llm-wiki
|
|
30
33
|
```
|
|
31
34
|
|
|
32
|
-
|
|
35
|
+
向导会提示输入机器人令牌、Discord Application/Client ID、语音频道、转写目标、workdir、项目上下文和隔离的运行时路径。它会以 `0600` 模式写入 `instances/<name>.env`,在覆盖现有文件前先备份,并打印下一步 start/status 命令。
|
|
33
36
|
|
|
34
|
-
|
|
37
|
+
如果你在设置期间输入 Discord Application/Client ID,摘要也会打印该机器人的邀请 URL。你可以随时用以下命令生成同一 URL:
|
|
35
38
|
|
|
36
39
|
```bash
|
|
37
40
|
vc bot invite <client-id>
|
|
38
41
|
vc bot invite <client-id> --guild <guild-id>
|
|
39
42
|
```
|
|
40
43
|
|
|
41
|
-
|
|
44
|
+
Discord 仍然要求每个同时存在的语音房间都有一个 Developer Portal 应用/机器人,但这可以避免手动构造 OAuth URL 或权限整数。
|
|
45
|
+
|
|
46
|
+
### Hermes profile 隔离
|
|
47
|
+
|
|
48
|
+
每个实例都会在 `~/.hermes/profiles/<name>` 获得自己的 Hermes home,因此 memory、MEMORY.md、SOUL.md 和已学习 skills 不会在项目之间泄漏。
|
|
49
|
+
|
|
50
|
+
`vc instance setup <name>` 会自动:
|
|
42
51
|
|
|
43
|
-
|
|
52
|
+
- 运行 `hermes profile create <name> --clone-from default`(从当前 `~/.hermes` 带入 API keys 和模型;会话与记忆从空白开始),
|
|
53
|
+
- 将新 profile 的 `terminal.cwd` 设置为实例 workdir,
|
|
54
|
+
- 使用向导中的项目上下文答案初始化 `<profile>/SOUL.md`,
|
|
55
|
+
- 将 `HERMES_HOME=...` 写入 `instances/<name>.env`。
|
|
44
56
|
|
|
45
|
-
`vc instance
|
|
57
|
+
`vc instance start <name>` 会自愈:如果 env 指向的 Hermes profile 目录不再存在,start 命令会在启动前重新创建它。
|
|
46
58
|
|
|
47
|
-
|
|
59
|
+
实例名称必须匹配 `^[a-z0-9][a-z0-9_-]{0,63}$`,因为 Hermes 会将该名称用作目录和配置键。
|
|
60
|
+
|
|
61
|
+
## 最小生成实例 env
|
|
48
62
|
|
|
49
63
|
```env
|
|
50
64
|
INSTANCE_NAME=my-project
|
|
@@ -62,9 +76,9 @@ AGENT_CWD=/path/to/my-project
|
|
|
62
76
|
AGENT_PROJECT_CONTEXT=Project session: My Project
|
|
63
77
|
```
|
|
64
78
|
|
|
65
|
-
`
|
|
79
|
+
请为每个实例提供唯一的日志/debug/会话文件值。`HERMES_HOME` 和匹配的 `~/.hermes/profiles/<name>` 目录会由 `vc instance setup` 自动创建。`vc doctor` 会检查重复令牌、冲突的运行时路径、缺失的 profile 目录,以及 profile 与实例之间的 `terminal.cwd` 不匹配——且不会打印密钥。
|
|
66
80
|
|
|
67
|
-
##
|
|
81
|
+
## 命令
|
|
68
82
|
|
|
69
83
|
```bash
|
|
70
84
|
vc instance list
|
|
@@ -75,47 +89,91 @@ vc instance stop my-project
|
|
|
75
89
|
vc instance restart my-project
|
|
76
90
|
```
|
|
77
91
|
|
|
78
|
-
|
|
92
|
+
`start` 会分离运行 `./run.sh instances/<name>.env`,并写入 `.run/instances/<name>.pid`。
|
|
93
|
+
|
|
94
|
+
`stop` 会发送 `SIGTERM`,最多等待 10 秒,然后回退到 `SIGKILL` 并移除 pid 文件。
|
|
95
|
+
|
|
96
|
+
## 示例:两个长期语音房间
|
|
79
97
|
|
|
80
|
-
1.
|
|
81
|
-
|
|
82
|
-
|
|
98
|
+
1. 创建两个 Discord 应用/机器人:
|
|
99
|
+
- VerbalCoding bot
|
|
100
|
+
- LLM-Wiki bot
|
|
101
|
+
|
|
102
|
+
2. 使用文本和语音权限邀请两者加入服务器:
|
|
103
|
+
- View Channel
|
|
104
|
+
- Send Messages
|
|
105
|
+
- Send Messages in Threads
|
|
106
|
+
- Read Message History
|
|
107
|
+
- Use Application Commands
|
|
108
|
+
- Connect
|
|
109
|
+
- Speak
|
|
110
|
+
|
|
111
|
+
创建每个 Discord 应用后,使用 `vc bot invite <client-id>` 打印带这些权限的精确邀请 URL。
|
|
112
|
+
|
|
113
|
+
3. 为每个本地实例运行设置向导:
|
|
83
114
|
|
|
84
115
|
```bash
|
|
85
116
|
vc instance setup verbalcoding
|
|
86
117
|
vc instance setup llm-wiki
|
|
87
118
|
```
|
|
88
119
|
|
|
89
|
-
|
|
120
|
+
向导会以 `0600` 模式写入被忽略的 `instances/verbalcoding.env` 和 `instances/llm-wiki.env` 文件;它还会在替换前备份现有实例 env。每次运行还会从你的默认 Hermes home 克隆创建 `~/.hermes/profiles/<name>`,因此两个实例起始时具有相同 auth/model,但随着学习各自项目,会累积独立的记忆和 skills。
|
|
121
|
+
|
|
122
|
+
4. 检查配置:
|
|
90
123
|
|
|
91
124
|
```bash
|
|
92
125
|
vc doctor
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
5. 启动两者:
|
|
129
|
+
|
|
130
|
+
```bash
|
|
93
131
|
vc instance start verbalcoding
|
|
94
132
|
vc instance start llm-wiki
|
|
95
133
|
vc instance status
|
|
96
134
|
```
|
|
97
135
|
|
|
98
|
-
|
|
136
|
+
6. 验证日志:
|
|
99
137
|
|
|
100
138
|
```bash
|
|
101
139
|
tail -n 50 /tmp/verbalcoding-verbalcoding.log
|
|
102
140
|
tail -n 50 /tmp/verbalcoding-llm-wiki.log
|
|
103
141
|
```
|
|
104
142
|
|
|
105
|
-
|
|
143
|
+
预期日志行:
|
|
106
144
|
|
|
107
145
|
```text
|
|
108
146
|
Listening in voice channel ... / VerbalCoding
|
|
109
147
|
Listening in voice channel ... / LLM-Wiki
|
|
110
148
|
```
|
|
111
149
|
|
|
112
|
-
|
|
150
|
+
7. 停止两者:
|
|
151
|
+
|
|
152
|
+
```bash
|
|
153
|
+
vc instance stop verbalcoding
|
|
154
|
+
vc instance stop llm-wiki
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
## 短期单机器人文本/语音绑定
|
|
158
|
+
|
|
159
|
+
如果你只有一个机器人令牌,请使用项目会话语音绑定,而不是同时驻留多个频道。
|
|
113
160
|
|
|
114
|
-
|
|
161
|
+
在目标文本频道/thread 中运行:
|
|
115
162
|
|
|
116
163
|
```text
|
|
117
164
|
!session attach-voice --voice "LLM-Wiki"
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
行为:
|
|
168
|
+
|
|
169
|
+
- 将所选语音频道绑定到当前文本频道/thread。
|
|
170
|
+
- 如果当前文本频道没有项目会话,则创建一个临时隔离会话。
|
|
171
|
+
- 语音 STT/结果/进度/最终答案文本会路由到该活动项目的转写目标。
|
|
172
|
+
|
|
173
|
+
若要附加现有命名项目会话:
|
|
174
|
+
|
|
175
|
+
```text
|
|
118
176
|
!session voice llm-wiki --voice "LLM-Wiki"
|
|
119
177
|
```
|
|
120
178
|
|
|
121
|
-
|
|
179
|
+
这对路由很方便,但不会让一个机器人同时停留在两个语音频道中。若要同时长期驻留,请使用多个机器人令牌/进程。
|
package/docs/i18n/README.es.md
CHANGED
|
@@ -1,27 +1,49 @@
|
|
|
1
1
|
# VerbalCoding
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
3
|
+
<p align="center">
|
|
4
|
+
<strong>Habla con tus agentes de programación CLI por voz en Discord, como una llamada telefónica para trabajo de software.</strong>
|
|
5
|
+
</p>
|
|
6
|
+
|
|
7
|
+
<p align="center">
|
|
8
|
+
<a href="../../README.md">English</a> ·
|
|
9
|
+
<a href="README.ko.md">한국어</a> ·
|
|
10
|
+
<a href="README.ja.md">日本語</a> ·
|
|
11
|
+
<a href="README.zh.md">中文</a> ·
|
|
12
|
+
<a href="README.es.md">Español</a> ·
|
|
13
|
+
<a href="README.fr.md">Français</a> ·
|
|
14
|
+
<a href="README.ru.md">Русский</a>
|
|
15
|
+
</p>
|
|
16
|
+
|
|
17
|
+
<p align="center">
|
|
18
|
+
<img alt="Node.js" src="https://img.shields.io/badge/Node.js-20%2B-339933?logo=node.js&logoColor=white">
|
|
19
|
+
<img alt="Discord" src="https://img.shields.io/badge/Discord-voice%20bridge-5865F2?logo=discord&logoColor=white">
|
|
20
|
+
<img alt="STT" src="https://img.shields.io/badge/STT-whisper.cpp-7C3AED">
|
|
21
|
+
<img alt="TTS" src="https://img.shields.io/badge/TTS-Edge%20%7C%20OpenVoice%20%7C%20Supertonic%20%7C%20SpeechSwift-0EA5E9">
|
|
22
|
+
<img alt="Agents" src="https://img.shields.io/badge/Agents-Hermes%20%7C%20Claude%20%7C%20Codex%20%7C%20Gemini%20%7C%20OpenCode-111827">
|
|
23
|
+
</p>
|
|
24
|
+
|
|
25
|
+
<p align="center">
|
|
26
|
+
<img src="../assets/figures/verbalcoding-flow.svg" alt="Flujo de voz a agente de VerbalCoding" width="860">
|
|
27
|
+
</p>
|
|
28
|
+
|
|
29
|
+
## Por qué
|
|
30
|
+
|
|
31
|
+
VerbalCoding convierte un canal de voz de Discord en una superficie de control manos libres para agentes de programación. Di una solicitud, deja que tu agente CLI trabaje y escucha una respuesta concisa de vuelta, con transcripciones de texto, eventos de progreso y protecciones para salidas ruidosas de código o registros.
|
|
32
|
+
|
|
33
|
+
## Puntos destacados
|
|
34
|
+
|
|
35
|
+
| Qué obtienes | Por qué se siente bien |
|
|
16
36
|
|---|---|
|
|
17
|
-
|
|
|
18
|
-
|
|
|
19
|
-
|
|
|
20
|
-
|
|
|
21
|
-
|
|
|
22
|
-
|
|
|
37
|
+
| Control de agentes con voz primero | Habla con Hermes Agent, Claude Code, Codex, Gemini CLI, OpenCode, OpenClaw o cualquier arnés CLI personalizado. |
|
|
38
|
+
| Bucle de voz en el dispositivo | Captura de voz de Discord → transcripción local con `whisper-cli` → agente → reproducción TTS por fragmentos. |
|
|
39
|
+
| Contexto compartido de voz y texto | Los turnos de voz y los comandos de texto `!ask` pueden reutilizar la misma sesión de agente compatible. |
|
|
40
|
+
| Interrupción natural y modos de sensibilidad | Interrumpe la reproducción de forma natural y cambia entre entornos normales y conservadores/ruidosos. |
|
|
41
|
+
| Preajustes de voz multilingües | Cambia STT, idioma de progreso y voz TTS juntos con `vc language ko/en/auto`. |
|
|
42
|
+
| Aislamiento de proyectos por salas | Ejecuta un bot por sala de proyecto con perfiles, sesiones, memoria y registros de Hermes aislados. |
|
|
23
43
|
|
|
24
|
-
##
|
|
44
|
+
## Inicio rápido
|
|
45
|
+
|
|
46
|
+
Ruta más rápida con npm:
|
|
25
47
|
|
|
26
48
|
```bash
|
|
27
49
|
npm install -g verbalcoding
|
|
@@ -30,7 +52,7 @@ vc doctor
|
|
|
30
52
|
vc start
|
|
31
53
|
```
|
|
32
54
|
|
|
33
|
-
|
|
55
|
+
O ejecútalo directamente sin una instalación global permanente:
|
|
34
56
|
|
|
35
57
|
```bash
|
|
36
58
|
npx verbalcoding setup --yes
|
|
@@ -38,7 +60,7 @@ vc doctor
|
|
|
38
60
|
vc start
|
|
39
61
|
```
|
|
40
62
|
|
|
41
|
-
|
|
63
|
+
Ruta de clonación de GitHub para colaboradores:
|
|
42
64
|
|
|
43
65
|
```bash
|
|
44
66
|
git clone https://github.com/ca1773130n/VerbalCoding.git
|
|
@@ -48,38 +70,80 @@ vc doctor
|
|
|
48
70
|
./run.sh
|
|
49
71
|
```
|
|
50
72
|
|
|
51
|
-
`vc setup --yes`
|
|
73
|
+
`vc setup --yes` inicializa los prerrequisitos locales desde el paquete npm instalado. `./scripts/install.sh --yes` hace lo mismo solo dentro de un clon de GitHub. Ambos cubren, cuando es posible, dependencias de Node/npm, `ffmpeg`, `whisper-cli`, el modelo predeterminado de whisper.cpp, el asistente local de Edge TTS en `.venv-tts` y la configuración del asistente. Admiten macOS/Homebrew y administradores de paquetes comunes de Linux (`apt`, `dnf`, `pacman`); vuelve a ejecutar con `--no-wizard` para configurar solo dependencias o con `--skip-system` si quieres instalar los paquetes del sistema por tu cuenta.
|
|
74
|
+
|
|
75
|
+
¿Necesitas un recorrido de instalación limpia? Empieza con [Instalación limpia](FRESH_INSTALL.es.md).
|
|
76
|
+
|
|
77
|
+
## Backends de agentes compatibles
|
|
52
78
|
|
|
53
|
-
|
|
79
|
+
| Backend | Comando predeterminado | Soporte de sesión |
|
|
80
|
+
|---|---:|---|
|
|
81
|
+
| Hermes Agent | `hermes chat -Q -q` | Reanudación, progreso detallado, cancelación, recuperación de respuesta final |
|
|
82
|
+
| Claude Code | `claude -p` | Soporte de archivo de sesión CLI mediante los valores predeterminados del adaptador |
|
|
83
|
+
| Codex CLI | `codex exec` | Soporte de archivo de sesión CLI mediante los valores predeterminados del adaptador |
|
|
84
|
+
| Gemini CLI | `gemini -p` | Soporte de archivo de sesión CLI mediante los valores predeterminados del adaptador |
|
|
85
|
+
| OpenCode | `opencode run` | Soporte de archivo de sesión CLI mediante los valores predeterminados del adaptador |
|
|
86
|
+
| OpenClaw | `openclaw run` | Soporte de archivo de sesión CLI mediante los valores predeterminados del adaptador |
|
|
87
|
+
| Personalizado | `AGENT_COMMAND` | Usa tu propio comando no interactivo |
|
|
54
88
|
|
|
55
|
-
|
|
89
|
+
## Aprende más
|
|
90
|
+
|
|
91
|
+
| Guía | Qué obtienes |
|
|
56
92
|
|---|---|
|
|
57
|
-
| Instalación limpia
|
|
58
|
-
| Guía de uso
|
|
59
|
-
| Configuración
|
|
60
|
-
| Multiinstancia
|
|
61
|
-
| Notas de versión
|
|
93
|
+
| [Instalación limpia](FRESH_INSTALL.es.md) | Configuración desde un clon limpio, descarga del modelo y primera ejecución |
|
|
94
|
+
| [Guía de uso](USAGE.es.md) | Comandos CLI, comandos de Discord, modo de progreso y métricas de latencia |
|
|
95
|
+
| [Configuración](CONFIGURATION.es.md) | `.env`, backends de agente, MCP, backends TTS y notas operativas |
|
|
96
|
+
| [Multiinstancia](MULTI_INSTANCE.es.md) | Una sala de voz permanente de Discord por proyecto |
|
|
97
|
+
| [Notas de versión](RELEASE.es.md) | Capacidades actuales y lista de verificación previa al lanzamiento |
|
|
62
98
|
|
|
63
|
-
##
|
|
99
|
+
## Mapa mínimo de comandos
|
|
64
100
|
|
|
65
101
|
```bash
|
|
66
|
-
vc status
|
|
67
|
-
vc language ko|en|auto
|
|
68
|
-
vc bot invite CLIENT_ID
|
|
69
|
-
vc instance setup NAME
|
|
70
|
-
vc instance start NAME
|
|
71
|
-
vc doctor
|
|
72
|
-
vc start
|
|
102
|
+
vc status # current language, TTS, and bridge settings
|
|
103
|
+
vc language ko|en|auto # switch STT/progress/TTS language preset
|
|
104
|
+
vc bot invite CLIENT_ID # generate the Discord bot invite URL
|
|
105
|
+
vc instance setup NAME # create an isolated project voice bot
|
|
106
|
+
vc instance start NAME # run that bot in the background
|
|
107
|
+
vc doctor # redacted health check
|
|
108
|
+
vc start # start the default bridge
|
|
73
109
|
```
|
|
74
110
|
|
|
75
|
-
Discord
|
|
111
|
+
En Discord:
|
|
112
|
+
|
|
113
|
+
| Comando | Qué hace |
|
|
114
|
+
|---|---|
|
|
115
|
+
| `!join` | Se une a tu canal de voz actual. |
|
|
116
|
+
| `!ask <prompt>` | Envía texto al mismo backend de agente. |
|
|
117
|
+
| `!verbose on\|off` | Muestra/dice actualizaciones cortas de progreso. |
|
|
118
|
+
| `!latency` | Resume la latencia reciente de voz/STT/agente/TTS. |
|
|
119
|
+
| `!sensitivity normal` | Usa sensibilidad normal de interrupción para interiores. |
|
|
120
|
+
| `!sensitivity conservative` | Usa sensibilidad más estricta para entornos ruidosos/exteriores. |
|
|
121
|
+
| `!session new <name> <workdir> [context] --voice <voice-channel>` | Vincula una sesión de proyecto a una sala de voz. |
|
|
122
|
+
|
|
123
|
+
## Requisitos
|
|
124
|
+
|
|
125
|
+
| Capa | Predeterminado |
|
|
126
|
+
|---|---|
|
|
127
|
+
| Runtime | Node.js 20+, npm; el script de instalación puede instalar vía Homebrew/apt/dnf/pacman |
|
|
128
|
+
| Audio | `ffmpeg`; el script de instalación puede instalarlo |
|
|
129
|
+
| Reconocimiento de voz | `whisper-cli` local de whisper.cpp; el script usa Homebrew en macOS o compilación local alternativa en Linux |
|
|
130
|
+
| TTS | CLI de Edge TTS; el script de instalación crea `.venv-tts` si hace falta |
|
|
131
|
+
| Discord | Token de bot, intent Message Content, permisos de voz |
|
|
132
|
+
| Agente | Al menos un arnés CLI autenticado, Hermes Agent por defecto |
|
|
133
|
+
| Enfoque de plataforma | macOS / Apple Silicon es lo más probado; el arranque de Linux es de mejor esfuerzo y está documentado |
|
|
134
|
+
|
|
135
|
+
## Contribuir
|
|
136
|
+
|
|
137
|
+
Ejecuta las comprobaciones ligeras antes de enviar cambios:
|
|
76
138
|
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
139
|
+
```bash
|
|
140
|
+
node --check app-node/main.mjs
|
|
141
|
+
npm test
|
|
142
|
+
bash -n run.sh scripts/install.sh
|
|
143
|
+
npm pack --dry-run
|
|
144
|
+
vc doctor
|
|
81
145
|
```
|
|
82
146
|
|
|
83
|
-
##
|
|
147
|
+
## Estado
|
|
84
148
|
|
|
85
|
-
|
|
149
|
+
VerbalCoding está orientado al lanzamiento público, pero aún es temprano. Video/GIF de demostración, validación más amplia en Linux, CI y una revisión de seguridad más profunda siguen pendientes.
|
package/docs/i18n/README.fr.md
CHANGED
|
@@ -1,27 +1,49 @@
|
|
|
1
1
|
# VerbalCoding
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
3
|
+
<p align="center">
|
|
4
|
+
<strong>Parlez à vos agents de codage CLI via la voix Discord — comme un appel téléphonique pour le travail logiciel.</strong>
|
|
5
|
+
</p>
|
|
6
|
+
|
|
7
|
+
<p align="center">
|
|
8
|
+
<a href="../../README.md">English</a> ·
|
|
9
|
+
<a href="README.ko.md">한국어</a> ·
|
|
10
|
+
<a href="README.ja.md">日本語</a> ·
|
|
11
|
+
<a href="README.zh.md">中文</a> ·
|
|
12
|
+
<a href="README.es.md">Español</a> ·
|
|
13
|
+
<a href="README.fr.md">Français</a> ·
|
|
14
|
+
<a href="README.ru.md">Русский</a>
|
|
15
|
+
</p>
|
|
16
|
+
|
|
17
|
+
<p align="center">
|
|
18
|
+
<img alt="Node.js" src="https://img.shields.io/badge/Node.js-20%2B-339933?logo=node.js&logoColor=white">
|
|
19
|
+
<img alt="Discord" src="https://img.shields.io/badge/Discord-voice%20bridge-5865F2?logo=discord&logoColor=white">
|
|
20
|
+
<img alt="STT" src="https://img.shields.io/badge/STT-whisper.cpp-7C3AED">
|
|
21
|
+
<img alt="TTS" src="https://img.shields.io/badge/TTS-Edge%20%7C%20OpenVoice%20%7C%20Supertonic%20%7C%20SpeechSwift-0EA5E9">
|
|
22
|
+
<img alt="Agents" src="https://img.shields.io/badge/Agents-Hermes%20%7C%20Claude%20%7C%20Codex%20%7C%20Gemini%20%7C%20OpenCode-111827">
|
|
23
|
+
</p>
|
|
24
|
+
|
|
25
|
+
<p align="center">
|
|
26
|
+
<img src="../assets/figures/verbalcoding-flow.svg" alt="Flux voix-vers-agent de VerbalCoding" width="860">
|
|
27
|
+
</p>
|
|
28
|
+
|
|
29
|
+
## Pourquoi
|
|
30
|
+
|
|
31
|
+
VerbalCoding transforme un salon vocal Discord en surface de contrôle mains libres pour agents de codage. Énoncez une demande, laissez votre agent CLI travailler, puis écoutez une réponse concise — avec transcriptions texte, événements de progression et garde-fous pour les sorties de code/journaux bruyantes.
|
|
32
|
+
|
|
33
|
+
## Points forts
|
|
34
|
+
|
|
35
|
+
| Ce que vous obtenez | Pourquoi c'est agréable |
|
|
16
36
|
|---|---|
|
|
17
|
-
|
|
|
18
|
-
|
|
|
19
|
-
|
|
|
20
|
-
|
|
|
21
|
-
|
|
|
22
|
-
|
|
|
37
|
+
| Contrôle d'agent pensé pour la voix | Parlez à Hermes Agent, Claude Code, Codex, Gemini CLI, OpenCode, OpenClaw ou à n'importe quel harnais CLI personnalisé. |
|
|
38
|
+
| Boucle vocale sur l'appareil | Capture vocale Discord → transcription locale `whisper-cli` → agent → lecture TTS par morceaux. |
|
|
39
|
+
| Contexte partagé voix + texte | Les tours vocaux et les commandes texte `!ask` peuvent réutiliser la même session d'agent prise en charge. |
|
|
40
|
+
| Interruption et modes de sensibilité | Interrompez naturellement la lecture et basculez entre environnements normaux et conservateurs/bruyants. |
|
|
41
|
+
| Préréglages vocaux multilingues | Changez ensemble la langue STT, la langue de progression et la voix TTS avec `vc language ko/en/auto`. |
|
|
42
|
+
| Isolation multi-salons par projet | Lancez un bot par salon de projet avec profils Hermes, sessions, mémoire et journaux isolés. |
|
|
23
43
|
|
|
24
|
-
##
|
|
44
|
+
## Démarrage rapide
|
|
45
|
+
|
|
46
|
+
Chemin le plus rapide avec npm :
|
|
25
47
|
|
|
26
48
|
```bash
|
|
27
49
|
npm install -g verbalcoding
|
|
@@ -30,7 +52,7 @@ vc doctor
|
|
|
30
52
|
vc start
|
|
31
53
|
```
|
|
32
54
|
|
|
33
|
-
|
|
55
|
+
Ou exécutez directement sans installation globale permanente :
|
|
34
56
|
|
|
35
57
|
```bash
|
|
36
58
|
npx verbalcoding setup --yes
|
|
@@ -38,7 +60,7 @@ vc doctor
|
|
|
38
60
|
vc start
|
|
39
61
|
```
|
|
40
62
|
|
|
41
|
-
|
|
63
|
+
Chemin de clonage GitHub pour les contributeurs :
|
|
42
64
|
|
|
43
65
|
```bash
|
|
44
66
|
git clone https://github.com/ca1773130n/VerbalCoding.git
|
|
@@ -48,38 +70,80 @@ vc doctor
|
|
|
48
70
|
./run.sh
|
|
49
71
|
```
|
|
50
72
|
|
|
51
|
-
`vc setup --yes`
|
|
73
|
+
`vc setup --yes` amorce les prérequis locaux depuis le paquet npm installé. `./scripts/install.sh --yes` fait la même chose uniquement dans un clone GitHub. Les deux couvrent, quand c'est possible, les dépendances Node/npm, `ffmpeg`, `whisper-cli`, le modèle whisper.cpp par défaut, l'assistant Edge TTS local `.venv-tts` et la configuration par assistant. Ils prennent en charge macOS/Homebrew ainsi que les gestionnaires de paquets Linux courants (`apt`, `dnf`, `pacman`) ; relancez avec `--no-wizard` pour une configuration limitée aux dépendances ou `--skip-system` si vous voulez installer vous-même les paquets du système.
|
|
74
|
+
|
|
75
|
+
Besoin d'une procédure d'installation propre ? Commencez par [Installation propre](FRESH_INSTALL.fr.md).
|
|
76
|
+
|
|
77
|
+
## Backends d'agents pris en charge
|
|
52
78
|
|
|
53
|
-
|
|
79
|
+
| Backend | Commande par défaut | Prise en charge des sessions |
|
|
80
|
+
|---|---:|---|
|
|
81
|
+
| Hermes Agent | `hermes chat -Q -q` | Reprise, progression détaillée, annulation, récupération de la réponse finale |
|
|
82
|
+
| Claude Code | `claude -p` | Prise en charge du fichier de session CLI via les valeurs par défaut de l'adaptateur |
|
|
83
|
+
| Codex CLI | `codex exec` | Prise en charge du fichier de session CLI via les valeurs par défaut de l'adaptateur |
|
|
84
|
+
| Gemini CLI | `gemini -p` | Prise en charge du fichier de session CLI via les valeurs par défaut de l'adaptateur |
|
|
85
|
+
| OpenCode | `opencode run` | Prise en charge du fichier de session CLI via les valeurs par défaut de l'adaptateur |
|
|
86
|
+
| OpenClaw | `openclaw run` | Prise en charge du fichier de session CLI via les valeurs par défaut de l'adaptateur |
|
|
87
|
+
| Personnalisé | `AGENT_COMMAND` | Apportez votre propre commande non interactive |
|
|
54
88
|
|
|
55
|
-
|
|
89
|
+
## En savoir plus
|
|
90
|
+
|
|
91
|
+
| Guide | Ce que vous obtenez |
|
|
56
92
|
|---|---|
|
|
57
|
-
| Installation propre
|
|
58
|
-
| Guide d
|
|
59
|
-
| Configuration
|
|
60
|
-
| Multi-instance
|
|
61
|
-
| Notes de version
|
|
93
|
+
| [Installation propre](FRESH_INSTALL.fr.md) | Configuration depuis un clone propre, téléchargement du modèle, premier lancement |
|
|
94
|
+
| [Guide d'utilisation](USAGE.fr.md) | Commandes CLI, commandes Discord, mode progression, métriques de latence |
|
|
95
|
+
| [Configuration](CONFIGURATION.fr.md) | `.env`, backends d'agents, MCP, backends TTS, notes d'exploitation |
|
|
96
|
+
| [Multi-instance](MULTI_INSTANCE.fr.md) | Un salon vocal Discord permanent par projet |
|
|
97
|
+
| [Notes de version](RELEASE.fr.md) | Capacités actuelles et checklist de pré-version |
|
|
62
98
|
|
|
63
|
-
##
|
|
99
|
+
## Mini-carte des commandes
|
|
64
100
|
|
|
65
101
|
```bash
|
|
66
|
-
vc status
|
|
67
|
-
vc language ko|en|auto
|
|
68
|
-
vc bot invite CLIENT_ID
|
|
69
|
-
vc instance setup NAME
|
|
70
|
-
vc instance start NAME
|
|
71
|
-
vc doctor
|
|
72
|
-
vc start
|
|
102
|
+
vc status # paramètres actuels de langue, TTS et passerelle
|
|
103
|
+
vc language ko|en|auto # changer le préréglage langue STT/progression/TTS
|
|
104
|
+
vc bot invite CLIENT_ID # générer l'URL d'invitation du bot Discord
|
|
105
|
+
vc instance setup NAME # créer un bot vocal de projet isolé
|
|
106
|
+
vc instance start NAME # exécuter ce bot en arrière-plan
|
|
107
|
+
vc doctor # contrôle de santé expurgé
|
|
108
|
+
vc start # démarrer la passerelle par défaut
|
|
73
109
|
```
|
|
74
110
|
|
|
75
|
-
Discord
|
|
111
|
+
Dans Discord :
|
|
112
|
+
|
|
113
|
+
| Commande | Effet |
|
|
114
|
+
|---|---|
|
|
115
|
+
| `!join` | Rejoint votre salon vocal actuel. |
|
|
116
|
+
| `!ask <prompt>` | Envoie du texte au même backend d'agent. |
|
|
117
|
+
| `!verbose on\|off` | Affiche/énonce de courtes mises à jour de progression. |
|
|
118
|
+
| `!latency` | Résume la latence récente voix/STT/agent/TTS. |
|
|
119
|
+
| `!sensitivity normal` | Utilise la sensibilité d'interruption normale en intérieur. |
|
|
120
|
+
| `!sensitivity conservative` | Utilise une sensibilité plus stricte pour les environnements bruyants/extérieurs. |
|
|
121
|
+
| `!session new <name> <workdir> [context] --voice <voice-channel>` | Lie une session de projet à un salon vocal. |
|
|
122
|
+
|
|
123
|
+
## Exigences
|
|
124
|
+
|
|
125
|
+
| Couche | Valeur par défaut |
|
|
126
|
+
|---|---|
|
|
127
|
+
| Runtime | Node.js 20+, npm ; le script d'installation peut l'installer via Homebrew/apt/dnf/pacman |
|
|
128
|
+
| Audio | `ffmpeg` ; le script d'installation peut l'installer |
|
|
129
|
+
| Reconnaissance vocale | `whisper-cli` local depuis whisper.cpp ; le script d'installation utilise Homebrew sur macOS ou un fallback de build Linux local |
|
|
130
|
+
| TTS | CLI Edge TTS ; le script d'installation crée `.venv-tts` si nécessaire |
|
|
131
|
+
| Discord | Jeton de bot, intent Message Content, permissions vocales |
|
|
132
|
+
| Agent | Au moins un harnais CLI authentifié, Hermes Agent par défaut |
|
|
133
|
+
| Plateforme privilégiée | macOS / Apple Silicon le plus testé ; l'amorçage Linux est documenté et fourni au mieux |
|
|
134
|
+
|
|
135
|
+
## Contribution
|
|
136
|
+
|
|
137
|
+
Exécutez les contrôles légers avant d'envoyer des changements :
|
|
76
138
|
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
139
|
+
```bash
|
|
140
|
+
node --check app-node/main.mjs
|
|
141
|
+
npm test
|
|
142
|
+
bash -n run.sh scripts/install.sh
|
|
143
|
+
npm pack --dry-run
|
|
144
|
+
vc doctor
|
|
81
145
|
```
|
|
82
146
|
|
|
83
|
-
##
|
|
147
|
+
## Statut
|
|
84
148
|
|
|
85
|
-
|
|
149
|
+
VerbalCoding vise une publication publique mais reste jeune. Vidéo/GIF de démonstration, validation Linux plus large, CI et revue de sécurité plus approfondie restent à faire.
|