io.github.pooriaarab/viberadio-fm

السجل الرسمي الوسائط والتصميم

Turns an agent's output into audio: narration, podcast, or music.

ماذا يمكنك أن تفعل مع io.github.pooriaarab/viberadio-fm؟

  • Local speech: the default audio path disables network egress and uses the system speech runner from @pooriaarab/vibe-core.
  • Recap scripts: formats milestone events; accepts monologue or podcast styles and summary or podcast modes.
  • Library bridge: successful library recap() appends a best-effort event for vibenotifications; CLI and MCP recaps call narration directly.
  • Two MCP tools: narrate speaks text; recap builds and speaks an event recap.

التثبيت

أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: ‏.cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).

NPM package viberadio-fm
Claude Code
claude mcp add viberadio-fm -- npx -y viberadio-fm@0.2.3 mcp
إعداد JSON (Claude Desktop وCursor وVS Code)
{
    "mcpServers": {
        "viberadio-fm": {
            "command": "npx",
            "args": [
                "-y",
                "viberadio-fm@0.2.3",
                "mcp"
            ]
        }
    }
}

التوثيق

مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.

المحتويات
  1. VibeRadio
  2. Install
  3. Recap a session
  4. Features and limits
  5. Library and MCP
  6. Status and links

VibeRadio

Website · Setup · Library and MCP

VibeRadio is an open-source text-to-speech CLI and library that turns supplied text or coding-session events into local spoken narration for developers.

Install

npm install -g viberadio-fm
viberadio say "Build passed"

Requires Node.js 18 or newer and a system speech tool: macOS say, Linux espeak, or Linux spd-say. Success: you hear “Build passed” and see a local-provider status message. If speech is unavailable, the CLI prints the text and a setup warning, then exits successfully. No API key or environment variables are required. The CLI does not load .env files.

Recap a session

printf '[{"kind":"tests-pass","count":12}]' | viberadio recap
printf '[{"kind":"tests-pass","count":12}]' | viberadio recap --style podcast

The second command changes the script to host-labelled dialogue. Both styles use one system voice. You can also pass a JSON-array file: viberadio recap session.json --mode podcast.

Features and limits

  • Local speech: the default audio path disables network egress and uses the system speech runner from @pooriaarab/vibe-core.
  • Recap scripts: formats milestone events; accepts monologue or podcast styles and summary or podcast modes.
  • Library bridge: successful library recap() appends a best-effort event for vibenotifications; CLI and MCP recaps call narration directly.
  • Two MCP tools: narrate speaks text; recap builds and speaks an event recap.
text / event array -> narration script -> system speech tool -> audio

There is no automatic agent-session watcher or background start command. Reactive music, cloud voices, distinct podcast voices, recording, visualizers, and a menubar application do not ship. This package does not include Claude Code, Codex, or Gemini adapters; pass text or events from your workflow. Source inspection confirms three system-tool choices through the shared runner. No physical audio output was verified for this rewrite.

Library and 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() is pure and works without speech tools. narrate() throws TtsUnavailableError when audio cannot run. createNarrator() exposes dependency injection; TypeScript declarations ship with the package. Configure an MCP client with:

{"mcpServers":{"viberadio":{"command":"viberadio","args":["mcp"]}}}

CLI commands: say, recap, mcp, help/--help/-h, and --version/-v. The say command accepts --style/-s; recap also accepts --mode/-m and file or stdin input. Set VIBERADIO_DEBUG=1 for speech-failure details.

Version 0.2.4 is pre-1.0. Interfaces can change; this package provides no managed audio service. The repository's interactive prototype and launch video show product direction, not shipped functionality. Report an issue · Vibe Suite · MIT license

الأسئلة الشائعة

ما هو io.github.pooriaarab/viberadio-fm؟

Turns an agent's output into audio: narration, podcast, or music.

كيف أثبّت io.github.pooriaarab/viberadio-fm؟

يعمل على جهازك. في Claude Code: claude mcp add viberadio-fm -- npx -y viberadio-fm@0.2.3 mcp. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.

هل يحتاج io.github.pooriaarab/viberadio-fm إلى مفتاح API؟

لا يذكر إدراجه في السجل أي مفتاح أو سر إلزامي. قد تتطلب بعض الميزات حسابًا لدى الخدمة التي يتصل بها.

هل io.github.pooriaarab/viberadio-fm مفتوح المصدر؟

نعم. شيفرته متاحة على GitHub بترخيص MIT.

من يصون io.github.pooriaarab/viberadio-fm؟

ينشره pooriaarab. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.

من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.