docs(help): bring the user guide back in line with the current app The help was written on 2026-10-14 and about forty user-visible changes merged since without touching it, so several pages described controls that no longer exist: Missions still listed four playbooks and a Save step for preferences that now save on each change, the depth editor kept its old names, notifications still had their former switches, and voice input pointed to a microphone button that is not in the composer. Every English page was re-checked claim by claim against the current labels (English UI messages) and behaviour, then the nine translations were updated to match, using each locale's own UI labels. Notable corrections: Missions (Compare two models, autosaving defaults with Apply to / Global / Reset, Subsession nesting depth, prepared hand-offs, retired-task interrupts, the named causes of "Mission Control is unavailable", standalone server support); conversations and history (reasoning/tool durations, token lines adding up the cleanup selection, presets including Nothing, timeline markers following Message content, in-place reveal of long text, Open in session, focus after send, Queue message / Steer now, Retrying); settings (notification routing table and defaults, Stats, Mode, info tips, Server setting badge, localized native menus); shortcuts (72 actions, Clear shortcut, Ctrl/Cmd+K); voice (More actions entries, Save status); files (live Workspace refresh, Show 200 more); OpenCode, install, server and updates (2.1.1 recommended, OpenCode 2 beside an older installation, version card first, private loopback listener for Missions, preview releases offered once all builds are published); providers, integrations, browser, SideCars, desktop and remote pages. Translations also repaired older drift, mainly the project-tab closing passages. The Chat settings table header (Default state, its title, item column, the thinking row and its accessible label) was still English in eight locales; it is now translated so the help can cite what users see. AGENTS.md now asks every PR changing user-visible behavior to update the affected help pages in the same PR, since CI validates structure and links but not whether the text still matches the UI; it also corrects the needs-input notification default. USER_HELP.md no longer claims native menus stay English. Validation: npm run test:help (all ten locales, 25 pages, heading ids unchanged), a full help build, and the i18n and transcript-visibility unit tests.
8.9 KiB
音声入力と再生
音声を設定する
- 設定 → 音声 を開きます。音声 カードは、会話のモデルプロバイダーとは独立した OpenAI 互換のサーバー側アダプターを使います。
- API キー、任意で ベース URL、文字起こしモデル、音声モデル、既定の音声 を入力します。
- 入出力で異なるサービスが必要なら、入力と出力で異なるプロバイダーを使用 を有効にし、入力/出力のキー、ベース URL、モデル欄を入力します。
- 再生モード と 出力形式 を選び、保存 します(未保存の変更がある間に使用できます)。テスト前に、テストボタンの横の状態(設定済み、一部設定済み、APIキーがありません)を確認します。保存に失敗すると 保存に失敗しました と表示されます。
音声設定とキーは、選択中のプロジェクトや OpenCode プロバイダー接続ではなく、接続先の CodeNomad サーバー設定に属します。共有する他のクライアントもその設定を使います。保存済みキーは非表示で、空欄なら保存値を保持し、保存済みキーを削除 は次回保存時の削除を指定します。独自のエンドポイントもキーもない方向では共通設定を使えます。別のエンドポイントには独自キーが、別のキーにはそのエンドポイントが必要です。エンドポイントを変えるときは、意図するキーを明示的に指定し、保存済み設定を確認してください。別ホストに送らないよう、エンドポイント変更ではその枠の保存済みキーを消去します。
バックエンドは、共通の既定値に OPENAI_API_KEY と OPENAI_BASE_URL も使えます。保存済みキーを消しても、環境由来の認証情報は消えません。代替値を除去したい場合は、バックエンドの環境を変えて再起動します。
| 設定 | 意味/既定値 |
|---|---|
| ベース URL | OpenAI 互換 API のルート。既定は https://api.openai.com/v1。入力は audio/transcriptions、出力は audio/speech を使用。 |
| 文字起こしモデル/入力モデル | STT エンドポイントが受け付けるモデル。既定は gpt-4o-mini-transcribe。 |
| 音声モデル/出力モデル | TTS エンドポイントが受け付けるモデル。既定は gpt-4o-mini-tts。 |
| 既定の音声 | プロバイダーの音声識別子。既定は alloy。OS の音声ピッカーではありません。 |
| ストリーミング | 既定値。選択形式にプロバイダーとブラウザーが対応する場合、音声の到着とともに再生を開始。 |
| バッファ再生 | 音声応答全体を待ってから再生。 |
| 出力形式 | mp3、wav、opus、aac。既定は mp3。互換性はブラウザー/プロバイダーで異なります。 |
これらは設定したサービスへの要求であり、互換エンドポイントすべてが全モデル、音声、形式に対応する保証ではありません。保存に失敗するとエラーが残ります。別の変更を行う前に設定を確認してください。
入力と出力をテストする
- 先にエンドポイント、キー、モデル、音声の変更を保存します。
- 入力をテスト を選び、マイクを許可して話し、録音を停止 します。返された文字起こしを確認します。
- 再生をテスト でサンプルを聞き、サンプルを停止 で終了します。
再生テストは、選んだ再生モード/形式を直ちに使いますが、エンドポイント、キー、モデル、音声は保存済み設定を使います。入力テストは会話のプロンプトを送りません。ただしテストでも、設定した音声プロバイダーに音声/テキストを送り、その料金が発生する場合があります。
ストリーミングが失敗したら、バッファ再生 を選び、mp3 を試し、保存して再テストします。「設定済み」は設定の確認であり、プロバイダー認証やコーデック再生の成功ではありません。再試行前に、サーバーホストからのエンドポイント到達性、プロバイダーのモデル/音声名、割り当て量を確認します。
プロンプトを音声で入力する
- 音声 で プロンプト音声入力 を有効のままにします(既定でオンです)。
- 入力欄で その他の操作 を開き、音声入力を開始 を選んで、この端末でマイクを許可します。
- 話し終えたら、同じメニューで 録音を停止して文字起こし を選びます。処理中は 音声を文字起こし中 と表示されます。
- 挿入されたテキストを確認・編集してから、通常どおりプロンプトを送信します。
文字起こしは現在の選択位置にテキストを挿入し、OpenCode へ自動送信しません。このメニュー項目は、STT が設定され、クライアントが録音に対応する場合にのみ表示されます。CodeNomad がリモートサーバーで動いていても、録音にはクライアント端末のマイクを使います。
項目がない場合は、スイッチと STT 設定を確認します。権限エラーでは、ブラウザー/OS の両方のプライバシー設定でマイクを許可してください。リモートブラウザー録音には、通常は信頼された HTTPS である、安全なコンテキストが必要です。モバイルアクセスと直接リモートアクセスを参照してください。別の場所への切り替えや入力欄を閉じる操作は録音のライフサイクルを終えます。未送信音声の復旧を当てにしないでください。結果は入力欄の下書きで確認します。
メッセージを読み上げる
- TTS が利用できる場合、メッセージの メッセージを読み上げ、またはツール呼び出しの同じ操作を使用します。
- 終了するには、同じコントロールで 再生を停止 を使用します。別の読み上げを始めると、現在の読み上げは停止します。
- 次のリクエスト用に、音声 で保存済みの声、モデル、モード、形式を変更します。
再生は画面の実況ではなく、CodeNomad のテキスト表現を使います。バイナリ/画像のバイト列と権限の記録は音声内容ではありません。プロンプトの実行や、選択中の OpenCode モデルの変更はしません。形式を選べても、ブラウザーの音声対応やプロバイダーの応答により再生できない場合があります。
会話の自動読み上げには、入力欄の その他の操作 メニューから 会話モードを有効化 を使います。そのプロジェクトタブに適用され、再読み込み後は保持されません。有効な間、CodeNomad は送信する各プロンプトとともに、短いフェンス付き spoken の要約から返信を始めるようエージェントに求めます。アクティブなメインセッションで、その完了したブロックだけを読み上げます。すべての返信やサブエージェントの自動読み上げではありません。会話モードを無効化 はキューを停止し、要約の要求もやめます。マイク入力の開始も、現在の会話読み上げを停止します。スイッチは音声入力がある場合、または会話モードが既に有効な間に表示され、有効化には動作する TTS が必要です。
データの流れとプライバシー
マイク音声は、クライアントから CodeNomad バックエンドを経由し、設定した STT エンドポイントへ送られます。合成対象のテキストも、バックエンド経由で設定した TTS エンドポイントへ送られ、返った音声をクライアントで再生します。API キーはサーバー側に残り、保存済み値として設定フォームに返りません。
入力・読み上げる内容を預けられる、信頼するエンドポイントを使ってください。オフライン文字起こしの保証はなく、OpenCode の認証情報が音声を自動的に許可することもありません。終わったら録音/再生を止めます。キーやエンドポイントの変更は将来のリクエストに影響し、プロバイダーに送信済みのデータには影響しません。サーバー公開の前に、セキュリティを確認してください。