0%
Loading...
Assine

ステータス

開発中

閲覧数

0

概要

スケジュールとタスクを一元管理。AIアシスタントとも連携可能な次世代タスク管理アプリ

詳細

💡開発背景・課題意識

既存のタスク管理アプリを使う中で、「会議」と「会議の準備タスク」が別々に管理され、関連性が見えづらいという課題を感じていました。会議直前になって準備タスクが終わっていないことに気づくケースが多発し、 タスクとスケジュールを統合管理できるツールの必要性 を実感しました。

また、AIアシスタントが普及しているにもかかわらず、タスク管理ツールがAIと連携できない点も課題でした。「今日のタスクは?」と聞いても、わざわざアプリを開く必要がある。この非効率を解消するため、 MCP(Model Context Protocol)対応 でClaudeから直接操作できるタスク管理アプリとして開発しました。

⚡主な機能

スケジュール-タスク統合管理(コア機能)

  • スケジュールに直接タスクを紐付け、準備作業を一元管理

  • スケジュール配下のタスク進捗を自動計算・可視化

  • 会議開始前に「未完了タスクあり」の警告を表示

階層自動判定システム

  • 入れ子構造の深さで自動的に軽・中・重タスクを判定

  • 軽タスク→日単位、中タスク→週単位、重タスク→月単位で時間軸を自動調整

  • ユーザーは階層を意識せず自然にタスクを構造化可能

4ページ構成

  • タスク一覧:階層構造の可視化・編集

  • 指定:日・週・月へのタスク割り当て

  • 進捗:今日・今週の実行・進捗入力

  • 振り返り:過去実績の分析・改善提案

AI連携(MCP対応)

  • Claude Desktopから直接タスクの作成・確認・更新が可能

  • 「今日のタスクを教えて」「明日の会議の準備タスクを作って」などの自然言語操作

  • REST APIをMCP Serverとしてラップする設計で、将来的にChatGPT・Geminiにも対応予定

PWA・オフライン対応

  • ホーム画面への追加でネイティブアプリライクな体験

  • オフラインでもフル機能動作(タスク作成・編集・進捗更新すべて可能)

  • オンライン復帰時に自動同期、競合検出・解決機能あり

🛠技術スタック

カテゴリ 技術
フロントエンド React 19 / Next.js 15 (App Router) / TypeScript
スタイリング Tailwind CSS / shadcn/ui
状態管理 Zustand
バックエンド Supabase(PostgreSQL / Auth / Realtime / Edge Functions / RLS)
ホスティング Vercel
PWA Service Worker / IndexedDB / Dexie.js
AI連携 MCP Server / REST API
決済 Stripe
外部連携 Google Calendar API / Microsoft Graph API

🔧技術的な工夫・設計判断

スケジュール-タスク紐付けのデータ設計

タスクテーブルに parent_task_id と parent_schedule_id を持たせ、排他的制約で「通常タスクの子」か「スケジュールの子」のいずれかに限定。スケジュール配下は最大2階層までという制限により、データ構造の複雑化を防ぎつつ柔軟な紐付けを実現しています。

階層自動判定アルゴリズム

タスクに子要素が追加されると自動的に中タスクに昇格、さらに孫要素が追加されると重タスクに昇格するロジックを実装。降格も同様に自動判定され、ユーザーは階層を意識せず自然にタスクを構造化できます。

MCP対応を意識したAPI設計

将来のMCP Server化を見据え、RESTful APIをリソースベースで設計。GET /api/tasks、POST /api/schedules/:id/tasks など、MCPツールへの変換がシームレスに行える構造としています。

オフラインファースト設計

Service Worker + IndexedDB(Dexie.js)でローカルDBを構築。オフライン時はローカルDBのみで動作するため、トークン期限切れでも全機能が使用可能。オンライン復帰時の同期では、タイムスタンプベースの競合解決アルゴリズムを実装しています。

Row Level Security(RLS)の活用

SupabaseのRLS機能により、ユーザーは自分のデータのみアクセス可能。共有グループのデータはグループメンバーのみがアクセスできるポリシーを設定し、フロントエンドのバグがあってもデータ漏洩が起きない設計としています。

📊競合との差別化ポイント

観点 既存アプリ(Notion/Todoist等) assine
スケジュール-タスク紐付け 非対応(別々に管理) スケジュールに直接タスクを紐付け可能
階層管理 手動で設定 入れ子構造から自動判定
AI連携(MCP) 非対応 Claude Desktopから直接操作可能
オフライン対応 制限あり フル機能動作
日本語最適化 翻訳ベース ネイティブ対応

🚀今後の展望

  • Pro版リリース:AI分析・タスク自動生成・スケジュール最適化提案

  • ChatGPT GPTs / Gemini Extensions対応

  • React Nativeでのネイティブアプリ化(iOS/Android)

  • チーム向け機能の強化・B2B展開