CtrlK
BlogDocsLog inGet started
Tessl Logo

python

Python development with ruff, mypy, pytest - TDD and type safety

46

Quality

48%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./skills/python/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

32%

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 reads more like a tag list than a proper skill description. While it names specific tools (ruff, mypy, pytest) and methodologies (TDD, type safety), it fails to describe concrete actions the skill performs and completely lacks a 'Use when...' clause to guide skill selection. It needs to be expanded into a proper sentence structure with explicit triggers.

Suggestions

Add a 'Use when...' clause with explicit triggers, e.g., 'Use when the user asks about Python testing, linting, type checking, or mentions ruff, mypy, or pytest.'

Expand the description with concrete actions, e.g., 'Configures and runs ruff for linting, mypy for static type checking, and pytest for test-driven development in Python projects.'

Include common natural language variations users might say, such as 'linting', 'type checking', 'unit tests', 'test-driven development', 'code quality', and 'Python testing'.

DimensionReasoningScore

Specificity

Names the domain (Python development) and lists specific tools (ruff, mypy, pytest) along with methodologies (TDD, type safety), but doesn't describe concrete actions like 'run tests', 'lint code', 'check types', or 'write test-first implementations'.

2 / 3

Completeness

Provides a partial 'what' (Python development with specific tools) but completely lacks a 'when' clause or any explicit trigger guidance. Per rubric guidelines, a missing 'Use when...' clause caps completeness at 2, and the 'what' is also weak enough to warrant a 1.

1 / 3

Trigger Term Quality

Includes relevant tool names (ruff, mypy, pytest) and concepts (TDD, type safety) that users might mention, but misses common variations like 'linting', 'type checking', 'unit tests', 'testing', 'Python tests', or 'code quality'.

2 / 3

Distinctiveness Conflict Risk

The specific tool names (ruff, mypy, pytest) help distinguish it from generic Python skills, but 'Python development' is broad enough to overlap with other Python-related skills. The lack of explicit scope boundaries increases conflict risk.

2 / 3

Total

7

/

12

Passed

Implementation

64%

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

This skill provides solid, actionable configuration and code examples for Python development tooling (ruff, mypy, pytest), making it easy to set up a project. However, it lacks an explicit TDD workflow despite the description emphasizing it, and some sections (anti-patterns, basic DI) explain concepts Claude already knows. The content would benefit from a clear development workflow sequence and better progressive disclosure for the longer configuration blocks.

Suggestions

Add an explicit TDD workflow section with a clear step sequence (e.g., 1. Write failing test → 2. Run pytest → 3. Implement minimal code → 4. Run ruff/mypy → 5. Refactor → 6. Commit) with validation checkpoints.

Remove or significantly trim the anti-patterns list and basic concepts (DI, project structure) that Claude already knows, focusing tokens on project-specific conventions.

Consider splitting GitHub Actions, pre-commit config, and patterns into referenced bundle files to improve progressive disclosure and reduce the main file's length.

DimensionReasoningScore

Conciseness

The skill is mostly efficient with good code examples, but includes some content Claude already knows well (anti-patterns list, basic dependency injection concept, basic project structure conventions). The GitHub Actions and pre-commit sections are quite lengthy and could be more condensed.

2 / 3

Actionability

Provides fully executable, copy-paste ready code examples throughout: pyproject.toml config, pytest tests with Arrange/Act/Assert, GitHub Actions workflow, pre-commit config, and concrete Python patterns with good/bad comparisons.

3 / 3

Workflow Clarity

The skill presents individual tools and configurations clearly but lacks an explicit workflow sequence tying them together (e.g., TDD cycle: write test → run pytest → implement → ruff check → mypy → commit). There's no validation/feedback loop described for the development process despite the description emphasizing TDD.

2 / 3

Progressive Disclosure

Content is organized into clear sections with horizontal rules, but everything is in a single monolithic file with no references to external files. The GitHub Actions, pre-commit config, and patterns sections could be split out, especially given the file's length (~170 lines).

2 / 3

Total

9

/

12

Passed

Validation

90%

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

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

10

/

11

Passed

Repository
alinaqi/claude-bootstrap
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.