yvetteYSY/creator-agent
Build AI agents grounded in a creator's documents, audio, and video.
Creator Agent – プライバシー最優先、モバイル最優先のプロトタイプ:クリエイターのコンテンツを根拠のあるAIチャットエージェントに変換
何であるか – 開発者向けのオープンソースWebアプリ(今後React-Nativeモバイルフロントエンドを計画)で、コンテンツクリエイターがドキュメント、音声トランスクリプト、またはビデオ+字幕ファイルをアップロードし、タグ付けしてから、承認済みの資料のみに基づいて質問に答える会話型「オーディエンスエージェント」を公開できます。すべての処理は決定論的であり、外部LLMプロバイダーへの呼び出しは一切行わないため、デモ中はAPIキーもトークンコストも発生しません。
なぜ重要か – 以下のフルスタックパターンを示しています:
- デフォルトでプライベートなインジェスチョン – ソースはブラウザ内または保護されたバックエンドに留まり、クリエイターが明示的に承認するまで検索対象になりません。
- テナント隔離 – 各クリエイターには内部UUIDが割り当てられ、すべてのAPIリクエストはそのIDにスコープされ、クリエイター間のデータ漏洩を防止します。
- ゼロコストルーティング – 内蔵の「リファレンスエージェント」は決定論的で、出典を含む回答を返しますが、モデルにアクセスしません。後でクリエイターは独自のエンドポイント(Bring-Your-Own-Agent契約)に接続でき、モデル使用はそのエンドポイント所有者の責任になります。
- セキュリティ重視のアップロードパイプライン – MP4アップロードは直接プライベートS3互換ストレージへ。その後の処理前に、1回限りのワーカーがClamAVでファイルをスキャンします。
コア機能(MVP時点)
| 機能 | 実装 |
|---|---|
| 認証 | Auth0 OIDCログイン(PKCE);JWT検証APIルート |
| 永続的ワークスペース | PostgreSQLがクリエイターID、エージェントバージョン、ソースメタデータを保存 |
| ソースタイプ | テキストの貼り付け、最小限のGitHub App経由のMarkdown/MDX、MP4ビデオ+オプションのWebVTT字幕 |
| プライバシー制御 | クリエイターが承認するまで、ソースはプレビューのみ。承認されていないコンテンツはチャットエンジンから返されません |
| 決定論的チャット | ブラウザ内リトリーバエンジンがクエリ語を承認済みチャンクと照合し、出典を返す(または「知らない」)— モデル推論は一切なし |
| マルチユーザー隔離 | シミュレートされたオーディエンスメンバー(Maya、Theo、Jules)ごとに別々の会話履歴 |
| エージェントカスタマイズ | ボイスプリセット、応答の深さ、署名フレーズ、禁止トピック、挨拶/トーンなど、クリエイターごとにバージョン管理 |
| ロードラボ | 調整可能なトラフィック/並行制限で、テナント対応の過負荷処理をデモ |
| Bring-Your-Own-Agent | ドキュメント化されたHTTP契約;クリエイターは契約を尊重する任意のエンドポイントにシステムを接続可能。モデル使用はエンドポイント所有者の責任 |
| CI/CD | GitHub ActionsがPR毎に型チェック、ユニット/UIテスト、Lint、プロダクションビルドを実行 |
今すぐ試せる内容
- 公開ベータ版を開く:https://creator-agent-yvetteysy.onrender.com(Auth0ログインはオプション)。デモはすべて無料のRenderサービス上で動作するため、非アクティブ期間後の最初のリクエストは約50秒かかる可能性があります。
- 短いテキストスニペットを貼り付け、または小さなMP4とWebVTTサイドカーをアップロード。シミュレータはメモリ上でテキストをチャンク化し、即座に検索可能にします。
- オーディエンスプレビューに切り替え、質問を投げてください。エージェントは承認済みチャンクのみを使用して回答し、出典を表示します。
- カスタマイズを開き、ボイスプリセットや禁止トピックを調整し、次の回答に与える影響を確認してください。
- ロードラボを使ってシミュレートされたリクエストレートを上げ、システムが過剰トラフィックを適切に拒否する様子を観察してください。
- ゼロコストのエンドツーエンドフローを試すには、ローカルで
npm run dev:e2eを実行してください。これによりシミュレータと決定論的リファレンスエージェント(http://127.0.0.1:4310/v1/respond)が起動され、aiCalls: 0と報告します。
ローカルでプロジェクトを実行する方法
# 前提:Node 22+
git clone https://github.com/yvetteYSY/creator-agent.git
cd creator-agent
npm install
npm run dev # Reactシミュレータを http://127.0.0.1:4173 で起動
# オプション:docs/AUTHENTICATION.md および docs/API.md に従い Auth0 + PostgreSQL を設定
デフォルトモードではメモリ内シミュレータを使用し、ネットワーク呼び出しは一切発生しません。
計画中のロードマップ(リポジトリに記載)
- 永続的クリエイターワークスペース – セッション間でエージェントとソースを完全に永続化。
- プライベートビデオインジェスチョンパイプライン – 完全なスキャン、トランスクリプション、自動チャンク化。
- プロダクションレベルの根拠のあるチャット – ベクトル埋め込み(
pgvector)、リトリーバ、プロバイダー非依存生成。 - モバイルアプリ – Expo/React-Nativeクライアント、クォータ、モデレーション、監査ログ、可視性。
テックスタック
- フロントエンド:React(Vite)+TypeScript、モバイル対応UI
- API:Node.js+TypeScript(Fastify/NestJSスタイル)、Auth0 JWTで保護
- データベース:PostgreSQL(埋め込み用に
pgvectorを計画) - ストレージ:S3互換バケット(プライベート、署名付きPOSTポリシー)
- バックグラウンドジョブ:Redisバックエンドのワーカーキュー(隔離スキャン、クリーンアップなど)
- CI:GitHub Actions(型チェック、テスト、プロダクションビルド、依存関係監査)
誰がこのプロジェクトに役立つか
- 自分の既存メディアに会話層を実装したいが、データの完全なコントロールを維持したいクリエイター。
- プライバシー最優先のコンテンツインジェスチョン、テナント隔離、ゼロコストAIフリーのプロトタイピングのリファレンス実装に興味がある開発者。
- 「Bring-Your-Own-Model」プラットフォームを構築しているチームで、ユーザークエリを外部エンドポイントにルーティングするクリーンな契約が必要な人。
上記のすべての詳細は、リポジトリのREADMEから直接取得したものであり、追加機能は推測されていません。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト