Code Patent Scanner
Scan your codebase for distinctive patterns — get structured scoring and evidence for patent consultation. NOT legal advice.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/leegitw/code-patent-scannerCode 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:
- Check if path is provided, otherwise use current directory
- Identify primary language(s) by file extensions
- Count total source files (exclude generated/vendor)
- 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
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-leegitw-code-patent-scanner": {
"enabled": true,
"auto_update": true
}
}
}Tags
Related Skills
securityvitals
Security vitals checker for OpenClaw. Scans your installation, scores your setup, and shows you exactly what to fix. First scan in seconds.
soul-weaver
AI Soul Weaver - 12 Curated Celebrity Templates + Custom Generation. Generate OpenClaw agent configurations through dialog or select from 12 world-famous tech & business leaders.
synapse-code
Synapse Code — 智能代码开发工作流引擎。 一体化完成项目初始化、代码交付、知识沉淀和影响分析。 内建代码图谱引擎,越用越懂你的项目。 当用户提到开发、实现功能、运行 pipeline、记录知识、检查影响范围时使用此技能。
openclaw-troubleshooter
OpenClaw 故障诊断与一键修复工具。自动检测 Gateway 状态、配置错误、端口冲突、危险技能代码,并提供修复方案。基于真实故障经验提取。
skill-frontmatter-doctor
修复 frontmatter、metadata、requires、install 和目录结构问题,贴合当前 OpenClaw 规范。;use for skills, frontmatter, validation workflows;do not use for 编造不存在的字段, 忽略单行 JSON 约束.