ReplyGuard

https://github.com/otoha1119/ReplyGuard

TypeScript

Python

Docker

Vue

PostgreSQL

多数のアプリの重要度や対応を分類する統合システム

riku

otoham

arnykl23

推しアイデア

エンジニアならではのGitHubのissueやPR、コメントまで管理できるように!そして何よりもおしゃれなサイコロモチーフのUI !!!!!

作った背景

世の中のアプリが多すぎるため、全てのアプリの通知を処理することが難しい。その結果、重要な連絡を見過ごしてしまうことがあった。

推し技術

LLM VectorDB おしゃれ〜なUI

プロジェクト詳細

開発背景

Gmail・Outlook・GitHub・Slack などの複数の受信トレイがあると、通知量が多すぎて「未読かつ高重要度」のメッセージが埋もれ、掘り起こすことも難しい。 その結果、「誰が・いつまでに・何を返すべきか」という課題は、個人の記憶・手動記録に依存したままになる。

解決方法

複数チャネルからメッセージを1か所に集約し、LLMが重要度・対応要否・タスクの重要性・締め切りを総合的に判定するダッシュボード。 未対応かつ高重要度のメッセージを明示的に浮かび上がらせる。 判定をユーザーが手動で修正すると、ベクトルストアにフィードバックとして蓄積され、次回以降の判定精度に反映される。

ターゲット

複数サービスから業務メッセージを受け取っており、メールの見落としが実際の課題になっているチーム・個人。 PC常時起動・大画面での業務を前提とした業務用 Web ダッシュボード。


技術

Gmail / GitHub / (Outlook) ↓ IMAP / OAuth Ingestion Layer(FastAPI + Python) ↓ LLM、VectorDBを用いてメッセージを評価 ↓ 状態管理(SQLite / PostgreSQL、楽観ロック) ↓ REST API(FastAPI) ↓ Vue 3 ダッシュボード(Vite + TypeScript)
  • バックエンド: FastAPI / SQLAlchemy / Python 3.10+
  • フロントエンド: Vue 3 / TypeScript / Vite
  • LLM: secrets/app.envANALYZER 変数で Claude・OpenAI・Gemini・Ollama を切り替え可。ルールベースのスタブでも動作する
  • ベクトルストア: ChromaDB(Ollama 使用時)。フィードバックを埋め込み化し、類似メッセージの判定補正に使用
  • Embedding: bge-m3
  • インフラ: Docker Compose(api / frontend / postgres をプロファイルで個別起動)
  • メール取得: IMAP BODY.PEEK(既読化しない、先頭16KB のみ取得)。送信・書き込みスコープは持たない

LLM周辺の構成

image

ユーザーフィードバックあり・なしの比較

ユーザーが重要度を修正した例

image

あり

image

なし

image


メンバーの役割

ユー:フロントエンド・UI/UXデザイン riku:LLM・VectorDBの実装
けーと:全体設計

riku

@9ee34bd3e3bbb433