Complete List of Allowed Tools for Patent-Disclosure-Skill Version 4.2.0
The patent-disclosure-skill version 4.2.0 provides 25+ officially supported command-line tools located in skills/patent-disclosure/tools/ that handle document conversion, CAD processing, mathematical formula rendering, and patent classification workflows.
The handsomestWei/patent-disclosure-skill repository (v4.2.0) bundles a comprehensive suite of standalone Python utilities designed to automate the patent disclosure workflow. These allowed tools function as the official command-line interface, covering everything from raw CAD data acquisition and structure validation to final document generation in Microsoft Word format.
Document Generation and Conversion Tools
The skill includes a complete pipeline for converting between Markdown, Word, and PowerPoint formats. These tools ensure that invention sketches and technical disclosures can flow seamlessly between editing environments.
md_to_docx.py renders Markdown-based disclosure drafts into Microsoft Word (.docx) files while preserving headings, tables, and image embeds. This is the primary output generator for final patent submissions.
python -m skills.patent-disclosure.tools.md_to_docx input.md output.docx
docx_to_md.py performs the reverse operation, extracting Word disclosure drafts back into Markdown for version-control editing. [pptx_to_md.py](https://github.com/handsomestWei/patent-disclosure-skill/blob/main/pptx_to_md.py) converts PowerPoint presentation slides (commonly used for invention sketches) into Markdown sections ready for the disclosure note.
For mathematical content, math_to_omml.py translates LaTeX math expressions into Office Math Markup Language (OMML) so they render correctly inside generated Word documents. When OMML is not desired, math_render.py renders LaTeX blocks as SVG images. The latex_delimiters.py utility normalizes LaTeX delimiters ($…$, \(...\), \[...\]) before feeding them to other math-related tools.
CAD Processing and Structure Visualization Tools
Version 4.2.0 includes specialized utilities for handling patent drawings extracted from CAD files. These tools ensure that line-art meets formal patent office requirements.
structure_lineart_gate.py filters and validates line-art drawings extracted from CAD files, ensuring they meet the formal requirements for "structure" sections. structure_lineart_compose.py merges multiple line-art assets into a single composite figure, handling layout, scaling, and labeling. For annotations, structure_callout_overlay.py generates call-out overlays (numbered boxes and arrows) on structure drawings, easing the reference between description and illustration.
design_lineart_gate.py performs similar validation specifically for design patents, checking ornamental drawings against patent-office format rules.
The CAD infrastructure tools include cad_scan.py, which scans directories of CAD files building a manifest of available components, and cad_formats.py, which maps supported file extensions (STEP, IGES, STL) to their respective import pipelines. To manage dependencies, cad_venv.py and bootstrap_cad_venv.py create isolated Python virtual environments containing heavy CAD-processing dependencies like OpenCascade.
Patent Classification and Data Acquisition Tools
patent_type.py determines the patent type (invention, utility model, or design) from a publication number or metadata—a prerequisite for downstream templating. This logic is implemented in skills/patent-disclosure/tools/patent_type.py and serves as the entry point for automated patent categorization.
browser.py provides a minimal headless-browser wrapper (based on Selenium) used to fetch remote patent PDFs or supplementary material. For diagram capture, svg_screenshot.py captures SVG diagrams as PNG/JPEG screenshots, useful for embedding visualized claim trees or flowcharts in the final disclosure.
The workflow orchestration tools include step_to_views.py, which orchestrates the step-wise generation of "views" (e.g., CAD extracts, annotated figures) for a given patent application, and run_step_to_views.py, a wrapper script that runs the entire step-to-views pipeline in one call while handling intermediate artifacts automatically.
Formula and Chemical Notation Processing
For patents containing chemical or mathematical formulas, version 4.2.0 provides a specialized processing chain.
formula_chem.py parses chemical notation (SMILES, InChI) feeding into the CAD-generation workflow. formula_units.py parses chemical/physical units within formulas, normalizing them for downstream rendering. The formula_paradigms.py tool provides a catalogue of common formula patterns (e.g., reaction equations) to aid automatic detection.
For safety and validation, formula_eval.py safely evaluates arithmetic parts of formulas (such as calculating stoichiometric coefficients) without executing arbitrary code. check_formula_plan.py verifies that planned formula extraction steps are feasible given the current input assets.
Workflow and Infrastructure Utilities
Supporting the main pipeline are several critical infrastructure tools. stdio_utf8.py ensures that all standard I/O streams use UTF-8 encoding—required for correct handling of Chinese characters and special symbols—and is imported automatically by most tools.
iteration_dialog_log.py generates a log of the interactive dialogue between the user and the skill, useful for auditing and reproducibility. image_gen.py serves as a general-purpose image generation helper (e.g., QR codes, placeholders) used by several other tools. For documentation purposes, gen_demo_snap_step.py produces a demonstrative "snapshot" of a single pipeline step.
Dependencies are managed through requirements-step.txt, which lists the Python packages that must be installed before any step-wise tool can run:
pip install -r skills/patent-disclosure/tools/requirements-step.txt
Summary
- The patent-disclosure-skill v4.2.0 officially supports 25+ command-line tools located in
skills/patent-disclosure/tools/. - Document conversion is handled by
md_to_docx.py,docx_to_md.py, andpptx_to_md.py, with mathematical support viamath_to_omml.pyandmath_render.py. - CAD and structure visualization tools include
structure_lineart_gate.py,structure_lineart_compose.py, andcad_scan.pyfor processing patent drawings. - Patent classification relies on
patent_type.py, whilebrowser.pyenables remote PDF acquisition. - Chemical and mathematical formulas are processed by
formula_chem.py,formula_eval.py, and related utilities. - All tools are documented in the repository's
SKILL.mdand individualREADME.mdfiles, with dependencies specified inrequirements-step.txt.
Frequently Asked Questions
How do I invoke the allowed tools in patent-disclosure-skill v4.2.0?
Each tool is a standalone Python script invoked via the module execution syntax. For example, use python -m skills.patent-disclosure.tools.patent_type to determine patent classification, or python -m skills.patent-disclosure.tools.md_to_docx to convert Markdown to Word format. The full command structure for each tool is documented in skills/patent-disclosure/tools/README.md.
Which tool converts Markdown patent disclosures to Microsoft Word format?
md_to_docx.py performs this conversion while preserving document structure. Located in skills/patent-disclosure/tools/md_to_docx.py, it renders the Markdown-based disclosure draft into a .docx file, maintaining headings, tables, and embedded images. The reverse operation uses docx_to_md.py to extract Word documents back into Markdown for version control.
Are there tools for handling CAD files in patent disclosures?
Yes. cad_scan.py builds manifests of CAD components, while structure_lineart_gate.py validates line-art drawings against formal requirements. For design patents specifically, design_lineart_gate.py checks ornamental drawings against patent-office rules. These tools support STEP, IGES, and STL formats as mapped by cad_formats.py.
How does the skill handle mathematical formulas in generated documents?
The skill provides dual pathways: math_to_omml.py converts LaTeX expressions to Office Math Markup Language for native Word rendering, while math_render.py generates SVG image fallbacks. The latex_delimiters.py utility standardizes LaTeX syntax before processing, ensuring consistent handling of mathematical content across different document stages.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →