中国专利.skill 技术解读:把专利交底书写成 Agent 工作流

GitHub 趋势榜上出现了一个仓库:handsomestWei/patent-disclosure-skill,仓库名就是它的用途(专利交底书),作者给它起的中文叫「中国专利.skill」。它做的事情是把专利流程中的四个环节,专利点挖掘与交底书编写、著录字段检索、专利文本通俗解读、审查意见答复,打包成一套可以直接装进 Claude Code 或 Cursor 的 Agent Skill。仓库上线后增长很快,Star 数已到 7k 量级,Fork 数 771(数字来自 GitHub 仓库 og 卡片,下文的仓库结构数据均来自仓库本身)。

仓库 og 卡片

写交底书这件事在研发体系里的位置很微妙。代码是工程师写的,方案是工程师设计的,但专利申请的第一份文件,技术交底书,通常卡在工程师和专利代理人之间:工程师觉得交底书是额外负担,代理人缺少对代码级细节的理解,结果就是大量研发成果根本没有走到专利申请这一步。这个仓库的 README 把动机写得毫不掩饰:「做了多年核心研发,专利发明人那一栏从没写过我的名字」。

Agent Skill 是什么形态

先交代一下载体。Agent Skill 是 Claude(Code 与 Cursor 等宿主均遵循同一约定)在 2025 年推出的一种扩展机制:每个技能是一个文件夹,里面放一份 SKILL.md 描述文件和若干脚本资源,模型在需要时按描述加载对应技能。它解决的问题是上下文效率:把所有领域知识塞进系统提示词会占满上下文,按需加载只在需要时读取对应技能的文件。一个技能可以只是一份写作指南,也可以带上可执行脚本,让模型在推理过程中调用。

「中国专利.skill」就是按这个约定组织的,仓库根目录即技能根目录。内部结构上,根级 SKILL.md 并不承载具体流程,只做路由入口,按用户意图把请求分发到五个子技能包:

text
SKILL.md                         # 路由入口
skills/patent-disclosure/        # 交底(含填表/线稿/CAD/公式/docx)
skills/patent-search/            # 著录检索
skills/patent-reader/            # 解读
skills/patent-oa/                # 审查答复
skills/patent-exam-policy/       # 政策简报

交底书初版生成的实机运行记录

每个子技能包有自己的 SKILL.md 和 prompts/ 目录。以最核心的交底包为例,流程被拆成 8 个步骤,每一步对应一个独立的 prompt 文件:Step 1 意图收集(intake.md)、Step 2 项目扫描(project_scan.md,会按优先级读取项目里的文档和代码,.docx/.pptx 先转 Markdown 再扫)、Step 3–4 按专利类型分别挖点(发明/实用新型/外观三个目录各有一套)、Step 5 查新、Step 6 交底书预览、Step 7 成文、Step 8 自检。迭代场景(补材料、纠错)也有独立的 prompt,产出另存新文件并附带修订对话记录。

查新为什么接的是国知局

交底书流程里技术含量最高的一步是查新。这个技能的做法没有让模型凭训练知识「回忆」类似专利,而是直接调用国知局中国专利公布公告站(epub.cnipa.gov.cn)做真实检索。工具层用 Playwright 驱动本机 Chrome 或 Edge 访问公布站,抓取检索结果并输出机读 JSON 与 Markdown 报告。

外观专利线稿示例

这条链路有几个值得展开的工程设计。第一,它处理了公布站的 WAF(Web Application Firewall)问题,每个技能包自带一份 browser.py 副本负责过防护。第二,检索输出遵循一套机读前缀约定:脚本 stdout 以 EPUB_HITS_JSON:EPUB_SEARCH_MD:PROBE:MERMAID:DOCX: 等前缀标记结构化结果,Agent 解析时以退出码和这些前缀为准。INSTALL.md 里专门用一段解释为什么:Windows 的 PowerShell 可能把 stderr 标成 NativeCommandError,stderr 有字不等于失败,如果 Agent 误判就会把查新错误地降级成 WebSearch。这实际上是在给「跑脚本的模型」写防御性文档,把「如何判断脚本成功」显式编码进输出协议。

第三,查新和著录检索被刻意分成两个工具。交底流程里的 Step 5 查新是轻量检索(一词一页),只用交底包自带的 cnipa_epub_search.py;按发明人、申请人、分类号等字段做系统性检索则属于检索包的 cnipa_search.py。根 SKILL.md 的执行前核对清单里明确写着「交底查新未调用 patent-search」「著录检索未用交底一词一页结果冒充清单」。检索结果的完整性也有明确标记:只有输出里 complete: true 才表示翻到了末页,退出码 3 表示部分结果,此时禁止声称「全部」。

出图与成文的约束

专利文件对附图有格式要求,这个技能在出图上的处理比一般「AI 画图」克制得多。外观设计线稿从产品图提炼黑白轮廓(已有合格线稿优先,否则图生图/文生图),实用新型结构线稿按 structure_schema 的零件清单逐件绘制再叠加部件序号,并且明文禁止自创件号。对扫描到 STEP/STP 三维模型的项目,默认不解析,交底书落盘之后再询问是否开启 CAD 解析,CadQuery 只装进独立的虚拟环境(Python 3.10–3.12),与主依赖隔离。公式进 Word 走 OMML 格式(latex2mathml 转换),INSTALL.md 还特意写明默认安装不要包含 matplotlib,只有定稿输出出现公式回退标记且用户确认后才临时安装。

成文环节的交付物是时间戳命名的 .md 与同名 .docx,发明类型用 mermaid 画框图再渲染成 PNG 嵌入 Word。整个链路(Python 3.9+、python-docx、Playwright 驱动本机 Chrome/Edge)不依赖 Node 或额外的 npm 组件。

解读、答复与政策简报

交底之外的三个子技能覆盖专利生命周期的后半段。解读包(patent-reader)把公开专利全文或 PDF 抽取成权要树、术语表和「特征-说明书-附图」对照表,产出通俗笔记并写入 Obsidian 库,单篇专利生成一张 Canvas 图谱,多篇积累后可以形成专利关联图谱,术语之间用双链连接。审查答复包(patent-oa)处理审查意见(Office Action)的问答与答复草稿。政策简报包(patent-exam-policy)对照国知局口径整理审查政策变化对交底写法的影响,这个包被设计成「旁路」:根 SKILL.md 明确禁止因写交底或读专利自动进入政策简报,必须显式触发。

路由层还有一个容易忽略的细节:审查答复和政策简报的触发词被标记为「须显式」,而交底和解读有自然语言触发(「专利挖掘」「交底书」「读专利」)。这种差别化路由的意图是防止模型在长流程里自作主张扩大动作范围,写交底的途中顺手去改审查答复,属于典型的 Agent 行为边界设计。

对开发者意味着什么

对个人开发者,这个项目展示的是 Agent Skill 的工程化写法。大多数社区技能还停留在「一份提示词模板」的阶段,这个仓库展示了一个复杂领域工作流拆成多技能路由后的完整形态:prompt 分步文件、工具脚本、机读输出协议、行为边界清单、跨平台安装说明(Claude Code 的项目级 .claude/skills/ 与 Cursor 的 ~/.cursor/skills/ 都有对应路径)。这些设计不依赖特定模型能力,换一个遵循 Agent Skills 约定的宿主也能跑。

对在企业研发体系里工作的工程师,它指向一个更实际的问题:专利产出流程里哪些环节可以被 Agent 接管。挖点、查新、初稿成文是重复性高且规则明确的环节,适合自动化;而专利点判断、权利要求策略这类决策环节,README 的处理方式是保留人工确认位(候选点讨论与融合是独立步骤,迭代须用户确认后才另存新稿)。工具接管文书生产、人保留技术判断,这个分工在专利领域可能比在代码领域先跑通,因为交底书的格式约束比代码更刚性。

项目在 GitHub 以 MIT 协议开源,安装方式是把仓库克隆到 .claude/skills/patent-disclosure-skill(Claude Code)或 ~/.cursor/skills/patent-disclosure-skill(Cursor),默认交底路径需要 Python 3.9+ 和本机 Chrome 或 Edge。仓库地址:github.com/handsomestWei/patent-disclosure-skill。

来源:handsomestWei/patent-disclosure-skill 仓库 README、SKILL.md、INSTALL.md(GitHub)