code-assessment

Detect and fix AEM Cloud Service code-quality issues locally in Java and Maven projects.

1|Updated Jun 22, 2026
One-click install
npx skills add https://github.com/aemgdc/aemdev --skill code-assessment-aemgdc
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: code-assessment
Source: https://github.com/aemgdc/aemdev/tree/main/.agents/skills/code-assessment
Command: npx skills add https://github.com/aemgdc/aemdev --skill code-assessment-aemgdc

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? AEM as a Cloud Service projects accumulate code-quality and correctness issues — outdated Maven dependencies, discouraged @Inject usage in Sling Models, unbounded queries, missing HTTP timeouts, and legacy listener/scheduler patterns — that cause build failures, OOM outages, and silent runtime bugs. This Skill detects and fixes those issues entirely against the local workspace, with no external services or network calls. ## Core Features & Use Cases - Deterministic local detection: A bundled Java analyzer (scripts/analyze.sh) parses the workspace once and runs per-pattern detectors, emitting structured JSON findings with file, line, and snippet. - Expert pattern skills: Routing to specialized remediation guides covering outdated Maven dependencies, @Inject to injector-specific annotation migration, unbounded query triage, outbound call timeouts, Sling Scheduler, ResourceChangeListener, event migration, replication, and AssetManager modernization. - Surgical, reviewable fixes: Applies minimal edits on a git branch or in place, verifies with mvn compile, never commits or pushes, and enforces one pattern per session with resumable batching for large migrations. - Use Case: Ask it to "scan this AEM project for issues" — it runs every detector, reports findings across all built patterns, then applies a chosen fix (e.g., modernizing Sling Models) after you confirm. ## Quick Start Ask the assistant to scan this AEM project for code-quality issues and report what it finds.

Frequently Asked Questions about code-assessment

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I scan an AEM project for code-quality issues?▼

Ask the skill to scan the repo without naming files; it runs the bundled analyzer in discover mode across all detectors and reports findings with file, line, and snippet. You can also name specific files to assess them directly.

How do I migrate @Inject annotations in Sling Models?▼

The inject-in-sling-model pattern detects field-level javax.inject.@Inject in @Model classes and replaces each with an injector-specific annotation chosen from the field's declared type, such as @ValueMapValue, @OSGiService, or @SlingObject. Constructor and setter injection trigger a file-level skip.

Does the AEM code assessment skill require network access?▼

No, it operates entirely against the local workspace with no external services or network calls. It requires a local JDK 11+ for the analyzer and deliberately avoids Maven Central lookups or mvn versions:display-* commands.

Can it automatically upgrade my Maven dependencies to the latest version?▼

It locates versioned dependencies in pom.xml but never guesses target versions; you must supply the target version before it edits the literal <version> or ${property} entry. Live registry comparison is offered only as a separate step after the report.

Will the skill commit or push the fixes it makes?▼

No, it never commits, pushes, or opens pull requests. Edits are applied surgically on a git branch or in place, verified with mvn compile, and left for the developer to review and commit.

What are the limitations of local AEM code assessment?▼

It performs static detection and remediation only, so issues requiring runtime state, a live AEM instance, telemetry, or history across runs are out of scope. Detection stops with a clear message if no JDK is present, and there is no LLM-scan fallback.