Skip to content

Repository files navigation

倪海厦 · 经方中医 Agent Skill

把倪海厦(1954–2012)的中医讲义整理成一个分层、可寻址、带安全契约的 Agent Skill,用于中医经典的学习与研读。

Agent Skills License 语料 触发开销 医案

Claude Code Codex Cursor Gemini CLI Copilot Windsurf OpenCode Aider

倪海厦像,两侧竖排列出人纪、天纪、黄帝内经、金匮要略、伤寒论、神农本草经六部讲义名


⚠️ 使用前必读

本 skill 用于中医经典学习与学术研读,不是医疗工具。

  • 不能看病:不下诊断、不开处方、不给剂量、不评估你的具体病情
  • 不介入治疗决策:不会建议你拒绝、推迟、中断任何肿瘤治疗(化疗/放疗/手术/内分泌治疗/靶向药),也不会建议你停用或减量任何处方药
  • 不处理急症:心梗、中风、大出血、呼吸困难等一律只回"立即就医"
  • ⚠️ 语料含争议性主张:倪海厦在 2005 年前后对现代医学、尤其对肿瘤治疗持强烈批评态度(称化疗致癌症扩散、称抗凝药为"老鼠药"等)。这些内容被忠实收录以呈现其思想,但 skill 被强制要求:转述时必须标注"这是倪海厦的观点",不得转化为对用户的行动建议

你从这里得到的是一家之言——很有力量的一家之言,但不是医学共识,更不是医嘱。身体不适请就医;任何治疗方案的调整必须与你的主治医师讨论。

完整安全契约见 POLICY.md


这是什么

《伤寒论》这类书,原文谁都能找到,难的是有人逐条讲给你听

搜「桂枝汤」,你会得到组成、功效、主治——一堆名词,但读不懂"为什么有汗用桂枝、无汗用麻黄"。倪海厦少见地把这套东西讲成了大白话:肾阳虚是"锅下面没有火",降压药是"关掉火警警报器",每个概念配一个日常类比,还带数百个真实病例。

这个 skill 装的是这份讲解,不是经典原文本身。中医经典的门槛主要卡在"没人讲",它解决的是这个。

覆盖:伤寒论(太阳病篇条文 1–129 + 其余五经)· 金匮要略 23 篇 · 黄帝内经 53 篇 · 神农本草经 345 种 · 针灸 · 天纪 · 医案 321 例 · 闭门课 13 个重病专题 · 梁冬对话 · 汉唐文章

安装

git clone https://github.com/Tespera/nihaisha-skill.git ~/.claude/skills/nihaisha

或作为项目管理,再软链接到 skills 目录:

git clone https://github.com/Tespera/nihaisha-skill.git ~/projects/nihaisha-skill
ln -s ~/projects/nihaisha-skill ~/.claude/skills/nihaisha

新开会话后生效。触发词:「倪海厦」「倪师」「海厦视角」「经方思维」。

其他运行时

本 skill 遵循 Agent Skills 开放规范SKILL.md + YAML frontmatter),Anthropic 于 2025 年 12 月开放,目前已被 Codex、Cursor、Gemini CLI、GitHub Copilot、Windsurf、OpenCode、Aider、OpenClaw 等多家运行时采纳。

装法都一样:把整个目录放进该运行时的 skills 目录即可,无需改动任何文件。各家的目录位置不同,参考其文档。

实测环境为 Claude Code。其余运行时按规范应当兼容,但未逐一验证;如遇问题欢迎提 issue。

怎么用

说「倪海厦」「倪师」「海厦视角」「经方思维」即可触发。

经典陪读(主要用法)

倪海厦怎么讲伤寒论第 12 条?
桂枝汤和麻黄汤到底怎么区分?
金匮里的胸痹是什么?

理解框架(走速查表,不加载语料,秒回)

六经辨证是怎么回事,为什么要先辨六经?
什么叫热极生寒?

医案研读

倪海厦治胸痹的医案有哪些?

教学素材

用倪海厦的口吻给我讲一遍阳气论

💡 中医概念是"以为懂了其实不懂"的重灾区——「阳气」「气化」读的时候都明白,一开口就讲不清。配合费曼学习法类的 skill 使用效果更好:先让它讲一段,再合上材料自己复述,卡住的地方就是真没懂的地方。

架构

五层,按职责而非体积划分:

┌ P0 契约  SKILL.md 内常驻摘要 + POLICY.md   安全边界,覆盖全部下游指令
├ P1 路由  SKILL.md                          识别 · 场景判定 · 分发,不存知识
├ P2 认知  persona/                          心智模型 · 决策启发式 · 表达风格
├ P3 工具  clinical/                         诊断公式 · 药性 · 穴位诊断 · 外用方
└ P4 语料  corpus/                           经典原文 · 医案,三级索引寻址

目录树

nihaisha-skill/
├── SKILL.md                    P1 路由 + P0 摘要 ← 唯一全量加载(~2.3k tok)
├── POLICY.md                   P0 完整安全契约
├── CHANGELOG.md                版本记录
├── LICENSE                     MulanPSL-2.0
│
├── persona/                    P2 认知层
│   ├── mind-model.md             六经模型 · 方剂速查 · 决策启发式 ×8 · 身份
│   ├── voice.md                  表达 DNA · 句式 · 类比规则
│   └── voice-full.md             完整口述风格语料
│
├── clinical/                   P3 工具层(高频、可整读)
│   ├── diagnosis-formulas.md     8 诊断公式 · 流程图 · 脉舌 · 真寒假热 · 用药铁律
│   ├── liujing-overview.md       六经总结 · 诊病十问
│   ├── materia-quickref.md       五味 · 药性阴阳 · 附子三分 · 六健康标准
│   ├── acupoint-diagnosis.md     八会穴 · 子午流注 · 背俞穴 · 十二原穴
│   └── external-formulas.md      九首外用方
│
└── corpus/                     P4 语料层
    ├── _INDEX.md                 总索引(域 → 关键词)
    ├── 伤寒论/                    12 篇 + _INDEX
    ├── 金匮要略/                  23 篇全 + 附录 + _INDEX
    ├── 黄帝内经/                  53 篇分 6 组 + _INDEX
    ├── 神农本草经/                药性总义 + 上中下经 345 种 + _INDEX
    ├── 医案/
    │   ├── 按病种/                6 类 + _INDEX
    │   └── 临床日志/              321 例分 17 份 + _INDEX
    ├── 闭门课/                    13 个重病专题 + _INDEX
    └── 针灸.md 天纪.md 梁冬对话.md 汉唐文章.md 推荐书目.md

命名规则:架构文件用英文(工程概念),语料内容用中文(中医典籍本名)。这条规则解释了目录里每一处语言选择。

寻址

corpus/_INDEX.md  →  <域>/_INDEX.md  →  定点读单文件
   (定域 ~0.5k)      (定文件 1-3k)      (多数 < 25k tok,可整读)

所有语料文件均可整读,无需 offset/limit。最大单文件 金匮要略/14_水气病脉证并治.md(~30k tok)。

加载预算

场景 token
触发基线(纯路由) ~2.3k
涉及身体(强制加载安全契约) ~3.9k
典型辨证 ~8.2k
深查语料(最坏情况) ~34.4k

与语料底本的差异

直接底本为 jangviktor-web/nihaixia(完整传承链见下文「溯源」)。该项目完成了讲义的蒸馏与模块化整理,本仓库的语料内容完整继承自它(逐行比对,知识性内容无丢失),改动集中在工程结构与安全边界。

1. SKILL.md 从 865 KB 降到 9 KB

底本的 SKILL.md865,467 字节(约 21.6 万 token)。Claude Code 的机制是 skill 触发时 SKILL.md 全量注入上下文——问一句"倪海厦怎么看失眠",整部伤寒论讲义会一起进来。

更能说明问题的是它开头的指示:

⚠️ 检索规则:先查本索引定位行号,再 Read 对应内容回答。

作者的设计意图是"索引 + 按需检索",方向是对的,但放错了文件——SKILL.md 是入口文件,加载时已整份在上下文里,再 grep 它自己没有意义

逐行比对发现其正文 96%+ 是 modules/ 的副本:

分区 行数 独有率
伤寒·太阳病篇 5,254 4.0%
金匮各篇 3,137 0.7%
医案精选 / 针灸本草 / 闭门课 1,212 0%
六经诊断公式速查 458 100%

删除重复正文,唯一 100% 独有的「六经诊断公式」抽入 clinical/

2. 分层标准从「体积」改为「职责」

底本(以及本项目早期版本)按"能否整读"划分层级,结果同一层混放临床工具、经典解读、表达风格、医案与补遗——那是按大小排序,不是架构。现按职责分层,每层单一目的。

3. 安全边界提为独立契约层,并采用「双形态」

底本的安全清单写在 SKILL.md 末尾,与角色扮演指令同处一文件,靠一句"本节优先"来压制——那是文本约定,不是结构保证

但纯粹拆成独立文件有个陷阱:

独立文件按需加载 → 可能不加载 → 等于不存在。

安全约束是唯一值得冗余的信息。所以 P0 做成两半:不可删的硬禁令摘要常驻 SKILL.md(保证任何情况下都在场),完整契约、判例、立场声明放 POLICY.md(可独立审计、版本化、复用)。再加强制路由:命中身体/用药/治疗话题 → 必须先读 POLICY.md 全文。

4. 补上安全清单的缺口

底本禁止了"用倪海厦言论否定急救医学",但未覆盖肿瘤治疗与慢病用药——而语料中反化疗、劝停他莫昔芬、称抗凝药为"老鼠药"的内容密度很高。缺口正好开在后果最重的地方:拒绝化疗、自行停用内分泌治疗药有明确的死亡风险,且不像心梗那样有"当场送医"兜底。

新增:肿瘤治疗与处方药禁令、语料立场声明(转述须标注归属、不得转为行动建议)、四类场景判定(纯学术 / 涉及身体 / 治疗决策 / 急症)、判例、药物毒性提示。

5. 消除风格与安全的直接冲突

底本风格章节把「建议您咨询专业医师」列为禁止表达,而安全清单要求「不能跳过就医提醒」——同一文件里,一条禁止说的话正是另一条要求必须说的话。

改为场景判定:纯学术讨论保留倪师直接风格;用户谈及自身身体时安全条款优先,风格让位。并写明这不算破坏角色——倪海厦本人临床也要求患者找医师面诊。

6. 语料索引化,最大文件从 290k 降到 30k token

底本单文件最大 04_jingui.md1,160,668 字节(约 29 万 token),无索引,只能盲目 Grep。现按篇/段/年切分为 87 个文件,建立三级索引。

7. 修正三处内容错误

  • 05_huangdi_neijing.md 实为《金匮要略》第 5–7 篇,不是黄帝内经。它与 04_jingui.md 篇目零重叠,两者合起来正好补齐 23 篇。而底本索引写着"内经理论 → 加载 05",查内经会查到金匮去。已合并纠名。
  • 医案边界识别:底本 03_yian.md 中,医案条目与医案内部小节(来诊原因/问诊/脉诊/中药处方…)使用同级标题,机械按标题切分会把单个病例拆散。按真实边界识别后为 321 例,而非标题计数的 410。
  • distilled_cases.mdcases/ 重复(合订本 vs 分册,重叠 99.6%),保留分册。另经验证 cases/03_yian.md 重叠 0%,是两套独立医案,均予保留。

8. 命名统一

底本混用三套命名体系:英文(clinical/cases/byname)、拼音(shanghan/jingui/bimen)、中文(文件名),同一层级都不一致;byname(按名字)实为按病种,名不副实。现统一为"架构用英文、语料用中文"。

9. 读音更正

skill 标识为 nihaisha 而非 nihaixia。「厦」在此为房屋义(广厦),读 shà;读 xià 仅用于地名。依据:倪海厦本人创办的汉唐中医官网 hantang.com 英文文章署名为 "Hai-Sha Ni"


溯源

本仓库不是原创语料,处在一条四层的传承链上。完整记录如下:

倪海厦公开教学内容(人纪 / 天纪系列讲义、医案、对话录音)
   │
   ├─ 9527qingfeng/hantang-nihaixia-follower      讲义 PDF 与医案数据源头
   │     2024-11 ·  MulanPSL-2.0(附正式 LICENSE 文件)
   │
   ├─ huoyalong/nihaisha-skill                     skill 基础框架
   │     2026-04 ·  未声明许可
   │
   ├─ jangviktor-web/nihaixia                      本仓库的直接底本
   │     语料整理与蒸馏 ·  README badge 声明 MulanPSL-2.0,未附 LICENSE 文件
   │
   └─ Tespera/nihaisha-skill(本仓库)              工程重构与安全契约
         沿用 MulanPSL-2.0 ·  附完整 LICENSE

关于仓库名:最初的 huoyalong/nihaisha-skill 用的就是正确读音 nihaisha;直接底本在其更新日志 v1.1.1 中记录「更名为「倪海厦skill」,slug 改为 nihaixia」,属拼写偏差。本仓库改回 nihaisha(依据见上文「读音更正」),因而与最初的框架仓库同名,但二者不是同一项目——本仓库是其下游的下游。

关于许可链:MulanPSL-2.0 的正式声明出自链条最底层的 hantang-nihaixia-follower(该仓库附有 LICENSE 文件);中间的 nihaisha-skill 未声明许可;直接底本以 README badge 声明。本仓库沿用 MulanPSL-2.0 并补齐 LICENSE 全文。链条中段存在声明缺失,此处如实记录,供使用者自行判断。

语料来源与许可

语料整理自倪海厦公开教学内容,底本方记录的素材规模为 10 份讲义、2,452 页

讲义 页数 讲义 页数
伤寒论讲义 209 神农本草经文稿 339
金匮要略讲义 419 天机道(紫微斗数) 75
黄帝内经讲义 461 人间道(易经) 146
针灸教程讲义 216 地脉道(风水) 65
汉唐文章集锦 383 倪海厦文集 139

另含临床医案集、梁冬对话录音稿(2009)、人纪班闭门课记录。

本仓库沿用 木兰宽松许可证第 2 版(MulanPSL-2.0),完整文本见 LICENSE。本仓库的架构设计、分层索引、安全契约(POLICY.md)与工具层(clinical/)为独立编写。

⚠️ 需要区分的是:MulanPSL-2.0 覆盖的是各层整理者对其整理成果的授权,不涵盖倪海厦讲义内容本身的著作权——后者归倪海厦先生的权利人所有。本项目仅用于学习研究,不用于商业用途。如权利人认为不妥,请提 issue,将及时处理。

致谢

按传承顺序:

  • 倪海厦先生(1954–2012) 留下的公开教学内容——这是一切的源头
  • 9527qingfeng:倪师人纪讲义 PDF 的整理与医案数据
  • huoyalong:nihaisha-skill 基础框架
  • jangviktor-web:语料的收集、蒸馏与模块化整理——本仓库的语料内容完整继承自该项目

About

倪海厦讲义做成的 Agent Skill。伤寒论 129 条、金匮 23 篇、内经 53 篇、本草 345 种、医案 321 例,分层索引按需加载,触发仅 2.3k token,内置安全契约。

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages