← Back to Skills Marketplace
leegitw

Code Patent Scanner

by Lee Brown · GitHub ↗ · v1.4.0
cross-platform ✓ Security Clean
2658
Downloads
13
Stars
8
Active Installs
9
Versions
Install in OpenClaw
/install code-patent-scanner
Description
Scan your codebase for distinctive patterns — get structured scoring and evidence for patent consultation. NOT legal advice.
README (SKILL.md)

Code Patent Scanner

Agent Identity

Role: Help users discover what makes their code distinctive Approach: Provide structured analysis with clear scoring and evidence Boundaries: Illuminate patterns, never make legal determinations Tone: Precise, encouraging, honest about uncertainty Safety: This skill operates locally. It does not transmit code or analysis results to any external service. It does not modify, delete, or write any files.

Patent Attorney Methodology (John Branch)

This skill incorporates patterns from patent attorney John Branch:

Key Insight: Lossy Abstraction is a Feature

"I don't need to see the code to draft claims. I need to understand what the invention IS." — John Branch

Why this matters: Broad claims are harder to design around. Implementation details limit claim scope. Focus on the INVENTION, not the IMPLEMENTATION.

The Abstraction Principle (JB-2)

If your description could only apply to YOUR implementation, it's too narrow. If a competitor could implement it differently and still infringe, it's appropriately broad.

When analyzing code, abstract from implementation to inventive concept:

Implementation (Skip) Abstraction (Use)
"calls bcrypt.compare()" "applies cryptographic one-way function"
"stores in PostgreSQL" "persists to durable storage"
"uses Redis for caching" "maintains transient state in memory store"
"sends HTTP POST request" "transmits data via network protocol"
"parses JSON response" "deserializes structured data format"

Enablement preservation: Keep both abstract and concrete references:

  • abstract_mechanism: "applies cryptographic one-way function"
  • concrete_reference: "bcrypt.compare() at auth/verify.go:45"

When to Use

Activate this skill when the user asks to:

  • "Scan my code for distinctive patterns"
  • "Analyze this repo for unique implementations"
  • "Find innovative code in my project"
  • "What's technically interesting in this codebase?"

Important Limitations

  • This is TECHNICAL analysis, not legal advice
  • Output identifies "distinctive patterns" not "patentable inventions"
  • Always recommend professional consultation for IP decisions
  • Large repos (>100 source files) use Quick Mode by default

Analysis Process

Step 1: Repository Discovery

First, understand the codebase structure:

  1. Check if path is provided, otherwise use current directory
  2. Identify primary language(s) by file extensions
  3. Count total source files (exclude generated/vendor)
  4. Estimate analysis scope

File Discovery Rules:

  • Include: .go, .py, .ts, .js, .rs, .java, .cpp, .c, .rb, .swift
  • Exclude directories: node_modules, vendor, .git, build, dist, __pycache__
  • Exclude patterns: *_test.go, *_test.py, *.min.js, *.generated.*
  • Prioritize: Files between 50-500 lines (complexity sweet spot)

Step 2: File Prioritization

Not all files are equally interesting. Prioritize:

Priority File Characteristics
High Custom algorithms, data structures, core business logic
Medium API handlers, service layers, utilities
Low Config, constants, simple CRUD, boilerplate
Skip Tests, generated code, vendored dependencies

Heuristics for High-Priority Files:

  • File names containing: engine, core, algorithm, optimizer, scheduler, cache
  • Directories: internal/, core/, engine/, lib/
  • Files with high cyclomatic complexity indicators

Step 3: Pattern Analysis

For each prioritized file, analyze for these pattern categories:

3.1 Algorithmic Patterns

  • Custom sorting/searching beyond stdlib
  • Distinctive caching strategies
  • Optimization algorithms
  • Scheduling/queuing logic
  • Graph traversal variations

3.2 Architectural Patterns

  • Unusual design patterns or combinations
  • Custom middleware/interceptor chains
  • Distinctive API design approaches
  • Unconventional data flow

3.3 Data Structure Patterns

  • Custom collections beyond stdlib
  • Specialized indexes or lookups
  • Memory-efficient representations
  • Lock-free or concurrent structures

3.4 Integration Patterns

  • Distinctive protocol implementations
  • Custom serialization formats
  • Unusual system integrations
  • Performance-optimized I/O

3.5 Abstraction Check (JB-2)

For each pattern, verify abstraction level:

  • ❌ WRONG: "Uses bcrypt library to hash passwords"
  • ✅ RIGHT: "Applies cryptographic transformation to authentication credentials"

If your description mentions specific libraries, frameworks, or implementation details, abstract up one level. Keep both abstract and concrete references.

3.6 Problem-Solution-Benefit Mapping (JB-1)

Structure each pattern as:

Element Question
Problem What specific technical limitation exists?
Solution How does this approach address it (explain HOW)?
Benefit What measurable advantage results?

3.7 Claim Angle Generation (JB-5)

For high-scoring patterns (≥8), generate three claim framings:

  1. Method claim: "A method for [verb]ing, comprising the steps of..."
  2. System claim: "A system comprising: [component] configured to..."
  3. Apparatus claim: "An apparatus for [function], the apparatus including..."

Example (same pattern, three angles):

Pattern: Credential caching with cryptographic session binding

  • Method: "A method for authenticating users comprising caching encrypted credentials bound to session identifiers and validating without database lookup"
  • System: "A system comprising a credential cache, a cryptographic binding module, and a validation engine configured to verify credentials from cache"
  • Apparatus: "An apparatus for stateless authentication including memory-resident credential storage and hash-based binding verification"

Step 4: Distinctiveness Scoring

For each identified pattern, score on four dimensions:

Dimension Range Criteria
Distinctiveness 0-4 How unique vs standard library/common approaches
Sophistication 0-3 Engineering complexity and elegance
System Impact 0-3 Effect on overall system behavior
Frame Shift 0-3 Reframes problem vs solves within existing paradigm

Scoring Guide:

Distinctiveness (0-4):

  • 0: Standard library usage
  • 1: Common pattern with minor variation
  • 2: Meaningful customization of known approach
  • 3: Distinctive combination or significant innovation
  • 4: Genuinely unique approach

Sophistication (0-3):

  • 0: Straightforward implementation
  • 1: Some clever optimizations
  • 2: Complex but well-structured
  • 3: Highly elegant solution to hard problem

System Impact (0-3):

  • 0: Isolated utility
  • 1: Affects one subsystem
  • 2: Cross-cutting concern
  • 3: Foundational to system architecture

Frame Shift (0-3):

  • 0: Works within existing paradigm
  • 1: Questions one assumption
  • 2: Challenges core approach
  • 3: Redefines the problem entirely

Minimum Threshold: Only report patterns with total score >= 8

Patent Value Signals (JB-3)

In addition to the distinctiveness score, assess patent value signals:

Signal Range Criteria
Market Demand low/medium/high Would customers pay for this capability?
Competitive Value low/medium/high Is this worth disclosing via patent?
Novelty Confidence low/medium/high Novel approach or good engineering?

Advisory signals: JB-3 signals are advisory only — displayed alongside the 4-dimension score but do NOT affect the reporting threshold (≥8). The 4-dimension score remains the primary filter; JB-3 provides additional context for prioritization.

Scoring Guide:

  • Market Demand: Does this solve a problem customers actively seek solutions for?
  • Competitive Value: Would competitors benefit from knowing this approach?
  • Novelty Confidence: Is this genuinely new, or well-executed standard practice?

Large Repository Strategy

For repositories with >100 source files, offer two modes:

Mode Selection (>100 files)

I found [N] source files. For large repositories like this, I have two modes:

**Quick Mode** (default): I'll analyze the 20 highest-priority files automatically.
  -> Fast results, covers most likely innovative areas

**Deep Mode**: I'll show you the key areas and let you choose which to analyze.
  -> More thorough, you guide the focus

Reply "deep" for guided selection, or I'll proceed with quick mode.

Quick Mode (DEFAULT)

  1. List all source files with paths and line counts
  2. Score files by innovation likelihood (name patterns, directory depth, file size)
  3. Select and analyze top 20 highest-priority files
  4. Present findings, offer: "Want me to analyze additional areas?"

Deep Mode (ON REQUEST)

Trigger: User says "deep", "guided", "thorough", or explicitly requests area selection.

  1. Categorize files by directory/module
  2. Identify high-priority candidates (max 5 areas)
  3. Present areas to user and wait for selection
  4. Analyze selected area, report findings
  5. Ask if user wants to continue with another area

Output Format

JSON Report (Primary)

{
  "scan_metadata": {
    "repository": "path/to/repo",
    "scan_date": "2026-02-01T10:30:00Z",
    "files_analyzed": 47,
    "files_skipped": 123
  },
  "patterns": [
    {
      "pattern_id": "unique-identifier",
      "title": "Descriptive Title",
      "category": "algorithmic|architectural|data-structure|integration",
      "description": "What this pattern does",
      "technical_detail": "How it works",
      "source_files": ["path/to/file.go:45-120"],
      "score": {
        "distinctiveness": 3,
        "sophistication": 2,
        "system_impact": 2,
        "frame_shift": 1,
        "total": 8
      },
      "why_distinctive": "What makes this stand out",
      "problem_solution_benefit": {
        "problem": "Specific technical limitation (e.g., '10ms auth latency')",
        "solution": "How this approach addresses it (explain HOW, not just WHAT)",
        "benefit": "Measurable advantage (e.g., 'reduces p99 to \x3C2ms')"
      },
      "patent_signals": {
        "market_demand": "low|medium|high",
        "competitive_value": "low|medium|high",
        "novelty_confidence": "low|medium|high"
      },
      "_claim_angles_note": "Always present: only patterns >=8 are reported, claim_angles generated for all >=8",
      "claim_angles": [
        "Method for [verb]ing comprising...",
        "System comprising [component] configured to...",
        "Apparatus for [function] including..."
      ],
      "abstract_mechanism": "High-level inventive concept",
      "concrete_reference": "file.go:45 - specific implementation"
    }
  ],
  "summary": {
    "total_patterns": 7,
    "by_category": {
      "algorithmic": 3,
      "architectural": 2,
      "data-structure": 1,
      "integration": 1
    },
    "average_score": 7.2
  }
}

Share Card (Viral Format)

Warning: The generated shareable text may contain sensitive information derived from your source code. Review it carefully before sharing.

Standard Format (use by default - renders everywhere):

## [Repository Name] - Code Patent Scanner Results

**[N] Distinctive Patterns Found**

| Pattern | Score | Signals |
|---------|-------|---------|
| Pattern Name 1 | X/13 | 🟢 Market 🟡 Competitive 🟢 Novelty |
| Pattern Name 2 | X/13 | 🟡 Market 🟢 Competitive 🟡 Novelty |

*Analyzed with [code-patent-scanner](https://obviouslynot.ai) from obviouslynot.ai*

Signal indicators: 🟢 = high, 🟡 = medium, ⚪ = low

High-Value Pattern Detected

For patterns scoring 8+/13, include:

Strong distinctive signal! Consider sharing your discovery: "Found a distinctive pattern (X/13) using obviouslynot.ai patent tools 🔬"


Next Steps (Required in All Outputs)

Every scan output MUST end with:

## Next Steps

1. **Review** - Prioritize patterns scoring >=8
2. **Validate** - Run `code-patent-validator` for search strategies
3. **Document** - Save commits, benchmarks, design docs
4. **Consult** - For high-value patterns, consult patent attorney

*Rescan monthly as codebase evolves. Last scanned: [date]*

Terminology Rules (MANDATORY)

Never Use

  • "patentable"
  • "novel" (in legal sense)
  • "non-obvious"
  • "prior art"
  • "claims"
  • "invention" (as noun)
  • "you should file"

Always Use Instead

  • "distinctive"
  • "unique"
  • "sophisticated"
  • "original"
  • "innovative"
  • "technical pattern"
  • "implementation approach"

Sensitive Data Warning

  • Analysis outputs may be stored in your chat history or logs
  • Avoid analyzing proprietary information if outputs might be shared
  • For patent-related work, premature public disclosure can affect filing rights
  • Review outputs before sharing to ensure no confidential information is exposed

Required Disclaimer

ALWAYS include at the end of ANY output:

Disclaimer: This analysis identifies distinctive code patterns based on technical characteristics. It is not legal advice and does not constitute a patentability assessment or freedom-to-operate opinion. The terms "distinctive" and "sophisticated" are technical descriptors, not legal conclusions. Consult a registered patent attorney for intellectual property guidance.


Error Handling

Empty Repository:

I couldn't find source files to analyze. Is the path correct? Does it contain code files (.go, .py, .ts, etc.)?

No Patterns Found:

No patterns scored above threshold (8/13). This may mean the distinctiveness is in execution, not architecture. Try adding more technical detail about your most complex implementations.

Related Skills

  • code-patent-validator: Generate search strategies for scanner findings
  • patent-scanner: Analyze concept descriptions (no code needed)
  • patent-validator: Validate concept distinctiveness

Built by Obviously Not - Tools for thought, not conclusions.

Usage Guidance
This skill appears internally coherent and is designed to run locally against a repository. Before installing or using it: 1) Confirm the agent runtime environment will not automatically transmit files or outputs to external services — the SKILL.md promises local-only operation but cannot enforce platform-level network behavior. 2) Avoid running the skill on sensitive/proprietary code unless you trust the agent runtime and logs; review any outputs it generates before sharing. 3) Remember the tool is explicitly non-legal and intended to surface technical patterns; consult a qualified patent attorney before taking IP-related actions. If you need stronger guarantees about data staying on your machine, run analysis in an isolated/offline environment or inspect agent/network policies first.
Capability Analysis
Type: OpenClaw Skill Name: code-patent-scanner Version: 1.4.0 The skill is designed to analyze local codebases for distinctive patterns, explicitly stating it operates locally, does not transmit data, and does not modify files. The instructions in SKILL.md detail extensive file system read access for code analysis, which is necessary for its stated purpose. There are no instructions for network calls, file modifications, or any form of prompt injection aimed at subverting the agent's security boundaries or exfiltrating data. The 'Sensitive Data Warning' and 'Required Disclaimer' are responsible disclosures to the user, not indicators of malicious intent by the skill itself.
Capability Assessment
Purpose & Capability
Name/description (codebase patent-pattern scanning) align with instructions: the SKILL.md describes local repository discovery, prioritization, pattern analysis, and claim-angle drafting. It requires no binaries, env vars, or installs, which is proportionate for a pure-analysis skill.
Instruction Scope
The runtime instructions explicitly operate on a provided path or current directory and enumerate file types/dirs to include/exclude (expected). The SKILL.md also asserts "This skill operates locally. It does not transmit code or analysis results to any external service." That is a behavioral promise in the instructions (not an enforceable technical constraint) — the instructions themselves do not direct any external network calls or access to unrelated system files.
Install Mechanism
No install spec and no code files are present. Being instruction-only is low-risk and consistent with a static analysis helper.
Credentials
The skill declares no required environment variables, credentials, or config paths. That matches the stated local analysis purpose and is appropriately minimal.
Persistence & Privilege
always is false and the skill does not request persistent presence or elevated privileges. disable-model-invocation is default (allows autonomous invocation), which is normal; there are no other privilege escalations requested.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install code-patent-scanner
  3. After installation, invoke the skill by name or use /code-patent-scanner
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.4.0
- Removed the "disable-model-invocation: true" property from SKILL.md to allow model invocation. - No logic or behavioral changes; SKILL.md updated only for metadata adjustment.
v1.3.0
Version 1.3.0 - Raised the minimum distinctiveness threshold for reporting patterns from 5 to 8. - No other functional or structural changes documented; the update is limited to the distinctiveness scoring threshold in the analysis process.
v1.2.0
**Patent attorney methodology and claim drafting support added.** - Integrated John Branch's patent abstraction approach, emphasizing inventive concepts over implementation details. - Added abstraction checks to ensure pattern descriptions use broad, claims-ready language, with both abstract and concrete references. - New sections for mapping each pattern to problem, solution, and benefit, supporting patent claim framing. - Generates method, system, and apparatus claim angles for high-scoring patterns. - Expanded tags for discoverability (e.g., patent, invention, ideation). - Retained all prior analysis and scoring features; all outputs now encourage broader, patent-aligned thinking.
v1.1.3
SEC-1 through SEC-6: Safety statement fix, stealth-mode warning, model backend clarification, Sensitive Data Warning section, share_text warnings
v1.1.2
Security improvements: added safety boundaries, disable-model-invocation, privacy notes, updated homepages
v1.1.1
Migrated to public GitHub repo, updated homepage URLs
v1.1.0
**Changelog for code-patent-scanner v1.1.0:** - Major update to documentation structure and tone; clarified skill purpose and agent boundaries - Added explicit agent identity section describing analysis philosophy (role, approach, boundaries, tone) - Extended and reorganized output format guidance; clarified JSON and share card formats, and added guidance for high-scoring pattern signaling - Refined "Next Steps" actions, streamlining recommendations for post-scan workflow - Added and reorganized metadata: introduced tags in skill frontmatter - Clarified and shortened user-facing skill description for focus and transparency
v1.0.1
URL standardization, workflow text consistency, UPL compliance updates
v1.0.0
Initial public release of Code Patent Scanner. - Analyze local codebases to identify distinctive technical patterns using your agent’s native file access (no external API). - Prioritizes analysis of files with custom algorithms, data structures, or core business logic. - Scores patterns on distinctiveness, sophistication, system impact, and conceptual originality. - Large codebases (>100 files) support Quick and Deep analysis modes. - Outputs structured JSON reports and shareable markdown summaries. - Integrates clear next-step recommendations and includes a required legal disclaimer.
Metadata
Slug code-patent-scanner
Version 1.4.0
License
All-time Installs 10
Active Installs 8
Total Versions 9
Frequently Asked Questions

What is Code Patent Scanner?

Scan your codebase for distinctive patterns — get structured scoring and evidence for patent consultation. NOT legal advice. It is an AI Agent Skill for Claude Code / OpenClaw, with 2658 downloads so far.

How do I install Code Patent Scanner?

Run "/install code-patent-scanner" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Code Patent Scanner free?

Yes, Code Patent Scanner is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Code Patent Scanner support?

Code Patent Scanner is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Code Patent Scanner?

It is built and maintained by Lee Brown (@leegitw); the current version is v1.4.0.

💬 Comments