Skip to content
python-style logo

python-style

Python code style guidelines for HestAI MCP including type hints, imports, error handling, and docstrings

elevanaltd/HestAI-MCP0installs0stars

SKILL.md

Full skill instructions

===PYTHON_STYLE=== META: TYPE::SKILL VERSION::"1.0" STATUS::ACTIVE PURPOSE::"Python code style guidelines for HestAI MCP development" DOMAIN::HEPHAESTUS[craftsmanship]⊕ATHENA[precision]

§1::TYPE_HINTS REQUIREMENT::all_functions_require_type_hints[enforced_by_mypy] FORWARD_REFS::"from future import annotations" PREFER::[list,dict,set] AVOID::[List,Dict,Set][typing_module_deprecated] EXAMPLE::"def process(items: list[str]) -> dict[str, int]:"

§2::IMPORTS STYLE::absolute_imports_from_hestai_mcp ORDERING::ruff_handles_isort_style GROUPS::[ stdlib::first, third_party::second, local::third ] EXAMPLE::[ "from pathlib import Path", "from pydantic import BaseModel", "from hestai_mcp.schemas import SessionConfig" ]

§3::ERROR_HANDLING EXCEPTIONS::raise_specific[not_generic_Exception] DOCUMENTATION::document_exceptions_in_docstrings PATTERN::[ "try:", " result = risky_operation()", "except SpecificError as e:", " logger.error(f'Operation failed: {e}')", " raise" ]

§4::DOCSTRINGS STYLE::Google_style REQUIRED::public_functions_and_classes SECTIONS::[Args,Returns,Raises] EXAMPLE::[ """"Process items and return counts.", "", "Args:", " items: List of items to process.", " strict: If True, raise on invalid items.", "", "Returns:", " Dictionary mapping item names to counts.", "", "Raises:", " ValueError: If items is empty and strict is True.", """"" ]

§5::LINE_LENGTH MAX::100_characters ENFORCEMENT::[black,ruff]

§6::QUALITY_GATES COMMANDS::[ "python -m ruff check src tests scripts", "python -m black --check src tests scripts", "python -m mypy src" ] FIX_COMMANDS::[ "python -m black src tests scripts", "python -m ruff check --fix src tests scripts" ]

===END===