Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Deep static analysis of codebases for quality, complexity, and migration readiness assessment
.claude/skills/a5c-ai-static-code-analyzer/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 1087% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 61% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 91% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 117% | 0% |
| case-08 | ✗→✓ | ▲ Improved | -2% | 0% |
Performs comprehensive static analysis of codebases to assess code quality, complexity metrics, and migration readiness. This skill integrates with industry-standard tools to provide actionable insights for migration planning.
Enable deep static analysis of codebases for:
This skill can leverage the following external tools when available:
| Tool | Purpose | Integration Method | |------|---------|-------------------| | SonarQube | Comprehensive code quality | MCP Server / API | | CodeClimate | Quality metrics | API | | ESLint | JavaScript/TypeScript linting | CLI | | PMD | Java static analysis | CLI | | FindBugs/SpotBugs | Java bug detection | CLI | | Checkstyle | Java code standards | CLI | | ast-grep | AST-based pattern matching | MCP Server / CLI | | Semgrep | Security-focused SAST | CLI |
bash# Invoke skill for basic analysis # The skill will auto-detect language and apply appropriate analyzers # Expected inputs: # - targetPath: Path to codebase or directory to analyze # - analysisScope: 'full' | 'quick' | 'security' | 'quality' # - outputFormat: 'json' | 'markdown' | 'html'
json{ "analysisId": "string", "timestamp": "ISO8601", "target": { "path": "string", "languages": ["string"], "filesAnalyzed": "number", "linesOfCode": "number" }, "metrics": { "complexity": { "average": "number", "max": "number", "distribution": {} }, "duplication": { "percentage": "number", "cloneCount": "number", "duplicatedLines": "number" }, "maintainability": { "index": "number", "grade": "A-F" }, "technicalDebt": { "estimatedHours": "number", "ratio": "number" } }, "findings": [ { "type": "string", "severity": "critical|high|medium|low|info", "file": "string", "line": "number", "message": "string", "rule": "string", "recommendation": "string" } ], "migrationReadiness": { "score": "number (0-100)", "blockers": [], "risks": [], "recommendations": [] } }
This skill integrates with the following Code Migration/Modernization processes:
Create .static-analyzer.json in the project root:
json{ "excludePaths": ["node_modules", "dist", "build", ".git"], "severityThreshold": "medium", "enabledChecks": { "complexity": true, "duplication": true, "security": true, "standards": true }, "customRules": [], "reportFormats": ["json", "markdown"] }
When SonarQube MCP Server is available:
javascript// Example MCP tool invocation { "tool": "sonarqube_analyze", "arguments": { "project_key": "my-project", "sources": "./src", "language": "javascript" } }
When ast-grep MCP Server is available:
javascript// Example AST pattern search { "tool": "ast_grep_search", "arguments": { "pattern": "console.log($$$)", "language": "javascript", "path": "./src" } }
code-smell-detector: Specialized smell detectiontechnical-debt-quantifier: Debt measurement and prioritizationtest-coverage-analyzer: Coverage gap identificationlegacy-system-archaeologist: Uses this skill for codebase explorationmigration-readiness-assessor: Uses this skill for readiness scoringtechnical-debt-auditor: Uses this skill for debt assessment| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 4,072 | 13,856 | +240% | 1 | 1 | 0% | 342 | 4,059 | +1087% | 0 | 0 | — |
case-02 | fail→pass | 22,431 | 16,239 | -28% | 1 | 1 | 0% | 2,284 | 3,673 | +61% | 0 | 0 | — |
case-03 | fail→fail | 24,077 | 15,725 | -35% | 1 | 1 | 0% | 3,379 | 4,799 | +42% | 0 | 0 | — |
case-04 | fail→fail | 16,549 | 12,539 | -24% | 1 | 1 | 0% | 2,678 | 3,805 | +42% | 0 | 0 | — |
case-05 | fail→pass | 9,061 | 8,637 | -5% | 1 | 1 | 0% | 1,593 | 3,039 | +91% | 0 | 0 | — |
case-06 | fail→pass | 8,932 | 9,787 | +10% | 1 | 1 | 0% | 1,569 | 3,410 | +117% | 0 | 0 | — |
case-07 | fail→fail | 7,224 | 4,985 | -31% | 1 | 1 | 0% | 1,086 | 2,127 | +96% | 0 | 0 | — |
case-08 | fail→pass | 13,896 | 2,549 | -82% | 1 | 1 | 0% | 2,024 | 1,983 | -2% | 0 | 0 | — |
case-09 | fail→pass | 5,487 | 2,021 | -63% | 1 | 1 | 0% | 1,024 | 1,965 | +92% | 0 | 0 | — |
case-10 | fail→fail | 13,923 | 12,060 | -13% | 1 | 1 | 0% | 2,395 | 3,689 | +54% | 0 | 0 | — |
case-11 | fail→fail | 7,516 | 4,628 | -38% | 1 | 1 | 0% | 1,274 | 2,130 | +67% | 0 | 0 | — |
case-12 | fail→pass | 9,879 | 2,942 | -70% | 1 | 1 | 0% | 1,598 | 2,131 | +33% | 0 | 0 | — |
case-13 | pass→pass | 15,274 | 18,130 | +19% | 1 | 1 | 0% | 2,767 | 4,433 | +60% | 0 | 0 | — |
case-14 | fail→pass | 14,520 | 4,906 | -66% | 1 | 1 | 0% | 2,370 | 2,379 | +0% | 0 | 0 | — |
case-15 | pass→pass | 10,022 | 3,290 | -67% | 1 | 1 | 0% | 1,641 | 2,221 | +35% | 0 | 0 | — |
case-16 | fail→pass | 8,600 | 1,905 | -78% | 1 | 1 | 0% | 1,663 | 1,934 | +16% | 0 | 0 | — |
case-17 | fail→fail | 8,802 | 2,121 | -76% | 1 | 1 | 0% | 1,738 | 1,950 | +12% | 0 | 0 | — |
case-18 | fail→pass | 9,289 | 2,296 | -75% | 1 | 1 | 0% | 1,768 | 2,017 | +14% | 0 | 0 | — |
case-19 | fail→pass | 7,042 | 2,903 | -59% | 1 | 1 | 0% | 1,082 | 1,892 | +75% | 0 | 0 | — |
case-20 | fail→pass | 7,541 | 2,343 | -69% | 1 | 1 | 0% | 1,173 | 1,967 | +68% | 0 | 0 | — |
case-21 | fail→pass | 10,582 | 2,170 | -79% | 1 | 1 | 0% | 1,606 | 1,929 | +20% | 0 | 0 | — |
case-22 | fail→pass | 6,675 | 3,091 | -54% | 1 | 1 | 0% | 830 | 2,009 | +142% | 0 | 0 | — |
case-23 | fail→pass | 13,209 | 10,225 | -23% | 1 | 1 | 0% | 2,234 | 3,266 | +46% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted, and 22 counted toward the lift figure. The other 1 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +65 percentage points is the difference between those two pass rates over the 22 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.