> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mirobody.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 欢迎使用 Mirobody

> 一个开源、可自托管的数据引擎，把你的个人数据与最新的 AI 连接起来。本文档覆盖 Mirobody 的健康垂直，也是 Theta Wellness 的底层。

## Mirobody 是什么？

**Mirobody** 是一个开源、可自托管的**健康数据 + AI 引擎** —— 一个轻量的 **C++** 内核，把你的个人健康数据接入 LLM，并可以在任何地方运行：作为独立服务跑在服务器上，或**在设备本地**跑在 Android / iOS 应用里，让数据永远无需离开手机。

* 🧩 **一个内核，三种形态** —— 同一个 C++ 引擎，既作为独立二进制（HTTP + WebSocket）分发，也作为共享库嵌入移动端宿主应用（Android 走 JNI、iOS 走 C API），还通过一个纯 `extern "C"` 接口让任何语言都能嵌入。
* 🔌 **MCP 服务器** —— 内置工具通过 Model Context Protocol 端点暴露，可被 ChatGPT、Claude、Cursor 或任何 MCP 客户端调用。
* 🤖 **多提供商对话** —— 一套流式接口覆盖 OpenAI、Google Gemini、MiroThinker，另有完全**在设备本地**运行的选项（Gemma，经 LiteRT-LM / llama.cpp），让对话无需服务器、无需网络也能跑。
* 🔄 **健康数据连接器** —— 可穿戴设备、手机健康存储、临床 EHR（经 SMART on FHIR）都通过可插拔的 vendor 客户端接入；设备本地存储（Apple Health、Health Connect）由宿主应用读取。
* 🏥 **原生 FHIR R4** —— 内嵌的 FHIR R4 端点把一切归一化（单位对齐到 UCUM；指标向 SNOMED CT / LOINC / RxNorm 映射），再以 FHIR 资源的形式返回。

> 本文档站覆盖 Mirobody 的健康垂直 —— 即 [Theta Wellness](https://www.thetahealth.ai/) 背后的引擎。

<CardGroup cols={2}>
  <Card title="快速开始" icon="rocket" href="/zh/quickstart">
    构建 C++ 内核，几分钟内跑起来
  </Card>

  <Card title="用例与示例" icon="lightbulb" href="/zh/use-cases">
    基于合成健康数据的真实对话
  </Card>

  <Card title="Provider 集成" icon="plug" href="/zh/development/provider-integration">
    几小时接入一种新设备或数据源
  </Card>

  <Card title="托管 API 平台" icon="cloud" href="/zh/api-reference">
    比起自建，更想要托管 API？同一套引擎，由我们托管。
  </Card>
</CardGroup>

## 为什么选 Mirobody？

<AccordionGroup>
  <Accordion title="数据始终属于你" icon="lock">
    内核端到端在本地运行。在桌面 / 服务器上，它是一个单独的二进制，跑在你自己的 Postgres（或 SQLite）之上；在手机上，同一个内核**在设备本地**运行，健康数据无需离开设备，除非你主动选择同步。自带 LLM 密钥（OpenAI、Gemini、MiroThinker）—— 或用设备本地的 Gemma **完全离线**运行。
  </Accordion>

  <Accordion title="一个内核，随处运行" icon="server">
    单个 C++ 引擎，带一个纯 `extern "C"` 的 C API。它作为独立的 HTTP / WebSocket 二进制分发，作为共享库嵌入 Android / iOS 宿主应用，也可经该 C ABI 从 Java、Go、C#、Rust、Swift 或 Python 嵌入 —— 无需为每个平台重写。
  </Accordion>

  <Accordion title="一个轻量、会用工具的 Agent" icon="robot">
    只有一个 Agent：它按**提供商**名挑一个 LLM 客户端，构建系统提示词，把这一轮流式返回 —— 并按需调用内置的 **MCP 工具**（读文件、渲染图表、家庭健康、记忆）。
  </Accordion>

  <Accordion title="MCP 工具，编译进内核" icon="wrench">
    工具是 `res/mcp_tools/` 下的 C++ 文件，在编译期自注册 —— 丢一个带 `MIROBODY_REGISTER_TOOL` 宏的 `.cpp` 进去再重新构建即可。它们通过 `/mcp` 端点暴露给 ChatGPT / Claude / Cursor，并为内置 Agent 在进程内运行。
  </Accordion>

  <Accordion title="文件，解析为健康数据" icon="file">
    PDF（PDFium）、Excel / CSV（xlnt）、图像（经 Tesseract OCR，外加视觉模型内联）都会被解析；数值经归一化（UCUM）后写入内嵌的 FHIR 存储。
  </Accordion>

  <Accordion title="语音与实时" icon="microphone">
    经 **OpenAI Realtime** 与 **Google Gemini Live**，在 WebSocket 上做实时语音对话。
  </Accordion>

  <Accordion title="健康圈（Care circles）" icon="users">
    创建一个圈子并按邮箱邀请他人；成员可以分享一段对话（查看 / 编辑）或自己的健康数据（按人设置，默认关闭）。之后 Agent 就能回答"我家人最近怎么样？"，且只读取成员选择分享的内容。
  </Accordion>
</AccordionGroup>

## 架构一览

内核由五个部分组成（全部是 C++）：

| 部分            | 路径                            | 说明                                                                                                       |
| ------------- | ----------------------------- | -------------------------------------------------------------------------------------------------------- |
| **LLM 客户端**   | `src/llm/`                    | 每个提供商一个流式客户端 —— OpenAI、Google Gemini、MiroThinker、设备本地 Gemma（LiteRT-LM / llama.cpp），外加 Realtime / Live 语音 |
| **MCP 工具**    | `src/mcp/` + `res/mcp_tools/` | 通过 Model Context Protocol 端点暴露的服务端工具                                                                     |
| **Agent**     | `src/chat/` + `res/agents/`   | 按提供商挑客户端，构建提示词，流式返回这一轮                                                                                   |
| **健康 vendor** | `src/health/vendor/`          | 可穿戴、手机存储、EHR（SMART on FHIR），统一到一套 authorize / fetch / webhook 契约之后                                       |
| **FHIR R4**   | `src/fhir/`                   | 内嵌 FHIR 端点 + 术语（UCUM；SNOMED CT / LOINC / RxNorm）                                                         |

Agent 与工具**在编译期自注册**：把一个 `.cpp` 丢进对应的 `res/` 目录再重新构建即可。

## 数据源

健康数据通过可插拔的 **vendor 客户端**接入，分四类：

<CardGroup cols={2}>
  <Card title="聚合平台" icon="layer-group">Terra、Validic、Human API、Junction、Metriport… —— 15 家 B2B 平台，统一到一套契约之后</Card>
  <Card title="设备品牌" icon="watch">Fitbit、Garmin、Withings（第一方 OAuth）—— Oura / Polar / Whoop 经聚合平台接入</Card>
  <Card title="临床 EHR" icon="hospital">SMART on FHIR —— 一个通用客户端对接 ONC 认证的 EHR（Epic、Oracle Health / Cerner、athenahealth…）</Card>
  <Card title="设备本地存储" icon="mobile">Apple Health、Samsung Health、Google Health Connect、华为 —— 在设备本地读取，以 FHIR 形式 POST 上来</Card>
</CardGroup>

在 `src/health/vendor/` 里实现一个 `vendor::Vendor` 即可新增数据源。参见 [Provider 集成](/zh/development/provider-integration)。

## 技术栈

* **C++11** 内核，用 **CMake** 构建（Windows 上加 vcpkg）
* **libwebsockets** / **libcurl** / **OpenSSL** 提供 HTTP + WebSocket + TLS
* **存储后端**在构建期选定：PostgreSQL（桌面默认）或 SQLite（移动端），也支持 MySQL / DuckDB / ClickHouse；文件走 S3 / OSS / Azure Blob / 本地
* **设备本地 LLM**：Gemma，经 **LiteRT-LM**（移动端）/ **llama.cpp**（Electron）
* **内嵌 FHIR R4**，带 UCUM / SNOMED CT / LOINC / RxNorm 术语
* **OAuth 2.0 / OIDC** 授权服务器；邮箱验证码 + Google / Apple / WeChat / GitHub 登录

## 适用人群

<CardGroup cols={2}>
  <Card title="个人用户" icon="user">
    任何想给自己的健康数据一个私密、AI 加持的家，而不愿把它交给第三方的人
  </Card>

  <Card title="开发者" icon="code">
    构建个人数据 AI 产品的工程师 —— 想要一个私密、可嵌入、能在设备本地运行的健康引擎，而不必自己搭数据 + FHIR + MCP 的管线
  </Card>
</CardGroup>

## 真实示例

<Info>
  下文示例使用 **合成健康数据**，部分用到了 Theta 的私有工具。
</Info>

### 个人健康数据管理与对话

<AccordionGroup>
  <Accordion title="跨系统、跨年度追踪健康问题" icon="timeline">
    跨多个医疗系统、甚至跨国家查询同一个健康问题：

    <CardGroup cols={2}>
      <Card title="膝痛进展" icon="link" href="https://mirobody.thetahealth.cn/share/26a595e5-b936-4c23-8944-e9d105759f11">
        在不同 Provider 间追踪膝痛进展
      </Card>

      <Card title="心血管疾病" icon="link" href="https://mirobody.thetahealth.cn/share/f1ed967e-db4c-457c-bbc5-106352e5af8c">
        跨医疗系统监测心血管健康
      </Card>
    </CardGroup>
  </Accordion>

  <Accordion title="统一的健康问题分析" icon="chart-line">
    把设备数据、病历、自述笔记合并到一起做分析：

    <CardGroup cols={2}>
      <Card title="心血管摘要" icon="link" href="https://mirobody.thetahealth.cn/share/bf51c2ce-4785-4397-873a-234f38b57695">
        跨数据源汇总心血管状况
      </Card>

      <Card title="糖尿病历史与进展" icon="link" href="https://mirobody.thetahealth.cn/share/11c76c9e-b65d-42b5-86d6-82ca779369c0">
        从设备、病历、其他来源追踪糖尿病
      </Card>
    </CardGroup>
  </Accordion>

  <Accordion title="为就诊做准备" icon="user-doctor">
    <Card title="PCP 就诊准备" icon="link" href="https://mirobody.thetahealth.cn/share/7ce2e573-d795-48c2-9754-9cbcc86bccbe">
      给初级保健（PCP）就诊生成完整摘要与待问问题清单
    </Card>
  </Accordion>
</AccordionGroup>

### 个人健康深度研究

<AccordionGroup>
  <Accordion title="识别规律与驱动因素" icon="magnifying-glass-chart">
    找出真正在帮助或拖累你的因素：

    <CardGroup cols={2}>
      <Card title="血糖分析" icon="link" href="https://mirobody.thetahealth.cn/share/88030a0f-d28c-4562-beda-a0d7b4fd3611">
        定位影响血糖的因子
      </Card>

      <Card title="症状与情绪驱动因素" icon="link" href="https://mirobody.thetahealth.cn/share/da353545-fe85-4583-857a-561eaeecfafa">
        发现症状与情绪背后的主导原因
      </Card>
    </CardGroup>
  </Accordion>

  <Accordion title="个性化治疗研究" icon="flask">
    <Card title="糖尿病治疗选项" icon="link" href="https://mirobody.thetahealth.cn/share/f283a4e8-cb30-4ba8-bab0-144bce415ac9">
      研究个性化的糖尿病管理方案（药物、设备、生活方式）
    </Card>
  </Accordion>
</AccordionGroup>

### 作为开发者数据引擎的 Mirobody

<CardGroup cols={2}>
  <Card title="可穿戴设备厂商" icon="watch">
    无需自建后端即可为你的设备添加 AI 对话能力
  </Card>

  <Card title="研究类应用" icon="microscope">
    把自定义工具丢进 `tools/`，快速部署面向受试者的研究 App
  </Card>

  <Card title="消费健康 App" icon="mobile">
    以 Mirobody 作为数据 + AI 后端构建你的产品
  </Card>

  <Card title="企业级" icon="building">
    定制集成与企业支持，请联系我们
  </Card>
</CardGroup>

## Theta Wellness：生产环境中的 Mirobody

[**Theta Wellness**](https://www.thetahealth.ai/) 是我们构建在 Mirobody 之上的旗舰应用 —— 一个个人健康智能 App，展示了 Mirobody 在生产级规模下的能力。它连接可穿戴设备、手机健康存储和 EHR 病历，并支持语音、图像、文件、文字作为输入。

我们之所以开源引擎，是为了让你能自己运行同一个私密、可在设备本地运行的健康内核 —— 为全家自托管，在手机上离线运行，或经 C API 嵌入你自己的应用。

## 下一步

<Steps>
  <Step title="开始上手">
    跟着 [快速开始](/zh/quickstart) 构建内核（`./build.sh`）并运行。
  </Step>

  <Step title="配置提供商">
    给想接入的设备配好 OAuth 凭据 —— 参见 [配置](/zh/configuration)。
  </Step>

  <Step title="探索 API">
    阅读 [API 参考](/zh/api-reference/overview) 了解 OpenAI 兼容的 `/v1` 端点。
  </Step>

  <Step title="加自定义 Provider 或工具">
    新数据源走 [Provider 集成](/zh/development/provider-integration)；或在 `res/mcp_tools/` 里加一个 C++ 工具。
  </Step>
</Steps>

## 参与贡献

我们欢迎各种贡献 —— 新 Provider、新工具、框架改进，都可以。

<CardGroup cols={2}>
  <Card title="GitHub 仓库" icon="github" href="https://github.com/thetahealth/mirobody">
    源码、Issue、PR
  </Card>

  <Card title="贡献指南" icon="code-pull-request" href="/zh/development/contributing">
    如何提交变更
  </Card>
</CardGroup>

## 社区与支持

<CardGroup cols={2}>
  <Card title="Discord" icon="discord">
    社区讨论（即将上线）
  </Card>

  <Card title="GitHub Issues" icon="bug" href="https://github.com/thetahealth/mirobody/issues">
    Bug 报告与功能请求
  </Card>

  <Card title="Mirobody 支持" icon="envelope" href="mailto:developer@thetahealth.ai">
    直接联系技术团队
  </Card>
</CardGroup>

<Note>
  本文档站覆盖 Mirobody 的**健康垂直**。开源引擎仓库见 <a href="https://github.com/thetahealth/mirobody">github.com/thetahealth/mirobody</a>。
</Note>
