病人端慢病管理异常指标预警。参考 Open Wearables 的 trends/anomalies reasoning 部分,构建慢病闭环能力。
---
name: med-patient-abnormal-indicator-alert
description: 病人端慢病管理异常指标预警。参考 Open Wearables 的 trends/anomalies reasoning 部分,构建慢病闭环能力。
metadata:
{
"openclaw":
{
"emoji": "⚠️"
}
}
---
# 异常指标预警
概述
----
本 skill 对应:病人端 / 慢病管理 / 异常指标预警。
要求:慢病闭环能力。
来源核验
--------
- 匹配来源:Open Wearables
- 来源类型:公开开源健康数据平台
- 来源链接:https://openwearables.io/
- 匹配结论:部分匹配且可参考。Open Wearables 明确包含 health scoring、trends、anomalies、MCP 和可调阈值思路;本 skill 只借鉴异常识别结构,不照搬其可穿戴设备指标体系。
参考部分
--------
只参考 Open Wearables 的 **trends/anomalies reasoning** 部分:
- 指标阈值
- 趋势识别
- 异常识别
- 风险提示
- 可解释建议
不参考部分
----------
- 不参考可穿戴设备接入
- 不参考睡眠、恢复、运动负荷等非慢病指标
- 不参考完整平台部署
- 不扩展为临床诊断系统
构建方式
--------
OpenClaw 中应构建为一个独立的预警型 skill:
- 输入血糖、血压、心率等慢病指标记录
- 根据配置阈值判断是否异常
- 输出异常等级、异常原因和建议动作
- 对连续异常或明显超阈值记录给出复诊/随访提示
建议输入字段
------------
- `indicator_type`:指标类型,如血糖、血压、心率
- `value`:指标值或指标对象
- `unit`
- `measured_at`
- `threshold_profile`:阈值配置
建议输出字段
------------
- `skill`:`异常指标预警`
- `indicator_type`
- `is_abnormal`
- `alert_level`
- `reason`
- `suggested_action`
医疗边界
--------
本 skill 只做基于规则的异常提示,不做诊断,不给出治疗方案。
快速开始
--------
从本 skill 目录执行:
```bash
python3 scripts/run.py --input input.json --output output.json --appkey YOUR_KEY
```
最小输入示例
------------
```json
{
"indicator_type": "blood_glucose",
"value": 11.2,
"unit": "mmol/L",
"measured_at": "2026-04-29 08:00",
"threshold_profile": {
"high": 10.0
},
"suggested_action": "按既定随访规则提醒用户关注"
}
```
说明
----
本 skill 不内置医学阈值;所有阈值必须由调用方通过 `threshold_profile` 提供。
输出约定
--------
输出 UTF-8 JSON,采用统一格式:
```json
{
"skill": "技能名称",
"status": "ok",
"data": { /* 结构化数据 */ },
"text": "API 生成的 Markdown/自然语言内容,OpenClaw 直接渲染给用户"
}
```
- `data`:本地预处理得到的结构化数据
- `text`:内部医疗大模型生成的自然语言解读/分析/提醒,Markdown 格式
支持的输入格式
--------------
除 JSON 外,还支持以下格式(通过 `--input-type` 自动检测或手动指定):
| 格式 | 说明 |
|------|------|
| JSON | 默认,直接读取结构化输入 |
| CSV / XLSX / XLS | 表格数据,按列头自动映射字段 |
| TXT / MD | key:value 文本格式(支持中文/英文字段名) |
| PDF / DOC / DOCX | 文档,提取文本后解析 |
| PNG / JPG 等图片 | OCR 提取文本后解析 |
文本格式示例
-----------
```
指标类型:blood_glucose
值:11.2
单位:mmol/L
```
CSV 格式示例
-----------
```
指标类型,值,单位
blood_glucose,11.2,mmol/L
```
统一入口附加参数
----------------
- `--input-type auto|pdf|doc|docx|xls|xlsx|csv|txt|json`:输入类型;默认 `auto`。
- `--sheet STRING`:读取 Excel 时指定 sheet(可选)。
- `--encoding STRING`:`txt/csv` 编码(默认:`utf-8`)。
- `--save-prepared`:保存预处理后的 JSON,便于调试。
- `--appkey STRING`:**必填**。调用内部医疗大模型的鉴权 key,由平台分配。
依赖
----
### 运行环境
- Python 3.7+
### Python 第三方包(可选,按输入格式需要)
| 包名 | 用途 | 必要条件 |
|------|------|---------|
| `openpyxl` | 读取 `.xlsx` 文件 | 输入为 xlsx 时必须 |
| `pypdf` | 提取 PDF 文本 | 输入为 pdf 时必须 |
### 外部工具(可选,按输入格式需要)
| 工具 | 用途 | 必要条件 |
|------|------|---------|
| LibreOffice (`soffice`) | 转换 `.doc` / `.xls` | 输入为 doc/xls 时必须 |
| `pdftotext`(poppler-utils) | 提取 PDF 文本 | 输入为 pdf 且未安装 pypdf 时 |
| `tesseract`(含 chi_sim+eng) | 图片 OCR | 输入为图片时必须 |
> 仅使用 JSON 输入时,无需安装任何第三方包或外部工具。
模型配置
--------
本 skill 执行时通过内部医疗大模型进行推理:
- endpoint:`https://maas-api.hivoice.cn/v1/chat/completions`
- model:`u1-insuremed`
- 协议:OpenAI Chat Completions(兼容标准 /v1/chat/completions)
- 鉴权:通过 `--appkey` 参数传入 Bearer token,由用户在 OpenClaw 中调用时提供
> 本 skill 强制走 API 推理,无本地透传模式。
don't have the plugin yet? install it then click "run inline in claude" again.