一、今日精选 5 条
1. santiagopatinoserna/AdelIA:把"临床承诺"从提示词里搬到代码里——每一条临床陈述都必须带引用,没有证据就整句拒答,红旗信号直接短路模型
地址:https://github.com/santiagopatinoserna/AdelIA | ★0 | AGPL-3.0 | Python | 个人医疗档案库 + AI 分析(自我分析 + 医生简报),FastAPI + pgvector RAG + Next.js,支持西/英/法三语
事件内容
窗口内 38 次提交(11-05 02:11Z ~ 11-06 02:11Z),主线是把临床规则写进代码并用测试钉死,而不是在提示词里"请求模型"遵守。
- ⭐ 本期最核心的动作是"答案契约"(
services/answer_contract.py)成为唯一事实来源:契约只写一次,RAG 对话与/dashboard的工具型 agent 两套 system prompt 都由它组装,因此二者不可能漂移。契约的内容是硬的:每一条临床陈述都必须携带一个[ev_N]引用,没有引用的解读不允许出现;拒答措辞与语言也在契约里固定;免责声明是页面的固定组件(clinical-disclaimer.tsx),不是"请模型自己写一句"。 - 红旗信号完全短路模型(
clinical/red_flags.py):11 条确定性检测规则(3 月龄内 ≥38°C 发热、不褪色皮疹、呼吸窘迫、发绀、抽搐、窒息、过敏性休克、囟门膨隆、嗜睡、12 小时无湿尿布、脱水),命中后代码直接返回固定转诊说明并附上依据的临床指南,全程不做任何检索、嵌入或生成调用。它刻意过度触发:假阳性只浪费一个电话,假阴性代价更大。 - "没有证据就没有答案"是一个被实测校准过的数字:临床检索在
evidence_max_distance = 0.19处切断,依据文档CALIBRACION_UMBRAL_EVIDENCIA.md给出方法与数字——保留 240/240 的语料内探针,拒绝 14/14 的语料外探针。当指南检索与用户自身记录都无命中时,对话直接返回代码里的no_evidence_reply(),不调用生成模型;agent 走同一个buscar_en_expediente工具路径,拿到的是同一个拒答。 - 抽取出来的引文必须是逐字原文(
workers/extract.py):模型必须给出 verbatim 的raw_quote,任何 quote 不是源文档子串的实体一律丢弃。这条由test_extract.py针对真实 Mistral API 断言——README 也诚实标注:没有 API key 的运行不会执行到这条规则。 - 患者侧阈值
patient_max_distance = 0.45明确标注"尚未校准",写进 roadmap 而不是当成一个已经成立的数字用。整套承诺由test_red_flags.py、test_answer_contract.py、test_chat_orchestrator.py、test_agent_orchestrator.py、test_evidence_threshold_integration.py五个测试文件钉住。 - 本期窗口内的具体提交包括:把 e2e job 钉在 ubuntu-24.04(Playwright 没有 26.04 的 Chromium)、给生产 API 传入
LAY_QUERY_EXPANSION且默认关闭、以及一条feat(agent): search the corpus with her words and the clinical terms——让 agent 用患者自己的话加临床术语去检索同一份语料。
值得关注的原因
- ⭐ 这就是我公众号(4P精准营养观察 / 健康100新一观察)"循证内容必须附参考文献、零 AI 幻觉"这句话最硬的工程形态——而且它把承诺放在代码里,不放在提示词里。 我现在的困境是:文章里的机制描述是 AI 写的,参考文献是我事后补的,两者之间没有强制关系。AdelIA 的做法是任何一条临床陈述没有
[ev_N]引用就根本不允许出现在输出里,而不是"尽量给引用"。这条规则可以直接搬进我的公众号内容生产管线与 GRPM 报告生成:报告的每个结论字段必须带一个能回溯到输入文档的证据编号,缺证据就不输出该结论。 - ⭐ "阈值必须被实测校准过,而且要公开校准方法与数字"——这条正是我上一期记的 aureproof 那个"证据包可被第三方离线重算"的同族思路,但落地得更实。
evidence_max_distance = 0.19不是拍脑袋来的,是"240 个语料内探针全保留 + 14 个语料外探针全拒绝"这个可复算的结果。对应到我的场景:GRPM 里 40 个 SNP 判定规则、干预报告里的 24 个风险维度,每一条都需要一个"我有多确信才敢下结论"的数字,并附上这个数字是怎么测出来的。 尤其值得抄的是它对"患者侧阈值尚未校准"的处理——把没校准的数字明写出来,而不是让它看起来和已校准的一样可信。 - ⭐ "引文必须逐字"这一条,我公众号的参考文献环节现在完全靠人眼核对,而它用一行代码就封死了。
raw_quote不是文档子串就丢弃——这意味着 AI 编造的引文在结构上无法通过,不需要额外的一道"事实核查"。我在 GRPM 的基因报告与 4P 平台的化验解读里都该加这一关。 - "两套入口共用一个契约"是我 4P 平台现在最大的结构性隐患的正确解法。 我的化验数据有三条入口会生成解释:仪表盘的 AI 建议、Excel 导出、干预报告正文。这三处现在是三份代码写的,所以口径必然漂移。AdelIA 的做法是契约写一次、两处 prompt 都从它组装——我可以照做一个
answer_contract,让仪表盘与报告引用同一份。 - AGPL-3.0,只能读不能抄。 对一人公司来说这不影响我学设计思路,但不能把它的代码直接搬进我要卖的 4P 平台。真要用,得另找授权路径或自己实现同等约束。
2. 12burb/hermes-fledge:把"谁来给 agent 写的技能打分"从模型手里拿走——技能得靠证据挣得翅膀,出错的技能进试用期而不是直接上线
地址:https://github.com/12burb/hermes-fledge | ★0 | MIT | Python | Hermes Agent 的插件,把"技能保存/改写"的评审权从模型手里收回到一套可审计的证据评分规则
事件内容
窗口内 27 次提交(11-05 02:12Z ~ 11-06 02:12Z),主线是给 Fledge 自己的判定逻辑补边界条件,并把验证过程写成可复核的文档。
- ⭐ 核心命题来自一个具体的用户抱怨:README 直接引用 Kilo 对 1300+ 条 r/openclaw 评论的读法——用户最不喜欢 Hermes 的一点是"自我评价永远通过"("It always thinks it did a good job. ALWAYS.")。从一次悄悄跑歪的运行里学出来的技能,会把错误带到下一次,而下一次"自我改进"还能覆盖掉你花一晚上调好的技能。 Fledge 的立场是:在 Hermes 保存或改写技能之前,去看它据以学习的那次运行里到底发生了什么——没有模型给模型打分。
- 打分完全基于 Hermes 通过插件钩子报告的事实,每条都有明码分值:这轮以错误结束 3 分;被打断 2 分;你的下一条消息是在纠正它("that's wrong" / "not what I asked" / "still broken")3 分("try again" / "not quite" / 光一个 "No." 只算 1 分);紧接着跑了
/undo或/rollback恢复 3 分(/retry算 2 分);结束时仍在失败的任务工具每个 2 分(terminal 工具按程序判定——后面一条rm tmp.txt不算前面的./fetch.sh恢复成功了);连着失败两次以上且未恢复再加 1 分;其他工具在结束时仍失败每个 1 分(工具失败总分上限 4);在审批提示里拒绝了动作每个 1 分(上限 2)。总分 ≥3 判为 bad(strictness可调:宽松 4 / 标准 3 / 严格 2)。一个干净结束的 0 分是 clean,中间地带是 unclear——既不加分也不减分。 - 三个机制构成了完整的生命周期:保存闸(Save gate)——从跑歪的运行里学出来的技能被扣在 Hermes 自己的复核队列里而不是直接上线,你看到原因再决定留还是丢;试用期(Probation)——新技能和被改写的技能先当"雏鸟",干净的真实运行让它毕业,持续跑歪就让它落地(归档,可恢复),一次运行后你立刻做了纠正的保存当场落地;手改保护(Hand-edit protection)——你手工改过的技能不再被覆盖,agent 的自主改写或删除降级成提案,等你批准或否决。
- 本期窗口内的提交几乎全在补判定边界:engine: an agent write Fledge failed to record is not mistaken for a hand edit(agent 写的、但 Fledge 账本没记下来的写,不能被误判成手改);engine: a write already staged in Hermes' queue stays held if Fledge's ledger fails(账本挂了就保持扣住,绝不放行);engine: don't resurrect a skill that was deleted before its use was judged(用途判定之前就删掉的技能不许复活)。另有 docs: VALIDATION.md with live results; fail-open exception disclosed; 138 tests 与 VALIDATION.md: install from GitHub verified / VALIDATION.md: no local username in paths——它把自己的验证结果和唯一的 fail-open 例外都写进了文档。测试规模 138 个,且不需要装 Hermes(Hermes 表面全部被 fake)。
- 披露写得极其克制:读——钩子载荷(工具名、状态、错误文本、轮次结果、你下一条消息的前 280 个字符用来识别纠正)与技能文件夹指纹;写——自己的 SQLite 文件(技能名、指纹、裁定理由、会话/轮次 id),裁定理由只引用短摘录(匹配到的纠正短语 ≤60 字符、失败工具的错误文本 ≤80 字符);从不做——网络调用、模型调用、读取凭据、执行 shell 命令、起后台进程、上报遥测。它只增加摩擦,从不批准任何事,且无人应答时提问是排队而不是等待。
值得关注的原因
- ⭐ 这直接命中我"用 WorkBuddy 的 expert-manager skill 做标准化专家包生成"这条线最核心的漏洞:现在我判定一个专家包好不好,靠的是模型自评。 Fledge 的整篇 README 就是在讲这件事有多不可靠——"它总认为自己干得不错,永远如此"。而我正在批量生产专家包、公众号内容、GRPM 报告,每一样都依赖"上一步的产物是否可信"这个判断。我需要的正是一张"证据 → 分值"的表,而不是一句"让模型自己判断"。
- ⭐ 那张分值表可以直接改造成我的"干预方案落库 checklist"里的一条硬规则。 最有价值的两条是:"用户下一条消息是在纠正"权重最高(3 分)——这正是 Calibrate 那套"人信了还是推翻了"的客观信号,比问模型"用户是否认可"可靠得多;以及"一个错误被 agent 自己恢复掉,不扣分"——这与我上一期记的"只看模型输出的评估会系统性高估可靠性"是同一个错误的反面:把恢复也算失败同样会低估可靠性。 两个方向的偏差都要避免。
- ⭐ "手改保护"这条对专家包生产流程是刚需。 我调好的专家包(改过的提示词、固定的输出格式、精选的参考文献规则)最怕的就是 agent 下一次"自我改进"把它悄悄覆盖掉。Fledge 的做法是手工编辑过的技能,agent 的任何改写都降级成提案。这条应该写进我专家包质检流程的硬性条款:凡人工修改过的专家包,自动优化流程不得直接落盘,只能出提案。
- ⭐ "试用期 + 毕业"是我一直在找的"AI 产物如何能被信任"的状态机。 我上两期记过 aureproof 的三态闸门(pass / fail / inconclusive)、Calibrate 的 2×2 依赖度矩阵,这一期是同一族思路的第三种形态:不是给结论打分,而是给产物本身一个"试用期"。 干净的真实运行才让它毕业,持续跑歪就归档——这比"评测分数达标就上线"更接近真实可靠性。
- ⭐ 它对"我无法观测的部分"极其诚实:README 明确写"一次干净结束但答案错了、而你没有反应的运行,看起来就是 clean",纠正检测是一个刻意偏向漏报而非误报的短语表,复合 shell 命令只报告最后一段的退出状态(
./fetch.sh; rm tmp只会暴露rm的结果),turn 级证据只在内存里,重启会忘掉。它甚至明说"从别的输出文本里猜"这件事它绝不做。 这种"我知道我的观测有边界"的自述,对我评估任何 AI 质检工具都是必须的一栏。 - MIT 授权,可读可改可商用,是这期五个精选里授权最干净的一个。
3. senseiewok/cf-skills:一个囊性纤维化研究实验室把自己的循证方法做成了 47 条命令——每个答案都是一条带来源、日期、依赖字段和"不许留空的局限说明"的证据记录,而且它从不调用语言模型
地址:https://github.com/senseiewok/cf-skills | ★0 | CC0-1.0 | Python | Sensei Ewok Research Lab 的可复用 Agent 技能库,含 cf-evidence-loop(47 命令的一手证据校验器)与 5 个面向患者/家属/医护的"安全使用 AI"技能
事件内容
窗口内 4 次提交(11-05 02:03Z ~ 11-06 02:03Z),主线是扩充一手证据的索引与结构生物学不变量校验,并让技能在更多 agent 里被发现。
- ⭐
cf-evidence-loop的形态是"把研究员走一遍的固定提问顺序做成命令行":47 条命令(按 2026-10-25 的cli.py实际计数),覆盖已发表文献、撤稿、药物审批与说明书、临床试验、预印本、变异分类、研究资助、引文图谱,以及"这个工具最多能访问什么"本身。它从一开始就不给答案,而是让 agent 拿着固定的一串问题去撞公共记录。 - ⭐ 每一条输出都是一条证据记录,字段是固定的四段:来源、读取日期、实际依赖了哪些确切字段、以及一条代码拒绝留空的局限说明(limitation)。 README 的原话是"a limitation that the code refuses to leave empty"。它从不调用语言模型,只访问它目录(catalog)许可的源,网络规则本身就是代码而且带测试:遵守
robots.txt、一次只发一个请求、有预算上限、有熔断器、带一个诚实的 user agent。 - ⭐ "工具在触网之前就拒绝"这件事是被测试证明的,不是被声明的:
tests/test_conduct.py对每一条网络行为规则至少有对应测试;tests/test_gate.py会让"任何打开 socket 的测试"失败——这正是它证明"被禁、手动、未知来源在联网之前就被挡住"的方式;tests/test_hardening.py把评审中发现的缺陷留存下来,每一个都先用失败测试复现再修;tests/test_providers.py对 2026-10-04 抓取保存下来的响应跑每个解析器。 - 一条记录是可以被第三方核查的:技能的
SKILL.md列出全部 47 条命令,references/NETWORK-RULES.md列出全部 11 条网络规则,每条规则都配"执行它的代码 + 它的测试";实验室网站的 Evidence 页面原样展示一条工具写出来的记录。 - 本期窗口内的具体动作:连续三次 feat(evidence,math): index landmark structures … curated alleles & R1158X / R785X / R114X thermo preset(把标志物结构、精选等位基因与热力学预设逐个索引进证据库),以及 feat(skills): Antigravity agent discovery, N1303K math-verify preset, and standalone test path resilience(新增对 Antigravity 这一家 agent 的技能发现支持 + 独立测试路径的韧性修复)。
- 另有一整套面向患者的技能,不装也能用:
cf-ai-safe-use、cf-plain-language-rewrite、cf-visit-prep、cf-answer-check、cf-ai-tool-review,每个都提供可直接粘贴进任意聊天助手的纯文本版本(docs/paste-ready.md逐产品说明粘到 Claude / Gemini / Copilot / ChatGPT 的哪里)。技能目录本身是 CC0,每个技能单独声明自己的授权;README 明确写"研究,不是医疗建议",并且标出"批准日期不等于任何人的适应症,说明书的文字是公开文件而不是建议,一条记录是一个可核查的东西而不是一个结论"。 - 它对自己也设了门槛:README 写明所有技能处于 "in review" 状态——维护者尚未确认每一个授权、尚未读完每一个文件,安装说明是照厂商页面读来的、没有在每个客户端实测。仓库自带
scripts/check_repo.py(校验每个技能的前置元数据与链接)、make_index.py --check(校验索引与 README 表格是否过期)、make_tested_grid.py --check(重算"每个技能在哪里被试过"的矩阵)、pin_catalog.py --check(校验 catalog 与 lock 文件一致),每次 PR 都跑。
值得关注的原因
- ⭐ 这是我公众号"循证内容必须附参考文献"这件事最彻底的一种实现方式:把证据的采集做成不经过语言模型的代码。 它的每条证据记录有四个固定字段,其中"局限说明"是代码层面强制非空的——这比"请模型记得写局限性"强了一个数量级,而且模型被完全排除在这条链路之外,幻觉在架构上就没有位置。我的公众号每篇循证文章、GRPM 报告的每条结论,都可以照这个四字段结构落地:来源 / 读取日期 / 实际依赖了哪些确切字段 / 一条不许留空的局限说明。
- ⭐ "一个证据记录是一个可核查的东西,不是一个结论"——这句话可以直接成为我内容规范里的一条判定标准。 现在我判断一篇文章"有没有依据",靠的是"参考文献是不是像真的",而它给的是一套能让第三方照着复算的机制:命令清单 + 规则清单 + 对应测试。我那 140 项化验参考区间、40 个 SNP 判定规则,如果有这样一份"可核查清单",公众号文章的可信度会比现在高一个档。
- ⭐
tests/test_gate.py让任何打开 socket 的测试失败——这是一个可以立刻搬走的工程手法。 它把"我保证不联网"这句话从承诺变成了CI 里的一条会红的断言。我的化验 OCR 管线如果接外部 API,我同样该有一份"哪些数据不许出本机"的强制测试。 - ⭐ 五个面向患者的技能,直接对应"普通人怎么安全地用 AI 问健康问题"。 我公众号读者里大量是拿 AI 问体检报告、问补剂、问化验指标的人。"只给一般信息、不给剂量、不给诊断、不给适应症、每个答案都标出它依据什么" 这一组规则,加上"如果这是你自己的健康问题,想清楚谁能看到你的对话"这句提醒,几乎可以原样翻译成中文发给读者——CC0 授权意味着没有署名与授权障碍。
- CC0-1.0(目录)+ 每个技能自声明授权,可自由取用、改造甚至商用,这是我目前见过的对一人公司最友好的授权形态。
- 本期唯一遗憾:这个实验室把技能标为 "in review"(维护者尚未确认每个授权、尚未读完每个文件)——它的方法论可以直接用,但里面的具体医学内容必须逐个复核后再上我的公众号,这一点 README 自己写得很清楚。
4. Ashiwel/Gaskin:把危险信号做成 AI 改不动、藏不掉、删不掉的规则——而且"没做的检查"记为 unknown,绝不记为 normal
地址:https://github.com/Ashiwel/Gaskin | ★0 | AGPL-3.0 | TypeScript | 面向助产士与社区卫生工作者的母婴照护计划器,从受孕到孩子 1000 天,规则引擎 + 可选 AI,支持手机 / 共享功能机 / U 盘离线运行
事件内容
窗口内 4 次提交(11-05 02:09Z ~ 11-06 02:09Z),主线是把规则引擎、访视流程、多语言、引导流程、托管与离线构建一次性打通,随后做第二轮 UI 重构与安全复核。
- ⭐ 最硬的一条设计是"危险信号告警来自 AI 无法覆盖或隐藏的固定规则":严重子痫前期、大量出血、新生儿危险信号与自伤念头会触发告警,告警里写明"现在做什么、转诊去哪",而与告警匹配的计划条目被锁定,任何人——包括卫生工作者、AI 回复或 MCP 工具——都无法移除它们。README 的表述是 "Danger alerts can be acknowledged but never dismissed"。
- ⭐ "没做的检查记为 unknown,绝不记为 normal":一次没做的检测被记为未知而非正常,而当未知结果可能掩盖危险时会被升级。这是本期最刺我的一条。
- ⭐ "AI 是可选的,安全只来自规则":规则引擎按 WHO 产前保健(2016)与产后保健(2022)建议、各国国家产前访视/疫苗/疟疾预防时间表构建每一份计划,每个条目显示它的证据等级与来源;地区档案补充当地食物、常见传统做法与具名转诊医院。AI 只被用于三件事:把话写成白话与她的语言、对自由文本回复分诊、把个案排顺序。 README 明确写"Gaskin 完全不用 AI 也能跑"——规则建计划、模板写消息。
- ⭐ AI 可以来自任何地方,且"AI 看到什么"是可见的:托管 demo(claude.ai)、自带任意 OpenAI 兼容 key、Anthropic、Gemini、本机或浏览器里的小模型,或者用户已经在用的任何 AI 应用(复制粘贴)。任何文本离开设备前,Gaskin 会移除姓名、电话号码、地点和精确日期并替换成占位符,答案回来后再放回去;界面上有一个 "What the AI sees" 面板显示将要发送的确切文本**。
- ⭐ 隐私与安全被写成了可审计的条款:留存记录与接收消息是两件分开同意的事,未满 18 岁的母亲引入监护人;每次 AI 调用默认开启去标识化;审计日志只记录"发了什么类型的数据、发到哪里、多少字节",不含内容。README 明确指出假名化数据在尼日利亚《数据保护法 2023》、肯尼亚《数据保护法 2019》、加纳《数据保护法 2012》下仍属个人数据,因此用云端 AI 仍需同意与处理者协议,而关掉 AI 或在本机跑就能完全避免这次传输。PIN 只存加盐 PBKDF2 哈希,记录可用口令加密,桌面启动器只监听
127.0.0.1且只提供固定文件清单。 - ⭐ 它公开了自己的漏洞与未修项:安全与 QA 复核(
docs/security-review.md)在 11 月 5 日发现 37 个问题,逐条记录如何修复或为何仍然开放;npm audit --omit=dev报告应用、连接器与服务端均无已知漏洞。临床状态也写得很老实:这是一个原型,里面每一位母亲、工人与机构都是合成的,临床规则来自公开指南但尚待临床负责人 Elizabeth Okang 与独立临床委员会评审,还不用于患者照护。 - 本期窗口内的具体提交:Gaskin prototype: rules engine, visits, languages, onboarding, hosted and offline builds;随后 Second build: Untitled UI redesign, siblings, worker accounts, personal use, visit v2, geography, security review, desktop zip(加入同胞子女建模、工人账号、个人自用视图、访视 v2、地理档案、安全复核与桌面 zip)。多语言包覆盖 Hausa、Yoruba、Igbo、Nigerian Pidgin、阿拉伯语、斯瓦希里语、Twi、法语、葡语,以及南非与东非十余种语言,全部标注"仍待母语助产士评审,且每一行都这么写着";Pidgin 提供但从不作默认;没有的语言包老实显示 "Coming soon" 并用简单英文而不猜。
值得关注的原因
- ⭐⭐ "没做的检查记为 unknown,绝不记为 normal"——这一条几乎是为我的化验 OCR 管线写的。 我现在的行为是"识别失败就跳过这一项继续",于是会产出"24 个风险维度里其实只识别到 18 个"的报告,而且报告自己不知道。Gaskin 的规则是:未做 ≠ 正常,而且当未知可能掩盖危险时必须升级。这两句可以直接变成 4P 平台的两条硬规则:第一,OCR 缺失的化验项在干预报告里必须显式标为"未获取",绝不能落入"正常"区间参与算法平均;第二,当某个缺失项对应的风险维度本身是危急值区间时(血糖、尿酸、血脂中的极端值),缺失必须触发升级而不是静默跳过。
- ⭐ "AI 是可选的,安全只来自规则"——这条应该成为我 4P 补剂平台的一条架构原则,写进需求文档。 我现在的形态恰好相反:AI 直接重算并落库整套方案,而约束写在提示词里。Gaskin 的切分是规则负责安全、AI 只负责语言与排序——我那套"硬底线"(BMI<18.5 不加深减重、减重每周不超过体重 1.5%、800 kcal 地板线、年龄下限)如果只存在于提示词里,它就只是一个建议而不是一条约束。
- ⭐ "危险告警可以确认但不能忽略,AI 回复与 MCP 工具都删不掉锁定的安全项"——这是我 4P 平台缺的一档语义。 我的方案里,"用户说删掉某个补剂建议"目前是能做到的(AI 改提示词就能改)。Gaskin 的分级是:告警可确认、不可忽略;锁定项只有人能改、且 AI 不能改。这条在补剂安全上非常关键——"停用"和"忽略"必须被当成两件不同的事。
- ⭐ "审计日志只记类型、去向、字节数,不记内容"——这条是我 4P 平台日志脱敏可以直接抄的形态。 我上期记过 agent-desktop 那条"快照里就是用户屏幕上的真实内容,包括剪贴板"。日志要能证明"没有泄漏",但本身不能成为泄漏源——Gaskin 给的就是这个解法。
- ⭐⭐ 它同时是一个"健康 AI 该长什么样"的完整反例样本,而且它把边界写在最显眼的位置:README 明确写 "Gaskin 不是医生"、每个界面都提示"去登记诊所、去看卫生工作者"、显示本国急救电话;技能库那一侧则写"不是医疗器械、不是临床工具、不构成治疗主张"。我作为健康内容创作者,身份红线的处理方式在这个项目里有一个非常干净的参照:把"我不是医生"写进每一个用户会看到的地方,而不是只写在页脚。
- "一个计划一份,跨 1000 天同步重算;每个条目、每条告警、每支疫苗都标明说的是哪个孩子"——这个"多主体归属"的设计对 GLP-1 营养伴侣的"母亲 + 孩子"或"一位老人 + 一位家属"场景直接可用。
- AGPL-3.0,只能读不能抄;且它自己写明"还不用于患者照护",我引用其临床规则时必须标注这一状态。
5. lud3nb3rg/DataNyx:让 AI agent 处理你的数据,但永远看不到数据——给你的是"无值 schema"和一份假数据,不是你的患者数据
地址:https://github.com/lud3nb3rg/DataNyx | ★0 | MIT | Python | 把文件与数据库转成"无值 schema"给 agent 写代码,并把自由文本里的姓名与标识符替换成占位符
事件内容
窗口内 25 次提交(11-05 02:11Z ~ 11-06 02:10Z),主线是把一个想法推成了一条完整可用的管线:schema / 匿名化 / 合成数据 / 多格式源 / MCP 服务 / CI / 泄漏模糊测试,一次补齐。
- ⭐ 核心契约只有一张表,却非常干净:结构化数据(
datanyx schema)给 agent 的是字段名、类型、格式、嵌套、主键与外键——绝不给出数值、样例、枚举标签、计数或统计量;自由文本(datanyx anonymize)给的是把姓名/邮箱等标识符替换成<PERSON_1>、<EMAIL_1>之后的文本——绝不给出标识符本身,且文档明说这是尽力而为、需要人工复核。 - ⭐ agent 拿到的是"数据的形状"和"文本里的故事",没有一个真实值,并且可以拿 schema 生成的假行去试自己的代码(
docs/synthetic-data.md)。README 的原话是 "The agent sees the shape of the table and the story in the text, and none of the values." - ⭐ 本期窗口内的提交完整呈现了这条管线的成形顺序:Add DataNyx: value-free schemas of data for AI agents → Add text anonymization with NER and ignore data files in git → Add opt-in mapping and restore for anonymized text(默认不给映射,需显式开启,且可还原)→ Add CSV, TSV, Parquet, Excel, YAML and XML sources → Add streaming JSON, folders, library API, MCP server and new output formats → Add CI, lint and type checks, doctor command, Windows mapping permissions and leak fuzz tests → Add MIT license and move development to uv → Update README。
- ⭐ "泄漏模糊测试"(leak fuzz tests)与 CI 一起进仓库——这意味着"会不会漏"不是靠人肉检查,而是靠模糊测试持续施压。
- 它不是一个"脱敏库"而是一整套工作流:文档目录里有
docs/agents.md(datanyx protect、guard hook 与 MCP server 三种用法)、docs/security.md(保证什么、不保证什么、已知边界)、docs/schema-diff.md(在 CI 里做 schema 变更检测)、docs/deployment.md(PyPI、Docker、pre-commit hook、GitHub Action、共享 MCP server)。docs/schema-diff.md尤其关键——它让"数据形状变了"变成 CI 里的一次失败,而不是线上的一次事故。
值得关注的原因
- ⭐⭐ 我的 4P 精准营养平台眼下最大的现实风险就是"把患者数据喂给模型"这一步。 化验单、体检报告、问卷答案——这些数据出了本机就是外流。我现在的做法基本是"自己写正则脱敏再发给模型",而 DataNyx 的形态是另一条路:值根本不出本机,模型只拿到 schema 和假行,写完的代码在我这边的真实数据上跑。 对"帮用户写一段化验数据解读代码 / 写一个补剂记录导入脚本"这类需求,这条路比脱敏更彻底。
- ⭐ "无值 schema"这一形态,比"把字段名手工描述一遍"强一个数量级,而且它天然可复用。 我 4P 平台的化验数据结构(字段、单位、参考区间、是否必填)本来就该是一份受版本管理的 schema——一旦有了它,"给模型一份不含值的描述"就是免费的。
docs/schema-diff.md那条"数据形状变了就在 CI 里红"尤其对:我的化验字段表 140 项,任何一次字段改动都应该触发一次评审,而不是等到某份报告里少了某个指标才被发现。 - ⭐ "默认不给映射、需显式开启、可还原"——这是脱敏工具最容易做错的地方。 很多脱敏方案是单向不可逆的,一旦映射丢了就无法核对;DataNyx 把映射做成显式开启的独立产物,意味着"我需要时能还原"和"默认不给模型"这两件事可以同时成立。我的化验 OCR 抽取管线现在是"识别失败就跳过",根本不存在"保留原始引用以备复核"这一层——这个映射层我该补上。
- ⭐ MIT 授权、可读可改可商用,且它自己是一份有完整文档的小工具(schema / anonymize / protect / MCP server / doctor / schema-diff),不是一个大框架。一人公司最需要的正是这种"能塞进自己产品里的一段独立能力"。
- ⭐ 它与上一期记的"化验 OCR 只识别到 18 个维度却不知道"是同一问题的另一半:DataNyx 解决的是"别让数据出去",但它没有解决"抽取是否完整" ——这两件事要一起做才算闭环:一个管数据出站的边界,一个管抽取的完整性与可复核性。
二、分类速览
① AI Coding / 编程智能体与技能生态
| 项目 | 星标 | 一句话 |
|---|---|---|
| 12burb/hermes-fledge | ★0 | 把技能评审权从模型手里拿走:证据打分、试用期、手改保护,138 个测试 |
| 777genius/universal-agent-plugins | ★15 | 跨 Codex / Claude / Cursor 装、更新、修、卸插件与技能的多 agent CLI |
| AIDotNet/pi.net | ★115 | 极简 Agent harness「Pi」的 .NET 10 移植版,逐个核心库移植 |
| ArthurC02/SkillHub | ★1 | 找技能、编技能、试用技能、分享技能的一体化开放平台 |
| BetaYao/seahelm | ★18 | macOS 原生 coding agent 工作台,每个 worktree 一行,一个 agent 一块分屏 |
| cquinones100/switchboard | ★2 | macOS 终端工作区,tmux 标签页直接显示每个 coding agent 在做什么 |
| Dicklesworthstone/eidetic_engine_cli | ★71 | 给 coding agent 的本地优先、可解释记忆底座(Rust CLI) |
| Elisarosah/dwg-agent-skill | ★0 | Claude Code 的 DWG 技能:转 DXF 后逐层分析图纸 |
| ForceInjection/AI-fundamentals | ★3,324 | 中文 AI 基础体系:GPU 架构、CUDA 编程、大模型与 Agent |
| Gentleman-Programming/engram | ★7,817 | 与 agent 无关的持久记忆:Go 单文件 + SQLite FTS5 + MCP |
| hadins-ntvgraph/niyusha | ★0 | 住在终端的 AI coding agent:分阶段改文件、diff 复核、权限化 shell |
| iha2/superlite | ★247 | Claude Code 软件工厂:一道审批闸门、并行波次、按任务路由模型 |
| JayCommit/skilltrim | ★0 | Agent 技能的 token 成本评审与裁剪工具,默认保留全部文本 |
| kenn-io/agentsview | ★6,376 | 本地优先的 coding agent 会话检索、分析与 token 用量统计 |
| kajisho5/ffmpeg-skill | ★4,616 | 给 coding agent 的本地视频编辑器:42 个 FFmpeg 工具 + 机器可读契约 + MCP |
| LetA-Tech/mellions-coxen | ★1 | 面向前沿 coding agent 的工程纪律:责任持久化与对抗式验证 |
| microsoft/hve-core | ★1,605 | Hypervelocity Engineering 的指令、提示、agent 与技能组件合集 |
| milesroxas/skill-studio | ★0 | 桌面版技能工作台:无头跑 agent、代码检查 + 判官包打分、盲评校准 |
| northraystudio/maruda | ★7 | 给 AI 辅助开发配 harness、技能、规则、CI 与安全闸 |
| pace551/aspec | ★0 | ASPEC:agent 安全的宪法、标准语料库与执行机制(BUSL-1.1) |
| ruvnet/metaharness | ★738 | 元 harness:生成带自己包名与独立身份的定制 agent harness |
| Sempera-AI/sempera-ai | ★0 | 教 AI coding agent 运维 Sempera 的技能与插件 |
| skillcdn/skillcdn | ★1 | 把任意 git 仓库变成 MCP server:技能、文档与规则供 agent 调用 |
| sudoprivacy/sudocode | ★522 | 终端原生、可管道组合的 Rust CLI coding agent |
| thebtf/engram | ★7 | 给一队 coding agent 用的持久共享记忆基础设施 |
| theonepichael/agent-toolkit | ★0 | 跨 harness(Claude Code / opencode / Copilot CLI / agy / Pi)的 agent 工具箱 |
| vaayne/agent-kit | ★53 | 给 coding agent 的可复用组件:技能、子 agent、MCP server 与扩展 |
| waltzofpearls/deepcove | ★7 | 让每个 coding agent 跑在自己的虚拟机里,跨多台机器统一调度 |
| ashlrai/locus | ★3 | coding agent 的身份平面:多账号 MCP/CLI 绑定,杜绝登错账号 |
| ashlrai/phantom-secrets | ★20 | 本地代理 + MCP 把真实密钥换成占位令牌,止住 coding agent 泄密 |
| physiclaw/PhysiClaw | ★416 | 会用手机操作能力的 AI agent,像人一样点按 |
| edison7009/EchoBird | ★3,520 | 一键安装 Claude Code、Codex CLI、DeepSeek 的桌面客户端 |
② 医学 / 临床研究 AI 与 Agent 技能库
| 项目 | 星标 | 一句话 |
|---|---|---|
| santiagopatinoserna/AdelIA | ★0 | 个人医疗档案库 + AI 问答:答案带引用或直接拒答,临床契约写进代码 |
| senseiewok/cf-skills | ★0 | 循证技能库:47 条命令产出带局限说明的证据记录,全程不调语言模型 |
| arman-jalili/health-policy-simulator | ★0 | 卫生政策模拟器:worker 生命周期、预算闸门与治理就绪架构 |
| GlennRTC/decidere_v2 | ★0 | 面向临床决策的 agentic 决策支持系统 |
| Mnemosyne-OS/MnemoHealth | ★0 | 把公开来源的罕见病等医学文本装进 agent 记忆 |
| OWKiriella/glioma-grading-uncertainty | ★0 | 胶质瘤分级的不确定性量化:MC dropout、深度集成与校准 |
| sanjin925/HiFSA | ★0 | 面向医学影像数据高效训练的层次频率-语义自适应方法 |
| josephrelish5-tech/healthos-ai | ★0 | 面向诊所、医院与药房的 AI 医疗管理平台 |
| JohnZhang-DataForge/healthcare-data-platform | ★0 | 医疗数据管线:Airflow + Spark + dbt + OMOP + S3 + GitOps |
| maboitumelo11/Berea-health-notes | ★0 | 给莱索托护士用的 AI 临床记录助手,把速记转成 SOAP 记录 |
| Anant6125/AI_Based_Personalized_Health_Risk_Asseament_System | ★0 | 4 个随机森林模型给出糖尿病/心脏病/高血压/卒中风险评估(弱动作) |
③ 健康管理 / 营养与食品 AI
| 项目 | 星标 | 一句话 |
|---|---|---|
| Ashiwel/Gaskin | ★0 | 母婴照护计划器:危险信号规则 AI 改不动藏不掉,未做的检查记为 unknown |
| khs14/Nutrayo | ★0 | 营养素的「元素周期表」:28 种营养素 × 288 种食物按每日值占比排位 |
| Yidu-ZSC/nutri-sphere | ★1 | 饮食与营养的 3D 交互知识图谱与可视化平台 |
| sarthak0501/nutritracker | ★1 | 自托管 AI 营养追踪器:健康感知的餐食建议与伙伴问责 |
| jarlh19/mi-plato | ★0 | 拍照式饮食日记:视觉模型识别食物,USDA 数据给营养素 |
| david-stefan-hermann/Fleisch-Teufel | ★0 | 离线优先营养追踪 PWA,自托管同步 + BLS 4.0 食物数据 |
| mwdearing/health-nutrition | ★0 | 原生 iOS 食品、补剂与饮水应用,接 HealthRelay |
| jackkoesters13/personal-health-os | ★0 | 单文件个人健康 OS(弱动作:仅一次文件上传) |
| MichaelSalander/HealthAI | ★0 | AI 智能健康管理平台原型 |
④ 模型底座与 Agent 基础设施
| 项目 | 星标 | 一句话 |
|---|---|---|
| lud3nb3rg/DataNyx | ★0 | 让 agent 处理你的数据却看不到数据:无值 schema + 文本匿名化 + 合成行 |
| NVIDIA-NeMo/Gym | ★1,320 | 用环境来评估并改进模型与 agent |
| NVIDIA-NeMo/Switchyard | ★3,489 | 跨模型与供应商分流流量,同时保留原生响应格式 |
| MCPJam/inspector | ★2,299 | MCP server 开发者向测试评测平台:16 种客户端配置 + 170+ 模型 |
| activepieces/activepieces | ★25,390 | AI agent / MCP / 工作流自动化平台,内置约 400 个 MCP server |
| QuantumNous/new-api | ★51,454 | 自托管 LLM 网关,兼容 OpenAI、Claude 与 Gemini 接口 |
| BlockRunAI/ClawRouter | ★6,652 | 面向自主 agent 的 LLM 路由,一个钱包走遍所有前沿模型 |
| weave-os/router | ★5,615 | agent 系统的模型路由:50 毫秒内决定每个 prompt 该给谁 |
| duolahypercho/codex-router | ★3,979 | Codex 的外部模型路由,支持 Kimi 引导式接入与安全回滚 |
| Alice-Marx/dsh-model-router | ★805 | DeepSeek Harness 的模型路由插件(本机 dsh 同生态) |
| Shaf2665/Hermes-router | ★110 | OpenAI/Anthropic 兼容路由,靠故障转移与密钥轮换保在线 |
| higress-group/HiRoute | ★419 | 本地模型路由,让 Codex 与 Claude Code 订阅更耐用 |
| NadirRouter/NadirClaw | ★661 | 源码可见的 LLM 路由与成本优化器(PolyForm Noncommercial 1.0.0,不可商用) |
| regolo-ai/brick-SR1 | ★130 | 按查询复杂度与能力需求挑模型的智能路由 |
| xiayu1987/noobot | ★189 | 自托管省钱 agent 工作区:工具调用、MCP、多模型路由与沙箱 |
| angel291592/Intent-Router | ★93 | 意图编译器:把含糊请求收敛成带类型的 IntentSpec 契约 |
| heddles/agent-orca | ★90 | Kubernetes 上的 AI agent 工作负载编排与分布式执行 |
| openma-ai/open-managed-agents | ★344 | 会话、执行与恢复管理,模型与 agent 可自由组合 |
| opencrabs/opencrabs | ★1,025 | 全能 AI agent:建前后端、管文件、深度研究、定时任务 |
| elizaOS/eliza | ★19,774 | 开源 agentic 操作系统 |
| loopx-project/loopx | ★6,553 | 把长周期目标转成可验证结果的本地优先语义控制平面 |
| withcoral/coral | ★4,935 | AI agent 的执行层:跨系统动作配精确管控 |
| OpenAgentsInc/openagents | ★460 | The Agent Network |
| google/adk-js | ★1,467 | 代码优先的 TypeScript agent 工具包,构建、评测与部署一体 |
| PrefectHQ/fastmcp | ★28,323 | 快速构建 MCP server 与 client 的 Python 框架 |
| getagentseal/codeburn | ★11,701 | 本地追踪 37 种工具与 agent 的 token 用量与成本 |
| skyhook-io/radar | ★4,054 | 开源 Kubernetes 界面,内置面向 AI agent 的 MCP server |
| bethington/ghidra-mcp | ★6,133 | Ghidra MCP Server:200+ MCP 工具的逆向工程套件 |
| fastcrw/crw | ★1,227 | Rust 写的轻量抓取与搜索 API,带 MCP server |
| redhat-et/ripwire | ★2,525 | AI 上下文的 ripgrep:零依赖 C++23 CLI + MCP server |
| Dicklesworthstone/mcp_agent_mail_rust | ★234 | 多 agent 协作的 Rust MCP server:45 个工具 + 25 个资源 |
| Hona/strobe | ★112 | 性能测量与解释:让 agent 用"改不了"的数字证明这次分支确实更快 |
| openscout-app/scout | ★11 | 个人 agent 云:本地控制平面 + 面向 coding agent 的网状网络 |
| MichengAI/dsh-skills-manager | ★483 | 在 DeepSeek Harness 里统一加载并安全管理本机 Agent 技能(本机 dsh 同生态) |
| spacedock-dev/spacedock | ★85 | 零依赖 agent 工作流:结构化审批闸门 + 对抗式评审 |
| edrisranjbar/lifeos | ★115 | 自托管 life OS:习惯、目标、看板、财务与专注,带 MCP server |
| speakeasy-api/gram | ★277 | 企业级 AI 控制平面:围绕 MCP 网关做权限、威胁检测与 token 成本可见性 |
三、今日趋势观察
本期最明显的一条主线是:"把承诺写进代码,而不是写进提示词"这一形态正在从医疗 AI 扩散到整个 agent 工程。AdelIA 把临床契约、红旗短路、逐字引文与拒答阈值做成带测试的代码;cf-skills 把证据采集做成不经过语言模型的 47 条命令;hermes-fledge 把"谁来评分"变成一张可审计的分值表;Gaskin 把危险信号做成 AI 改不动的锁定规则;DataNyx 把"数据不出本机"做成无值 schema。四条线互不相干,却都在回答同一个问题——在什么条件下,我应该拒绝输出,以及谁来证明我没有越线。 这与我前几期记下的 aureproof 三态闸门、Calibrate 的 2×2 依赖度矩阵是同一条线索的第三阶段:上一阶段是把不确定性做成可执行分支,这一阶段是把约束下沉到代码里,并让 CI 与测试替我盯着。
第二条:"证据"正在从一种引用格式变成一种带固定字段的数据结构。 cf-skills 的证据记录有四个固定字段(来源 / 读取日期 / 实际依赖的字段 / 不许留空的局限说明),Gaskin 的每个计划条目带证据等级与来源,AdelIA 的每条临床陈述带 [ev_N],hermes-fledge 的每条裁定理由带短摘录与字符数上限。共同点是:证据不再是一段散文,而是有 schema、可比对、可回归的字段。 这对内容生产链路的含义很直接——循证内容如果不能结构化,就只能靠人工复核;一旦结构化,回归测试就有了落点。
第三条:本周期的低星项目依然是信息密度最高的选题矿脉,但本期出现了两个新的形态——一个是"技能/规则的自我评分"(hermes-fledge、skill-studio 的盲评队列、skilltrim 的 token 评审),另一个是"健康数据出站边界"(DataNyx、Gaskin 的默认去标识化、cf-skills 的网络规则即代码)。89 个条目里 40 个星标 ≤100,其中信息密度最高的六个全部落在后两个形态上。星标数衡量的是关注度,不是可迁移性;对一人公司而言,"这个设计能不能直接搬进我的平台"的判断远比"有多少人在 star"重要。
第四条:模型路由与网关这一层的形态同质化继续加剧,但本期出现了两个值得注意的偏移。37 个基础设施条目里,ClawRouter / weave-os router / HiRoute / codex-router / dsh-model-router / brick-SR1 / NadirClaw 全都是"本地网关 + 多模型路由 + 成本优化",形态几乎一致;真正的差异出现在细节里——Hermes-router 专门做"保住编码客户端给推理模型的输出预算"、Switchyard 强调"保留各供应商的原生响应格式"、dsh-model-router 直接接进本机 dsh 生态、speakeasy 的 gram 干脆把战场抬到"企业级 AI 控制平面"(权限、威胁检测、token 成本可见性)。这说明这一层的竞争点已经从"能不能接上"转向"接上之后会不会吃掉别的东西"——预算、格式、凭据归属,这三件事正在变成路由器的真正战场。
第五条:授权字段的误判率依然高得离谱,而且本期再次出现了"API 说一套、文件写另一套"的情况。89 个条目里,API 报 NOASSERTION 的有 8 个,逐个读 LICENSE 实文后才发现其中有 4 个实际是 MIT / MIT 含附加条款 / Apache-2.0 这类可商用条款,另有 2 个是 PolyForm Noncommercial、FSL-1.1-ALv2、BUSL-1.1 这类商用受限条款。外加 16 个仓库根本没有任何 LICENSE 文件(已用 core 端点逐一确认)。对一人公司来说这是生死线:MIT 与 Apache-2.0 占 60 个(67%),可放心选型;AGPL-3.0 有 5 个、PolyForm Noncommercial 有 1 个,只能读不能抄;剩下 16 个"未声明"在动手前必须先问一句作者。
四、GitHub 地址速查
https://github.com/12burb/hermes-fledge
https://github.com/777genius/universal-agent-plugins
https://github.com/AIDotNet/pi.net
https://github.com/ArthurC02/SkillHub
https://github.com/BetaYao/seahelm
https://github.com/cquinones100/switchboard
https://github.com/Dicklesworthstone/eidetic_engine_cli
https://github.com/Elisarosah/dwg-agent-skill
https://github.com/ForceInjection/AI-fundamentals
https://github.com/Gentleman-Programming/engram
https://github.com/hadins-ntvgraph/niyusha
https://github.com/iha2/superlite
https://github.com/JayCommit/skilltrim
https://github.com/kenn-io/agentsview
https://github.com/kajisho5/ffmpeg-skill
https://github.com/LetA-Tech/mellions-coxen
https://github.com/microsoft/hve-core
https://github.com/milesroxas/skill-studio
https://github.com/northraystudio/maruda
https://github.com/pace551/aspec
https://github.com/ruvnet/metaharness
https://github.com/Sempera-AI/sempera-ai
https://github.com/skillcdn/skillcdn
https://github.com/sudoprivacy/sudocode
https://github.com/thebtf/engram
https://github.com/theonepichael/agent-toolkit
https://github.com/vaayne/agent-kit
https://github.com/waltzofpearls/deepcove
https://github.com/ashlrai/locus
https://github.com/ashlrai/phantom-secrets
https://github.com/physiclaw/PhysiClaw
https://github.com/edison7009/EchoBird
https://github.com/santiagopatinoserna/AdelIA
https://github.com/senseiewok/cf-skills
https://github.com/arman-jalili/health-policy-simulator
https://github.com/GlennRTC/decidere_v2
https://github.com/Mnemosyne-OS/MnemoHealth
https://github.com/OWKiriella/glioma-grading-uncertainty
https://github.com/sanjin925/HiFSA
https://github.com/josephrelish5-tech/healthos-ai
https://github.com/JohnZhang-DataForge/healthcare-data-platform
https://github.com/maboitumelo11/Berea-health-notes
https://github.com/Anant6125/AI_Based_Personalized_Health_Risk_Asseament_System
https://github.com/Ashiwel/Gaskin
https://github.com/khs14/Nutrayo
https://github.com/Yidu-ZSC/nutri-sphere
https://github.com/sarthak0501/nutritracker
https://github.com/jarlh19/mi-plato
https://github.com/david-stefan-hermann/Fleisch-Teufel
https://github.com/mwdearing/health-nutrition
https://github.com/jackkoesters13/personal-health-os
https://github.com/MichaelSalander/HealthAI
https://github.com/lud3nb3rg/DataNyx
https://github.com/NVIDIA-NeMo/Gym
https://github.com/NVIDIA-NeMo/Switchyard
https://github.com/MCPJam/inspector
https://github.com/activepieces/activepieces
https://github.com/QuantumNous/new-api
https://github.com/BlockRunAI/ClawRouter
https://github.com/weave-os/router
https://github.com/duolahypercho/codex-router
https://github.com/Alice-Marx/dsh-model-router
https://github.com/Shaf2665/Hermes-router
https://github.com/higress-group/HiRoute
https://github.com/NadirRouter/NadirClaw
https://github.com/regolo-ai/brick-SR1
https://github.com/xiayu1987/noobot
https://github.com/angel291592/Intent-Router
https://github.com/heddles/agent-orca
https://github.com/openma-ai/open-managed-agents
https://github.com/opencrabs/opencrabs
https://github.com/elizaOS/eliza
https://github.com/loopx-project/loopx
https://github.com/withcoral/coral
https://github.com/OpenAgentsInc/openagents
https://github.com/google/adk-js
https://github.com/PrefectHQ/fastmcp
https://github.com/getagentseal/codeburn
https://github.com/skyhook-io/radar
https://github.com/bethington/ghidra-mcp
https://github.com/fastcrw/crw
https://github.com/redhat-et/ripwire
https://github.com/Dicklesworthstone/mcp_agent_mail_rust
https://github.com/Hona/strobe
https://github.com/openscout-app/scout
https://github.com/MichengAI/dsh-skills-manager
https://github.com/spacedock-dev/spacedock
https://github.com/edrisranjbar/lifeos
https://github.com/speakeasy-api/gram