Paper to Chinese Patent Drafter
Yuan1z0825/nature-skills
Drafts Chinese invention patent applications and technical disclosures from research papers or inventor materials, tying each claim feature to source evidence.
Audit a draft U.S. An agent skill from gfodor/legal-skills.
$ npx skills add gfodor/legal-skills --skill patent-audit -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install gfodor/legal-skills patent-audit --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/gfodor/legal-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/patent-audit .claude/skills/patent-audit && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "patent-audit" agent skill from https://github.com/gfodor/legal-skills/tree/main/patent-audit into .claude/skills/patent-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "patent-audit", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/gfodor/legal-skills/tree/main/patent-auditType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add gfodor/legal-skills --skill patent-audit -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install gfodor/legal-skills patent-audit --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gfodor/legal-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/patent-audit .agents/skills/patent-audit && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "patent-audit" agent skill from https://github.com/gfodor/legal-skills/tree/main/patent-audit into .agents/skills/patent-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "patent-audit", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add gfodor/legal-skills --skill patent-audit -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install gfodor/legal-skills patent-audit --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gfodor/legal-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/patent-audit .cursor/skills/patent-audit && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "patent-audit" agent skill from https://github.com/gfodor/legal-skills/tree/main/patent-audit into .cursor/skills/patent-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "patent-audit", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/gfodor/legal-skills.git --path patent-audit--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add gfodor/legal-skills --skill patent-audit -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install gfodor/legal-skills patent-audit --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gfodor/legal-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/patent-audit .gemini/skills/patent-audit && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "patent-audit" agent skill from https://github.com/gfodor/legal-skills/tree/main/patent-audit into .gemini/skills/patent-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "patent-audit", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install gfodor/legal-skills patent-auditInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add gfodor/legal-skills --skill patent-audit -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/gfodor/legal-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/patent-audit .github/skills/patent-audit && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "patent-audit" agent skill from https://github.com/gfodor/legal-skills/tree/main/patent-audit into .github/skills/patent-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "patent-audit", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add gfodor/legal-skills --skill patent-audit -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install gfodor/legal-skills patent-audit --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gfodor/legal-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/patent-audit .opencode/skills/patent-audit && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "patent-audit" agent skill from https://github.com/gfodor/legal-skills/tree/main/patent-audit into .opencode/skills/patent-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "patent-audit", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
patent-auditAudit a draft U.S. An agent skill from gfodor/legal-skills.
Patent Audit is an agent skill from gfodor/legal-skills. Audit a draft U.S. utility patent application before it is filed, against a 316-item checklist grounded in 35 U.S.C., 37 CFR, the MPEP, and current USPTO practice. Runs a deterministic pre-pass over the draft, gates on patentability, inventorship and deadlines, then fans out parallel review agents over the specification, claims, drawings and filing packet, adversarially verifies every fatal finding, and reports ranked defects with honest coverage accounting. Use when asked to audit, review, check, or pre-flight a…
Its SKILL.md is about 2.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 25 other files, including scripts and assets (for example `agents/openai.yaml`, `assets/intake.yaml` and `assets/sample_draft.md`).
It sits in Legal & Compliance, covering Intellectual property and Accounting and bookkeeping. The repository describes itself as: Replacing lawyers with markdown files. The licence is GPL-3.0.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 3c98f25. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Python, from the files we listed), which the agent can run.
Shell commands in SKILL.md call:
pythonFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Patent Audit loads about 2.9k tokens when it runs. Until then it costs about 152 tokens; SKILL.md has 1,382 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from gfodor/legal-skills at commit 3c98f25, republished under its GPL-3.0 licence (© gfodor). 1,382 words, ~2,935 tokens.
.claude/skills/patent-audit/SKILL.md (or your agent's skills folder). This skill also uses 20 other files; get the full folder from GitHub.Audit a draft utility patent application against 316 checklist items and return a ranked defect list with coverage accounting.
Not legal advice. The checklist is grounded in 35 U.S.C., 37 CFR, the MPEP, and current USPTO materials. Fee amounts, form names and filing mechanics must be re-verified against current PTO practice, and §101 case law moves. Say so in the report; the template already does.
| Path | Purpose |
|---|---|
reference/checklist_index.json | All 316 items with routing: id, part, section, title, check, severity, applies_to, inputs, automation, owner, blocking |
reference/parts/{A..I}_*.md | Full item text per part — these are the agent payloads |
scripts/prepass.py | One command for all of Phase 1 |
scripts/parse_application.py | Draft → structured parsed.json |
scripts/mechanical_checks.py | Deterministic checks → findings_mechanical.json |
scripts/deadlines.py | Intake → deadlines.json with weekend/holiday rollover |
scripts/synthesize.py | All findings → ranked report + coverage |
assets/intake.yaml | The intake questionnaire template |
assets/sample_draft.md | A draft with planted defects, for testing the harness |
Routing is precomputed. Every item carries:
inputs — what evidence it consumes: draft_text (210 items), intake_facts (99),
forms_packet (68), drawings (47), search_report (40), prior_art_refs (20),
ppa_text (20), parent_app (13).automation — mechanical (28), assisted (169), judgment (119).owner — which agent runs it.blocking — 105 items halt the audit on failure.26 items are answerable only from intake facts. No document review reaches them:
A19 A20 A22–A25 A36 C05 C08–C12 C21 D19–D26 D28 D29 I38 I42. If intake is
skipped, those are cannot_assess — never pass.
The draft fits in one context. Parallelize for attention, not capacity. Every agent gets the whole application. Never chunk the document across agents — enablement, antecedent basis and numeral consistency are whole-document properties.
Never let a model do arithmetic or exhaustive cross-referencing. Dates, claim counts, fee tiers, dependency graphs and numeral reconciliation run in code. Models find 19 of 20 numerals and report "all consistent."
Silence is not a pass. Every item ends as pass, fail, cannot_assess,
not_applicable, or not_reached. An agent that omits an item has not passed it.
cannot_assess is a correct answer. Some items — the duty of candour above all
— cannot be established from any document. Guessing is worse than admitting.
Run prepass.py with no --intake; it writes the questionnaire into the working
directory. Have the user fill it. Parts A, C and D are unanswerable without it.
Do not proceed past the gates on assumed facts. If the user wants to start anyway,
run Phases 1 and 3 only, and mark every intake-dependent item cannot_assess.
The most consequential fields are the disclosure and bar dates, and
disclosure_made_by — post-AIA, only an inventor-derived disclosure gets the
one-year grace period. A third party's independent disclosure before filing means
the U.S. right is already gone, and no amount of drafting fixes it.
python scripts/prepass.py --draft DRAFT --drawings DRAWINGS \
--intake intake.yaml --workdir audit_runExit 1 means intake is missing; exit 2 means the draft did not parse and the run must stop. Individual steps if you need them:
python scripts/parse_application.py DRAFT --drawings D -o parsed.json
python scripts/mechanical_checks.py parsed.json --intake intake.yaml -o findings/findings_mechanical.json
python scripts/deadlines.py intake.yaml -o deadlines.json [--asof YYYY-MM-DD]parse_application.py accepts .txt, .md, .pdf, .docx. prepass.py refuses
to continue when no claims parsed, fewer than four sections were recognised, or the
detailed description yielded no reference numerals — all signs the draft uses
headings the parser did not expect. Fix the parse before dispatching agents;
otherwise they confidently audit a document that isn't there.
The mechanical checks credit the checklist items they cover, so those items are not
reported as unaudited. A mechanical pass never suppresses a later agent fail on
the same item — the synthesizer keeps the worst verdict.
Hand parsed.json to every agent. It carries the claim dependency graph, element
decomposition, antecedent-basis candidates, reference-numeral tables and figure
inventory, so no agent has to recompute them.
Run in order. Each gets intake.yaml, parsed.json, deadlines.json, the draft,
and only its own part file.
| Agent | Part file | Also needs |
|---|---|---|
gate_threshold | A_threshold.md | search report, closest prior art |
gate_inventorship | C_inventorship.md | — |
gate_priority | D_priority_deadlines.md | deadlines.json, PPA text, parent |
If any gate returns a fail on an item tagged blocking: true, stop. Report
the blocker and do not spend tokens auditing the prose of an application that is
statutorily barred, names the wrong inventors, or has already lost its priority
date. Tell the user what would have run.
gate_priority must not compute dates. deadlines.json already has them, with
rollover applied. Its job is to interpret them and catch the conflicts the script
flags in warnings.
Eight agents, all with the full draft and parsed.json. Launch together.
| Agent | Part file | Lens to put in the prompt |
|---|---|---|
doc_enablement | E_disclosure.md (own items) | Read as a skilled artisan trying to build it. Every point where you'd have to invent something is a gap. |
doc_narrowing | E_disclosure.md + F_spec_sections.md (own items) | Read as opposing counsel hunting for admissions, essentiality language, and claim-construction traps. |
doc_spec_sections | F_spec_sections.md | Walk the spec section by section in PTO order. |
doc_claims_law | G_claims.md (own items) | §112 form, definiteness, antecedent basis, means-plus-function. Adjudicate the candidates lists from the mechanical pass — do not re-derive them. |
doc_claims_arch | G_claims.md (own items) | Set architecture: is claim 1 the broadest? Does each dependent add real scope? Are the statutory classes covered? |
doc_drawings | H_drawings.md + I05, I33 | Multimodal — attach the sheets as images. Text-only, this agent silently passes. |
doc_filing | I_filing_packet.md | Formalities, ADS, declaration, fees, IDS, nonpublication request. |
doc_search | B_search.md | Was the search adequate, were the references read correctly, does the draft answer what was found? |
Split E/F/G between their agents using the owner field in
checklist_index.json, not by file — owners deliberately cross file boundaries. An
item about narrowing language belongs to doc_narrowing wherever it sits, and the
claim-support items in Part G belong to doc_enablement.
Filter each agent's payload to its own IDs:
python -c "import json,sys; \
ids={i['id'] for i in json.load(open('reference/checklist_index.json',encoding='utf-8')) \
if i['owner']==sys.argv[1]}; print(' '.join(sorted(ids)))" doc_narrowingWorkload is uneven by design: gate_priority 48, doc_filing 46,
doc_claims_law 39, gate_threshold 35, doc_enablement 25, doc_drawings 24,
doc_claims_arch 23, doc_search 22, gate_inventorship 21,
doc_spec_sections 19, doc_narrowing 14.
The highest-value output, and not checklist-shaped. Each returns prose, not findings.
redteam_examiner — You are the examiner. Given these claims and this search
report, write the first Office Action you would actually issue: every §101, §102,
§103 and §112 rejection, with the reference and the mapping.redteam_design_around — Given claim 1, design three products that capture
the commercial value and do not infringe. If this is easy, claim 1 is too narrow —
no checklist item will tell you that.redteam_invalidity — Assume it issued and you are the accused infringer.
Attack it: priority defects, §112 gaps, prior art the applicant missed.For every fail on a blocking item, spawn a fresh verifier that receives the
draft and the claim but not the finding's reasoning, and is prompted to refute
it. Three verifiers; the finding survives on two. Record survivors in the finding's
verified_by field and drop the rest to cannot_assess with a note.
This is where surplus budget goes. A 93-item fatal list with a 20% false-positive rate is worse than a clean 60-item list — attorneys stop reading audits that cry wolf.
python scripts/synthesize.py findings/ --deadlines deadlines.json \
-o audit_report.md --json audit_report.jsonExits non-zero when a fatal item failed. Reports not_reached for any item no agent
touched — check that number is zero before calling the audit complete. If it isn't,
an agent skipped work; re-run that agent.
Append the three red-team outputs as appendices.
Every agent returns only a JSON array to findings/<agent>.json. No prose.
[{
"item_id": "G14",
"verdict": "fail",
"severity": "Serious",
"location": "claim 3",
"evidence": "the said locking member",
"explanation": "No earlier claim introduces a locking member.",
"suggested_fix": "Introduce 'a locking member' in claim 1, or recite it in claim 3.",
"confidence": "high"
}]verdict ∈ pass | fail | cannot_assess | not_applicable. Rules to put in every
agent prompt:
evidence must be a verbatim quote from the draft, never a paraphrase. A
finding with no quote is not a finding.cannot_assess when the input is missing. Never infer a date, an inventor's
knowledge, or a fact not in the materials.not_applicable needs a reason in explanation.Typical case (20–60 pages, ~20 claims): 11 agents in Phase 3, wall clock ≈ the
slowest, 5–10 minutes. Large claim sets (100+) — fan doc_claims_law out per claim,
since form checks are claim-independent; keep doc_claims_arch whole-set.
pass for anything an agent stayed silent about.parsed.json already computed exactly.© gfodor, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 20 other files (scripts, assets) in patent-audit of gfodor/legal-skills.
Open the folder on GitHubat commit 3c98f25
Patent Audit next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Patent Audit this skillgfodor/legal-skills | 393 | — | ~2.9k | Automated safety check: Pass | GPL-3.0 | |
| Paper to Chinese Patent DrafterYuan1z0825/nature-skills | 47k | 1 repos | ~1.1k | Automated safety check: Pass | Apache-2.0 | |
| Paper To Cn Patentsnipp-zha/Paper-to-patent-Skill | 106 | 1 repos | ~959 | Automated safety check: Pass | None | |
| Replica BrandJakeschincariol/replica-skill | 1.2k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Design Information PrepSeanJ1ang/design-judge-skills | 712 | — | ~1.8k | Automated safety check: Notes | Apache-2.0 | |
| Name Your Businesstamdogood/builder-essential-skills | 220 | — | ~4.3k | Automated safety check: Pass | MIT |
Yuan1z0825/nature-skills
Drafts Chinese invention patent applications and technical disclosures from research papers or inventor materials, tying each claim feature to source evidence.
snipp-zha/Paper-to-patent-Skill
Convert scientific papers, theses, technical reports, source code, figures, or research manuscripts into evidence-grounded Chinese invention patent drafts.
Jakeschincariol/replica-skill
Names and rebrands an app clone so it is the user's own: name candidates with the trademark, domain, store and handle checks to run, a new palette checked for contrast, a logo brief, a voice guide…
SeanJ1ang/design-judge-skills
Extract evidence-grounded project facts from user-provided design attachments, identify missing information, and prepare the exact written fields required by supported design-award entry forms.
tamdogood/builder-essential-skills
Generate, refine, compare, and when needed validate distinctive names for startups, AI products, developer tools, protocols, open-source projects, apps, product families, local businesses, services…
azalio/map-framework
Opt-in, off-by-default read-only prior-art search against Stack Overflow for Agents (SOFA).
gfodor/legal-skills
Iteratively examine and revise a draft U.S. An agent skill from gfodor/legal-skills.
gfodor/legal-skills
Adversarially pressure-test a draft or pending U.S. An agent skill from gfodor/legal-skills.
Categories
Audit a draft U.S. An agent skill from gfodor/legal-skills. Patent Audit is an agent skill from gfodor/legal-skills.S.
Patent Audit fits situations like: pre-flight a patent application; claim set before filing.
Run `npx skills add gfodor/legal-skills --skill patent-audit -a claude-code`. Or copy the skill folder (patent-audit in gfodor/legal-skills) into .claude/skills/patent-audit in your project. Claude Code loads it when a task matches its description.
Run `npx skills add gfodor/legal-skills --skill patent-audit -a codex`. Or copy the skill folder (patent-audit in gfodor/legal-skills) into .agents/skills/patent-audit in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add gfodor/legal-skills --skill patent-audit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/patent-audit, .gemini/skills/patent-audit, .github/skills/patent-audit and .opencode/skills/patent-audit in your project.
Going by SKILL.md and its folder, Patent Audit needs Python for the scripts in its folder and the command-line tools its instructions call (python). Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Patent Audit is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.9k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Patent Audit: Paper to Chinese Patent Drafter (Yuan1z0825/nature-skills, 47k stars), Paper To Cn Patent (snipp-zha/Paper-to-patent-Skill, 106 stars), Replica Brand (Jakeschincariol/replica-skill, 1.2k stars) and Design Information Prep (SeanJ1ang/design-judge-skills, 712 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
gfodor (a GitHub user) maintains it in gfodor/legal-skills, which has 393 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on August 12, 2026.
Source: gfodor/legal-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.