CtrlK
BlogDocsLog inGet started
Tessl Logo

explain

Parse and interpret Z3 output for human consumption. Handles models, unsat cores, proofs, statistics, and error messages. Translates solver internals into plain-language explanations.

60

Quality

70%

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 ./.github/skills/explain/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

75%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-structured, actionable skill with clear sequencing, a working referenced script, and efficient token use. It scores well across all dimensions, with only minor room to separate inlined per-type detail into reference files and to add an explicit validation checkpoint when type detection fails.

Suggestions

Add an explicit validation checkpoint in Step 1/Step 2: 'If --type auto returns unknown, inspect the raw output head and re-run with an explicit --type flag rather than proceeding.'

Consider moving the per-type interpretation bullets (Step 3) into a reference file (e.g. references/interpretation.md) to tighten the overview further.

Show a short example of expected explain.py output for one type so the interpretation step is fully concrete.

DimensionReasoningScore

Conciseness

The body is efficient and mostly assumes Claude's competence, using tables and short Action/Expectation/Result blocks rather than explaining what Z3 or models are; the only mild padding is the repeated per-type bullet lists in Step 3 that partially restate the table.

4 / 5

Actionability

Provides concrete, executable invocations ('python3 scripts/explain.py --file output.txt', '--stdin', '--debug') plus a parameters table, and the referenced explain.py exists and matches; minor gaps include no example of interpreting actual sample output or showing expected command output.

4 / 5

Workflow Clarity

Steps are clearly sequenced (identify type → run explainer → interpret) with explicit fallback guidance ('If detection fails, re-run with an explicit --type flag') and an auto-detection escape hatch; this is read-only interpretation so destructive/batch caps do not apply, though explicit validation checkpoints for failed detection are slightly implicit.

4 / 5

Progressive Disclosure

Well-organized into clear sections with a real single bundle script (scripts/explain.py) referenced and present; the overview stays concise and points to the script for detail, though no separate reference files exist and some detail (per-type interpretation) is inlined that could live in references.

4 / 5

Total

16

/

20

Passed

Description

66%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 is concrete and domain-specific with good keyword coverage, but it omits an explicit 'Use when...' trigger clause, which caps its completeness. It is largely distinct but has minor overlap risk with related Z3 solver skills.

Suggestions

Add an explicit trigger clause, e.g. 'Use when Z3 solver output is large, nested, or hard to read directly, or when the user asks to explain a model, unsat core, proof, or statistics.'

Include a few more natural synonyms a user might say (e.g. 'sat/unsat results', 'solver output', 'Z3 proofs') to broaden trigger coverage.

Sharpen distinctiveness from sibling skills by noting this skill only interprets output rather than running the solver.

DimensionReasoningScore

Specificity

Lists several concrete object categories it handles — 'models, unsat cores, proofs, statistics, and error messages' — and a concrete action ('Parse and interpret Z3 output'), but does not enumerate distinct per-category actions, leaving minor coverage gaps.

4 / 5

Completeness

It clearly states what the skill does ('Parse and interpret Z3 output... Translates solver internals into plain-language explanations') but lacks any explicit 'Use when...' clause or equivalent trigger guidance, so 'when' is only weakly implied — capping completeness at 3 per the guidelines.

3 / 5

Trigger Term Quality

Includes natural terms users would say ('Z3 output', 'models', 'unsat cores', 'proofs', 'statistics', 'error messages') with good coverage, though it omits common synonyms like 'sat/unsat results' and file extensions.

4 / 5

Distinctiveness Conflict Risk

The Z3-output-interpretation niche is fairly distinct with specific triggers, but 'parse and interpret output' could minorly overlap with the sibling solve/prove/optimize/benchmark skills that also surface Z3 output.

4 / 5

Total

15

/

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.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
Z3Prover/z3
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.