CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

ax-cpp-agent-observability

Use when writing C++ code with `axllm` for agent tracing, centralized and multi-tenant usage accounting, action logs, runtime diagnostics, replay, and production debugging.

Quality

83%

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

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 lean, dense reference skill with executable code patterns, exact API symbols, and well-signaled pointers to package docs and runnable examples. The main gaps are code snippets that assume undefined surrounding context and the absence of an explicit ordered integration workflow with validation steps.

DimensionReasoningScore

Conciseness

Bullets like "The observer is process-wide, best-effort, and fail-open." and "Keep identifiers opaque and attributes low-cardinality." are maximally dense, assume Claude's competence, and contain no padding or explanations of known concepts. Not 4 because there is no identifiable content to trim.

5 / 5

Actionability

Provides real code (`axllm::set_usage_observer([&usage_queue](axllm::AxUsageEvent event){...})` and the two-line core pattern), exact API symbols, and a runnable example path (`src/examples/cpp/generation/usage_observer.cpp`). Not 5 because the snippets depend on undefined context (`llm`, `usage_queue`) and are not fully copy-paste ready; not 3 because the guidance is executable code plus precise behavioral directives, not pseudocode.

4 / 5

Workflow Clarity

The body flows logically from "When To Use" to "Core Pattern" to observer registration with an explicit teardown note ("Clear it during test teardown or shutdown"), and guardrails act as checkpoints ("Start from package examples for exact native syntax before inventing a new call shape"). Not 5 because there is no explicit ordered sequence for integrating the observer and no validate-fix-retry loop; not 3 because no destructive or batch operations exist and the core action is unambiguous.

4 / 5

Progressive Disclosure

Clearly signaled one-level-deep pointers to package materials ("Package API docs: `API.md` and `axir-api.json`", "Runnable examples: `examples/`") with no bundle files available, so inlining is the only option. Not 5 because the inlined "Relevant API Surface" symbol list partially duplicates `API.md` and pushes the body beyond a lean overview; not 3 because references are clearly signaled and well organized rather than buried.

4 / 5

Total

17

/

20

Passed

Description

78%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 concise, highly targeted description with an explicit 'Use when' trigger and a clear, well-scoped niche. Its main limitation is that the capability statement is embedded in the trigger clause rather than stated separately, and a few natural synonyms (observability, telemetry, monitoring) are absent.

Suggestions

State the capability independently before the trigger, e.g. "Write C++ code with the axllm package for agent tracing and usage accounting. Use when...", so the 'what' is explicit on its own.

Add common synonyms users would naturally say — "observability", "telemetry", "monitoring", "token usage", "cost tracking" — to broaden trigger coverage.

Consider naming the concrete actions (e.g. "register usage observers", "attribute model calls by tenant and user") instead of listing capability domains alone.

DimensionReasoningScore

Specificity

Enumerates six concrete capability areas ("agent tracing, centralized and multi-tenant usage accounting, action logs, runtime diagnostics, replay, and production debugging") within the action "writing C++ code with `axllm`". Not 5 because these are capability domains rather than discrete concrete actions; not 3 because coverage is broad and specific, well beyond 1-2 actions.

4 / 5

Completeness

An explicit trigger clause is present ("Use when writing C++ code with `axllm` for..."), and the 'what' (writing C++ code against axllm for those functions) is stated but fused into the when-clause. Not 5 because the 'what' is not independently and explicitly declared as a capability statement; not 3 because both elements are present and the trigger is explicit.

4 / 5

Trigger Term Quality

Natural phrases are present ("agent tracing", "action logs", "runtime diagnostics", "production debugging", "C++", "axllm") that users of this package would actually say. Not 5 because common synonyms like "observability", "telemetry", "monitoring", or "token usage" are missing; not 3 because keyword coverage is good and includes the package name itself.

4 / 5

Distinctiveness Conflict Risk

"C++ code with `axllm`" pins a clear niche combining language, package, and observability functions, giving minimal conflict risk. Not 4 because the language-plus-package scoping is sharper than "minor overlap with closely related skills" — even a sibling TypeScript axllm skill would not collide.

5 / 5

Total

17

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

relative_links

Relative link issues: 1 suspicious

Warning

Total

14

/

16

Passed

Repository

ax-llm/ax

Path

packages/cpp/skills/ax-cpp-agent-observability/SKILL.md

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.