Back to Skills

patent-diagram-generator

RobThePCGuy
Updated Today
34 views
2
2
View on GitHub
Metadata

About

This Claude skill generates patent-style technical diagrams like flowcharts and block diagrams using Graphviz, automatically adding reference numbering. It's designed for creating figures for method claims, system architectures, and other patent illustrations. Developers should invoke it when they need to quickly produce formal diagrams for patent documentation.

Documentation

Patent Diagram Generator Skill

Create patent-style technical diagrams including flowcharts, block diagrams, and system architectures using Graphviz.

When to Use

Invoke this skill when users ask to:

  • Create flowcharts for method claims
  • Generate block diagrams for system claims
  • Draw system architecture diagrams
  • Create technical illustrations for patents
  • Add reference numbers to diagrams
  • Generate patent figures

What This Skill Does

  1. Flowchart Generation:

    • Method step flowcharts
    • Decision trees
    • Process flows with branches
    • Patent-style step numbering
  2. Block Diagram Creation:

    • System component diagrams
    • Hardware architecture diagrams
    • Software module diagrams
    • Component interconnections
  3. Custom Diagram Rendering:

    • Render Graphviz DOT code
    • Support multiple formats (SVG, PNG, PDF)
    • Multiple layout engines (dot, neato, fdp, circo, twopi)
  4. Patent-Style Formatting:

    • Add reference numbers (10, 20, 30, etc.)
    • Use clear labels and connections
    • Professional formatting for USPTO filing

Required Dependencies

This skill requires Graphviz to be installed:

Windows:

choco install graphviz

Linux:

sudo apt install graphviz

Mac:

brew install graphviz

Python Package:

pip install graphviz

How to Use

When this skill is invoked:

  1. Load diagram generator:

    import sys
    sys.path.insert(0, os.path.join(os.environ.get('CLAUDE_PLUGIN_ROOT', '.'), 'python'))
    from python.diagram_generator import PatentDiagramGenerator
    
    generator = PatentDiagramGenerator()
    
  2. Create flowchart from steps:

    steps = [
        {"id": "start", "label": "Start", "shape": "ellipse", "next": ["step1"]},
        {"id": "step1", "label": "Initialize System", "shape": "box", "next": ["decision"]},
        {"id": "decision", "label": "Is Valid?", "shape": "diamond", "next": ["step2", "error"]},
        {"id": "step2", "label": "Process Data", "shape": "box", "next": ["end"]},
        {"id": "error", "label": "Handle Error", "shape": "box", "next": ["end"]},
        {"id": "end", "label": "End", "shape": "ellipse", "next": []}
    ]
    
    diagram_path = generator.create_flowchart(
        steps=steps,
        filename="method_flowchart",
        output_format="svg"
    )
    
  3. Create block diagram:

    blocks = [
        {"id": "input", "label": "Input\\nSensor", "type": "input"},
        {"id": "cpu", "label": "Central\\nProcessor", "type": "process"},
        {"id": "memory", "label": "Memory\\nStorage", "type": "storage"},
        {"id": "output", "label": "Output\\nDisplay", "type": "output"}
    ]
    
    connections = [
        ["input", "cpu", "raw data"],
        ["cpu", "memory", "store"],
        ["memory", "cpu", "retrieve"],
        ["cpu", "output", "processed data"]
    ]
    
    diagram_path = generator.create_block_diagram(
        blocks=blocks,
        connections=connections,
        filename="system_diagram",
        output_format="svg"
    )
    
  4. Render custom DOT code:

    dot_code = """
    digraph PatentSystem {
        rankdir=LR;
        node [shape=box, style=rounded];
    
        Input [label="User Input\\n(10)"];
        Processor [label="Processing Unit\\n(20)"];
        Output [label="Display\\n(30)"];
    
        Input -> Processor [label="data"];
        Processor -> Output [label="result"];
    }
    """
    
    diagram_path = generator.render_dot_diagram(
        dot_code=dot_code,
        filename="custom_diagram",
        output_format="svg",
        engine="dot"
    )
    
  5. Add reference numbers:

    # After creating a diagram, add patent-style reference numbers
    reference_map = {
        "Input Sensor": 10,
        "Central Processor": 20,
        "Memory Storage": 30,
        "Output Display": 40
    }
    
    annotated_path = generator.add_reference_numbers(
        svg_path=diagram_path,
        reference_map=reference_map
    )
    

Diagram Templates

Get common templates:

templates = generator.get_diagram_templates()

# Available templates:
# - simple_flowchart: Basic process flow
# - system_block: System architecture
# - method_steps: Sequential method
# - component_hierarchy: Hierarchical structure

Shape Types

Flowchart Shapes

  • ellipse: Start/End points
  • box: Process steps
  • diamond: Decision points
  • parallelogram: Input/Output operations
  • cylinder: Database/Storage

Block Diagram Types

  • input: Input devices/sensors
  • output: Output devices/displays
  • process: Processing units
  • storage: Memory/storage
  • decision: Control logic
  • default: General components

Layout Engines

  • dot: Hierarchical (top-down/left-right)
  • neato: Spring model layout
  • fdp: Force-directed layout
  • circo: Circular layout
  • twopi: Radial layout

Output Formats

  • svg: Scalable Vector Graphics (best for editing)
  • png: Raster image (good for viewing)
  • pdf: Portable Document Format (USPTO compatible)

Patent-Style Reference Numbers

Convention:

  • Main components: 10, 20, 30, 40, ...
  • Sub-components: 12, 14, 16 (under 10)
  • Elements: 22, 24, 26 (under 20)

Example labeling:

"Input Sensor (10)"
"  - Detector Element (12)"
"  - Signal Processor (14)"
"Central Unit (20)"
"  - CPU Core (22)"
"  - Cache (24)"

Presentation Format

When creating diagrams:

  1. Describe what will be generated: "Creating a flowchart for the authentication method with 5 steps..."

  2. Generate the diagram: Run Python code to create SVG/PNG/PDF

  3. Show file location: "Diagram created: ${CLAUDE_PLUGIN_ROOT}/python\diagrams\method_flowchart.svg"

  4. List reference numbers (if added):

    Reference Numbers:
    - Input Module (10)
    - Processing Unit (20)
    - Output Interface (30)
    

Common Use Cases

  1. Method Claims → Flowcharts

    • Show sequential steps
    • Include decision branches
    • Number steps (S1, S2, S3...)
  2. System Claims → Block Diagrams

    • Show components and connections
    • Use reference numbers
    • Indicate data flow directions
  3. Architecture Diagrams → Custom DOT

    • Complex system layouts
    • Multiple interconnections
    • Hierarchical structures

Error Handling

If Graphviz is not installed:

  1. Check installation: dot -V
  2. Install for your OS (see above)
  3. Verify Python package: pip show graphviz
  4. Test generation: python scripts/test_diagrams.py

Tools Available

  • Bash: To run Python diagram generation
  • Write: To save DOT code or diagrams
  • Read: To load existing diagrams or templates

Quick Install

/plugin add https://github.com/RobThePCGuy/Claude-Patent-Creator/tree/main/patent-diagram-generator

Copy and paste this command in Claude Code to install this skill

GitHub 仓库

RobThePCGuy/Claude-Patent-Creator
Path: skills/patent-diagram-generator
bigqueryclaude-codeclaude-code-pluginfaissmcp-servermpep

Related Skills

csv-data-summarizer

Meta

This skill automatically analyzes CSV files to generate comprehensive statistical summaries and visualizations using Python's pandas and matplotlib/seaborn. It should be triggered whenever a user uploads or references CSV data without prompting for analysis preferences. The tool provides immediate insights into data structure, quality, and patterns through automated analysis and visualization.

View skill

llamaindex

Meta

LlamaIndex is a data framework for building RAG-powered LLM applications, specializing in document ingestion, indexing, and querying. It provides key features like vector indices, query engines, and agents, and supports over 300 data connectors. Use it for document Q&A, chatbots, and knowledge retrieval when building data-centric applications.

View skill

hybrid-cloud-networking

Meta

This skill configures secure hybrid cloud networking between on-premises infrastructure and cloud platforms like AWS, Azure, and GCP. Use it when connecting data centers to the cloud, building hybrid architectures, or implementing secure cross-premises connectivity. It supports key capabilities such as VPNs and dedicated connections like AWS Direct Connect for high-performance, reliable setups.

View skill

Excel Analysis

Meta

This skill enables developers to analyze Excel files and perform data operations using pandas. It can read spreadsheets, create pivot tables, generate charts, and conduct data analysis on .xlsx files and tabular data. Use it when working with Excel files, spreadsheets, or any structured tabular data within Claude Code.

View skill