Install
openclaw skills install @yuanzhian-patsnap/create-patent-based-rd-briefing-rdCreate an evidence-bounded English patent-based R&D briefing from an authorized Excel workbook. Use when a user supplies patent records and asks to screen relevance, organize reviewed records by technology route and organization, preserve approved workbook links or figures, and generate a self-contained scientific HTML briefing with reproducible scope, review provenance, and patent-professional boundaries.
openclaw skills install @yuanzhian-patsnap/create-patent-based-rd-briefing-rdCreate an auditable R&D briefing from a user-authorized patent workbook. The workflow preserves the source package's two-stage process:
The briefing supports technical orientation, portfolio triage, competitor monitoring, route comparison, and research-planning discussion. It does not establish novelty, validity, enforceability, infringement, non-infringement, or freedom to operate.
Use this skill when the user:
.xlsx patent export;Do not invoke merely because a user mentions patents. If the user asks for a search and supplies no workbook, perform the authorized patent search first and build a documented evidence table before using this local rendering workflow.
Collect or confirm:
Do not upload or search confidential material without authorization.
The localized package intentionally preserves every file in the frozen source:
create-patent-based-rd-briefing-rd/
├── .gitignore
├── CHANGELOG.md
├── DISTRIBUTION.md
├── IMPROVEMENTS.md
├── LICENSE
├── requirements.txt
├── install.sh
├── SKILL.md
├── tech-report-skill-v1.1.0_<legacy-installation-note>.txt
├── config/
│ ├── BIPV_content.py
│ ├── BIPV_keywords.py
│ ├── <legacy-coffee-machine>_content.py
│ └── <legacy-coffee-machine>_keywords.py
├── examples/
│ └── SAMPLE_DATA.md
└── scripts/
├── generate_report.py
├── run.sh
└── tag_relevant.py
Two filenames remain non-English only because exact source topology is a release requirement. Their content, runtime topic key, field names, and report output are English. Do not rename them unless the package topology is explicitly versioned.
The frozen source refers to README.md and config/README.md, but those files
are absent. Do not invent them. This file is the authoritative operating guide.
Required:
pandas>=2.0.0;openpyxl>=3.1.0;The scripts do not install dependencies automatically and do not download images, fonts, scripts, or other runtime assets.
The optional verified global patent connectors are:
advanced_patent_search — https://open.patsnap.com/marketplace/mcp-servers/patent-searchpatent_briefing — https://open.patsnap.com/marketplace/mcp-servers/patent-briefingUse the currently exposed tool schema as authoritative. Do not copy domestic tool names or invent parameters from the frozen source.
The local workbook workflow does not require an MCP. If a connector is missing,
record not searched and the resulting evidence gap. Never fabricate results.
When the user explicitly requests a search:
advanced_patent_search where available;patent_briefing only for supported synthesis;Matched totals are not reviewed totals. A returned result page is not the global patent universe.
The scripts accept configured aliases but normalize to:
| Canonical field | Required | Purpose |
|---|---|---|
publication_number | yes | Stable record identity |
title | yes | Original or reviewed title |
applicant | yes | Applicant/assignee string from the source |
legal_status | recommended | Status label with separate as-of context |
application_date | recommended | Filing/application date |
publication_date | recommended | Publication date |
normalized_title | optional | Reviewed concise title |
technical_problem | optional | Evidence-grounded problem statement |
technical_solution | optional | Evidence-grounded technical approach |
technical_effect | optional | Reported effect, not assumed performance |
abstract | optional | Abstract text used for discovery |
independent_claims | recommended | Claim text or reviewed claim notes |
family_id | recommended | Explicit simple-family identifier |
source_url | recommended | Allowlisted HTTP(S) patent-record URL |
Configured column aliases are explicit. Do not rely on column position.
tag_relevant.py adds:
| Field | Meaning |
|---|---|
Discovery disposition | Candidate, likely out of scope, or no configured signal |
Inclusive terms matched | Exact inclusive discovery terms found |
Exclusion terms matched | Exact exclusion discovery terms found |
Review status | Human review state |
Reviewer | Named reviewer |
Review date | ISO review date |
The reviewer may add Reviewed category IDs using configured category IDs.
The renderer includes a record only when:
Discovery disposition is Included, Include, or
Included — reviewer confirmed;Review status is Reviewed, Approved for briefing, or Complete;Reviewer is non-empty;Review date is a valid ISO date;Unreviewed candidates are withheld, not silently included.
Each _keywords.py file defines:
CONFIG_VERSION;TOPIC_KEY and TOPIC_LABEL;SEARCH_FIELDS;COLUMN_ALIASES;Keyword hits are discovery evidence only. Do not label a record relevant, novel, valuable, blocking, risky, or infringing from a keyword score.
Each _content.py file defines:
The frozen source included future-dated news, market percentages, technical summaries, category totals, and leadership claims without a frozen evidence register. These have been preserved as clearly unverified discovery leads or source-example publication lists, not release facts.
Do not add source-absent files to this package without user approval. If a user explicitly approves a new topic configuration:
Do not silently treat a domestic or single-language export as global coverage.
.xlsx format.The tagging script writes a separate output workbook and refuses overwrite by default.
Run:
python -B scripts/tag_relevant.py \
input.xlsx \
tagged.xlsx \
BIPV
For the second source example, use topic key coffee-machine.
Optional reviewed metadata:
python -B scripts/tag_relevant.py \
input.xlsx \
tagged.xlsx \
BIPV \
--reviewer "Reviewer name" \
--review-date 2026-08-08
This metadata does not by itself approve records. The reviewer must still set the disposition and status.
For every candidate:
Do not use a target percentage such as 30–60% as a quality criterion. Relevance rates depend on the search universe and decision question.
Run:
python -B scripts/generate_report.py \
tagged.xlsx \
briefing.html \
BIPV \
2026-01-01 \
2026-03-31 \
--report-date 2026-04-02 \
--evidence-cutoff 2026-03-31
The renderer:
Review:
Release only when:
The localized HTML includes:
The source's industry-news, company, and category modules remain conceptually preserved, but only evidence-backed content may be published. Empty or withheld modules must not be filled with source-example assertions.
Use:
Avoid:
Always label whether a number represents:
Configured source-example counts are never authoritative.
Patent activity in the reviewed workbook is not proof of:
Normalize aliases and corporate relationships when material.
Category-term hits are proposed classifications. The reviewer confirms category assignment. A record may belong to multiple categories. An empty category means no included record was assigned in this reviewed workbook, not global absence.
Record the source and as-of date. Status labels may be incomplete, delayed, or jurisdiction-specific. Do not infer enforceability from a simple status field.
Read relevant independent claims and required context. The report may summarize technical claim relevance but must not automate infringement or FTO conclusions. Escalate material questions to a qualified patent professional.
If a configuration is missing:
If the workbook lacks required fields:
If no record is reviewer-confirmed:
If an image cannot be extracted:
If an output exists:
--overwrite only after confirming the exact target;Before release:
python -B -c "import ast, pathlib; [ast.parse(pathlib.Path(p).read_text(encoding='utf-8')) for p in ['scripts/tag_relevant.py', 'scripts/generate_report.py']]"
bash -n install.sh
bash -n scripts/run.sh
Then run a representative end-to-end fixture and negative tests for:
Provide:
Do not create additional package files without authorization.
State:
Never describe the report as exhaustive, legally cleared, globally complete, or proof that no relevant patents exist.