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.
Files changed (44) hide show
  1. package/README.md +12 -27
  2. package/app-node/cli_install.test.mjs +15 -0
  3. package/docs/FRESH_INSTALL.md +8 -2
  4. package/docs/assets/figures/verbalcoding-flow.svg +45 -30
  5. package/docs/i18n/CONFIGURATION.es.md +138 -49
  6. package/docs/i18n/CONFIGURATION.fr.md +138 -49
  7. package/docs/i18n/CONFIGURATION.ja.md +137 -48
  8. package/docs/i18n/CONFIGURATION.ko.md +137 -48
  9. package/docs/i18n/CONFIGURATION.ru.md +138 -49
  10. package/docs/i18n/CONFIGURATION.zh.md +137 -48
  11. package/docs/i18n/FRESH_INSTALL.es.md +115 -32
  12. package/docs/i18n/FRESH_INSTALL.fr.md +115 -32
  13. package/docs/i18n/FRESH_INSTALL.ja.md +119 -36
  14. package/docs/i18n/FRESH_INSTALL.ko.md +120 -37
  15. package/docs/i18n/FRESH_INSTALL.ru.md +115 -32
  16. package/docs/i18n/FRESH_INSTALL.zh.md +119 -36
  17. package/docs/i18n/MULTI_INSTANCE.es.md +85 -26
  18. package/docs/i18n/MULTI_INSTANCE.fr.md +85 -26
  19. package/docs/i18n/MULTI_INSTANCE.ja.md +87 -29
  20. package/docs/i18n/MULTI_INSTANCE.ko.md +87 -29
  21. package/docs/i18n/MULTI_INSTANCE.ru.md +84 -26
  22. package/docs/i18n/MULTI_INSTANCE.zh.md +87 -29
  23. package/docs/i18n/README.es.md +109 -45
  24. package/docs/i18n/README.fr.md +109 -45
  25. package/docs/i18n/README.ja.md +109 -45
  26. package/docs/i18n/README.ko.md +108 -45
  27. package/docs/i18n/README.ru.md +109 -45
  28. package/docs/i18n/README.zh.md +108 -45
  29. package/docs/i18n/RELEASE.es.md +53 -37
  30. package/docs/i18n/RELEASE.fr.md +53 -37
  31. package/docs/i18n/RELEASE.ja.md +52 -36
  32. package/docs/i18n/RELEASE.ko.md +52 -36
  33. package/docs/i18n/RELEASE.ru.md +53 -37
  34. package/docs/i18n/RELEASE.zh.md +53 -37
  35. package/docs/i18n/USAGE.es.md +91 -64
  36. package/docs/i18n/USAGE.fr.md +91 -64
  37. package/docs/i18n/USAGE.ja.md +90 -63
  38. package/docs/i18n/USAGE.ko.md +90 -63
  39. package/docs/i18n/USAGE.ru.md +91 -64
  40. package/docs/i18n/USAGE.zh.md +90 -63
  41. package/package.json +1 -1
  42. package/scripts/bootstrap_prereqs.sh +15 -3
  43. package/scripts/cli.mjs +1 -1
  44. package/scripts/doctor.mjs +114 -8
@@ -1,71 +1,78 @@
1
- # VerbalCoding Guide dutilisation
1
+ # Guide d'utilisation de VerbalCoding
2
2
 
3
- Operational details for Français users.
3
+ Cette page contient les détails opérationnels qui rendaient auparavant le README trop long.
4
4
 
5
- ## CLI Commands
5
+ ## Commandes CLI
6
6
 
7
7
  ```bash
8
- vc status
9
- vc language en
10
- vc language ko
11
- vc language auto
12
- vc restart auto status
13
- vc restart auto on
14
- vc restart auto off
15
- vc bot invite CLIENT_ID
16
- vc instance status
17
- vc instance setup NAME
18
- vc instance start NAME
19
- vc instance stop NAME
20
- vc doctor
21
- npm run mcp
8
+ vc status # show STT language, progress language, and TTS voice
9
+ vc language en # English STT + English progress/TTS voice
10
+ vc language ko # Korean STT + Korean progress/TTS voice
11
+ vc language auto # Whisper auto-detect STT + English progress/TTS voice
12
+ vc restart auto status # show commit-time voice-bot auto-restart setting
13
+ vc restart auto on # enable commit-time voice-bot auto-restart
14
+ vc restart auto off # disable it; this is the default
15
+ vc bot invite CLIENT_ID # print a Discord invite URL with required permissions
16
+ vc instance status # list per-instance bridge configs and process status
17
+ vc instance setup NAME # write instances/NAME.env and create ~/.hermes/profiles/NAME
18
+ vc instance start NAME # start ./run.sh instances/NAME.env detached
19
+ vc instance stop NAME # stop a detached instance and remove its pid file
20
+ vc doctor # run the redacted doctor check
21
+ npm run mcp # run the stdio MCP server
22
22
  ```
23
23
 
24
- Language commands update `.env`; restart with `vc start`, `./run.sh`, or your process manager.
24
+ Les changements de langue mettent à jour `.env` ; redémarrez la passerelle avec `./run.sh` ou votre gestionnaire de processus pour qu'ils prennent effet.
25
+
26
+ ## Modes d'exécution
25
27
 
26
- ## Run Modes
28
+ Passerelle à instance unique :
27
29
 
28
30
  ```bash
29
- vc start
30
31
  ./run.sh
32
+ ```
33
+
34
+ Passerelle par instance avec un env de surcharge local :
35
+
36
+ ```bash
31
37
  ./run.sh instances/my-project.env
38
+ # or
32
39
  VERBALCODING_INSTANCE_ENV=instances/my-project.env ./run.sh
33
40
  ```
34
41
 
35
- The bot auto-joins the first configured channel name, defaulting to `일반,General,general`.
42
+ Le bot rejoint automatiquement le premier nom de salon configuré, par défaut `일반,General,general`.
36
43
 
37
- ## Discord Commands
44
+ ## Commandes Discord
38
45
 
39
- Before using commands, set up the Discord application/bot:
46
+ Avant de câbler les commandes, configurez l'application/le bot Discord avec les guides amont :
40
47
 
41
- - Hermes Agent Discord guide: <https://hermes-agent.nousresearch.com/docs/user-guide/messaging/discord>
42
- - Discord official bot docs: <https://docs.discord.com/developers/bots/overview>
48
+ - Guide Discord de Hermes Agent : <https://hermes-agent.nousresearch.com/docs/user-guide/messaging/discord>
49
+ - Documentation officielle des bots Discord : <https://docs.discord.com/developers/bots/overview>
43
50
 
44
- Then run `vc bot invite CLIENT_ID` for the VerbalCoding permissions.
51
+ Utilisez ensuite `vc bot invite CLIENT_ID` pour générer l'URL d'invitation propre à VerbalCoding avec permissions texte et voix.
45
52
 
46
- | Command | Purpose |
53
+ | Commande | Objectif |
47
54
  |---|---|
48
- | `!ping` | Basic bot check |
49
- | `!join` / `!leave` | Join or leave voice |
50
- | `!say <text>` | Speak text directly through TTS |
51
- | `!voice-test <text>` | Test the active TTS backend/voice |
52
- | `!voice-clone capture` | Save the next valid utterance as an OpenVoice reference sample |
53
- | `!voice-clone status` / `!voice-clone cancel` | Inspect or cancel capture |
54
- | `!ask <prompt>` | Send text through the same harness adapter as voice |
55
- | `!session status` | Show current project/default adapter session |
56
- | `!session new <name> <workdir> [context] --voice <voice-channel>` | Create a project-scoped Hermes session |
57
- | `!session attach-voice [sessionName] --voice <voice-channel>` | Bind a text channel/thread to a voice channel |
58
- | `!session list` | List configured project sessions |
59
- | `!session reset` / `!reset-session` | Clear the current session file |
60
- | `!verbose on/off` | Toggle detailed progress updates |
61
- | `!latency` / `!metrics` | Show recent latency summary |
62
- | `!sensitivity normal/conservative` | Switch barge-in sensitivity |
63
-
64
- Voice equivalents such as “외부 모드”, “보수 모드”, “실내”, “기본 감도”, “상세 진행 켜”, and clear stop phrases like “잠깐”, “멈춰”, “그만” are handled by the bridge.
65
-
66
- ## Changing the Voice
67
-
68
- `vc language ko|en|auto` changes STT language, progress language, and the matching default TTS voice together. Live voice commands can change the speaker without restart:
55
+ | `!ping` | Vérification de base du bot |
56
+ | `!join` / `!leave` | Rejoindre ou quitter la voix |
57
+ | `!say <text>` | Énoncer directement du texte via TTS |
58
+ | `!voice-test <text>` | Tester le backend/la voix TTS actif |
59
+ | `!voice-clone capture` | Enregistrer la prochaine énonciation valide comme échantillon de référence OpenVoice |
60
+ | `!voice-clone status` / `!voice-clone cancel` | Inspecter ou annuler la capture |
61
+ | `!ask <prompt>` | Envoyer du texte via le même adaptateur de harnais sélectionné que la voix |
62
+ | `!session status` | Afficher la session de projet/par défaut actuelle de l'adaptateur |
63
+ | `!session new <name> <workdir> [context] --voice <voice-channel>` | Créer une session Hermes limitée à un projet |
64
+ | `!session attach-voice [sessionName] --voice <voice-channel>` | Lier un salon/fil texte à un salon vocal |
65
+ | `!session list` | Lister les sessions de projet configurées |
66
+ | `!session reset` / `!reset-session` | Effacer le fichier de session de projet/par défaut actuel de l'adaptateur |
67
+ | `!verbose on/off` | Activer/désactiver les mises à jour détaillées de progression |
68
+ | `!latency` / `!metrics` | Afficher un résumé récent de la latence |
69
+ | `!sensitivity normal/conservative` | Changer la sensibilité d'interruption |
70
+
71
+ Les équivalents vocaux comme “외부 모드”, “보수 모드”, “실내”, “기본 감도” et les phrases d'arrêt claires comme “잠깐”, “멈춰”, “그만” sont gérés par la passerelle. Vous pouvez aussi dire “상세 진행 켜” / “상세 진행 꺼” pour activer/désactiver la progression détaillée par la voix.
72
+
73
+ ## Changer la voix
74
+
75
+ `vc language ko|en|auto` change ensemble la langue STT, la langue de progression et la voix TTS par défaut correspondante. Si vous voulez seulement changer le locuteur/la voix pendant que la passerelle tourne, dites-le dans le vocal Discord :
69
76
 
70
77
  ```text
71
78
  남자 한국어 목소리로 바꿔
@@ -74,9 +81,11 @@ change voice to Korean female
74
81
  switch speaker to English
75
82
  ```
76
83
 
77
- Built-in Edge types:
84
+ La passerelle en cours d'exécution reconnaît ces phrases comme des commandes vocales, met à jour `config/tts-voices.json`, met à jour l'env TTS effectif du processus actif et répond par une courte confirmation comme “목소리를 Korean male로 바꿨어.” Utilisez `!voice-test <text>` juste après le changement pour entendre le backend et la voix actuels.
85
+
86
+ Types de voix Edge intégrés :
78
87
 
79
- | Voice type | Edge voice |
88
+ | Type de voix | Voix Edge |
80
89
  |---|---|
81
90
  | `korean_male` | `ko-KR-InJoonNeural` |
82
91
  | `korean_female` | `ko-KR-SunHiNeural` |
@@ -84,26 +93,32 @@ Built-in Edge types:
84
93
  | `english_male` | `en-US-GuyNeural` |
85
94
  | `english_female` | `en-US-AriaNeural` |
86
95
 
87
- Backend voice settings:
96
+ Pour une configuration manuelle persistante, définissez `TTS_BACKEND=edge`, `TTS_VOICE_TYPE=<voice-type>` et éventuellement `TTS_VOICE=<edge-voice>` dans `.env`, ou modifiez `config/tts-voices.json` pour des catalogues de voix personnalisés.
88
97
 
89
- | Backend | Voice setting | Common choices |
98
+ Réglages vocaux propres au backend :
99
+
100
+ | Backend | Paramètre de voix | Choix courants |
90
101
  |---|---|---|
91
- | Edge | `TTS_VOICE_TYPE`, `TTS_VOICE` | Built-in types or any Edge voice from `edge-tts --list-voices` |
92
- | Supertonic | `SUPERTONIC_VOICE` | `M1`–`M5`, `F1`–`F5`; `SUPERTONIC_LANGUAGE=ko|en|es|pt|fr` |
93
- | OpenVoice | `OPENVOICE_REF_AUDIO`, `OPENVOICE_STYLE` | A permitted reference WAV plus style such as `default` |
94
- | SpeechSwift / CosyVoice | `SPEECHSWIFT_REF_AUDIO`, `SPEECHSWIFT_ENGINE`, `SPEECHSWIFT_SPEAKER` | Reference WAV or backend speaker/model values |
102
+ | Edge | `TTS_VOICE_TYPE`, `TTS_VOICE` | `korean_male`, `korean_female`, `korean_multilingual_male`, `english_male`, `english_female` ; toute voix Edge de `edge-tts --list-voices` |
103
+ | Supertonic | `SUPERTONIC_VOICE` | `M1`–`M5`, `F1`–`F5` ; définissez `SUPERTONIC_LANGUAGE=ko|en|es|pt|fr` |
104
+ | OpenVoice | `OPENVOICE_REF_AUDIO`, `OPENVOICE_STYLE` | un WAV de référence autorisé plus un style comme `default` |
105
+ | SpeechSwift / CosyVoice | `SPEECHSWIFT_REF_AUDIO`, `SPEECHSWIFT_ENGINE`, `SPEECHSWIFT_SPEAKER` | WAV de référence pour CosyVoice, ou valeurs locuteur/modèle prises en charge par le backend |
106
+
107
+ Pour Supertonic et les backends de clonage locaux, utilisez les variables d'env ci-dessus ainsi que `!voice-test <text>` pour écouter les changements. Le changement par commande vocale mappe actuellement les types de voix intégrés de style Edge ; des catalogues de backends plus riches peuvent être ajoutés dans `config/tts-voices.json`.
95
108
 
96
- ## Long Dictation and Pauses
109
+ ## Dictée longue et pauses
97
110
 
98
- The default `UTTERANCE_IDLE_MS=4500` waits long enough to keep natural pauses inside one spoken instruction. Lower it for faster short commands or raise it for long dictation:
111
+ VerbalCoding attend une fenêtre d'inactivité avant d'envoyer la parole au STT. La valeur par défaut `UTTERANCE_IDLE_MS=4500` est volontairement un peu patiente afin qu'une pause naturelle dans une longue instruction ne coupe pas la phrase, ne démarre pas un tour d'agent trop tôt, puis ne traite pas la suite comme une interruption pendant le traitement.
112
+
113
+ Si vous préférez des commandes courtes plus rapides, diminuez-la dans `.env` ; si une longue dictée coréenne est encore coupée, augmentez-la :
99
114
 
100
115
  ```bash
101
116
  UTTERANCE_IDLE_MS="6000"
102
117
  ```
103
118
 
104
- ## Verbose Progress Mode
119
+ ## Mode progression détaillée
105
120
 
106
- Enable with `!verbose on`, `AGENT_VERBOSE_PROGRESS=1`, or “상세 진행 켜”. Progress lines look like:
121
+ La progression détaillée est désactivée par défaut sauf si `AGENT_VERBOSE_PROGRESS=1` est défini. Activez-la avec `!verbose on` ou une commande vocale comme “상세 진행 켜”. Elle peut émettre de courtes lignes de progression comme :
107
122
 
108
123
  ```text
109
124
  🤖 Hermes Agent 호출 시작
@@ -113,18 +128,28 @@ Enable with `!verbose on`, `AGENT_VERBOSE_PROGRESS=1`, or “상세 진행 켜
113
128
  🤖 Hermes Agent 응답 수신
114
129
  ```
115
130
 
116
- Secret-looking fields are redacted and progress lines are removed from final spoken answers.
131
+ Ce mode demande au harnais CLI sélectionné d'émettre des lignes `VERBALCODING_PROGRESS: ...` et résume les marqueurs d'outils courants depuis stdout/stderr en streaming quand ils sont disponibles. Les champs ressemblant à des secrets sont expurgés et les lignes de progression sont retirées de la réponse finale énoncée.
132
+
133
+ ## Métriques de latence
134
+
135
+ VerbalCoding écrit des enregistrements de latence par tour en JSONL. Chemin par défaut :
136
+
137
+ ```text
138
+ ./.logs/latency.jsonl
139
+ ```
117
140
 
118
- ## Latency Metrics
141
+ Chaque enregistrement inclut le statut, le temps total, le temps de capture vocale, l'attente d'inactivité de l'énonciation, le temps STT, le temps agent, le temps de synthèse/lecture TTS, le nombre de morceaux, la longueur de transcription, la longueur de réponse et les niveaux audio quand disponibles.
119
142
 
120
- Latency records are written to `./.logs/latency.jsonl`. In Discord, run:
143
+ Dans Discord :
121
144
 
122
145
  ```text
123
146
  !latency
124
147
  !metrics
125
148
  ```
126
149
 
127
- ## Testing
150
+ Le résumé utilise les 200 derniers enregistrements : nombre, moyenne, p95, maximum et statuts non-OK.
151
+
152
+ ## Tests
128
153
 
129
154
  ```bash
130
155
  node --check app-node/main.mjs
@@ -132,3 +157,5 @@ npm test
132
157
  bash -n run.sh scripts/install.sh
133
158
  vc doctor
134
159
  ```
160
+
161
+ `vc doctor` expurge intentionnellement les secrets et indique seulement si les valeurs requises sont configurées. Il vérifie aussi `instances/*.env` pour détecter les empreintes de jetons dupliquées et les chemins d'exécution en collision.
@@ -1,71 +1,78 @@
1
1
  # VerbalCoding 使い方ガイド
2
2
 
3
- Operational details for 日本語 users.
3
+ このページには、README を長くしすぎていた運用上の詳細をまとめています。
4
4
 
5
- ## CLI Commands
5
+ ## CLI コマンド
6
6
 
7
7
  ```bash
8
- vc status
9
- vc language en
10
- vc language ko
11
- vc language auto
12
- vc restart auto status
13
- vc restart auto on
14
- vc restart auto off
15
- vc bot invite CLIENT_ID
16
- vc instance status
17
- vc instance setup NAME
18
- vc instance start NAME
19
- vc instance stop NAME
20
- vc doctor
21
- npm run mcp
8
+ vc status # STT 言語、進捗言語、TTS 音声を表示
9
+ vc language en # 英語 STT + 英語の進捗/TTS 音声
10
+ vc language ko # 韓国語 STT + 韓国語の進捗/TTS 音声
11
+ vc language auto # Whisper 自動検出 STT + 英語の進捗/TTS 音声
12
+ vc restart auto status # コミット時の音声ボット自動再起動設定を表示
13
+ vc restart auto on # コミット時の音声ボット自動再起動を有効化
14
+ vc restart auto off # 無効化。これがデフォルト
15
+ vc bot invite CLIENT_ID # 必要な権限付きの Discord 招待 URL を出力
16
+ vc instance status # インスタンスごとのブリッジ設定とプロセス状態を一覧表示
17
+ vc instance setup NAME # instances/NAME.env を書き、~/.hermes/profiles/NAME を作成
18
+ vc instance start NAME # ./run.sh instances/NAME.env をデタッチして起動
19
+ vc instance stop NAME # デタッチされたインスタンスを停止し pid ファイルを削除
20
+ vc doctor # 秘密情報を伏せた doctor チェックを実行
21
+ npm run mcp # stdio MCP サーバーを実行
22
22
  ```
23
23
 
24
- Language commands update `.env`; restart with `vc start`, `./run.sh`, or your process manager.
24
+ 言語変更は `.env` を更新します。反映するには `./run.sh` または利用中のプロセスマネージャーでブリッジを再起動してください。
25
+
26
+ ## 実行モード
25
27
 
26
- ## Run Modes
28
+ 単一インスタンスのブリッジ:
27
29
 
28
30
  ```bash
29
- vc start
30
31
  ./run.sh
32
+ ```
33
+
34
+ ローカルの上書き env を使うインスタンス別ブリッジ:
35
+
36
+ ```bash
31
37
  ./run.sh instances/my-project.env
38
+ # または
32
39
  VERBALCODING_INSTANCE_ENV=instances/my-project.env ./run.sh
33
40
  ```
34
41
 
35
- The bot auto-joins the first configured channel name, defaulting to `일반,General,general`.
42
+ ボットは最初に設定されたチャンネル名へ自動参加します。デフォルトは `일반,General,general` です。
36
43
 
37
- ## Discord Commands
44
+ ## Discord コマンド
38
45
 
39
- Before using commands, set up the Discord application/bot:
46
+ コマンドを接続する前に、上流ガイドに従って Discord アプリケーション/ボットをセットアップしてください:
40
47
 
41
- - Hermes Agent Discord guide: <https://hermes-agent.nousresearch.com/docs/user-guide/messaging/discord>
42
- - Discord official bot docs: <https://docs.discord.com/developers/bots/overview>
48
+ - Hermes Agent Discord ガイド: <https://hermes-agent.nousresearch.com/docs/user-guide/messaging/discord>
49
+ - Discord 公式ボットドキュメント: <https://docs.discord.com/developers/bots/overview>
43
50
 
44
- Then run `vc bot invite CLIENT_ID` for the VerbalCoding permissions.
51
+ その後、`vc bot invite CLIENT_ID` を使って、テキストおよび音声権限を持つ VerbalCoding 専用の招待 URL を生成します。
45
52
 
46
- | Command | Purpose |
53
+ | コマンド | 目的 |
47
54
  |---|---|
48
- | `!ping` | Basic bot check |
49
- | `!join` / `!leave` | Join or leave voice |
50
- | `!say <text>` | Speak text directly through TTS |
51
- | `!voice-test <text>` | Test the active TTS backend/voice |
52
- | `!voice-clone capture` | Save the next valid utterance as an OpenVoice reference sample |
53
- | `!voice-clone status` / `!voice-clone cancel` | Inspect or cancel capture |
54
- | `!ask <prompt>` | Send text through the same harness adapter as voice |
55
- | `!session status` | Show current project/default adapter session |
56
- | `!session new <name> <workdir> [context] --voice <voice-channel>` | Create a project-scoped Hermes session |
57
- | `!session attach-voice [sessionName] --voice <voice-channel>` | Bind a text channel/thread to a voice channel |
58
- | `!session list` | List configured project sessions |
59
- | `!session reset` / `!reset-session` | Clear the current session file |
60
- | `!verbose on/off` | Toggle detailed progress updates |
61
- | `!latency` / `!metrics` | Show recent latency summary |
62
- | `!sensitivity normal/conservative` | Switch barge-in sensitivity |
63
-
64
- Voice equivalents such as “외부 모드”, “보수 모드”, “실내”, “기본 감도”, “상세 진행 켜”, and clear stop phrases like “잠깐”, “멈춰”, “그만” are handled by the bridge.
65
-
66
- ## Changing the Voice
67
-
68
- `vc language ko|en|auto` changes STT language, progress language, and the matching default TTS voice together. Live voice commands can change the speaker without restart:
55
+ | `!ping` | 基本的なボット確認 |
56
+ | `!join` / `!leave` | 音声に参加または退出 |
57
+ | `!say <text>` | TTS でテキストを直接読み上げ |
58
+ | `!voice-test <text>` | 有効な TTS バックエンド/音声をテスト |
59
+ | `!voice-clone capture` | 次の有効な発話を OpenVoice 参照サンプルとして保存 |
60
+ | `!voice-clone status` / `!voice-clone cancel` | キャプチャ状態を確認またはキャンセル |
61
+ | `!ask <prompt>` | 音声と同じ選択済みハーネスアダプター経由でテキストを送信 |
62
+ | `!session status` | 現在のプロジェクト/デフォルトアダプターセッションを表示 |
63
+ | `!session new <name> <workdir> [context] --voice <voice-channel>` | プロジェクトスコープの Hermes セッションを作成 |
64
+ | `!session attach-voice [sessionName] --voice <voice-channel>` | テキストチャンネル/スレッドを音声チャンネルに紐付け |
65
+ | `!session list` | 設定済みプロジェクトセッションを一覧表示 |
66
+ | `!session reset` / `!reset-session` | 現在のプロジェクト/デフォルトアダプターセッションファイルを消去 |
67
+ | `!verbose on/off` | 詳細な進捗更新を切り替え |
68
+ | `!latency` / `!metrics` | 直近のレイテンシ要約を表示 |
69
+ | `!sensitivity normal/conservative` | 割り込み感度を切り替え |
70
+
71
+ 「외부 모드」「보수 모드」「실내」「기본 감도」などの音声での同等表現や、「잠깐」「멈춰」「그만」のような明確な停止フレーズはブリッジが処理します。また、「상세 진행 켜」/「상세 진행 꺼」と言うことで、音声でも詳細進捗を切り替えられます。
72
+
73
+ ## 音声を変更する
74
+
75
+ `vc language ko|en|auto` は、STT 言語、進捗言語、対応するデフォルト TTS 音声をまとめて変更します。ブリッジの実行中に話者/音声だけを変更したい場合は、Discord 音声で次のように話します:
69
76
 
70
77
  ```text
71
78
  남자 한국어 목소리로 바꿔
@@ -74,9 +81,11 @@ change voice to Korean female
74
81
  switch speaker to English
75
82
  ```
76
83
 
77
- Built-in Edge types:
84
+ 実行中のブリッジはこれらを音声制御コマンドとして認識し、`config/tts-voices.json` を更新し、実行中プロセスの有効な TTS env を更新して、「목소리를 Korean male로 바꿨어。」のような短い確認で応答します。変更直後に `!voice-test <text>` を使うと、現在のバックエンドと音声を聞けます。
85
+
86
+ 組み込み Edge 音声タイプ:
78
87
 
79
- | Voice type | Edge voice |
88
+ | 音声タイプ | Edge 音声 |
80
89
  |---|---|
81
90
  | `korean_male` | `ko-KR-InJoonNeural` |
82
91
  | `korean_female` | `ko-KR-SunHiNeural` |
@@ -84,26 +93,32 @@ Built-in Edge types:
84
93
  | `english_male` | `en-US-GuyNeural` |
85
94
  | `english_female` | `en-US-AriaNeural` |
86
95
 
87
- Backend voice settings:
96
+ 永続的な手動設定では、`.env` に `TTS_BACKEND=edge`、`TTS_VOICE_TYPE=<voice-type>`、必要に応じて `TTS_VOICE=<edge-voice>` を設定するか、カスタム音声カタログ用に `config/tts-voices.json` を編集します。
88
97
 
89
- | Backend | Voice setting | Common choices |
98
+ バックエンド固有の音声ノブ:
99
+
100
+ | バックエンド | 音声設定 | 一般的な選択肢 |
90
101
  |---|---|---|
91
- | Edge | `TTS_VOICE_TYPE`, `TTS_VOICE` | Built-in types or any Edge voice from `edge-tts --list-voices` |
92
- | Supertonic | `SUPERTONIC_VOICE` | `M1`–`M5`, `F1`–`F5`; `SUPERTONIC_LANGUAGE=ko|en|es|pt|fr` |
93
- | OpenVoice | `OPENVOICE_REF_AUDIO`, `OPENVOICE_STYLE` | A permitted reference WAV plus style such as `default` |
94
- | SpeechSwift / CosyVoice | `SPEECHSWIFT_REF_AUDIO`, `SPEECHSWIFT_ENGINE`, `SPEECHSWIFT_SPEAKER` | Reference WAV or backend speaker/model values |
102
+ | Edge | `TTS_VOICE_TYPE`, `TTS_VOICE` | `korean_male`、`korean_female`、`korean_multilingual_male`、`english_male`、`english_female`。`edge-tts --list-voices` が返す任意の Edge 音声 |
103
+ | Supertonic | `SUPERTONIC_VOICE` | `M1`〜`M5`、`F1`〜`F5`。`SUPERTONIC_LANGUAGE=ko|en|es|pt|fr` を設定 |
104
+ | OpenVoice | `OPENVOICE_REF_AUDIO`, `OPENVOICE_STYLE` | 許可済み参照 WAV と、`default` などのスタイル |
105
+ | SpeechSwift / CosyVoice | `SPEECHSWIFT_REF_AUDIO`, `SPEECHSWIFT_ENGINE`, `SPEECHSWIFT_SPEAKER` | CosyVoice 用の参照 WAV、またはバックエンド対応の話者/モデル値 |
106
+
107
+ Supertonic とローカルクローンバックエンドでは、上記のバックエンド env 変数に加えて `!voice-test <text>` を使い、変更を試聴してください。音声コマンドによる切り替えは、現在は組み込みの Edge 風音声タイプにマッピングされます。より豊富なバックエンドカタログは `config/tts-voices.json` に追加できます。
95
108
 
96
- ## Long Dictation and Pauses
109
+ ## 長いディクテーションとポーズ
97
110
 
98
- The default `UTTERANCE_IDLE_MS=4500` waits long enough to keep natural pauses inside one spoken instruction. Lower it for faster short commands or raise it for long dictation:
111
+ VerbalCoding は、音声を STT に送る前に無音ウィンドウを待ちます。デフォルトの `UTTERANCE_IDLE_MS=4500` は意図的に少し余裕を持たせています。長い指示の自然な間で文を分割したり、エージェントターンを早く始めすぎたり、その後の発話を処理中の割り込みとして扱ったりしないためです。
112
+
113
+ 短いコマンドをより速くしたい場合は `.env` で小さくしてください。長い韓国語ディクテーションがまだ分割される場合は大きくしてください:
99
114
 
100
115
  ```bash
101
116
  UTTERANCE_IDLE_MS="6000"
102
117
  ```
103
118
 
104
- ## Verbose Progress Mode
119
+ ## 詳細進捗モード
105
120
 
106
- Enable with `!verbose on`, `AGENT_VERBOSE_PROGRESS=1`, or “상세 진행 켜”. Progress lines look like:
121
+ `AGENT_VERBOSE_PROGRESS=1` が設定されていない限り、詳細進捗はデフォルトでオフです。`!verbose on` または「상세 진행 켜」のような音声コマンドで有効にします。次のような短い進捗行を出力できます:
107
122
 
108
123
  ```text
109
124
  🤖 Hermes Agent 호출 시작
@@ -113,18 +128,28 @@ Enable with `!verbose on`, `AGENT_VERBOSE_PROGRESS=1`, or “상세 진행 켜
113
128
  🤖 Hermes Agent 응답 수신
114
129
  ```
115
130
 
116
- Secret-looking fields are redacted and progress lines are removed from final spoken answers.
131
+ このモードは、選択された CLI ハーネスに `VERBALCODING_PROGRESS: ...` 行の出力を求め、利用可能な場合はストリーミング stdout/stderr から一般的なツールマーカーを要約します。秘密情報に見えるフィールドは伏せられ、進捗行は最終的に読み上げられる回答から削除されます。
132
+
133
+ ## レイテンシ指標
134
+
135
+ VerbalCoding はターンごとのレイテンシ記録を JSONL として書き込みます。デフォルトパス:
136
+
137
+ ```text
138
+ ./.logs/latency.jsonl
139
+ ```
117
140
 
118
- ## Latency Metrics
141
+ 各レコードには、ステータス、合計時間、音声キャプチャ時間、発話アイドル待ち、STT 時間、エージェント時間、TTS 合成/再生時間、チャンク数、文字起こし長、回答長、利用可能な場合の音声レベルが含まれます。
119
142
 
120
- Latency records are written to `./.logs/latency.jsonl`. In Discord, run:
143
+ Discord 内:
121
144
 
122
145
  ```text
123
146
  !latency
124
147
  !metrics
125
148
  ```
126
149
 
127
- ## Testing
150
+ 要約は最新 200 件のレコードを使い、件数、平均、p95、最大、OK 以外のステータスを表示します。
151
+
152
+ ## テスト
128
153
 
129
154
  ```bash
130
155
  node --check app-node/main.mjs
@@ -132,3 +157,5 @@ npm test
132
157
  bash -n run.sh scripts/install.sh
133
158
  vc doctor
134
159
  ```
160
+
161
+ `vc doctor` は意図的に秘密情報を伏せ、必要な値が設定されているかだけを報告します。また、`instances/*.env` について、重複するトークンフィンガープリントや衝突するランタイムパスも確認します。