CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl-labs/python-project-structure

Python project structure — pyproject.toml, src layout, __init__.py, .gitignore, dependency groups, type hints, py.typed, test structure, entry points, ruff/mypy configuration

91

1.03x
Quality

87%

Does it follow best practices?

Impact

99%

1.03x

Average score across 5 eval scenarios

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

type-hints-and-tooling.jsonverifiers/

{
  "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"
    }
  ]
}

tile.json