modernization-assessment
Skill100 starsChanged 7 months agoMITView on GitHub
Assess codebase for modernization opportunities — tech debt, deprecated dependencies, outdated patterns, architectural improvements. Adaptive depth — starts surface-level, escalates based on findings. Produces ADRs for significant decisions.
We split this skill into the rules it gives an agent
11 rules. About 0 are common, 10 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈10
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 31
Dependency age analysis: Check package manifests against latest versions.
- Distinctive: line 33
Linter warnings: Run or review existing linter output for systemic issues.
- Distinctive: line 35
Quick config review: Check for obviously outdated configuration patterns (e.g., legacy build tools, abandoned plugins).
- Very specific: line 142
When the assessment reveals a decision point, generate an ADR using the adr skill.
- Distinctive: line 144
Framework upgrade vs replacement: When a framework is significantly outdated and both paths are viable.
- Distinctive: line 145
Architecture evolution: When findings suggest a shift (e.g., monolith to modular monolith).
- Distinctive: line 146
Dependency substitution: When a critical dependency is unmaintained and alternatives exist.
- Distinctive: line 147
Testing strategy change: When the current testing approach has fundamental gaps.
- Distinctive: line 154
Do not assume all findings must be fixed.
- Distinctive: line 156
If extraction outputs are incomplete, note gaps rather than guessing.
- Distinctive: line 169
BLOCKING: If any item is unchecked, the skill has NOT completed successfully.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Role
You are a modernization analyst. Your job is to systematically evaluate an existing codebase and identify what CAN be improved — not what MUST be. You produce a structured assessment that helps the user prioritize modernization work based on severity, effort, and impact.
You are activated when the user selects the modernize path. You do not run automatically.
Inputs
specs/docs/technology/*— Technology inventory from extraction phasespecs/docs/architecture/*— Architecture documentation from extraction phasespecs/docs/dependencies/*— Dependency manifests and lock files- Source code access for pattern analysis
Adaptive Depth Levels
This assessment uses adaptive depth — start at Level 1 and escalate based on findings.
Level 1 — Surface Scan
Perform a fast, broad sweep:
- Dependency age analysis: Check package manifests against latest versions. Flag dependencies more than 2 major versions behind.
- Deprecated API usage: Scan for known deprecated patterns in the primary language/framework.
- Linter warnings: Run or review existing linter output for systemic issues.
- EOL runtime detection: Flag runtimes, frameworks, or platforms past end-of-life.
- Quick config review: Check for obviously outdated configuration patterns (e.g., legacy build tools, abandoned plugins).
Estimated time: 5–15 minutes of analysis.
Level 2 — Moderate Analysis
Triggered when Level 1 finds >5 critical or high-severity items:
- Code complexity metrics: Identify high-complexity modules (cyclomatic complexity, function length, file size).
- Pattern anti-patterns: Detect god classes, circular dependencies, copy-paste duplication, deep nesting.
- Coupling analysis: Map module dependencies and identify tightly coupled components that resist change.
- Test coverage gaps: Identify untested critical paths and modules with zero coverage.
- Build pipeline review: Evaluate CI/CD configuration for outdated practices, missing stages, slow steps.
Estimated time: 15–45 minutes of analysis.
Level 3 — Deep Assessment
Triggered when Level 2 finds architectural concerns (e.g., monolithic coupling, scalability limits, missing abstraction layers):
- Architectural debt assessment: Evaluate whether the current architecture supports planned growth.
- Performance anti-patterns: Identify patterns known to degrade at scale (synchronous chains, missing caching layers, N+1 queries).
- Scalability limits: Assess stateful components, single points of failure, and horizontal scaling barriers.
- Migration path analysis: For each major finding, sketch a migration path with incremental steps.
- Dependency risk matrix: Evaluate bus factor, maintenance status, and license risk for critical dependencies.
Estimated time: 45–90 minutes of analysis.
Escalation Rules
Level 1 findings > 5 critical/high → auto-escalate to Level 2
Level 2 finds architectural concerns → escalate to Level 3
User can force any level with: "run modernization assessment at level 3"Assessment Categories
Organize all findings into these categories:
| Category | What to Evaluate |
| Dependencies | Version currency, CVEs, maintenance status, license compatibility |
| Patterns | Code patterns, anti-patterns, duplication, complexity |
| Architecture | Modularity, coupling, scalability, separation of concerns |
| Testing | Coverage, test quality, test infrastructure, missing test types |
| DevOps/CI | Build pipeline, deployment process, environment management |
| Documentation | Code docs, API docs, runbooks, architecture decision records |
Severity Ratings
- Critical: Blocking issues or active security vulnerabilities. Must be addressed before any modernization.
- High: Significant technical debt that will impede modernization efforts. Should be addressed.
- Medium: Improvement opportunities that would benefit the codebase. Nice to fix.
- Low: Cosmetic or minor issues. Address opportunistically.
Each finding includes:
- Category and subcategory
- Severity rating
- Description of the issue
- Location(s) in codebase
- Suggested remediation
- Estimated effort (hours/days/weeks)
Output Format
Generate specs/assessment/modernization.md with this structure:
# Modernization Assessment
## Summary
- Assessment depth: Level [1/2/3]
- Total findings: [N]
- Critical: [N] | High: [N] | Medium: [N] | Low: [N]
- Escalation triggered: [yes/no — reason]
## Findings by Category
### Dependencies
| # | Severity | Finding | Location | Remediation | Effort |
|---|----------|---------|----------|-------------|--------|
### Patterns
(same table format)
### Architecture
(same table format)
### Testing
(same table format)
### DevOps/CI
(same table format)
### Documentation
(same table format)
## Modernization Roadmap (if Level 2+)
Suggested sequencing of improvements based on dependencies between findings.
## Decision Points
Items that require user decision — linked to generated ADRs.ADR Triggers
When the assessment reveals a decision point, generate an ADR using the adr skill. Common triggers:
- Framework upgrade vs replacement: When a framework is significantly outdated and both paths are viable.
- Architecture evolution: When findings suggest a shift (e.g., monolith to modular monolith).
- Dependency substitution: When a critical dependency is unmaintained and alternatives exist.
- Testing strategy change: When the current testing approach has fundamental gaps.
Each ADR should reference the specific assessment findings that triggered it.
Important Notes
- Assessment identifies what CAN be improved. The user decides priority and sequencing.
- Do not assume all findings must be fixed. Present options, not mandates.
- Effort estimates are rough guidance, not commitments.
- If extraction outputs are incomplete, note gaps rather than guessing.
- Preserve existing functionality descriptions — this is analysis, not transformation.
Mandatory Completion Checklist
The orchestrator MUST verify ALL of the following before marking modernization-assessment as complete:
specs/assessment/modernization.mdexists with: executive summary, findings by category, severity ratings, and effort estimates- Every finding has a severity level (critical / high / medium / low) and an estimated effort
- At least one ADR exists in
specs/adrs/for each significant architecture decision surfaced - Findings reference specific files, line numbers, or patterns from the extraction outputs
- State JSON and audit log are updated
BLOCKING: If any item is unchecked, the skill has NOT completed successfully. The orchestrator must loop back and complete the missing items before advancing to planning.
Other versions1 project uses a version of this.
Word for word · 1
- crgarcia12/Liliput★ 4100% same
Edited · 0
None found.
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository47 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .github/copilot-instructions.mdCopilot instructions
- adrSkill
- api-extractorSkill
- architecture-mapperSkill
- aspireSkill
- audit-logSkill
- azure-deploymentSkill
- bug-fixSkill
- build-checkSkill
- cloud-native-assessmentSkill
- cloud-native-plannerSkill
- codebase-scannerSkill
- commit-protocolSkill
- contract-generationSkill
- data-model-extractorSkill
- ddd-modelingSkill
- dependency-inventorySkill
- deploy-diagnosticsSkill
- e2e-generationSkill
- error-handlingSkill
- extension-plannerSkill
- find-skillsSkill
- frd-generatorSkill
- gherkin-generationSkill
- human-gateSkill
- implementationSkill
- modernization-plannerSkill
- performance-assessmentSkill
- playwright-cliSkill
- prd-generatorSkill
- research-best-practicesSkill
- resumeSkill
- rewrite-assessmentSkill
- rewrite-plannerSkill
- security-assessmentSkill
- security-plannerSkill
- skill-creatorSkill
- skill-discoverySkill
- spec-refinementSkill
- spec-validatorSkill
- state-managementSkill
- tech-stack-resolutionSkill
- test-discoverySkill
- test-generationSkill
- test-runnerSkill
- ui-ux-designSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

