CtrlK
BlogDocsLog inGet started
Tessl Logo

maple-kotlin-style

Kotlin (Ktor, Spring Boot) OpenTelemetry style for Maple: zero-code Java agent or manual SDK with OTLP HTTP exporters, inline endpoint + ingest key, semconv resource attributes, OTLP-bridged logs.

64

Quality

76%

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 ./skills/maple-kotlin-style/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.

A tight, high-signal style guide with copy-paste-ready commands and code for the main paths, plus genuinely non-obvious Kotlin-specific pitfalls (thread-local scope vs coroutine context propagation, inline flags, agent coexistence). The gaps are minor: directional rather than concrete guidance for log/metric exporters and no post-setup verification step.

Suggestions

Add a short concrete snippet (or explicit config lines) for the logback/log4j appender wiring and the OTLP log/metric exporters, matching the completeness of the trace path.

Add a verification checkpoint after setup — e.g., run a request and confirm a trace with the expected service.name and vcs.ref.head.revision attributes arrives in Maple — to close the feedback loop.

Consider moving the log-bridging details or the semconv attribute list into a references/ file to keep SKILL.md closer to a lean overview.

DimensionReasoningScore

Conciseness

The body is lean and dense: every line carries Maple-specific or Kotlin-specific facts (endpoints, flags, semconv attributes, the asContextElement vs makeCurrent pitfall) and nothing explains concepts Claude already knows. Even the opening orientation line ("Kotlin runs on the JVM, so the same OpenTelemetry Java agent and SDK apply") earns its place by justifying the whole approach.

5 / 5

Actionability

The java-agent path is fully copy-paste ready (curl + java flags) and the manual SDK and business-span sections give complete executable Kotlin. It falls short of 5 only because the logs section is directional — "add opentelemetry-logback-appender-1.0 ... declare its appender in logback.xml" and "Add the equivalent log and metric exporters in the same builder" — without concrete code for those steps.

4 / 5

Workflow Clarity

The decision sequence is clear and unambiguous: prefer the agent for Spring Boot/Ktor servers, fall back to the manual SDK only for native-image or sealed-module builds, then spans, logs, and coexistence rules. It misses a 5 because there is no verification checkpoint (e.g., confirming telemetry actually reaches Maple) after setup, though the operations involved are non-destructive so the 3-cap for missing validation does not apply.

4 / 5

Progressive Disclosure

The ~90-line body is cleanly organized into well-labeled sections (zero-code agent, manual SDK, business spans, logs, coexistence) with each piece of content appropriately placed inline for a style guide of this size, and no bundle files exist to misorganize. It is not a 5 under the simple-skill exception because the body exceeds the ~50-line inline threshold, and sections like the log-bridge wiring or the semconv attribute set could plausibly live in a reference file.

4 / 5

Total

17

/

20

Passed

Description

70%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.

A strong, information-dense description that names the exact technologies and vendor-specific details involved. Its main weaknesses are the complete absence of a "Use when..." trigger clause and of common synonyms like "tracing" or "telemetry" that would improve discoverability.

Suggestions

Append an explicit trigger clause, e.g. "Use when setting up OpenTelemetry tracing or telemetry for Kotlin (Ktor, Spring Boot) services reporting to Maple."

Include natural synonyms users would say — "tracing", "telemetry", "instrumentation", "observability" — alongside "OpenTelemetry".

Reframe the noun-phrase list slightly as actions (e.g. "Configure...", "Instrument...") to sharpen the 'what does this do' answer.

DimensionReasoningScore

Specificity

The description enumerates several concrete specifics — "zero-code Java agent", "manual SDK with OTLP HTTP exporters", "inline endpoint + ingest key", "semconv resource attributes", "OTLP-bridged logs" — rather than vague language. It stops short of a 5 because these are coverage topics phrased as noun phrases rather than multiple concrete actions, and there is no explicit statement of what the skill does with them.

4 / 5

Completeness

The "what" is clearly stated (OpenTelemetry style for Maple covering agent and manual SDK paths), but there is no "Use when..." clause or any equivalent trigger guidance, which caps completeness at 3 per the judging guidelines. It is not a 2 because the what is specific and detailed, not vague.

3 / 5

Trigger Term Quality

"Kotlin", "Ktor", "Spring Boot", "OpenTelemetry", and "Maple" are precisely the natural terms a user would say when needing this skill. Not a 5 because common synonyms and variations users might say — "tracing", "telemetry", "instrumentation", "observability" — are absent.

4 / 5

Distinctiveness Conflict Risk

The combination "Kotlin (Ktor, Spring Boot) OpenTelemetry style for Maple" carves out a clear niche with distinct triggers (language + frameworks + vendor), making it highly unlikely to fire for the wrong skill. Even sibling Maple skills for other languages would be cleanly separated.

5 / 5

Total

16

/

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
MapleTechLabs/maple
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.