CtrlK
BlogDocsLog inGet started
Tessl Logo

evilissimo/design-by-contract

Analyze code to suggest and add Design by Contract specifications (preconditions, postconditions, invariants, semantic invariants) in any language. Trigger on: "Design by Contract", "DBC", "preconditions", "postconditions", "class invariants", "code contracts", "formal specifications", "document assumptions", "add contracts", "make this function safer", "define what this function guarantees", "add assertions to document behavior", Bertrand Meyer, Eiffel contracts, or when discussing invariants that should always hold. Do NOT skip for non-Eiffel code — DBC applies everywhere via assertions, type guards, properties.

92

1.05x
Quality

90%

Does it follow best practices?

Impact

95%

1.05x

Average score across 5 eval scenarios

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

Quality

Content

77%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This is a solid, well-structured skill that provides clear actionable guidance for implementing Design by Contract across languages. Its strengths are the concrete worked example, clear presentation template, and thorough validation steps. Minor weaknesses include some verbosity in the process description and the inability to verify the referenced bundle file exists.

Suggestions

Tighten the process steps — steps 1 and 2 describe things Claude would naturally do; focus on the non-obvious guidance like prioritization rules and the 'crash early' philosophy.

Ensure the referenced 'references/language-mechanisms.md' file exists in the bundle to support the progressive disclosure claim.

DimensionReasoningScore

Conciseness

The skill is mostly efficient but includes some unnecessary elaboration. The process steps could be tighter — e.g., 'Read the relevant function(s), class, or module. Identify the inputs, outputs, and state mutations' is somewhat obvious for Claude. The example section is valuable but lengthy. Overall decent but not maximally lean.

2 / 3

Actionability

The skill provides a concrete, fully worked example with specific Python assertions, a clear output template with status icons, and explicit guidance on what to check for each contract type. The presentation format is copy-paste ready and the example demonstrates exactly how to analyze and respond.

3 / 3

Workflow Clarity

The 6-step process is clearly sequenced from understanding code through validation. Step 6 (Validate) includes explicit validation checkpoints: run existing tests, test with bad inputs, check for false positives, and crash-early guidance. The feedback loop of 'contract fires → determine if contract is wrong or there's a bug' is well articulated.

3 / 3

Progressive Disclosure

The skill references 'references/language-mechanisms.md' for language-specific enforcement options, which is good progressive disclosure. However, the bundle has no files provided, so we can't verify the reference exists. The main content is somewhat long with the full example inline — the example could potentially be in a separate file. External book/URL references are appropriate but the overall structure is only moderately well-layered.

2 / 3

Total

10

/

12

Passed

Description

100%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

This is an excellent skill description that clearly defines its purpose, provides comprehensive trigger terms covering both formal and casual user language, and explicitly addresses both 'what' and 'when'. The inclusion of a 'Do NOT skip' clarification for edge cases demonstrates thoughtful design. The description is specific enough to avoid conflicts with related skills like general code analysis or testing.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions: 'Analyze code to suggest and add Design by Contract specifications' with explicit enumeration of what those specifications include (preconditions, postconditions, invariants, semantic invariants). Also mentions concrete implementation mechanisms like assertions, type guards, and properties.

3 / 3

Completeness

Clearly answers both 'what' (analyze code to suggest and add DBC specifications) and 'when' (explicit 'Trigger on:' clause with extensive list of trigger terms). Also includes a clarifying 'Do NOT skip' clause that further refines when to use it, addressing a potential edge case.

3 / 3

Trigger Term Quality

Excellent coverage of natural trigger terms spanning formal terminology ('Design by Contract', 'DBC', 'preconditions', 'postconditions', 'class invariants', 'code contracts', 'formal specifications'), casual user phrasing ('make this function safer', 'define what this function guarantees', 'add assertions to document behavior', 'document assumptions'), and domain references (Bertrand Meyer, Eiffel contracts).

3 / 3

Distinctiveness Conflict Risk

Occupies a very clear niche around Design by Contract specifications. The trigger terms are highly specific to this domain and unlikely to conflict with general code analysis, testing, or documentation skills. The explicit scope note about non-Eiffel code further clarifies boundaries.

3 / 3

Total

12

/

12

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.

Validation11 / 11 Passed

Validation for skill structure

No warnings or errors.

Reviewed

Table of Contents