Python project structure — pyproject.toml, src layout, __init__.py, .gitignore, dependency groups, type hints, py.typed, test structure, entry points, ruff/mypy configuration
91
87%
Does it follow best practices?
Impact
99%
1.03xAverage score across 5 eval scenarios
Passed
No known issues
{
"instruction": "Use type hints on function signatures and configure ruff and mypy in pyproject.toml",
"relevant_when": "Agent creates Python source files or configures project tooling",
"context": "All function signatures should have type hints for parameters and return types. Ruff (linter/formatter) and mypy (type checker) should be configured in pyproject.toml under [tool.ruff] and [tool.mypy] sections. Mypy should use strict = true. Ruff replaces flake8, black, and isort.",
"sources": [
{
"type": "file",
"filename": "skills/python-project-structure/SKILL.md",
"tile": "tessl-labs/python-project-structure@0.2.0"
}
],
"checklist": [
{
"name": "type-hints-on-functions",
"rule": "Function definitions include type hints for parameters and return types",
"relevant_when": "Agent writes Python functions"
},
{
"name": "ruff-configured",
"rule": "pyproject.toml has a [tool.ruff] section with lint rules configured",
"relevant_when": "Agent creates a pyproject.toml for a Python project"
},
{
"name": "mypy-configured",
"rule": "pyproject.toml has a [tool.mypy] section with strict = true",
"relevant_when": "Agent creates a pyproject.toml for a Python project"
}
]
}evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
skills
python-project-structure
verifiers