CtrlK
BlogDocsLog inGet started
Tessl Logo

devtools-source-maps

Guidelines for utilizing source maps and structured stack traces in DevTools. Covers DebuggerWorkspaceBinding, StackTrace, SymbolizedError, and related UI widgets.

59

Quality

74%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./.agents/skills/devtools-source-maps/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

82%Weight 40%Scale 1-5

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

The body is a well-organized, execution-ready reference: concrete rules, complete code samples with correct module paths, and a closing verification checklist. Its only weaknesses are mild — a redundant intro line and reference-style API/widget detail inlined in the main file with no offload path if the skill expands.

DimensionReasoningScore

Conciseness

The body is mostly lean: terse primary rules, compact model descriptions, and short code snippets with no padding explaining concepts Claude already knows. Minor trimmable parts remain — the opening paragraph ("This skill guides you on how to correctly map...") restates the title, and model-field enumerations ("uiSourceCode, url, line/column info, untranslated rawName...") slightly exceed what is needed. This is 'Efficient; minor instances of over-explanation that could be trimmed' rather than 5, where every token would earn its place.

4 / 5

Actionability

Guidance is fully executable: each API section gives copy-paste-ready TypeScript with module paths and imports (rawLocationToUILocation, createStackTraceFromProtocolRuntime, createStackTraceFromErrorStackLikeString, createSymbolizedError), and the widget section shows complete construction with options (expandable, showColumnNumber, ignoreListManager). The examples cover the common cases (protocol stack, paused details, raw stack string, remote object). Concrete behavioral rules ('Never parse raw error stacks manually', 'Always call .dispose()') add directly actionable direction.

5 / 5

Workflow Clarity

This is a reference-style skill rather than a multi-step pipeline, but it is well sequenced: primary rules first, then models, then APIs, then widgets, and it closes with an explicit verification checklist (dispose calls, ignoreListManager set, inline/WASM frame mapping) that acts as validation checkpoints. It is below 5 because there is no step-by-step flow or error-recovery loop (e.g. what to do when location translation fails or a stack is unparsable — the UnparsableError fallback is mentioned but not handled), and above 3 because explicit verification steps are present rather than implicit.

4 / 5

Progressive Disclosure

No bundle files (references/, scripts/, assets/) exist, and none are referenced, so there is no deep-nesting or buried-reference problem; the single SKILL.md is organized into clearly labeled numbered sections with sub-headers, and at ~120 lines it stays overview-sized. It sits at 4 rather than 5 because the Core APIs and UI Widget Reference sections carry reference-style detail (four API signatures plus two full widget code samples) that could be split into a separate reference file if the skill grows, i.e. 'most content is appropriately placed; minor organization gaps'.

4 / 5

Total

17

/

20

Passed

Description

52%Weight 40%Scale 1-5

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

The description identifies a well-scoped, distinctive niche but reads more like a table-of-contents than a capability statement: it says what topics are covered rather than what the skill does and when to use it. Its biggest gap is the missing 'when' clause, and its actions are implicit in class-name listings rather than stated concretely.

Suggestions

Add an explicit 'Use when...' trigger clause, e.g. 'Use when rendering or parsing stack traces, symbolized/inline errors, or mapping raw locations to original sources in the DevTools frontend.'

Replace the class-name enumeration with 2-3 concrete actions users care about (e.g. 'Parses raw error stacks structurally, translates raw debugger locations to original source coordinates, and renders stack traces and symbolized errors with pre-built widgets').

Include natural user-facing trigger phrases and synonyms such as 'sourcemaps', 'call stack', 'error stack', and 'inline script' alongside the internal class names.

DimensionReasoningScore

Specificity

The description names the domain ("source maps and structured stack traces in DevTools") but the only action framing is the generic "Guidelines for utilizing"; it lists class names ("DebuggerWorkspaceBinding, StackTrace, SymbolizedError, and related UI widgets") rather than concrete actions like parsing stacks, translating raw locations, or rendering error widgets. This matches the anchor 'Names the domain but actions are minimal or generic' — it is above a purely vague description (1) because the domain and covered entities are specific, but below anchor 3 because no concrete verb-action is stated.

2 / 5

Completeness

The 'what' is reasonably clear (guidelines for mapping runtime coordinates to original sources and rendering structured stack traces / symbolized errors), but there is no 'Use when...' clause or equivalent trigger guidance, so per the judging guidelines completeness is capped at 3. Not 4 or 5 because 'when' is entirely absent rather than weakly implied.

3 / 5

Trigger Term Quality

"Source maps", "stack traces", and "DevTools" are natural phrases a user working in this area would say, but the second sentence leans on internal API class names ("DebuggerWorkspaceBinding", "SymbolizedError") that users would rarely utter, and common variations like "sourcemaps", "error stack", or "call stack" are absent. This fits 'Some relevant keywords but missing common variations or synonyms' — better than 2 (more than one relevant natural term), not 4 (synonym coverage is thin).

3 / 5

Distinctiveness Conflict Risk

This occupies a clear niche — source-map-based stack trace handling in the DevTools frontend — and the named classes (DebuggerWorkspaceBinding, SymbolizedError, StackTracePreviewContent-adjacent widgets) are distinct triggers unlikely to fire for unrelated skills. Above anchor 4 because overlap risk with closely related skills is minimal given the specific entity names.

5 / 5

Total

13

/

20

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.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
ChromeDevTools/devtools-frontend
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.