CtrlK
BlogDocsLog inGet started
Tessl Logo
PluginPublic

adobe/aem-cloud-service

All AEM as a Cloud Service skills: component development, Workflow model design, development, triggering, launchers, debugging, and triaging, Dispatcher config authoring, advisory, incident response, performance tuning, and security hardening, Rapid Development Environment (RDE) deployment, log inspection, snapshots, and troubleshooting via `aio aem rde`, Jackrabbit Oak query/index tuning (property, Lucene index definitions), and extracting/inventorying JCR queries (XPath, SQL2, QueryBuilder) across a codebase.

Quality

85%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

Overview
Quality
Evals
Security
Files

README.mdskills/code-assessment/remove-deprecated-api/

remove-deprecated-api

Migrates AEM projects away from deprecated and removed APIs to comply with AEM as a Cloud Service enforcement requirements. Detection is two-phase and dynamic: a preflight step runs the AEM Analyser Maven Plugin against the project and writes a rules cache; the shared code-assessment analyzer then consumes that cache. No hardcoded rule tables — the deprecation set is refreshed on every run.

How it works

PhaseWhat happens
Preflightscripts/detect.sh invokes aemanalyser-maven-plugin (latest release) by its fully-qualified com.adobe.aem:aemanalyser-maven-plugin:<version>:project-analyse coordinates — mvn package …:project-analyse — so the resolved version runs without ever modifying the project's pom.xml. It parses Usage of deprecated ... found : <pkg> : <hint> lines from the log and writes a rules TSV to $AEM_DEPRECATED_API_RULES (or the default $TMPDIR/aem-code-assessment/deprecated-api-rules.tsv).
Analyzerscripts/analyze.sh runs the shared Java analyzer. RemoveDeprecatedApi reads the rules TSV and matches every rule against import statements in the workspace's Java corpus, emitting findings in the standard shape with a hint field carrying the analyser's deprecation message.
FixThe recipe parses each finding's hint for a successor phrase ("Please use X instead", "X should be used", …); when the hint names no successor, it consults Adobe Experience League. Successors are verified on the module's classpath before any edit.
VerifyThe preflight is re-run at the end — a clean analyser log confirms every past-due deprecation was fixed.

Because the rule set is fetched fresh on every preflight, there is nothing to maintain and nothing to drift. Future-dated deprecations are picked up automatically on subsequent runs after their removal date passes.

Structure

remove-deprecated-api/
├── SKILL.md             ← skill entry point and description
├── README.md            ← this file
├── recipe.md            ← step-by-step execution procedure
└── scripts/
    └── detect.sh        ← preflight: plugin runner + log parser + rules TSV writer

The Java detector itself lives with the shared analyzer at ../scripts/analyzer/detectors/RemoveDeprecatedApi.java.

Requirements

  • Apache Maven 3.x or newer with a supported JVM (for the preflight; other patterns in code-assessment only need a JDK).

skills

README.md

tile.json