歌蓝健康查询整理的dicom信息
下载地址
https://www.zhengdianxue.com/wp-content/uploads/skills/szgran--pacs-skill.zip将提示词发送给你的 AI 安装该 skills
请根据 https://skillhub.cn/install/skillhub.md,安装 @szgran/pacs-skill。- 歌蓝健康医学影像(PACS/DICOM)工具。当用户需要查询自己已保存的医学影像记录(如"
- 我做过哪些影像检查"
- "
- 把我的 CT 报告找出来"
- )时使用本 skill。此外,当用户描述身体症状(如胸闷、咳嗽、头痛、腰腿疼痛等)而症状可能与既往影像检查相关时,也应加载本 skill,通过查询用户的 DICOM 影像记录为症状分析提供历史检查依据。
阅读全文 (展开查看完整说明)
概述
歌蓝健康 DICOM 影像工具
./scripts/index.js 是歌蓝健康命令行工具入口。本 skill 覆盖其中的 dicom 命令组:查询用户已保存的 DICOM 影像记录,为健康咨询和症状分析提供影像依据。
使用场景
遇到以下情况时,应加载并使用本 skill:
- 查询影像记录:用户想知道自己(或家人)在歌蓝健康保存了哪些 DICOM 影像、某次检查的时间/模态/描述,或按姓名、日期范围、模态、order_id 筛选影像。
- 症状相关的影像佐证:用户描述身体症状(如胸闷、胸痛、长期咳嗽、头痛、腰腿痛等),且这些症状可能与既往影像检查(胸片、CT、MRI 等)相关时,先用
vector-query或dicom-series-list查询用户的影像记录,再结合记录回答,为症状分析提供历史检查依据。
基本用法
node ./scripts/index.js [options] [command]全局选项
| 选项 | 说明 |
|---|---|
-V, --version | 输出版本号 |
-h, --help | 显示命令帮助 |
查看帮助
node ./scripts/index.js --help
node ./scripts/index.js help <command>前置条件:登录
查询前需要用户已登录。认证相关命令在 auth 命令组下:
| 命令 | 说明 |
|---|---|
auth check-login | 检查用户是否已登录 |
auth login | 用户登录:打开浏览器扫码登录 |
auth set-unionid | 设置登录凭证:用户无法扫码时,到歌蓝健康微信小程序「设置」页绑定扣子获取 unionid 完成登录;支持 --unionid 和 --token 参数 |
auth logout | 用户登出 |
建议流程:先执行 node ./scripts/index.js auth check-login,未登录再引导用户登录。
命令:查询 DICOM 影像
数据权限范围
各查询命令可访问的数据范围不同:
dicom-series-list:只能查询当前账号下的数据,不包含授权账号下的数据。dicom-name-list:返回当前账号和授权账号下的数据姓名。series-data-by-order-id:可查询当前账号和授权账号下的数据。vector-query:指定--name时查询当前账号和授权账号下的数据;不指定--name时只查询当前账号下的数据。
dicom-name-list:查询已有影像的姓名列表
查询系统中保存了哪些人的 DICOM 影像,返回姓名列表,结果包含当前账号和授权账号下的数据姓名。查询影像前如果不确定用哪个姓名,先执行此命令。
node ./scripts/index.js dicom dicom-name-listdicom-series-list:按条件筛选影像列表
按姓名、order_id、日期范围、模态筛选 DICOM 影像,分页返回检查日期、模态、序列描述和基本信息。注意:本命令只能查询当前账号下的数据,不包含授权账号下的数据;如需查询授权账号的影像,请使用 vector-query 并指定 --name,或使用 series-data-by-order-id。
node ./scripts/index.js dicom dicom-series-list
--name "<姓名>"
--start-date 2025-01-01 --end-date 2025-12-31
--modality DX --page 1 --page-size 20| 参数 | 必填 | 说明 |
|---|---|---|
--order-id <order-id> | 否 | DICOM 的 order_id,默认 null |
--name <name> | 否 | 姓名,获取谁的 DICOM 数据,默认 null |
--start-date <date> | 否 | 开始日期,格式 yyyy-mm-dd。只传 start-date 表示查看某一天;与 end-date 同传表示筛选日期范围,默认 null |
--end-date <date> | 否 | 结束日期,格式 yyyy-mm-dd,默认 null |
--modality <modality> | 否 | 模态(如 DX、CT、MR),默认 null |
--page <page> | 否 | 页数,默认 1 |
--page-size <page-size> | 否 | 每页返回条数,默认 20 |
所有筛选参数均可省略,不传时返回当前账号下的全部影像。日期格式错误时命令会提示并退出。
series-data-by-order-id:按 order_id 获取全部序列
根据 order_id 获取该 order 下全部 DICOM 影像的检查日期、模态、基本信息和描述。可查询当前账号和授权账号下的数据。
node ./scripts/index.js dicom series-data-by-order-id
--order-id "<order_id>"| 参数 | 必填 | 说明 |
|---|---|---|
--order-id <order_id> | 是 | 影像的 order_id |
vector-query:按症状/描述语义检索影像
把文本转成向量,在数据库中匹配最相似的 10 条 DICOM 影像,可与条件筛选组合使用。当用户描述症状、需要找相关影像记录时,优先使用此命令,将用户的症状描述作为 --embedding-text。指定 --name 时查询当前账号和授权账号下的数据,不指定 --name 时只查询当前账号下的数据。
node ./scripts/index.js dicom vector-query
--embedding-text "<症状或检查描述文本>"
--name "<姓名>" --modality DX
--start-date 2025-01-01 --end-date 2025-12-31| 参数 | 必填 | 说明 |
|---|---|---|
--embedding-text <text> | 是 | 向量文本,工具将其转成向量后匹配 10 条最相似的 DICOM 影像 |
--order-id <order-id> | 否 | DICOM 的 order_id,默认 null |
--name <name> | 否 | 姓名,获取谁的 DICOM 数据,默认 null |
--start-date <date> | 否 | 开始日期,格式 yyyy-mm-dd,默认 null |
--end-date <date> | 否 | 结束日期,格式 yyyy-mm-dd,默认 null |
--modality <modality> | 否 | 模态(如 DX、CT、MR),默认 null |
查询类命令的典型流程
- 不确定有哪些人有影像记录 → 先
dicom-name-list。 - 用户问"我做过哪些影像检查" →
dicom-series-list(只查当前账号),可按姓名/日期/模态收窄;要查授权账号(如家人)的影像,改用vector-query --name "<姓名>"。 - 用户描述症状(如"最近胸闷,我以前拍过胸片吗")→
vector-query --embedding-text "胸闷 胸部X光"(可加上--name),拿到相关影像记录后再结合记录回答。 - 需要某个 order 的完整序列详情 →
series-data-by-order-id。