CtrlK
BlogDocsLog inGet started
Tessl Logo

assertion-synthesizer

Generate test assertions from existing code implementation. Use when the user has implementation code without tests or incomplete test coverage, and needs assertions synthesized by analyzing the code's behavior, inputs, outputs, and state changes. Supports Python (pytest/unittest), Java (JUnit/AssertJ), and JavaScript/TypeScript (Jest/Chai). Handles equality checks, collections, exceptions, and state verification.

85

1.10x
Quality

80%

Does it follow best practices?

Impact

92%

1.10x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./skills/assertion-synthesizer/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

71%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 skill body is highly actionable with comprehensive, executable multi-language code examples and a clear sequenced workflow. Its weaknesses are verbosity from redundant example/best-practice sections and a monolithic structure with no progressive disclosure into separate reference files.

Suggestions

Consolidate the redundant 'Assertion Synthesis Strategies', 'Example Sessions', and 'Best Practices'/'Tips' sections — the strategy examples and best-practice bullets restate concepts already shown in the workflow and language pattern sections.

Move the language-specific patterns (Java/JavaScript) and the worked 'Example Sessions' into separate reference files referenced one level deep from SKILL.md, keeping only the Python quick-start and the workflow inline.

Add an explicit validate-and-retry feedback loop to the workflow's 'Verify Coverage' step (e.g., run the suite, fix failing/missing assertions, re-run) to earn the top workflow-clarity anchor.

DimensionReasoningScore

Conciseness

The core workflow is reasonably efficient and the code examples earn their place, but the 'Assertion Synthesis Strategies', 'Example Sessions', 'Best Practices', and 'Tips' sections substantially overlap and restate concepts Claude already knows (Arrange-Act-Assert, descriptive naming), so it could be tightened.

3 / 5

Actionability

Fully executable, copy-paste-ready code is provided for Python (pytest/unittest), Java (JUnit/AssertJ), and JavaScript/TypeScript (Jest), covering equality, collection, exception, and state verification cases concretely.

5 / 5

Workflow Clarity

The five-step Analyze → Identify → Generate → Structure → Verify workflow is clearly sequenced with an explicit coverage-verification step, but it lacks an explicit validate-and-retry feedback loop, so it stops short of the top anchor.

4 / 5

Progressive Disclosure

The single ~440-line SKILL.md has clear section headers but inlines substantial content (language-specific patterns, strategy examples, example sessions) that would be better split into separate reference files, and no external references are signaled.

3 / 5

Total

15

/

20

Passed

Description

88%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 strong: it concisely states concrete capabilities, an explicit trigger condition, and specific supported frameworks. Its main weakness is slightly less than comprehensive trigger-term synonym coverage and minor overlap with generic test-writing skills.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — synthesizing assertions by analyzing behavior, inputs, outputs, and state changes, plus handling equality/collections/exceptions/state verification across three language ecosystems — giving comprehensive coverage rather than just a few actions.

5 / 5

Completeness

It explicitly answers both what ('Generate test assertions from existing code implementation') and when ('Use when the user has implementation code without tests or incomplete test coverage...') with concrete trigger conditions, matching the top anchor.

5 / 5

Trigger Term Quality

It includes natural terms a user would say ('implementation code without tests', 'incomplete test coverage', 'test assertions') plus framework names (pytest, JUnit, Jest), but misses some common synonyms (e.g., 'unit tests', 'test generation') so coverage is strong rather than comprehensive.

4 / 5

Distinctiveness Conflict Risk

Synthesizing assertions from existing implementation is a distinct niche, but the broad test-writing framing and multi-language support create minor overlap with general test-generation skills.

4 / 5

Total

18

/

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
ArabelaTso/Skills-4-SE
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.