viberadio-fm について
viberadio-fmは、開発者向けのオープンソースのテキスト読み上げコマンドラインツール兼ライブラリです。テキストやコーディングセッションのイベントをローカルで音声化し、イベントの振り返りスクリプトとMCPツールを提供します。セッション監視やマネージド音声サービスはありません。
主な機能
- 01システムツールによるローカル音声合成
- 02独白とポッドキャスト形式の振り返り
- 03イベント配列からの振り返り生成
- 04コマンドラインツールとJavaScriptライブラリ
- 05ナレーター依存関係の注入
活用シーン
- 01ビルド状況の音声読み上げ
- 02指定したテキストのローカル読み上げ
- 03コーディングセッションの節目の振り返り
MCP 対応
`viberadio mcp`で起動するMCPサーバーは、`narrate`と`recap`ツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
2掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| text | string | はい | 読み上げるテキスト。 |
| style | enum | いいえ | 将来のスタイル別音声選択用に予約されています。monologue | podcast |
詳細
VibeRadio
ウェブサイト · セットアップ · ライブラリと MCP
VibeRadio は、開発者向けに、入力されたテキストやコーディングセッションのイベントをローカルで音声ナレーションに変換する、オープンソースのテキスト読み上げ CLI およびライブラリです。
インストール
npm install -g viberadio-fm
viberadio say "Build passed"
Node.js 18 以降と、システム音声ツール(macOS の say、Linux の espeak、または Linux の spd-say)が必要です。
成功すると、「Build passed」という音声が聞こえ、ローカルプロバイダーのステータスメッセージが表示されます。
音声を利用できない場合、CLI はテキストとセットアップに関する警告を出力し、正常終了します。
API キーや環境変数は不要です。CLI は .env ファイルを読み込みません。
セッションを要約する
printf '[{"kind":"tests-pass","count":12}]' | viberadio recap
printf '[{"kind":"tests-pass","count":12}]' | viberadio recap --style podcast
2 つ目のコマンドでは、スクリプトがホスト名付きの会話形式に変わります。どちらのスタイルでも、システム音声を 1 つ使用します。
JSON 配列ファイルを渡すこともできます:viberadio recap session.json --mode podcast
機能と制限
- ローカル音声: デフォルトの音声出力経路ではネットワークへの送信を無効にし、
@pooriaarab/vibe-coreのシステム音声ランナーを使用します。 - 要約スクリプト: マイルストーンイベントをフォーマットします。
monologueまたはpodcastスタイルと、summaryまたはpodcastモードを指定できます。 - ライブラリブリッジ: ライブラリの
recap()が成功すると、vibenotifications 用のイベントをベストエフォートで追加します。CLI と MCP の要約では、ナレーションを直接呼び出します。 - 2 つの MCP ツール:
narrateはテキストを読み上げ、recapはイベントの要約を作成して読み上げます。
text / event array -> narration script -> system speech tool -> audio
エージェントセッションを自動監視する機能や、バックグラウンドで実行する start コマンドはありません。
リアクティブな音楽、クラウド音声、個別のポッドキャスト音声、録音、ビジュアライザー、メニューバーアプリは含まれていません。
このパッケージには Claude Code、Codex、Gemini のアダプターは含まれていません。ワークフローからテキストまたはイベントを渡してください。
ソースコードの調査では、共有ランナーを通じた 3 種類のシステムツールの選択肢が確認されています。この書き換えでは、物理的な音声出力は検証していません。
ライブラリと MCP
import { buildRecapScript, narrate, recap } from 'viberadio-fm';
console.log(buildRecapScript([{ kind: 'tests-pass', count: 12 }]));
await narrate('Build passed');
await recap([{ kind: 'task-done', message: 'Fixed login' }]);
buildRecapScript() は純粋関数で、音声ツールなしで動作します。音声を実行できない場合、narrate() は TtsUnavailableError をスローします。
createNarrator() では依存性注入を利用できます。TypeScript の型宣言はパッケージに含まれています。
MCP クライアントを次のように設定してください:
{"mcpServers":{"viberadio":{"command":"viberadio","args":["mcp"]}}}
CLI コマンド:say、recap、mcp、help/--help/-h、および --version/-v。
say コマンドでは --style/-s を指定できます。recap では、これらに加えて --mode/-m と、ファイルまたは標準入力からの入力も指定できます。
音声の失敗に関する詳細を表示するには、VIBERADIO_DEBUG=1 を設定してください。
ステータスとリンク
バージョン 0.2.4 は 1.0 より前の段階です。インターフェースは変更される場合があります。このパッケージは、管理型の音声サービスを提供しません。 リポジトリのインタラクティブなプロトタイプとローンチ動画は、製品の方向性を示すものであり、リリース済みの機能ではありません。 問題を報告 · Vibe Suite · MIT ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。