CtrlK
BlogDocsLog inGet started
Tessl Logo

cx-coding-agents

Use this skill when the user asks about AI Center Coding Agents data, wants to reproduce or extend the Coding Agents dashboards, or asks questions about usage, cost, tokens, sessions, tools, code impact, users, models, spans, or logs for Claude Code, Codex, Cursor, Gemini CLI, or Copilot CLI.

64

Quality

80%

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

Fix and improve this skill with Tessl

tessl review fix ./skills/cx-coding-agents/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

78%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, information-dense routing skill: exact CLI syntax, per-agent data sources, and genuinely non-obvious details like label-name casing per signal type, with a clean one-level reference structure that checks out against the actual bundle. The main improvements are deduplicating the twice-stated agent→source mapping, adding one complete worked query per command type, and an explicit empty-result checkpoint.

Suggestions

Deduplicate the agent→data-source mapping: the 'First Response' bullets restate the 'Supported Agents' table; keep one and reference the other.

Include one complete end-to-end example per command type (e.g., cx metrics query-range 'increase(claude_code_cost_usage_USD_total[7d])' and a full cx logs dataprime query) so the templates are copy-paste ready.

Add an empty-result checkpoint to the workflow — e.g., 'if a query returns no series, verify the metric name with cx metrics search before concluding no data exists' — to create a validate/retry loop.

Move the 'First Response' section before 'CLI Commands' so the body reads in execution order.

DimensionReasoningScore

Conciseness

The body is dense with non-obvious domain knowledge (metric family names, service.name values, the '$l.applicationName' vs '$l.applicationname' casing distinction) and explains nothing Claude already knows. It is not anchor 5 because the agent→data-source mapping is stated twice — once in the 'Supported Agents' table and again nearly verbatim in the 'First Response' bullets ('Claude Code metrics: PromQL over claude_code_* metrics' etc.) — which could be trimmed. Clearly above anchor 3 ('mostly efficient but some unnecessary explanation').

4 / 5

Actionability

Concrete, executable command syntax is given ('cx metrics query-range \'<expr>\'', '-o toon', '-p <profile> (repeatable)') plus exact filter patterns ('{user_email="<user>",model="<model>",...}' and '| filter $l.applicationName == \'<application>\''). Not anchor 5 because no complete worked query is shown — every command is a template with '<expr>'/'<dataprime_query>' placeholders, so Claude must assemble a full query from pieces; but it is well above anchor 3 (pseudocode/incomplete).

4 / 5

Workflow Clarity

A clear sequence is present: 'First Response' (identify agent/goal, 'If any required scope is missing, ask before querying'), then the 'Loading References' table naming exactly which files to load per agent, then query, then the 'Answer Style' output contract including caveats about 'empty data, approximate counts, pseudonymous users'. This matches anchor 4 ('clear sequence with most checkpoints present'). Not 5 because there are no explicit validation/feedback steps on results (e.g., what to do when a query returns empty before concluding 'no data'), and the 'First Response' section — logically step one — appears after the CLI Commands section.

4 / 5

Progressive Disclosure

Textbook structure: the body is an overview with a dedicated 'Loading References' table that signals exactly which of the ten real, one-level-deep reference files to load per agent ('references/claude-code.md' + 'references/promql-guidelines.md' + 'references/metrics-querying.md'), and every referenced path exists in ./references/ with no nested chains beyond shared sibling files. Matches anchor 5 ('clear overview with well-signaled one-level-deep references; content appropriately split; easy navigation').

5 / 5

Total

17

/

20

Passed

Description

73%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 well-crafted, third-person description with an explicit and rich 'use when' clause covering concrete data topics and all supported agents. Its main weakness is that the skill's actual capabilities (identifying data sources, loading references, running cx CLI queries) are never named, leaving the 'what' implied.

Suggestions

State what the skill does when invoked, e.g. prepend 'Routes coding-agent data questions to the right source: identifies the metrics, logs, or spans backend per agent and issues the corresponding cx CLI queries.' before the 'Use when' clause.

Add a couple of natural trigger synonyms such as 'spend', 'billing', or 'compare agents across' to lift trigger coverage to fully comprehensive.

Mention the dashboard names or the AI Center context a user might reference ('Coding Agents dashboard', 'AI Center') so paraphrased triggers still land.

DimensionReasoningScore

Specificity

The description names the domain ('AI Center Coding Agents data') and one concrete action ('reproduce or extend the Coding Agents dashboards'), but the skill's actual capabilities — routing to reference files, running `cx metrics`/`cx logs`/`cx spans` queries — are never stated; the enumerated topics ('usage, cost, tokens, sessions...') are triggers, not actions. This matches anchor 3 ('names domain and 1-2 concrete actions, but not comprehensive') better than 4, which expects several specific listed actions.

3 / 5

Completeness

The 'when' is explicit and detailed ('Use this skill when the user asks about... or asks questions about...'), and a partial 'what' exists ('reproduce or extend the Coding Agents dashboards'), so both are present — matching anchor 4 ('has both what and when; when could be more explicit'). Not 5 because the 'what' is never stated concretely (what the skill does when invoked is left to the body); not 3 because the when clause is explicit, not 'missing or only weakly implied'.

4 / 5

Trigger Term Quality

Strong natural-keyword coverage: 'usage', 'cost', 'tokens', 'sessions', 'dashboards', 'logs', plus all five agent names ('Claude Code, Codex, Cursor, Gemini CLI, or Copilot CLI') — exactly what a user would say. Not anchor 5 because a few plausible natural phrasings are missing (e.g., 'spend', 'billing', 'compare agents'), and it is noticeably above anchor 3 ('some relevant keywords but missing common variations').

4 / 5

Distinctiveness Conflict Risk

Clear niche ('AI Center Coding Agents data' for five named agents) with distinct triggers — the combination of specific agent names and data vocabulary (spans, logs, dashboards) makes wrong-skill triggering unlikely. Matches anchor 5 ('clear niche with distinct triggers; minimal conflict risk').

5 / 5

Total

16

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_field

'metadata' should map string keys to string values

Warning

Total

15

/

16

Passed

Repository
coralogix/cx-cli
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.