Install
openclaw skills install @handsomestwei/patent-disclosure-skill中国专利技能:专利点挖掘与交底书(发明/实用/外观)编写,通俗解读专利,嗅探政策动向,辅助审查答复。| China patents skill: mine patent points and draft disclosures (invention / utility model / design), plain-language reading, policy sniffing, assisted office-action response.
openclaw skills install @handsomestwei/patent-disclosure-skill本技能单包模块化:分步指令在 prompts/,执行前须 Read 对应文件。SKILL.md 只做路由。
| 模式 | 何时用 | 主入口 |
|---|---|---|
| A · 交底书编写 | 挖专利点 → 查新 → 成稿 → 迭代 | prompts/disclosure/(类型子目录见下) |
| B · 专利通俗解读 | 公开号 / PDF / 全文 → 通俗笔记 + 图谱 | prompts/reader/patent_plain_reader.md |
| C · 技能进化旁路 | 政策/审查动向嗅探 → 带时间戳清单 → 人审后才改技能 | prompts/evolution/(须显式触发) |
| D · 审查答复辅助 | 案例脱敏入库;实务书→经验手册;通知书 → 检索+手册 → 自动出草稿(可换策略迭代) | prompts/oa/(须显式触发;草稿须复核后递交) |
提供专利号或专利全文/PDF且意图为「读懂」时 → 优先模式 B,不默认跑交底书 Step 1–8。
禁止因写交底/读专利自动进入模式 C/D。
prompts/disclosure/ # 交底公共流程
invention/ # 发明:挖点 / builder / template
utility_model/ # 实用新型:挖点 / builder / template(单独 md,勿套用发明 mermaid 主线)
design/ # 外观设计:挖点 / builder / template(单独 md)
prompts/reader/ # 通俗解读 + type_hooks
prompts/shared/ # 写读共用:Structure / Appearance 填表 + figure_plan + 线稿(image_gen)
prompts/evolution/ # 模式 C:政策/审查动向嗅探 · 进化清单(旁路,须显式触发)
prompts/oa/ # 模式 D:审查答复 / 案例入库(旁路,须显式触发)
references/schemas/ # structure / appearance / figure_plan / formula_plan / lineart / evolution / oa_case
references/formulas/ # 发明公式推荐范式(paradigms.yaml,可外挂扩展)
tools/crawl/ # 国知局等爬取
tools/shared/ # docx/mermaid/专利类型/可选 STEP(cad-env)/ 线稿门禁与按件拼装;browser.py + svg_screenshot.py
tools/patent_reader/ # 解读工具:shared/ | extract/ | analyze/ | vault/
tools/oa/ # 模式 D:config / embed / sqlite-vec / ingest / search
outputs/evolution/ # 模式 C 清单默认落盘(gitignore)
docs/evolution/ # 仅用户确认「沉淀」后可复制提交
docs/oa/ # 模式 D:embedding 配置模板种子(运行时在系统文档目录)
EPUB_HITS_JSON: / EPUB_MERGE: / EPUB_CLASS_HINT:、PROBE: / BROWSER:、MERMAID: / DOCX: / MATH: / omml_text_fallback=、CAD_VENV: / SVG_HTTP: / PIP_INDEX / PLAYBOOK:。PowerShell 可能把 stderr 标成 NativeCommandError 或乱码;禁止因此重跑安装、或把查新降级 WebSearch。勿用 2>&1 把 JSON 混进错误流。disclosure/intake.md)。tools/shared/mermaid_render.py(Playwright + 内置 mermaid.js,见 tools/shared/browser.py)。流程图步骤号须写入可见标签:S1["S1 …"](id 本身不出图)。成文须让标题领域对象贯穿 3.1 / 框图 / 流程 / 实施例;用词贴合话题背景,话题错位的抽象行话换成领域表述(发明 disclosure_builder.md §7.9)。figure_plan.yaml 排序入文图(只入合格线稿;CAD 投影不入文)+ 部件/关系表(见 utility_model/disclosure_builder.md)。figure_plan.yaml 选正投影(非默认六视;干净实拍 + 线稿都入文,写入 md 与 Word;CAD 不入文)(见 design/disclosure_builder.md)。cad_scan.py 分类;不中断挖点/成文。遇 .step/.stp 记下路径,交底 落盘后再反问是否开启解析;用户 是 才 cad_venv.py(已就绪则跳过安装)/bootstrap_cad_venv.py + run_step_to_views.py --enable-step-parse。CadQuery 只进 tools/shared/cad-env(Python 3.10–3.12,不强制 3.10)。PNG:有 Cairo 用 cairosvg,否则 svg_screenshot.py 无头浏览器截 SVG;禁止为 CAD 安装 matplotlib(matplotlib 只用于发明公式 PNG)。投影图是普通材料(kind: cad),不得当线稿、不得入文;打分后可能作图生图参考。仅有原生 CAD 则交付回复末尾提示导出 STEP。见 project_scan.md「CAD / STEP」。Read shared/image_gen.md + shared/design_lineart_assist.md。不问用户。已有合格线稿则入文;否则大模型生成。干净实拍同时入文(md + Word),但不得标成线稿。CAD 不入文。仅用户明确不要或 PATENT_SKILL_SKIP_LINEART=1 才跳过。Read shared/image_gen.md + shared/structure_lineart_assist.md(轮廓后 Read shared/structure_lineart_compose.md)。不问用户。对齐 structure_schema.parts;轮廓按件拼装为子 SVG + 总图相对引用,再叠序号。推荐:structure_lineart_compose.py 每件落 parts/{视}_{id}.svg,总图 <g id="part-N"> 引用子文件(不要整图 base64+clip),大模型只定位并把归一化锚点持久化到 structure_callout_anchors.yaml(含 base_svg_path),再由 structure_callout_overlay.py 注入件号组;叠标后须读图按部件名称核对引出线(改 YAML 重叠标,最多 2 轮;禁止含件号二次生图或自创件号)。CAD 不得当线稿入文。勿与外观 design_lineart_* 混用。docs/obsidian-setup-guide.md。skip-vector,中途再 enable + 重建);推荐智谱 embedding-3;标签检索始终可用,向量超时则回退。实务书蒸馏:只要本地路径,先预读再外挂 book-to-skill,手册进 oa/playbooks/、不进案例检索。/patent-disclosure-skill、/交底书。/patent-read、/读专利。disclosure/iteration_context.md → merger / correction_handler;另存时间戳稿。/patent-evolve、/技能进化 → 仅此时进入模式 C。/oa、/审查答复 → 仅此时进入模式 D。| 任务 | 建议方式 |
|---|---|
| 加载分步指令 | Read → `prompts/disclosure |
| Word / PPT → Markdown | tools/shared/docx_to_md.py / pptx_to_md.py |
| CAD 扫描 / STEP→多视图(可选,默认关) | tools/shared/cad_scan.py;交付后用户确认才 cad_venv.py(就绪则跳过安装)+ run_step_to_views.py --enable-step-parse;投影只当材料 |
| 线稿规划(必做) | prompts/shared/image_gen.md;tools/shared/image_gen.py(existing / img2img / txt2img) |
| 外观线稿(必做) | prompts/shared/design_lineart_assist.md;门禁 design_lineart_gate.py |
| 实用结构线稿(必做) | prompts/shared/structure_lineart_assist.md + structure_lineart_compose.md;门禁 structure_lineart_gate.py;拼装 structure_lineart_compose.py;锚点 structure_callout_anchors.yaml;叠标 structure_callout_overlay.py |
| 联网查新 | Read disclosure/prior_art_search.md。优先 cnipa_epub_search.py --type …(与 intake 一致);两段式:关键词 → EPUB_CLASS_HINT / ipc_codes·loc_codes → --class 第二轮(发明/实用 IPC,外观 LOC);1.1 优先第二轮;不足 4 条则同分类号回补第一轮,仍少可仅分类号/相邻号再查,禁止编造凑数。Google Patents CPC= 仅可选补充,被墙即跳过。abstract 必用;公布站失败再 WebSearch。见 patent_type_search.yaml |
| 交底定稿 | 发明:tools/shared/mermaid_render.py → md+docx;实用/外观:按各类型 builder(外观 md+docx 须同时嵌实拍与线稿) |
| 专利通俗解读 | Read reader/patent_plain_reader.md;实用/外观另 Read reader/type_hooks.md + shared/fill_* |
| 解读取 PDF / 入库 | tools/patent_reader/extract/fetch_patent_pdf.py;…/vault/write_patent_obsidian_note.py 等(见 tools/patent_reader/README.md) |
| 政策/审查动向嗅探 | Read evolution/intake.md → research.md(WebSearch + 官网抓取)→ emit_backlog.md;确认后 apply_after_confirm.md |
| 审查答复 / 案例库 | Read oa/intake.md;PDF 用 oa/pdf_text.py / search_cases.py --pdf / ingest_case.py --pdf;入库 oa/ingest_case.md;手册 oa/ingest_playbook.md + ingest_playbook.py;答复 oa/respond_office_action.md;配置 oa/config.py |
| 步骤 | 文件 | 用途 |
|---|---|---|
| Step 1 | prompts/disclosure/intake.md | 边界;默认发明;可反问实用/外观 |
| Step 2 | prompts/disclosure/project_scan.md | 项目扫描(Office + 可选 CAD/STEP;三类示例加扫) |
| Step 3–4 | 发明 disclosure/invention/patent_points_analyzer.md;实用 utility_model/patent_points.md;外观 design/patent_points.md | 挖点(分文件,勿混用) |
| 填表(实用/外观) | prompts/shared/fill_structure_schema.md / fill_appearance_schema.md | 图→schema + figure_plan.yaml(打分;CAD 不入文) |
| 线稿规划 | prompts/shared/image_gen.md | 必做;existing / img2img / txt2img |
| 外观线稿 | prompts/shared/design_lineart_assist.md | 必做;不问用户;实拍+线稿都入 md/Word;CAD 不是线稿 |
| 实用结构线稿 | prompts/shared/structure_lineart_assist.md | 必做;不问用户;轮廓→子 SVG+总图引用→按 parts 叠序号 |
| 实用线稿拼装 | prompts/shared/structure_lineart_compose.md | 独立模块;每件一个子 SVG,总图相对引用,再注入件号 |
| Step 5 | prompts/disclosure/prior_art_search.md | 查新(--type) |
| Step 6 | prompts/disclosure/disclosure_preview.md | 摘要预览(按类型裁剪) |
| Step 7 | 对应类型目录 disclosure_builder.md + template_reference.md | 成文(分文件;发明含公式时先 formula_plan.yaml) |
| Step 8 | prompts/disclosure/disclosure_self_check.md | 内部自检(含 §8.4 / §8.5) |
| 迭代 | disclosure/iteration_context.md / merger.md / correction_handler.md | 另存 |
| 步骤 | 文件 |
|---|---|
| 主流程 | prompts/reader/patent_plain_reader.md |
| 类型挂钩 | prompts/reader/type_hooks.md |
| 写笔记 | reader/obsidian_ofm_companion.md + references/patent_obsidian_format.md |
| 自检 / 插件引导 | reader/patent_reader_self_check.md / obsidian_plugin_guide.md |
| 取 PDF | tools/patent_reader/extract/fetch_patent_pdf.py |
| 入库 | tools/patent_reader/vault/write_patent_obsidian_note.py |
| 步骤 | 文件 |
|---|---|
| 总则 | prompts/evolution/guardrails.md |
| 录入 | prompts/evolution/intake.md |
| 检索/抓取 | prompts/evolution/research.md |
| 出清单 | prompts/evolution/emit_backlog.md |
| 确认后改技能 | prompts/evolution/apply_after_confirm.md(须人审) |
| 交底交付低频提示 | prompts/evolution/soft_nudge.md(可选一句,不入正文) |
| 合同 | references/schemas/evolution_backlog.schema.yaml |
| 步骤 | 文件 |
|---|---|
| 总则 | prompts/oa/guardrails.md |
| 录入 | prompts/oa/intake.md |
| 向量对话配置 | prompts/oa/configure_embedding.md(问答 → set/secrets → selftest) |
| 脱敏入库 | prompts/oa/ingest_case.md + tools/oa/ingest_case.py(支持 --pdf) |
| 经验手册 | prompts/oa/ingest_playbook.md + tools/oa/ingest_playbook.py(先 peek;本地路径;oa/playbooks/) |
| 答复草稿 | prompts/oa/respond_office_action.md + tools/oa/search_cases.py --pdf(可 Read 手册 cheatsheet) |
| PDF 抽取 | tools/oa/pdf_text.py(pymupdf;优先路径,禁止让用户手贴) |
| 案例模板 | prompts/oa/case_note_template.md |
| 合同 / 配置 | references/schemas/oa_case.schema.yaml、oa_playbook.schema.yaml;运行时 {Documents}/…/oa/embedding.config.yaml(仓库模板 docs/oa/) |
Read disclosure/intake.md → Step 1(默认发明)Read disclosure/project_scan.md → Step 2Read invention|utility_model|design 挖点;实用/外观先/并行 Read shared/fill_*
figure_plan 后:Read shared/image_gen.md + 对应 shared/*_lineart_assist.md(必做,不问用户)Read disclosure/prior_art_search.md → Step 5(--type 对齐)Read disclosure/disclosure_preview.md → Step 6(可跳过;此处可类型反问)Read 同类型 disclosure_builder + template_reference → Step 7(禁止用发明 builder 写实用/外观)Read disclosure/disclosure_self_check.md → Step 8ask_enable_step_parse,交底落盘后再反问是否开启 STEP 解析;hint_export_step 则提示导出。未得 是 禁止装依赖。用户成文前已主动说「是」的除外。禁止:交底书正文出现「自检清单」章节。
Read reader/patent_plain_reader.md(门禁 / fetch / extract / 线索 / 入库)Read reader/type_hooks.md + 对应 shared/fill_*Read ofm + 自检;入库后可选插件引导;≥2 篇反问关联与模式 A 互斥:解读不跑交底 Step 1–8。
Read evolution/guardrails.md → intake.mdRead evolution/research.md:WebSearch + 打开国知局等官网正文;默认近 12 个月Read evolution/emit_backlog.md:写入 outputs/evolution/EVOL-YYYYMMDD-HHMM.md
https:// 链接)Read apply_after_confirm.md → 最小改动 prompts,并写 .status.md交底定稿交付后的可选一句提示见 evolution/soft_nudge.md(低频;不等于自动进入本模式)。
与 A/B 互斥:进化旁路不写交底书、不做专利解读成稿。
Read oa/guardrails.md → intake.mdRead oa/configure_embedding.md → 对话问清(可跳过 / 预设 / 自定义 URL+模型+Key)→ config.py set … --api-key …(默认 selftest)→ 需重建则人确认后 rebuild_vectors.py --confirmingest_case.py(支持 --pdf);笔记进 oa/cases/history/(或 pending/drafts);自动刷新 _OA索引 / Canvas / Bases;无向量时仍写笔记 + 元数据ingest_playbook.py peek → 判断审查答复相关且值得蒸馏(不合适则拒绝,除非用户强烈要求)→ ensure-skill 自动安装 book-to-skill → 按该 skill 蒸馏本地书 → ingest 到 oa/playbooks/(不进案例向量)search_cases.py --pdf … → ingest_playbook.py list 并按缺陷 Read cheatsheet → 同点多策略相对分(分差≥15 且过保范围门槛才改缩权;禁止授权率、禁止裸 argmax) → 出一份草稿 → 事后短摘要;用户可换策略另存新稿python tools/oa/refresh_vault.py依赖:pip install -r tools/oa/requirements-oa.txt。
与 A/B/C 互斥:不写交底书主流程;草稿须复核后递交(写稿前不中断勾选;换策略则另存新稿)。
iteration_context → merger → 新时间戳稿(实用/外观若改图或主题须同步 figure_plan;术语改叫法则整族替换)iteration_context → correction_handler → 新时间戳稿(同上;含术语太抽象、标题对象未落地)□ 已区分模式 A / B / C / D / 迭代,未混跑
□ 交底未指定类型时已默认发明;材料偏实用/外观已按需反问
□ Step 3–4 / Step 7 已 Read 对应类型子目录 md(非发明套用实用/外观)
□ 查新 cnipa 已带与案件一致的 --type;两段式(关键词 → IPC/LOC → --class);外观用 LOC;1.1 优先第二轮,不足 4 条已同分类号回补(仍少可仅分类号/相邻号,未编造凑数);未粘贴合并大杂烩;GP 被墙已跳过;abstract 必用
□ 发明成文:3.1 已铺标题对象与领域术语;框图/流程/实施例贯穿标题实词;用词贴合话题背景(错位行话已换成领域表述,非靠定义保留);3.3 独立模块、3.4 逐项对应 S 步;第五章为可实施机制
□ 发明含公式:已写 formula_plan(范式∈references/formulas)且可算数值例;禁装饰音;已 check_formula_plan 或等价自检;行内为 \(...\)/$...$ 而非 (M_{\mathrm{…}});latex_delimiters 无 hits;改正后已用时间戳 md 重出 Word
□ 实用/外观已走 schema 填表(shared)并写出 figure_plan(含 relevance/quality 与必要 relates_to),未看图直接长文;实用只嵌入文线稿;外观 md+docx 同时嵌实拍与线稿;CAD 未入文
□ Step 2/补材料已 cad_scan:遇 STEP **未**中断成文、**未**装依赖;交底落盘后才反问;仅原生 CAD 则交付回复末尾提示导出 STEP;未确认不开 step_to_views;确认后先 cad_venv 探测,已就绪则跳过 bootstrap;CAD 投影只当材料
□ 外观线稿:已 Read image_gen.md + design_lineart_assist;已有合格线稿则未再生成,否则图生图或先描述再文生图;实拍与线稿均已入 md 与 Word;CAD 未当线稿入文
□ 实用结构线稿:已 Read image_gen.md + structure_lineart_assist + structure_lineart_compose;件号对齐 parts;已按件写出 parts/{视}_{id}.svg 且总图相对引用(一层一件号,未拆筋/齿/螺栓,未整图 clip);优先 overlay 注入;已叠标后读图核对(非仅 Python 合法);未自创件号;CAD 未入文
□ 迭代改材料/主题时已重评 figure_plan(含图际关联)
□ 解读实用/外观:公开号种类码或 patent_type.py / fetch 状态已判别类型,并 Read type_hooks + 共用 schema(用户未口头声明也可)
□ 模式 C:已显式触发;清单含观点↔URL 主表;未确认前未改技能;确认后才 apply
□ 交底定稿交付:已按 evolution/soft_nudge 判断是否加低频一句(未每次必出、未写入正文)
□ 模式 D:已显式触发;向量可选已反问(可跳过);PDF 已自动抽取;入库已脱敏;检索展示 retrieval_mode;向量失败已回退标签;需重建时已人确认;手册先预读再蒸馏且未进案例向量;答复同点多策略用相对分+保范围门槛(非授权率、非裸 argmax),事后摘要且可换策略另存新稿
□ 路径使用 prompts/disclosure|reader|shared|evolution|oa 与 tools/crawl|shared|oa|patent_reader/{extract,analyze,vault,shared}