Agemily — 家庭小助手
概要
Agemily は家庭での利用を想定した AI アシスタントアプリで、高齢者や子どもにも使いやすいことを重視しています。主に Flutter(Dart)で開発され、複数の大型言語モデル(Claude / Gemini)を用途に応じて使い分ける「スマートなモデルルーティング」を採用。会話から自動的に重要な事実を抽出して記憶(メモリ)化し、後続の会話に必要な情報だけを注入することで自然な継続対話を実現します。さらに、応答はストリーミングで表示され、Markdown 表示や画像入力、クリックでの音声朗読(中日言語の自動判別対応)など、家庭でのコミュニケーションに便利な機能を揃えています。
リポジトリの統計情報
- スター数: 32
- フォーク数: 10
- ウォッチャー数: 32
- コミット数: 3
- ファイル数: 14
- メインの言語: Dart
主な特徴
- AI 対話のストリーミング応答、Markdown レンダリング、画像入力サポート
- 自動メモリ抽出とスコア順注入で会話の文脈を維持
- モデルルーティングで用途別に Claude / Gemini を使い分け(例:日常問答は Claude、医療・法律や高度分析は Gemini)
- 音声朗読・ネットワーク復帰・マルチセッション管理など、家庭向けの使い勝手改善機能
技術的なポイント
Agemily の技術的なコアは「会話の文脈管理」と「モデルの賢い使い分け」にあります。会話中の重要情報は自動抽出モジュールでフェクト(事実)として取り出され、スコアリング(重要度判定)を経て永続ストレージに保管されます。後続のプロンプト生成時には、スコア上位の記憶のみを動的に注入してトークン予算を節約します。長大な会話に対してはトークン追跡やメッセージの自動要約・圧縮(コンテキスト圧縮)を行い、コンテキストウィンドウを超えないようにする設計が施されています。
モデルルーティングは、問い合わせの意図やカテゴリを判別して最適な LLM を選択する仕組みです。日常の軽い相談は Claude Sonnet 4.5 に流し、専門性の高い医薬・法律・高度な分析は Gemini 3 Pro といった具合に切り替えることでコストと精度のバランスを取っています。応答はストリーミングで受け取りつつ、途中経過(思考の可視化)や Markdown を即座にレンダリングしてユーザー体験を高めます。
音声朗読機能は、メッセージの言語を自動判別して適切な音声合成を呼び出すことで、中英混在のメッセージにも自然に対応します。オフライン時はネットワーク状態を検知して自動リトライやローカル一時保存を行い、再接続後に送信や同期を試みることで安定した使用感を提供します。Flutter ベースのクロスプラットフォーム設計により iOS/Android 両対応を実現しており、データ永続化や同期、バックグラウンド処理などは一般的なモバイル向け手法を想定した実装になっています。
プロジェクトの構成
主要なファイルとディレクトリ:
- .env.example: file
- .gitignore: file
- .metadata: file
- LICENSE: file
- README.md: file
…他 9 ファイル
まとめ
家庭向けに配慮した、モデルルーティングと自動記憶を備えた実用的なクロスプラットフォーム AI チャットアプリ。
リポジトリ情報:
- 名前: agemily
- 説明: 家庭小助手
- スター数: 32
- 言語: Dart
- URL: https://github.com/sofish/agemily
- オーナー: sofish
- アバター: https://avatars.githubusercontent.com/u/153183?v=4
READMEの抜粋:
Agemily (家庭小助手)
专为家中老人和小孩打造的跨平台 AI 聊天应用。基于 Claude 和 Gemini,支持自动记忆、语音朗读和智能模型路由。
功能特性
- AI 对话 — 流式响应,支持 Markdown 渲染、思考过程展示和图片输入
- 自动记忆 — 自动从对话中提取关键事实,评分排序后注入后续对话上下文
- 智能模型路由 — 日常问答自动使用 Claude Sonnet 4.5,医药、法律、分析等复杂问题自动切换至 Gemini 3 Pro
- 语音朗读 — 点击任意助手消息即可朗读(自动识别中英文)
- 上下文管理 — Token 跟踪、消息截断和自动压缩,确保不超出上下文窗口
- 多会话 — 支持多个并行对话,自动生成会话标题
- 离线恢复 — 检测网络状态,断网后恢复连接时自动重试
快速开始
前置要求
- Flutter SDK ≥ 3.10.8
- Xcode(iOS 开发)
- Android SDK(Android 开发)
安装
git...