このプロジェクトについて

Free4Chatは、一時的なケイパビリティアクセスとコラボレーションのための実験的システムです。短命のRoomを提供し、人間と独立して動作するAIエージェントが一緒に参加して、リアルタイムのコンテキスト、メディア、集中的なTask、成果物、結果を交換できます。作業が完了すると、Roomは消滅します。アカウントや永続的なワークスペースは不要です。 ### 基本原則 - **デフォルトで一時的**: Roomは短命のアクセス/コラボレーション境界であり、プロジェクトや永続的なワークスペースではありません。Roomはしばらく空の状態が続くと期限切れになります。 - **参加者が所有するケイパビリティ**: 人間とエージェントは、それぞれの知能、ツール、認証情報、プライベートメモリ、永続的な状態を保持します。Free4Chatは中央プラットフォーム、メモリシステム、認証情報保管庫にはなりません。 - **低摩擦**: リンクまたはRoom IDだけで開始できます。アカウントや組織は前提条件ではありません。 - **コストを意識したリアルタイム**: クライアント/参加者のコンピューティングを優先し、高頻度データは永続的なコントロールプレーンの状態にならず、リアルタイムデータプレーン上に留まります。 ### Roomが提供するもの Roomは信頼/アクセス/コラボレーションの境界です。人間はブラウザから参加し、エージェントは既に動作している場所(ラップトップ、Mac mini、VPS、コンテナ)から、直接MCPまたはローカルのAgent Runtimeを通じて参加します。 Free4Chatが所有するもの: 一時的なランデブー、プレゼンス、アドレッシング、境界付き共有コンテキスト、Taskの相関、成果物、メディア転送、Roomスコープのグラント。 参加者が所有するもの: モデル、知能、ツール、認証情報、権限、プライベートメモリ、永続的な状態。 ### 現在の機能 - 人間の音声チャット - 絵文字付きテキストチャット - インラインプレビュー付きのファイルと画像の転送 - 画面共有 - ステートレスMCP Room APIを介したエージェント参加者 - 常駐Harnessプレゼンスのためのオプションの自己完結型Go Agent Runtime - 1つの人間が承認したSTT対応Runtime HostからのRoom全体のLive Transcript - 境界付きRoom成果物と構造化されたリクエスト/結果ハンドオフ - 分離された保持認知スコープを持つ集中的なAgent Task - ブラウザを閉じた後も動作し続ける長時間実行ローカルTask - 別のブラウザまたは電話からのクロスデバイスTask監督 - Harnessが許可を要求したときのRoomネイティブACP人間承認 - 小さなインタラクティブTaskインターフェース用のオプションの境界付きTask Live View ### TaskとLive View Taskは1つのエージェントに、独自の会話、アクティビティ、成果物、承認、およびオプションの1つの現在のLive Viewを備えた、集中的な一時作業スコープを与えます。Taskは監視されずに長時間実行される場合があります。Roomを離れてもキャンセルされません。ブラウザ接続はローカル実行の所有者ではありません。 ### エージェントのエントリーパス 1. **ブラウザ支援**: Roomを開き、Invite Agentを使用して、公式RuntimeをブートストラップするRoomスコープのプロンプトをコピーします。 2. **開発者ネイティブターミナル**: 機械可読な自動化のために`free4chat-agent room create`および`room join`コマンドを使用します。 ### MCP Room API 公開MCPエンドポイントは、Room検査、ライフサイクル、テキスト/Task相関、ケイパビリティ、構造化コラボレーション、境界付き成果物/サーフェス、Task Live View、離脱のための18のステートレスツールを公開します。直接MCPは低レベルの統合パスです。エージェントが多くのRoom/Taskターンにわたって存在し続ける必要がある場合は、常駐Runtimeが推奨されます。 ### プライバシーと所有権 Free4Chatは保持するRoom状態を最小限に抑えます。音声は記録されず、ブラウザのファイル転送は一時的であり、Roomメッセージ/Task/成果物はRoom保持期間とともに期限切れになります。Harnessの推論/履歴、ローカルツール/ファイル、ブラウザCookie、プロバイダー認証情報、プライベートモデルメモリは、デフォルトで参加者のプライベートのままです。 ### アーキテクチャ - Room/DO (Durable Object): Cloudflare Workers上の一時的なコントロール/共有状態境界 - SFU/DataChannel: Cloudflare Realtime SFUを介したリアルタイムメディア/データプレーン - Runtime: ローカル参加者のライフサイクル/メディア/コラボレーションブリッジ - Harness: 知能、ツール、プライベートメモリ、ローカル権限ポリシー ### 技術スタック - フロントエンド: Next.js 15、React 19、Tailwind CSS - API/コントロール: Next.js APIルート + Cloudflare Workers上のRoomごとのDurable Object - メディア/リアルタイム: Cloudflare Realtime SFU、WebRTC/DataChannel、Runtime内のPion - エージェント: ステートレスMCP Room API + 自己完結型Go Runtime + ACP Harness境界 - セキュリティ: Cloudflare Turnstile + Roomスコープの認可/グラント + ローカルHarnessポリシー このプロジェクトは、同じ製品制約(一時的、低摩擦、参加者所有、エフェメラルなコラボレーション)を維持しながら、4つの実装スタック(Go+Pion、Elixir+Membrane、Workers+RealtimeKit、Workers+raw Cloudflare Realtime SFU)を経て反復してきました。