DREAM PROJECT

🏥 艦隊健康監視システム

¥8,800のスマートリングで、Oura Ring(¥53,000+月額¥1,050)と同じことを月額¥0で実装する

概要

b.ring G1スマートリング(¥8,800)の生体データを、艦隊(AIエージェント群)がリアルタイム分析。睡眠・SpO2・心拍・HRVを監視し、異常があればTelegramまたはLINEで即通知する。

b.ring G1 → BLE → iPhone アプリ Apple Health Health Auto Export → POST → Cloudflare Worker KV Storage 艦隊分析 Telegram / LINE
¥9,300
初期費用のみ。月額¥0。Ouraの7分の1。

監視項目・閾値

データ閾値レベル
睡眠時間< 6時間⚠️ WARNING
睡眠時間< 4時間🔴 CRITICAL
SpO2(血中酸素)< 95%⚠️ WARNING
SpO2(血中酸素)< 90%🔴 CRITICAL
SpO2ディップ回数/時> 5回⚠️ 無呼吸疑い
安静時心拍> 100bpm⚠️ WARNING
安静時心拍< 40bpm🔴 CRITICAL
HRV(心拍変動)前日比-30%以上⚠️ 体調悪化兆候
ストレススコア高 持続3h以上⚠️ 休息推奨
活動検出なし12時間以上🔴 安否確認

コスト比較

項目Oura Ring 4艦隊構成
リング¥53,000¥8,800(b.ring G1)
サブスク¥1,050/月(¥12,600/年)¥0
初年度合計¥65,600¥9,300
2年目以降/年+¥12,600¥0
睡眠トラッキング
SpO2
HRV
無呼吸検知❌(Ouraにない)✅ SpO2ディップ分析
自然言語質問✅(サブスク必要)✅ Kimi K2.5 ¥0
予測アラート✅(サブスク必要)✅ 艦隊分析 ¥0
データ主権Ouraクラウド自分のサーバー
見守り拡張✅ おばあちゃん見守り
LINE通知✅ LINE Messaging API

マルチユーザー・アーキテクチャ

個人情報の切り分けはOpen Wearables(GitHub ★551)に乗る。車輪の再発明はしない。

Open Wearables が提供するもの

  • アカウント単位のデータ分離(KTとおばあちゃんのデータは完全に別)
  • 管理者ポータル(KTが全員分を一覧)
  • 各ユーザーは自分のデータだけ見える
  • 統一REST API(デバイス問わず同じフォーマット)
  • AIヘルスアシスタント(自然言語で質問)
  • webhook通知(ユーザーごとに設定可能)
  • Docker一発起動 docker compose up -d
  • FHIRベースのヘルスケアチームが設計 → プライバシー設計済み
  • オープンソース・完全無料

🟢 LINE連携(おばあちゃん向け)

おばあちゃんはLINEしか使ってない。Telegramは無理でもLINEなら届く。

通知先対象コスト
TelegramKT¥0
LINEおばあちゃん・近所の人¥0(月1000通無料)
Webダッシュボード全員(URLだけ)¥0

LINE Messaging API → Cloudflare Worker → 健康データに異常があれば自動通知。アプリのインストール不要、URLを開くだけ。

Webアプリで完結

世界中の先行事例はスマホアプリを作ろうとしている。俺たちはWebアプリでサラッと行く。

機能実装スマホアプリ必要?
データ収集b.ringアプリ + Health Auto Export必要(この2つだけ)
ダッシュボードCloudflare Pages❌ ブラウザで見れる
アラート通知Telegram / LINE Bot❌ 既存アプリで受信
管理者画面Open Wearables Web UI❌ ブラウザで見れる
自然言語質問Web チャット or Telegram❌ ブラウザで見れる

機能設計書(コンポーネント別)

2-1. データ収集レイヤー

(1) スマートリング & iPhone

デバイス: b.ring G1(¥8,800)/ アプリ: b.ring純正 / BLEペアリング → ファームウェア最新化 → Apple Health連携ON(睡眠・心拍・SpO₂・HRV・歩数)

(2) Apple Health → Webhook

アプリ: Health Auto Export(約¥500)/ Apple Healthから定期的にJSON形式でWebhook URLにPOST / 送信間隔: 30分おき

2-2. 受信・保存レイヤー(サーバー側)

(3) Cloudflare Worker — エンドポイント

メソッドパス機能
POST/ingestHealth Auto Exportからのデータ受信。HEALTH_TOKENで認証
GET/latest?user_id=xxx最新データをダッシュボード/艦隊から取得
GET/alerts?since=...アラート状態確認・デバッグ
GET/analysis今日 vs 昨日の比較分析

処理: JSONバリデーション → ユーザー識別 → KV保存 → アラート判定

(4) ストレージ戦略

段階ストレージ用途
Phase 0-1Cloudflare KV最新1日分のスナップショット
Phase 2+Cloudflare D1 / Supabase / PostgreSQL履歴保存・グラフ描画・傾向分析

2-3. 分析レイヤー(艦隊・LLM)

(5) ルールベース監視

監視項目テーブルの閾値をそのままルールエンジン化。LLM不要、TypeScript/Pythonで実装するゾーン。

(6) 睡眠時無呼吸検知ロジック

入力: SpO₂時系列データ(睡眠時間中)→ 3〜4%以上のディップ検出 → AHI推定。医療診断ではなく「検査に行った方がいいサイン」を出す。

(7) LLM分析(艦隊側)

毎朝の「健康ブリーフィング」を自然言語生成 / 傾向説明(「ここ3日間HRVが落ちてる→ストレス or 睡眠不足」)/ 質問応答。OpenClawスキル health_summary として実装。Kimi K2.5(¥0)or Opus。

2-4. 通知・UIレイヤー

(8) Telegram通知(KT用)

毎朝1通「健康ブリーフィング」+異常検出時の即時アラート。OpenClaw経由 or Worker→Telegram Bot API直叩き。

(9) LINE通知(おばあちゃん用)

LINE Messaging API → Cloudflare Worker → 異常時自動通知。月1,000通まで無料枠。

(10) 管理UI(Open Wearablesベース)

マルチユーザーのデータ分離 / 管理者ポータル / Webダッシュボード / Docker Compose一発起動。

睡眠時無呼吸検知エンジン

RingConn Gen 2が¥45,000で「世界初」と売っている機能を、SpO2データのパターン分析で¥0再現する。

原理

閉塞性睡眠時無呼吸(OSA)では、呼吸停止 → SpO2低下 → 覚醒 → SpO2回復のサイクルが繰り返される。このSpO2の周期的なディップ(3-4%以上の低下→回復)を検出することで、無呼吸を推定できる。

AHI(無呼吸低呼吸指数)判定基準

AHI判定表示
< 5正常🟢
5 - 15軽度OSA疑い🟡
15 - 30中等度OSA疑い🟠
> 30重度OSA疑い🔴

※ 医療診断ではありません。AHI≥5が継続する場合は医療機関でのPSG検査を推奨します。

世界の先行事例

🏆 Open Wearables ★551

セルフホスト型ウェアラブル統合プラットフォーム。Apple Health / Garmin / Polar / Suunto / Whoop対応。マルチユーザー管理、AIヘルスアシスタント、webhook自動通知。FHIRベースのヘルスケアチーム(Momentum)開発。
github.com/the-momentum/open-wearables

🧠 Apple Health MCP Server

Apple HealthのXMLエクスポートをDuckDBに格納、MCP経由でClaudeから自然言語クエリ。Open Wearablesの前身。
github.com/the-momentum/apple-health-mcp-server

💍 applehealth by krumjahn

Apple Health XMLをCSV/JSONに変換→AI分析。スマートリング統合(Oura/Whoop/Samsung Ring)。DeepSeek-R1+Ollamaでローカル完全プライベート分析。マルチモデル対応(ChatGPT/Claude/Gemini)。
github.com/krumjahn/applehealth

📡 Health Auto Export → FastAPI → PostgreSQL

Health Auto ExportアプリでApple HealthデータをwebhookでFastAPIに送信→PostgreSQL保存。具体的なパイプライン実装例。Pydanticバリデーション、datetime正規化まで完備。
ladvien.com

🤖 Oura AI Knowledge Boost(2026年2月)

Oura Ring 4に大規模AIアップデート。コンテキスト認識インサイト、適応型ゴール設定、予測ヘルスアラート、自然言語質問対応。月額¥1,050のサブスクが必要。俺たちはこれを¥0で実装する。

実装ロードマップ

Phase 0: 最小PoC(KTの指輪だけ・単独運用)

ゴール: b.ring → Health Auto Export → Worker → KV → 艦隊 → Telegram朝ブリーフィングまで通す

  1. b.ringセットアップ

    Apple Health連携まで完了させる

  2. Health Auto Export導入

    Webhook設定、30分間隔自動送信

  3. Cloudflare Worker v0

    /ingestにJSONを保存(rawのままKVに)

  4. 艦隊スキル health_dump_viewer

    手動で最新データを見れるようにする

  5. 手動LLM要約→Telegram送信

    1日分の健康要約を生成して送る

Phase 1: v1.0 — 監視 & アラート自動化(KT専用)

ゴール: 監視項目・閾値・無呼吸検知・毎朝ブリーフィングが全自動で回る

  1. Workerスキーマ整理

    睡眠・心拍・SpO₂・HRVをパースして正規化

  2. ルールエンジン実装

    閾値テーブル化+評価ロジック(LLM不要のゾーン)

  3. 無呼吸検知ロジック実装

    SpO₂ディップパターン分析→AHI推定

  4. 艦隊cron: 毎朝 health_summary

    7:00にhealth_summaryを実行→Telegram送信

  5. 異常アラート

    ルールエンジン結果に応じて即時Telegram通知

Phase 2: おばあちゃん見守りモード

ゴール: おばあちゃんにリング配布 → KTが管理者として把握 → LINE通知

  1. Open Wearables Dockerセットアップ

    docker compose up -d で起動

  2. マルチユーザー管理

    user_id=kt / user_id=grandma でデータ分離

  3. LINE Bot作成

    Messaging APIチャネル作成→Workerから送信関数実装

  4. おばあちゃん用ルール強化

    「活動なし12時間」「SpO₂低下」「転倒疑い」を重点監視

  5. ダッシュボード

    Open Wearables Web UIで日次・週次の可視化

Phase 3: 地域ヘルスネットワーク統合

ゴール: 移動支援・見守りボランティアと接続して、地域単位の健康レーダーにする

  1. 転倒検知ロジック

    加速度データ解析で転倒パターンを検出

  2. 認知症早期兆候スコア化

    睡眠パターンの変化→認知機能低下の兆候を数値化

  3. 地域ダッシュボード

    匿名化した指標をマップ or リストで可視化

  4. 移動支援との連携

    「体調悪化+通院予定」→自動で支援候補に上げるトリガー

セットアップ手順

  1. b.ring G1 初期設定

    b.ringアプリをiPhoneにインストール → リング充電 → BLEペアリング → ファームウェア最新化 → Apple Health連携ON

  2. Apple Health 権限設定

    設定 → ヘルスケア → b.ring → 睡眠・心拍・SpO2・HRV・歩数を全てON

  3. Health Auto Export 設定

    アプリインストール(¥500) → REST API自動化作成 → webhook URLとトークン設定 → 30分間隔で自動送信

  4. Cloudflare Worker デプロイ

    KV namespace作成 → Workerデプロイ → HEALTH_TOKEN設定 → エンドポイント: /ingest /latest /alerts

  5. 艦隊分析 有効化

    毎朝の自動分析cron → Telegram朝ブリーフィング → 異常時の即時通知 → 1週間でベースライン確立