CtrlK
BlogDocsLog inGet started
Tessl Logo

dt-migration

Migrate Dynatrace classic and Gen2 entity-based DQL to Smartscape equivalents. Covers three scenarios. (1) mass data queries filtered by classic entity conditions — migrate to direct dimension filters first, Smartscape only as fallback; (2) mass data queries using entity subqueries for filtering — same dimension-first strategy; (3) pure entity list queries — migrate fetch dt.entity.* to smartscapeNodes. Also handles entityName, entityAttr, classicEntitySelector, and classic relationship patterns.

64

Quality

76%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Fix and improve this skill with Tessl

tessl review fix ./skills/dt-migration/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

70%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This is a well-structured migration skill with strong progressive disclosure and workflow clarity. The decision tree at the top effectively routes users to the right strategy, and references are clearly organized. The main weaknesses are the lack of inline executable DQL examples (all deferred to references) and some minor verbosity in table notes and repeated loading instructions.

Suggestions

Add at least one concrete before/after DQL code example inline for each of the three situations to make the main body more actionable without requiring reference loading.

Trim obvious table notes like 'Standard host mapping' and 'Standard service mapping' — these add no information beyond what the mapping columns already convey.

DimensionReasoningScore

Conciseness

The skill is reasonably efficient and avoids explaining basic concepts Claude would know, but some sections are somewhat verbose — e.g., the Migration Workflow steps could be tighter, and the Notes columns in tables sometimes state the obvious ('Standard host mapping'). The repeated 'load [reference]' instructions add up but are mostly justified.

2 / 3

Actionability

The skill provides structured decision tables, mapping tables, and a clear workflow sequence, which is good. However, it lacks any concrete DQL code examples (before/after) in the main body — all examples are deferred to references. The guidance is specific but not copy-paste executable without loading additional files.

2 / 3

Workflow Clarity

The workflow is clearly sequenced with a decision tree at the top (three situations), explicit gating steps (fieldsSnapshot gates in the referenced strategy), and clear ordering of migration steps. The skill explicitly states when to load sub-references and when to fall back, providing good validation checkpoints ('Do not skip the fieldsSnapshot gates').

3 / 3

Progressive Disclosure

Excellent progressive disclosure structure: the main SKILL.md provides a compact overview with core mapping table and decision framework, then clearly signals one-level-deep references for detailed guides (entity families, special cases, workflow details, examples). References are well-organized with a README index and descriptive annotations for each link.

3 / 3

Total

10

/

12

Passed

Description

82%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

This is a highly specific and technically detailed description that clearly communicates the three migration scenarios and the concrete techniques involved. Its main weakness is the absence of an explicit 'Use when...' clause, which would help Claude know exactly when to select this skill. The domain-specific terminology provides excellent distinctiveness and trigger term coverage for users in the Dynatrace ecosystem.

Suggestions

Add an explicit 'Use when...' clause, e.g., 'Use when the user asks to migrate or convert Dynatrace classic or Gen2 entity-based DQL queries to Smartscape equivalents, or mentions migrating entitySelector, entityName, or entity subqueries.'

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions across three distinct migration scenarios, names specific functions (entityName, entityAttr, classicEntitySelector), and describes concrete strategies (dimension filters first, Smartscape as fallback, smartscapeNodes).

3 / 3

Completeness

The 'what' is thoroughly covered with three specific migration scenarios and detailed techniques. However, there is no explicit 'Use when...' clause or equivalent trigger guidance telling Claude when to select this skill, which caps this dimension at 2 per the rubric guidelines.

2 / 3

Trigger Term Quality

Includes highly specific natural keywords a user working in this domain would use: 'Dynatrace', 'DQL', 'Smartscape', 'classic entity', 'Gen2', 'entitySelector', 'dt.entity.*', 'smartscapeNodes', 'entity subqueries'. These are precisely the terms a Dynatrace user would mention when needing this migration help.

3 / 3

Distinctiveness Conflict Risk

This is an extremely niche skill focused specifically on Dynatrace DQL migration from classic/Gen2 to Smartscape. The combination of domain-specific terminology makes it virtually impossible to conflict with other skills.

3 / 3

Total

11

/

12

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation11 / 11 Passed

Validation for skill structure

No warnings or errors.

Repository
Dynatrace/dynatrace-for-ai
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.