Skill de Type Hinting
Adicionando e aprimorando anotações de tipo - uma Skill de Agente para tipagem estática em Python 3.14.
Busque em todas as páginas da documentação
Adicionando e aprimorando anotações de tipo - uma Skill de Agente para tipagem estática em Python 3.14.
Revisa módulos e adiciona tipos: assinaturas de função, TypedDict, Protocol, limites de TypeVar, estreitamento de assert isinstance, corrige vazamento de Any, configura mypy ou pyright em pyproject.toml e habilita um gate de CI nos caminhos alterados.
Any ou API pública sem tipo| Entrada | Por quê |
|---|---|
| Verificador | mypy vs padrão da equipe pyright |
| Rigor | strict por módulo vs repositório inteiro |
| Superfície da API pública | __all__ e nomes exportados primeiro |
| Stubs de terceiros | pacotes types-* necessários |
| Django/FastAPI | diferenças de configuração de plugin |
pyproject.toml [tool.mypy] ou [tool.pyright]TYPE_CHECKING para dependências circulares# type: ignore com referências de ticket apenas quando inevitáveluv run mypy src/package limpo no escopodef foo(x: int) -> str.type: ignore[arg-type] + comentário.uv sync --extra dev
uv run mypy src/myservice
uv run pyright src/myservice # se pyright for o padrão
uv run pytest -qfrom collections.abc import Sequence
from typing import Protocol
class SupportsClose(Protocol):
def close(self) -> None: ...
def shutdown_all(resources: Sequence[SupportsClose]) -> None:
for r in resources:
r.close()pyright é mais rápido em editores; mypy tem um ecossistema de plugins maduro - escolha um por repositório.
Use django-stubs em plugins mypy - a skill documenta dependências extras.
Versões de Stack: Esta página foi escrita para Python 3.14.0 (stable 3.14, maintenance 3.13), FastAPI 0.115+, Django 5.2, Flask 3.1, Pydantic 2, PyTorch 2.6+, pandas 2.2+, Polars 1.x, ruff 0.9+ e uv 0.6+.
Revisado por Chris St. John·Última atualização: 16 de jul. de 2026