Installs: 0
Used in: 1 repos
Updated: 0mo ago
$
npx ai-builder add command huifer/save-reportInstalls to .claude/commands/save-report.md
# 保存医疗检查单
你需要保存用户提供的医疗检查单到个人医疗数据中心。
**参数说明:**
- `image_path`(必填):检查单图片的本地路径
- `exam_date`(可选):检查日期,格式为 YYYY-MM-DD。如果提供此参数,将直接使用该日期;如果未提供,将从图片中自动提取日期。
## 任务步骤
1. **检查参数**
- 检查用户是否提供了 `exam_date` 参数
- **如果提供了 `exam_date`:**
- 验证日期格式是否为 YYYY-MM-DD
- 直接使用该日期作为检查日期
- 在分析图片时仍然提取日期信息用于验证,但不覆盖用户提供的日期
- **如果未提供 `exam_date`:**
- 从图片中自动提取日期(遵循下方"日期提取规则")
2. **读取并分析图片**
- 使用 Read 工具读取用户提供的检查单图片
- 使用 mcp__4_5v_mcp__analyze_image 工具分析图片内容,**重点提取日期信息**
**图片分析提示词模板(生化检查):**
```
请详细识别这张医疗检验报告单中的所有信息,包括:
1. **日期时间信息(最重要):**
- 采样时间/标本采集时间
- 送检时间/送样时间
- 检测时间/报告时间
- 其他日期标识
2. 医院/检验机构名称
3. 检验项目和结果:
- 检验项目名称
- 检验数值
- 单位
- 参考范围(最小值和最大值)
- 异常标识(箭头↑↓或其他)
请按结构化格式列出所有信息,日期时间请特别标注并说明是哪种类型的时间。
```
**图片分析提示词模板(影像检查):**
根据检查类型使用对应的提示词模板(见下方"影像检查详细分析模板")
- 识别检查单类型:生化检查 vs 影像检查
3. **提取数据**
分析图片内容并提取以下信息:
**日期确定规则(重要):**
- **优先级1(最高):** 用户通过 `exam_date` 参数提供的日期
- **优先级2:** 图片中的采样时间(如"采样时间"、"标本采集时间")
- **优先级3:** 图片中的送样时间(如"送检时间"、"送样时间")
- **优先级4:** 图片中的检测时间/报告时间(如"检测时间"、"报告时间")
- **优先级5:** 图片中的其他日期标识(如"检查日期"、"检验日期")
- **优先级6(最低):** 仅当以上所有时间都无法提取时,才使用当前日期作为备选
**日期格式处理:**
- 识别并转换各种日期格式:YYYY-MM-DD、YYYY/MM/DD、YYYY年MM月DD日、MM-DD-YYYY等
- 统一转换为 YYYY-MM-DD 格式存储
**如果是生化检查(验血、验尿等):**
- 检查日期(按上述优先级确定)
- 各项检查指标:
- 检查项目名称
- 检查数值
- 单位
- 参考区间(最小值、最大值)
- 是否异常(带箭头标识的)
**如果是影像检查(B超、CT、MRI、X光等):**
- 检查日期(按上述优先级确定)
- 检查类型(B超/CT/MRI/X光/内窥镜/病理/心电图/乳腺钼靶/PET-CT等)
- 检查部位
- 检查所见/描述(详细的影像学描述)
- 测量数据(尺寸、数值等具体测量参数)
- 检查结论/诊断意见
- 特异性指标(根据不同检查类型提取,见下方影像检查详细分析模板)
4. **生成数据文件**
根据检查类型生成 JSON 文件:
**文件路径格式:**
- 生化检查:`data/生化检查/YYYY-MM/YYYY-MM-DD_检查类型.json`
- 影像检查:`data/影像检查/YYYY-MM/YYYY-MM-DD_检查类型_检查部位.json`
**JSON 数据结构:**
生化检查:
```json
{
"id": "{{生成唯一ID,使用日期+时间戳}}",
"type": "生化检查",
"date": "YYYY-MM-DD",
"hospital": "医院名称(如能识别)",
"original_image": "images/{{原始图片文件名}}",
"items": [
{
"name": "检查项目名称",
"value": "检查值",
"unit": "单位",
"min_ref": "参考区间最小值",
"max_ref": "参考区间最大值",
"is_abnormal": true/false
}
]
}
```
影像检查(通用结构,根据检查类型扩展):
```json
{
"id": "{{生成唯一ID,使用日期+时间戳}}",
"type": "影像检查",
"subtype": "B超/CT/MRI/X光/内窥镜/病理/心电图/乳腺钼靶/PET-CT",
"date": "YYYY-MM-DD",
"hospital": "医院名称(如能识别)",
"body_part": "检查部位",
"findings": {
"description": "检查所见描述",
"targets": [
{
"name": "病灶/监测目标名称",
"location": "具体位置",
"size": {
"length": "长径数值",
"width": "短径数值",
"height": "高度数值(如有)",
"unit": "单位"
},
"characteristics": {
"morphology": "形态描述",
"border": "边界描述",
"density": "密度/回声/信号描述",
"other_features": "其他特征"
}
}
],
"measurements": {},
"conclusion": "检查结论/诊断"
},
"original_image": "images/{{原始图片文件名}}"
}
```
5. **保存数据**
- 创建月份目录(如不存在)
- 创建 images 子目录(如不存在)
- **复制原始图片**到对应目录:
- 生化检查:`data/生化检查/YYYY-MM/images/`
- 影像检查:`data/影像检查/YYYY-MM/images/`
- 保存 JSON 数据文件
- 更新全局索引 `data/index.json`
6. **更新索引**
在 `data/index.json` 中添加新记录的索引信息:
```json
{
"records": [
{
"id": "记录ID",
"type": "生化检查/影像检查",
"date": "YYYY-MM-DD",
"file_path": "相对路径"
}
]
}
```
7. **报告结果**
向用户报告:
- 成功保存的检查类型
- 检查日期
- 提取到的关键数据摘要
- 保存的文件路径
## 注意事项
- **用户提供的 `exam_date` 参数具有最高优先级**,如果提供了该参数,将直接使用而不从图片中提取
- 如果未提供 `exam_date` 参数,则从图片中自动提取日期(优先采样/送样/检测时间)
- 如果提供了 `exam_date` 参数,仍需验证格式是否为 YYYY-MM-DD
- 如果图片模糊或无法识别某些数据,尽最大努力提取可识别的内容
- 如果无法确定检查类型,询问用户
- 所有日期统一使用 YYYY-MM-DD 格式
- 数值保持原始格式,不要转换
- 如果某项数据缺失,该字段设为 null
- 保持 JSON 格式正确,使用中文双引号
- **所有检查(生化和影像)都需要保存原始图片**
## 影像检查详细分析模板
根据不同的影像检查类型,使用以下对应的提示词模板进行分析:
### **B超(彩超)检查提示词:**
```
请详细识别这张B超/彩超检查报告的所有内容,包括:
1. 检查日期
2. 医院名称
3. 检查部位:如甲状腺、乳腺、肝脏、胆囊、子宫附件等
4. 监测目标:明确识别报告中描述的"结节"、"囊肿"、"占位"、"息肉"等具体对象
5. 核心量化指标:精准提取尺寸描述,例如 15mm*10mm*8mm 或 大小约1.2x0.8cm,并解析为结构化的长、宽、高数值
6. 关键定性描述:
- 形态:类圆形、不规则形等
- 边界:清晰、模糊等
- 内部回声:低回声、强回声、无回声等
- 有无钙化:微钙化、粗大钙化
- 血流信号:CDFI描述
7. 诊断结论:提取"超声提示"或"诊断意见",如"甲状腺结节(TI-RADS 3类)"等重要分级结论
请以结构化的方式列出所有信息。
```
### **X光检查提示词:**
```
请详细识别这张X光检查报告的所有内容,包括:
1. 检查日期
2. 医院名称
3. 检查部位:如胸部、腰椎、膝关节、腹部等
4. 监测目标识别:明确识别"肺部结节"、"骨折线"、"关节间隙狭窄"、"心影增大"、"钙化影"、"实变影"、"积液"等
5. 核心量化指标提取:
- 尺寸:精准提取病灶的长径、短径、直径,如"大小约1.5cm*1.0cm"
- 角度/比率:如"心胸比率(CTR)"
- 距离/宽度:如"关节间隙宽度"
6. 关键定性描述:
- 形态:类圆形、不规则形、条索状、片状
- 边缘:清晰、模糊、毛糙、分叶状
- 密度/透亮度:高密度影、低密度影、磨玻璃影
- 伴随征象:胸膜牵拉、肺门增宽、骨质增生等
- 愈合情况:骨痂形成、对位对线情况
7. 诊断结论:提取"诊断意见"或"印象"
请以结构化的方式列出所有信息。
```
### **CT检查提示词:**
```
请详细识别这张CT检查报告的所有内容,包括:
1. 检查日期和扫描方式(平扫/增强扫描)
2. 医院名称和检查部位
3. 监测目标识别:识别"结节"、"肿块"、"囊性灶"、"占位性病变"、"淋巴结"等
4. 核心量化指标提取:
- 三维尺寸:如12mm*8mm,解析为结构化数据
- CT值/密度:提取病灶的CT值(亨氏单位HU),如"CT值约-720HU"或"强化后CT值达80HU"
- 治疗反应评估:如"较前增大/缩小"、"RECIST评估为SD/PR"
5. 关键定性描述:
- 形态与边缘:类圆形、分叶状、毛刺征、胸膜凹陷征等
- 内部特征:纯磨玻璃密度、混合磨玻璃密度、实性成分、空洞、钙化、坏死、脂肪密度
- 增强扫描特征:动脉期明显强化、静脉期廓清、环形强化
6. 诊断结论与分级:提取"影像诊断"或"印象",识别"肺结节(LUNG-RADS 4A类)"或"肝脏占位(LI-RADS 3类)"
请以结构化的方式列出所有信息。
```
### **核磁共振(MRI)检查提示词:**
```
请详细识别这张MRI检查报告的所有内容,包括:
1. 检查日期、检查部位、扫描序列(T1WI, T2WI, FLAIR, DWI, ADC)、是否使用对比剂
2. 监测目标识别:识别"病灶"、"异常信号灶"、"结节"、"肿块"、"椎间盘突出"、"半月板撕裂"等
3. 核心量化指标提取:
- 三维尺寸:如1.2cm*0.8cm
- ADC值:提取表观弥散系数(ADC)数值,如"ADC值为0.8×10⁻³mm²/s"
4. 关键定性描述:
- 信号强度特征:T1WI、T2WI、FLAIR、DWI序列上的信号表现
- 形态与边缘:类圆形、不规则形、边界清晰/模糊
- 增强扫描特征:不均匀结节状强化、环形强化、无明显异常强化
5. 诊断结论与分级:提取"影像诊断"或"印象",识别"乳腺病灶(BI-RADS 4级)"、"前列腺病灶(PI-RADS 3类)"
请以结构化的方式列出所有信息。
```
### **内窥镜(胃镜/肠镜)检查提示词:**
```
请详细识别这张内窥镜检查报告的所有内容,包括:
1. 检查日期、检查类型(胃镜/肠镜)、麻醉方式(普通/无痛)
2. 监测目标识别:识别"息肉"、"溃疡"、"糜烂"、"炎症"、"肿物"、"憩室"等
3. 核心量化指标提取:
- 精确位置:如"胃窦大弯侧"、"乙状结肠"、"距肛缘/门齿XX cm"
- 尺寸与数量:直径0.5cm,数量(3枚、多发)
4. 关键定性描述:
- 形态特征:亚蒂型、广基型、扁平型、Paris分型
- 表面特征:表面光滑、充血、糜烂、覆污秽苔
- 标准化分级:反流性食管炎(LA-A级)、溃疡Forrest分级
5. 操作与活检信息:
- 内镜下治疗:息肉切除术(EMR/ESD)、APC治疗、止血
- 活检:取活检的部位和数量
6. 诊断结论与病理结果:提取"内镜诊断"和关联的"病理诊断"
请以结构化的方式列出所有信息。
```
### **病理检查提示词:**
```
请详细识别这张病理检查报告的所有内容,包括:
1. 基础信息:病理号、送检日期、报告日期、送检标本
2. 核心诊断信息:
- 组织学类型:如"浸润性导管癌"、"腺癌"、"鳞状细胞癌"
- 分化程度/组织学分级:高/中/低分化、Gleason评分、Nottingham分级
- 肿瘤大小:病灶的最大径或三维尺寸
- 浸润情况:浸润深度、范围、是否侵犯周围器官
- 脉管与神经侵犯:是否存在脉管内癌栓或神经侵犯
- 手术切缘状态:切缘阴性/阳性
3. 淋巴结状态:送检淋巴结总数和转移淋巴结个数,如"淋巴结(2/15)"
4. TNM分期:病理学TNM分期
5. 免疫组化与分子病理结果:
- Ki-67增殖指数
- 雌激素受体(ER)、孕激素受体(PR)、HER2状态
- PD-L1表达水平(CPS/TPS评分)
- 错配修复蛋白(MMR/MSI)状态
请以结构化的方式列出所有信息。
```
### **心电图检查提示词:**
```
请详细识别这张心电图报告的所有内容,包括:
1. 检查日期、年龄
2. 核心量化指标提取:
- 心率(Heart Rate):如"心室率 78 次/分"
- PR间期(PR Interval)
- QRS时限(QRS Duration)
- QT/QTc间期
- 心电轴(QRS Axis)
3. 关键诊断性描述:
- 心律:窦性心律、心房颤动律、起搏心律
- 心律失常:偶发室性早搏、频发房性早搏、短阵房速
- 传导异常:一度房室传导阻滞、完全性右束支传导阻滞
- 心肌缺血/损伤表现:ST段和T波的异常描述
- 心室肥厚/负荷:左心室高电压
4. 最终诊断结论:提取"心电图诊断"或"结论"部分的所有条目
请以结构化的方式列出所有信息。
```
### **乳腺钼靶检查提示词:**
```
请详细识别这张乳腺钼靶检查报告的所有内容,包括:
1. 检查日期、年龄
2. 乳腺背景:识别乳腺致密性分级(ACR a/b/c/d型)
3. 病灶类型与特征:
- 肿块:大小、形态(卵圆形、圆形、不规则形)、边缘、密度
- 钙化:形态和分布(散在、区域、簇状、段样、线样)
- 结构扭曲和不对称致密
4. 伴随征象:皮肤或乳头凹陷、腋窝淋巴结情况
5. BI-RADS最终分级:精准提取BI-RADS 0-6类及对应的处理建议
请以结构化的方式列出所有信息。
```
### **PET-CT检查提示词:**
```
请详细识别这张PET-CT检查报告的所有内容,包括:
1. 基础信息:检查日期、显像剂类型(如 ¹⁸F-FDG)、注射剂量、检查时血糖水平
2. 监测目标识别:识别"高代谢病灶"、"放射性浓聚灶"、"异常代谢灶"
3. 核心量化指标提取:
- SUVmax(最大标准摄取值):精确提取病灶的SUVmax数值
- 其他代谢指标:SUVmean、MTV(肿瘤代谢体积)、TLG(总病灶糖酵解)
- 解剖尺寸:从CT描述部分提取病灶的长径、短径或三维大小
4. 关键定性描述:
- 代谢活性描述:FDG代谢轻度/中度/显著增高
- 病灶位置与范围:精确到解剖学位置
- CT部分描述:密度、边缘、有无钙化、坏死
5. 诊断结论与疗效评估:提取"影像诊断"或"印象",识别与疗效评估相关的标准化结论
请以结构化的方式列出所有信息。
```
## 示例输出
**使用方式1:自动从图片提取日期**
```bash
/save-report @医疗报告/血液检查.jpg
```
**使用方式2:手动指定检查日期**
```bash
/save-report @医疗报告/血液检查.jpg 2025-10-07
```
**输出示例:**
```
✅ 检查单保存成功!
类型:生化检查(血液常规)
日期:2025-10-07(使用用户指定日期)
提取到 15 项检查指标
文件路径:data/生化检查/2025-10/2025-10-07_血液常规.json
关键指标:
- 白细胞计数:6.5 ×10^9/L(正常)
- 血红蛋白:145 g/L(正常)
...
```Quick Install
$
npx ai-builder add command huifer/save-reportDetails
- Type
- command
- Author
- huifer
- Slug
- huifer/save-report
- Created
- 0mo ago