Skip to main content
Glama

VoxMesh

VoxMeshは、プラットフォームに依存しない、音声ファーストのAIエージェントゲートウェイです。

このプロジェクトは、音声入力、音声テキスト変換、AIエージェント、MCPツール、テキスト音声変換、音声出力を接続し、Agent Coreをハードウェア、オペレーティングシステム、AIプロバイダーから独立させたまま維持するように設計されています。

プロジェクトステータス

VoxMeshには、開発とアーキテクチャ検証のための初期Mock Mode垂直スライスがあります。以下が含まれます:

  • pnpmおよびTypeScriptモノレポ

  • FastifyサーバーとReact Web Console

  • 初回実行時の管理者パスワード設定とセッション認証

  • SQLiteによる会話とログの永続化

  • プロバイダー非依存のAgent Core契約

  • 決定論的なMock LLMおよびMock MCPツール実行

  • Mock STTと生成されたWAVレスポンスを備えたブラウザMock Voice録音

  • 選択可能なComposedおよびMock Native Multimodal音声パイプラインモード

  • Dashboard、Chat、Conversations、Logsページ

  • パスワードローテーションとMock/Azure OpenAI設定のためのSettingsページ

  • 書き込み専用のAzure OpenAI APIキー処理と接続テスト

  • Alibaba Cloud Model Studioを含む汎用OpenAI互換LLM設定

  • 英語および簡体字中国語のWeb Consoleローカライズ

  • ブラウザ言語検出と永続化された言語選択

  • Light、Dark、System外観モード

  • ライブOS同期を備えた永続化された外観選択

  • 機能指向の単一目的Reactコンポーネント

  • 現在のすべてのUIコンポーネントに対するReact Testing Library動作テスト

  • Browser Historyとディープリンク可能なページを備えたTanStack Router

  • リモートサーバー状態とキャッシュ無効化のためのTanStack Query

  • 複雑なSettingsワークフローのためのTanStack Form

  • ユニット、統合、Playwrightエンドツーエンドテスト

Azure Speech、汎用外部MCPトランスポート、物理オーディオ、デプロイメントパッケージングは、今後の作業として計画されています。

アーキテクチャは以下向けに設計されています:

  • macOS、Linux、Windowsでの開発

  • Linux amd64およびarm64へのデプロイ

  • Docker Composeおよびネイティブsystemdデプロイ

  • ハードウェアや外部サービス資格情報を必要としないMock Mode

Related MCP server: Pipecat MCP Server

要件

  • Node.js 22.12以降

  • pnpm 10.27

クイックスタート

pnpm install
pnpm build
pnpm --filter @voxmesh/server start

http://127.0.0.1:3000を開き、最初の管理者パスワードを作成し、サインインしてChatを使用します。Check the light statusと入力して、Mock LLM -> Mock MCP -> Mock LLMフローを実行します。

ChatページにはStart recording、Stop recording、Play responseコントロールもあります。Mock Modeでは、録音されたオーディオが検証され、決定論的なテストフレーズに文字起こしされ、Agent CoreとMock MCPを通じて処理され、生成されたテストWAVとともに返されます。

Settingsを使用して、管理者パスワードを変更するか、ChatをMockとAzure OpenAIの間で切り替えます。Azure OpenAIには、HTTPSエンドポイント、デプロイメント名、APIバージョン、APIキーが必要です。APIキーはローカルSQLiteデータベースに保存され、ブラウザに返されることはなく、ホストファイルシステムの権限によって保護されています。

LLMプロバイダーはOpenAI互換APIも使用できます。Alibaba Cloud Model Studioの場合、リージョン/ワークスペースのベースURL、APIキー、qwen-plusなどのモデル名を設定します。

Alibaba Cloudの音声は、OpenAI互換のAudio APIではなく、専用のAlibaba Cloud Model Studio STT/TTSプロバイダーを使用します。ワークスペースのWebSocketエンドポイント、APIキー、リアルタイムASRまたはTTSモデル、言語、音声をSTTとTTSでそれぞれ独立して設定します。

セットアップ、ログイン、またはSettingsの言語セレクターを使用して、英語と簡体字中国語を切り替えます。設定はブラウザに保存され、即座に適用されます。

Settingsの外観セレクターを使用して、Light、Dark、Systemを選択します。Systemがデフォルトで、ライブのオペレーティングシステムのテーマ変更に追従します。

自動リロード付きのフロントエンドおよびバックエンド開発の場合:

pnpm dev

Web Consoleはhttp://127.0.0.1:5173で利用でき、APIリクエストをポート3000のサーバーにプロキシします。

Web Consoleページは、/dashboard、/chat、/conversations、/conversations/<id>、/logs、/settingsなどの安定したURLを使用します。直接読み込み、リフレッシュ、ブラウザの戻る/進むナビゲーションがサポートされています。

設定

.env.exampleの値を環境またはプロセスマネージャーにコピーします:

変数

デフォルト

説明

VOXMESH_HOST

127.0.0.1

サーバー待受アドレス

VOXMESH_PORT

3000

サーバー待受ポート

VOXMESH_DATABASE_PATH

./data/voxmesh.sqlite

SQLiteデータベースパス

VOXMESH_SESSION_TTL_SECONDS

86400

管理者セッションの有効期間

VOXMESH_COOKIE_SECURE

false

セッションCookieにHTTPSを要求

最初の管理者パスワードは少なくとも10文字含む必要があります。パスワードはソルト付きscryptハッシュとして保存されます。セッションCookieはHttpOnlyおよびSameSite=Strictです。

管理者パスワードを変更すると、すべてのアクティブなセッションが失効します。Azure OpenAI設定は次のChatリクエストで有効になります。接続テストアクションは、設定されたデプロイメントに小さなリクエストを送信し、プロバイダーの使用コストが発生する場合があります。

検証

pnpm format:check
pnpm lint
pnpm typecheck
pnpm test:unit
pnpm test:integration
pnpm build
pnpm test:e2e

必要なすべてのチェックを実行するには:

pnpm validate

Playwright MCP

リポジトリレベルの.mcp.jsonは、構造化されたアクセシビリティスナップショットを通じたブラウザ調査のためにPlaywright MCPを設定します。Copilot CLIとClaude Codeは、ワークスペースの信頼が承認された後、リポジトリルートからこのファイルを検出します。

サーバーは最新の公式パッケージリリースと分離されたブラウザセッションを使用するため、Cookieとログイン状態はMCPセッション間で保持されません。設定変更後はMCPクライアントを再起動してください。

デフォルトのテストとMock Modeには、AI資格情報、外部MCPサーバー、オーディオハードウェアは必要ありません。

ワークスペース

apps/server           Fastify API, authentication, and composition root
apps/web              React and Vite Web Console
apps/web/src/features Feature-oriented pages, forms, and settings components
apps/web/src/components Shared layout components
apps/web/src/router.tsx Typed TanStack Router route tree and guards
apps/web/src/query.ts Typed TanStack Query keys and query options
packages/agent-core   Provider-independent agent runtime and mocks
packages/shared       Runtime schemas and shared contracts
packages/storage      SQLite storage adapter
tests/e2e             Browser end-to-end tests

ドキュメント

コーディングエージェント向け指示

開発ポリシー

機能変更を実装する前に:

  1. その動作、範囲、リスク、受け入れ基準、テスト要件について議論し確認します。

  2. 最新のmainから専用ブランチを作成します。mainへの直接編集やプッシュは決して行いません。

  3. すべてのリポジトリコンテンツとコードコメントを英語で維持します。

  4. 該当する場合は完全なユニットテスト、統合テスト、エンドツーエンドテストを追加します。

  5. 公開契約、設定、アーキテクチャ、セキュリティ制約、および非自明な動作について、英語の開発者ドキュメントと有用なJSDocまたは推論コメントを追加します。

  6. 該当するすべてのフォーマット、lint、型チェック、テスト、本番ビルドチェックを実行します。

  7. Conventional CommitスタイルのコミットメッセージとPRタイトルを使用し、無関係な変更は焦点を絞ったコミットに分割します。

  8. コミット、プッシュ、プルリクエスト作成、マージ、リリースの前に、それぞれ個別の明示的な承認を取得します。

完全な必須ポリシーについては、開発ルールを参照してください。

Maintenance

ActivitySlowing
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers