An open API service indexing awesome lists of open source software.

https://github.com/chenhaodev/agentrndplan


https://github.com/chenhaodev/agentrndplan

Last synced: 26 days ago
JSON representation

Awesome Lists containing this project

README

          

# agentrndplan · 主观数字医疗 roadmap 评议 (subjective digital-medicine roadmap review)

> 不是再做一个数据库,而是给数字医疗的**信息源**和**R&D 实体**写**专家判语**:这个源信不信、这条线押不押,并把它折成未来 **1–2 年的双 MOA**(Mixture-of-Agents / Mechanism-of-Action)视图。

## 一分钟看懂(无需 AI 或医学背景)

想了解"数字医疗未来一两年往哪走",你会去查 MobiHealthNews、DiMe、npj Digital Medicine……但两个麻烦:
1. **源本身良莠不齐** —— 有的是 Nature 系顶刊、有的是行业自媒体、有的是监管机构,可信度天差地别;
2. **热度 ≠ 价值** —— 一家公司在 X/LinkedIn 上声量很大,不代表它的临床证据硬。

agentrndplan 用**两层**把这件事讲清楚,每条都以**人签字的主观判语**收尾:

- **源层(source)** —— 这个信息源谁在办、覆盖什么、权威从哪来(引用/机构/临床/监管)vs 只是声量大?**该不该信它。**
- **实体层(entity)** —— 一个公司/数字疗法/biomarker/FDA 项目,证据多硬、融资/监管到哪一步、**被哪些源背书**?**值不值得押。**

事实部分由 AI 整理;**判语只能由专家**(本仓:chenhao)写。产物是一个 GitHub 页面,给两类人看:① 非 AI/非领域人士科普查阅;② 跨领域的人快速画一张 1–2 年的数字医疗 **MOA** 草图。

## 两层 + 背书链:和"再做一个榜单/数据库"的不同

```
源层 npj / Lancet DH / DiMe / DTA / FDA DHCoE / MobiHealthNews
│ backed_by 背书(实体回链到为它背书的源)
实体层 EndeavorRx ──► Lancet DH(RCT) + FDA DHCoE(De Novo) + MobiHealthNews(报道)
│ 汇总(只取签字的)
roadmap 双透镜:Mixture-of-Agents 草图 / Mechanism-of-Action 路线
```

> **聚合器回答"有哪些";agentrndplan 回答"信不信、押不押"。** 差异化是**专家判语层 + 跨层背书链**,不是再聚合一次信息。实体引用了不存在的源,会被发布门禁机械挡下。

## 一个源/实体值不值得信:看什么 metric

不同"热度"是**几条不同的轴**,schema 把它们显式分开,避免把声量当质量:

| 轴 | 含义 | schema 字段 |
|---|---|---|
| **声量** popularity | SEO/PageRank、X/LinkedIn/Reddit 声量,**会被刷,≠好** | `popularity`(`seo` / `social`) |
| **权威** authority | 引用数、背书机构、临床参与、监管定位 | `authority`(`citation_count` / `impact_factor` / `clinician_involvement` / `regulatory_standing`) |
| **证据** evidence(实体) | RCT / 同行评审 / 真实世界,临床终点 | `evidence.grade` / `evidence.endpoints` |

> **医疗领域 popularity 是弱信号**:真正决定可信度的是 `authority`(机构/临床/引用/监管)+ 临床真实度。社交平台分层用——**X**=launch/buzz、**LinkedIn**=临床/机构信号(指向真论文)、**Reddit**=从业者现实检验——三者都只作 leads,绝不当 authority。详见 [docs/SOURCING.md](docs/SOURCING.md)。

## 双 MOA:一份证据,两个受众

实体层每条都填两个并列视角(只填事实字段,判断留给判语):

- **透镜 A · Mixture-of-Agents**(给 AI 非领域人)—— `capability_axes` / `modalities` / `access` / 在 MoA 里的 `agent_role`。注:受监管的 SaMD/固定算法产品**不是 model-selection 候选**,只作"干预执行"等模块。
- **透镜 B · Mechanism-of-Action**(给 biotech 人)—— `therapeutic_area` / `mechanism` / `target_endpoint` / `maturity`。

综合页 [`roadmap.html`](bin/render_site.py) 把已签实体折成这两个透镜,**只做事实编排,不做判断**。

## 已收录(草稿 — 待专家签字)

**源层 sources**(覆盖 4 个 genre):

| 源 | genre | 权威信号 | 状态 |
|---|---|---|---|
| [npj Digital Medicine](entries/sources/npj-digital-medicine.md) | journal | Springer Nature,2018,IF 15.1(2024),临床主编 | draft |
| [The Lancet Digital Health](entries/sources/lancet-digital-health.md) | journal | Elsevier,2019,IF 23.8(2023) | draft |
| [Digital Medicine Society (DiMe)](entries/sources/dime-society.md) | community | Library of Digital Endpoints / DATAcc / V3 框架 | draft |
| [Digital Therapeutics Alliance (DTA)](entries/sources/dtx-alliance.md) | community | DTx 定义与政策口径,17 国(被 ATA Action 收购) | draft |
| [FDA Digital Health Center of Excellence](entries/sources/fda-dhcoe.md) | regulator | CDRH,SaMD/AI 设备政策,2026 TEMPO pilot | draft |
| [MobiHealthNews](entries/sources/mobihealthnews.md) | outlet | "publication of record",2008,归 HIMSS Media | draft |

**实体层 entities**:

| 实体 | type | 证据/监管 | 背书源 | 状态 |
|---|---|---|---|---|
| [EndeavorRx (AKL-T01)](entries/entities/endeavorrx.md) | dtx-product | Lancet DH RCT + FDA De Novo(首个游戏化 DTx) | Lancet DH / FDA DHCoE / MobiHealthNews | draft |

> 找源/实体用**"genre × 来源"普查**,不靠名字搜(否则系统性漏掉监管文件、shared task、区域源)。检索法与待补缺口见 **[docs/SOURCING.md](docs/SOURCING.md)**。

## 人在环中:草稿 → 签字 → 发布

整个流程把**人和 AI 的笔分开**(详见 [CLAUDE.md](CLAUDE.md) 的 Integrity rules):

1. **草稿**:AI 把 `## Agent summary`(先核实再写,纯事实)写好,`## Expert verdict` 留空。
2. **签字**:**专家在自己的编辑器里**写 `## Expert verdict` 判语,并填 `expert_verdict` frontmatter(`signed_by` / `signed_date` / `confidence` / `one_liner`)。
- 这一步不是工具调用,所以 `hooks/guard_verdict.py` 不拦你;但它会**拦住 AI** 代写判语区。
3. **发布**:`check_publish.py` 只放行**已签字**条目进页面("草稿可提交,发布需签字")。

```bash
pip install pyyaml jsonschema # 仅校验/门禁用,无运行时框架
python3 bin/check_publish.py # 发布门禁:未签=拦截;实体悬空 backed_by=拦截
python3 bin/check_publish.py --schema-only # CI 硬门禁(schema + backed_by 跨层完整性)
python3 bin/render_site.py # 渲染:只出已签条目(CI 部署用)
python3 bin/render_site.py --include-drafts # 本地预览:含未签草稿(标 DRAFT,不显判语)
cd site && python3 -m http.server # 浏览器开 localhost:8000 看
```

## 数据契约与项目结构

数据优先:**schema 就是契约**,渲染与工具都薄。

```
SKILL.md 本 repo 即 Skill;触发后教 agent 走整套工作流
schema/entry.schema.json 单文件 + kind 判别器(source / entity 共享块,if/then 切必填)
entries/sources/.md 源层条目(genre / authority / popularity / coverage)
entries/entities/.md 实体层条目(entity_type / backed_by / regulatory / evidence / 双 MOA)
entries/_TEMPLATE_*.md 起草模板(source / entity)
bin/check_publish.py 发布门禁 + backed_by 跨层完整性(--schema-only 为 CI 硬门禁)
bin/render_site.py 静态站点(两层 + 双 MOA roadmap;默认只渲染已签,--include-drafts 预览)
hooks/guard_verdict.py PreToolUse:禁止 AI 代写专家判语
hooks/validate_entry.py PostToolUse:写入即按 schema 校验(草稿放行)
docs/SOURCING.md 按"genre × 来源"普查的发现法 + 候选池
CLAUDE.md 决策、完整性规则、语言约定、hook 与门禁说明
```

## 作为 Skill 使用

本 repo 即一个 [Claude Code Skill](SKILL.md)(开放 `SKILL.md` 格式)。安装:`ln -s "$PWD" ~/.claude/skills/agentrndplan`。触发后,它教 agent 走完整工作流:**发现(genre×来源普查)→ 起草(先核实再写,源层或实体层,判语留空)→ 校验(schema + backed_by)→ 交专家签字 → 渲染/部署**,并强制"AI 写事实、专家签判语"的边界。

## 设计取舍

- **CLI / docs-as-data,不做 TUI**:Skill 的交互界面是 agent 对话,TUI agent 驱动不了。若日后需要高频比对式人工评审,再在同一份数据上加一个轻量 TUI 视图。
- **单 schema + kind 判别器,而非两份文件**:源/实体共享 ~60% 字段,单文件用 `if/then` 切必填,避免两份 schema 漂移。
- **双 MOA 不进每条 entry 当观点**:entry 只存选择相关的事实字段,两个透镜的判断留给 `roadmap` 综合页与专家判语。