醫師最討厭的工作
問任何一位骨科醫師「你最不喜歡工作的哪個部分」,答案很少是手術本身。通常是:
「寫病歷。」
評估紀錄、SOAP notes、追蹤報告、品質報表。這些文書作業佔據大量時間,但每一份都必須精確。你不能亂寫,但你也不想每次都從零開始打字。
這就是 Doctor AI 想解決的問題。
Phase 1:AI 會讀了
2026 年初,我們推出 Doctor AI Phase 1。醫師透過 API Token 連接自己慣用的 AI 工具(Claude Code、Gemini CLI、Codex CLI 等),AI 可以:
- 讀取病患的 VAS 趨勢、遵從率、PROM 分數
- 產生週報和趨勢摘要
- 回答「哪些病患遵從率偏低?」「這位病患的恢復速度正常嗎?」之類的問題
Phase 1 是 read-only 的。AI 可以看,但不能改任何東西。身分證、電話、Email 等個資在送入 AI 前自動移除。
這很好,但醫師開始問:「AI 都已經看完資料了,可以幫我寫 SOAP notes 嗎?」
Phase 2:AI 會寫了(但只能存草稿)
Phase 2 開放了寫入權限。AI 現在可以幫醫師起草臨床評估紀錄(Assessment)。
但這裡有一個關鍵的設計決策:
AI 的寫入只能存為草稿。永遠不會自動發布。
我們把這個原則叫做 draft-only enforcement。
為什麼不讓 AI 直接發布?
因為臨床決策的最終責任在醫師身上。
AI 可以根據 VAS 趨勢建議「疼痛改善中,建議進階」,但它不知道今天門診時病患走進來時看起來很不舒服。它不知道病患昨天跌倒了。它不知道病患對某個處方有心理抗拒。
這些 context 是 AI 目前無法完全掌握的。所以正確的做法是:AI 提供草稿,醫師在 30 秒內掃一眼、修改、確認。而不是 AI 直接寫進正式紀錄。
兩條路線:你用 App 還是 CLI?
大多數骨科醫師的 AI 工具是手機上的 ChatGPT 或 Gemini,不是 terminal 裡的 CLI。所以我們設計了兩條路線,都通往同一個目標:醫師不用打字。
Path A:App 用戶(多數醫師)
這是最常見的使用方式:
- 助理/PT 在 Doctor PWA 填完 Step 1(VAS、傷口)和 Step 2(ROM、測試)
- 按下「AI 輔助 SOAP」按鈕 — 系統自動生成一段 prompt,包含今天量測的所有數字,但不含任何病患姓名或身分證
- Prompt 自動複製到剪貼簿 + 一鍵跳轉到 ChatGPT / Gemini / Claude
- 助理對 AI 口述病人狀況:「這位阿嬤術後六週,走路還會痛,但比上次好很多,膝蓋腫脹消了」
- AI 回覆 SOAP notes → 複製回 Doctor PWA → 系統自動解析成 S/O/A/P 四欄
- 助理存為草稿
- 醫師親自看診後,開 PWA 看到「待確認」→ 掃一眼 → 確認
iRehab 本身不會把任何病患可識別資訊傳到 AI。 Prompt 只包含格式指令和臨床數字(VAS 3/10、ROM 120/0、effusion: none)。醫師或助理在外部 AI 工具中說了什麼,是他們自己的臨床行為。
Path B:CLI 用戶(進階醫師)
少數醫師用 Claude Code、Gemini CLI 等命令列工具。這條路線更強大:
- AI 透過 MCP Server 直接讀取病患資料(有 API Token 授權 + PII 自動移除)
- 醫師說:「王先生術後六週,ROM 120/0,可以進階」
- AI 自動填入欄位、追問缺漏項目、存為草稿
- 醫師在 PWA 確認
Path B 的 AI 有完整的 patient context(VAS 趨勢、PROM 分數、上次評估),所以生成的 SOAP 品質更高。但需要設定 API Token(3 分鐘)。
三角分工:助理 + AI + 醫師
台灣骨科門診的現實:一個時段 30-50 位病人,醫師平均每人 3-5 分鐘。醫師的核心價值在臨床判斷,不在打字。
我們把工作拆成三份:
| 角色 | 做什麼 | 不做什麼 |
|---|---|---|
| 助理 / PT | 量 ROM、記 VAS、填傷口狀態、按 AI 輔助 SOAP、對 AI 口述病情、存草稿 | 不做臨床判斷、不決定 progression |
| AI | 把口述轉成結構化 SOAP、解析填入四欄 | 不自動發布、不取代醫師診察 |
| 醫師 | 親自看診(觸診、問診)、審閱 SOAP 草稿、確認或修改 | 不用打字、不用記欄位在哪 |
醫師 key in 量 = 0。只需要:看、改(如果有需要)、確認。
技術架構
| 層級 | 說明 |
|---|---|
| MCP Server v2.0.0 | 2 支寫入工具(draft_assessment, draft_prescription)+ 6 支讀取工具(趨勢、警報、PROM 等) |
| API 預設拒絕 | 白名單制 — 只有明確列在 allowlist 的 endpoint 才能被 AI Token 存取 |
| Draft-only enforcement | API 層面強制:AI Token 只能寫入 status=draft 的紀錄,無法直接設定 status=published |
| Scope 管理 | 醫師在 Doctor PWA 的 Token Scope 管理 UI 中,明確授權哪些寫入權限 |
安全邊界
我們對 Doctor AI 設定了明確的安全邊界:
AI 可以做的
- 讀取病患的復健資料(VAS、PROM、運動紀錄、評估歷史)
- 根據醫師口頭交代,起草評估紀錄(SOAP notes + ROM + VAS + 積液 + progression)
- 起草運動處方(從運動庫選取項目、設定組數次數)
- 追問醫師未提到的欄位(這是 AI 工具的自然對話能力,不是 server 功能)
- 產生趨勢分析和週報
AI 不能做的
- 直接發布任何紀錄(必須經醫師確認)
- 直接推進 phase(phase advancement 延遲到醫師確認草稿時才執行)
- 起草術式紀錄或自費紀錄(目前僅支援評估和處方)
- 存取個資(身分證、電話、Email 自動移除)
- 存取超出該醫師權限範圍的病患資料
- 自動診斷或自動開立處方
如果 AI 寫錯了?
不會有任何後果 — 因為它只是草稿。醫師在確認前看到任何問題,直接刪除或修改即可。草稿不會進入病患的正式紀錄,不會影響 PROM 排程,不會觸發任何臨床流程。
BYO-LLM:不綁定,不代管
另一個設計決策:iRehab 不內嵌特定的 AI 聊天框。
我們提供標準的 MCP Server 和 API Token 介面,讓醫師自由選擇 AI 工具。Claude Code、Gemini CLI、Codex CLI、本地模型 — 都可以。
理由很簡單:
- AI 模型半年就換一代 — 綁定特定供應商是短視的
- 資料主權 — 醫師選擇哪個 AI 供應商,就決定了資料經過誰的伺服器。Enterprise 版通常不會留存資料
- 成本 — 不同的 AI 供應商有不同的定價。醫師應該有選擇權
iRehab 的角色是提供安全的資料存取層,而不是成為 AI 供應商。
出嘴巴就好:語音輸入 + AI 填表
一個常見的問題:「我不想打字,可以用說的嗎?」
答案是可以,而且不需要任何額外設定。
iPhone、Mac、Android 都內建了聽寫功能 — 在任何輸入框點麥克風鍵就能用。醫師在 AI 工具的輸入框裡按麥克風,講完送出,AI 就會把自然語言對應到表單欄位。
這不需要「訓練」模型。MCP Server 定義了每個欄位的 schema(ROM 的屈曲/伸直、VAS 0-10、積液分級等),LLM 讀了 schema 就知道怎麼對應。醫師說「屈曲一百二,伸直零度」,AI 自動填入 kneeFlexion: 120, kneeExtension: 0。
用 CLAUDE.md 定義你的快捷語
如果你用 Claude Code,可以在專案的 CLAUDE.md 裡寫你的慣用語:
# 我的慣用語
- 「可以進」= progressionDecision: advance
- 「退一階」= progressionDecision: regress
- 「腫」= effusionGrade,問我程度
- 沒提到的欄位一律問我,不要自己猜
AI 每次都會遵守這些規則,等於用自然語言定義了一套快捷指令。其他 AI 工具也有類似的系統提示詞設定。
目前的限制
- 系統聽寫對中文日常用語辨識率很高,但英文醫學縮寫(ROM、VAS、TKA)偶爾會聽錯
- 不能邊講邊看 AI 即時填入 — 要講完送出後 AI 才處理
- 語音輸入的品質取決於你的設備和環境,不是 iRehab 可以控制的
信任但驗證
「Draft-only enforcement」這個名字借鑑了一個老原則:信任但驗證(Trust but verify)。
我們信任 AI 的能力 — 它確實可以根據資料產出合理的臨床評估草稿。但我們也驗證 — 每一筆草稿都必須經過人類醫師的眼睛和判斷。
這不是對 AI 的不信任。這是對「臨床決策必須有人類在 loop 中」的堅持。
在 AI 技術持續進步的過程中,draft-only 是一個可以逐步放寬的起點。當 AI 的可靠性提升到一定程度,我們可以考慮更多的自動化。但起步時,寧可保守。
醫師的手不用碰鍵盤
最後,回到最初的問題:醫師最討厭的工作。
有了 AI SOAP Assist,門診流程從:
醫師看診 → 醫師打字 → 醫師存檔(每人 5-10 分鐘)
變成:
助理量測 → 助理 + AI 生成 SOAP → 醫師看診 → 醫師確認(每人 30 秒-1 分鐘)
醫師不需要記得每個欄位在哪裡、不需要從零開始寫 SOAP notes、不需要碰鍵盤。省下來的 60% 打字時間,可以花在真正需要醫師做的事 — 觸診、問診、跟病患多說兩句話。
Path A(手機 ChatGPT):不需要任何設定,打開 Doctor PWA 就能用。 Path B(CLI/MCP):在 Doctor PWA「我的」→「API Token」頁面產生 Token,連接你慣用的 AI 工具。設定只需要 3 分鐘。
