Write the full patent specification from claims and invention disclosure. Use when user says "撰写说明书", "write specification", "写说明书", "patent description", or wants to draft the complete patent specification.
Write the patent specification based on: $ARGUMENTS
Adapted from /paper-write for patent specifications. The specification supports the claims -- it is not a paper.
REVIEWER_MODEL = gpt-5.4 — External reviewer for specification qualityJURISDICTION = "auto" — Inherit from pipeline or detect from args; CN, US, EP, ALLOUTPUT_FORMAT = "markdown" — Markdown drafts; converted to filing format by /jurisdiction-formatOUTPUT_DIR = "patent/" — Base output directoryLANGUAGE = "auto" — Auto from jurisdiction: CN->Chinese, US/EP->Englishpatent/CLAIMS.md — the drafted claims (primary source)patent/INVENTION_DISCLOSURE.md — invention decompositionpatent/PRIOR_ART_REPORT.md — for background sectionLoad ../shared-references/patent-writing-principles.md for specification writing rules, language guidelines, and reference numeral conventions.
Load ../shared-references/patent-format-cn.md or patent-format-us.md or patent-format-ep.md based on jurisdiction.
Create the output directory and section files:
patent/specification/
├── title.md
├── technical_field.md
├── background.md
├── summary.md
├── drawings_description.md
├── detailed_description.md
└── abstract.md
1-2 paragraphs identifying the technical domain:
This is NOT a literature review. It directly sets up the problem.
Structure:
CN format: "背景技术" section describing existing technology and its shortcomings.
Three parts, directly mirroring INVENTION_DISCLOSURE.md:
Technical Problem (要解决的技术问题):
Technical Solution (技术方案):
Advantages (有益效果):
Invoke /figure-description as a sub-skill if user has provided figures:
/figure-description "patent/figures/"
If no user figures, describe what figures should exist based on the claims.
Format:
Invoke /embodiment-description as a sub-skill:
/embodiment-description "patent/CLAIMS.md"
This section must:
Jurisdiction-specific word limits:
| Jurisdiction | Word Limit | Notes |
|---|---|---|
| CN | 300 words (Chinese characters) | Include most representative claim reference |
| US | 150 words (2500 characters) | Enable efficient searching, no legal phrases |
| EP | ~150 words | No statements on merits or value |
The abstract summarizes:
Verify every claim element finds support in the specification:
| Claim | Element | Specification Section | Paragraph(s) | Reference Numeral |
|---|---|---|---|---|
| 1 | step a | detailed_description | ¶3 | 202 |
| 1 | step b | detailed_description | ¶4 | 204 |
| X | component A | detailed_description | ¶2 | 102 |
If any element lacks support, add the necessary description before proceeding.
Call REVIEWER_MODEL via mcp__codex__codex with xhigh reasoning:
mcp__codex__codex:
config: {"model_reasoning_effort": "xhigh"}
prompt: |
You are a patent examiner reviewing a specification for completeness.
CLAIMS: [all claims]
SPECIFICATION: [all specification sections]
Check for:
1. Written description support: Does every claim element have explicit or inherent support?
2. Enablement: Can a POSITA practice the invention from this specification?
3. Consistency: Do reference numerals match across figures and specification?
4. Language quality: Any subjective terms, relative terms without definition, or result-to-be-achieved language?
5. Missing embodiments: Are there claim features that need additional embodiments?
6. Background deficiencies: Are they technical and specific enough?
All specification sections are in patent/specification/.
Summary file: patent/specification/SPECIFICATION_INDEX.md with:
## Patent Specification
### Sections
| Section | File | Word Count | Status |
|---------|------|-----------|--------|
| Title | title.md | | Complete |
| Technical Field | technical_field.md | | Complete |
| Background | background.md | | Complete |
| Summary | summary.md | | Complete |
| Drawings Description | drawings_description.md | | Complete |
| Detailed Description | detailed_description.md | | Complete |
| Abstract | abstract.md | | Complete |
### Claim Support Status
| Claim | Elements Supported | Elements Missing |
|-------|-------------------|-----------------|
| 1 | All | None |
| X | All | None |
cat <<'EOF' heredoc.mcp__codex__codex is not available, skip cross-model review and note it in the output.