code-complexity-analyzer
/install code-complexity-analyzer
Code Complexity Analyzer
Measure cyclomatic, cognitive, and structural complexity per function. Pure Python, no dependencies.
Quick Start
# Analyze a directory
python3 scripts/analyze_complexity.py src/
# Analyze specific files
python3 scripts/analyze_complexity.py app.py utils.py
# Show all functions (not just violations)
python3 scripts/analyze_complexity.py src/ --verbose
# Custom thresholds
python3 scripts/analyze_complexity.py src/ --cc 15 --cog 20 --max-lines 80
Output Formats
python3 scripts/analyze_complexity.py src/ --format text # human-readable (default)
python3 scripts/analyze_complexity.py src/ --format json # CI/tooling
python3 scripts/analyze_complexity.py src/ --format markdown # reports
Supported Languages
- Python (
.py) - JavaScript (
.js,.jsx,.mjs,.cjs) - TypeScript (
.ts,.tsx) - Go (
.go)
Metrics
| Metric | Description | Default Threshold |
|---|---|---|
| Cyclomatic (CC) | Independent execution paths | ≤10 |
| Cognitive (COG) | Perceived difficulty to understand (nesting-weighted) | ≤15 |
| Lines | Function length | ≤50 |
| Params | Parameter count | ≤5 |
| Nesting | Max nesting depth | ≤4 |
Risk Levels
- 🟢 Simple — CC≤5, COG≤8
- 🟡 Low — CC≤10, COG≤15
- 🟠 Moderate — CC≤20, COG≤25
- 🔴 High — CC>20 or COG>25
Options
--cc N Cyclomatic threshold (default: 10)
--cog N Cognitive threshold (default: 15)
--max-lines N Function length threshold (default: 50)
--max-params N Parameter count threshold (default: 5)
--max-nesting N Nesting depth threshold (default: 4)
--exclude DIR Additional directories to exclude
--verbose, -v Show all functions, not just violations
Auto-excluded: node_modules, .git, __pycache__, venv, dist, build.
Exit Codes
0— no violations1— violations found (functions exceed CC or COG thresholds)2— no analyzable files found
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install code-complexity-analyzer - After installation, invoke the skill by name or use
/code-complexity-analyzer - Provide required inputs per the skill's parameter spec and get structured output
What is code-complexity-analyzer?
Measure cyclomatic complexity, cognitive complexity, and structural metrics for Python, JavaScript/TypeScript, and Go code. Use when analyzing code quality,... It is an AI Agent Skill for Claude Code / OpenClaw, with 110 downloads so far.
How do I install code-complexity-analyzer?
Run "/install code-complexity-analyzer" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is code-complexity-analyzer free?
Yes, code-complexity-analyzer is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does code-complexity-analyzer support?
code-complexity-analyzer is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created code-complexity-analyzer?
It is built and maintained by charlie-morrison (@charlie-morrison); the current version is v1.0.0.