dignified-python

安装量: 237
排名: #3691

安装

npx skills add https://github.com/dagster-io/skills --skill dignified-python
Dignified Python Coding Standards Skill
Production-quality Python coding standards for writing clean, maintainable, modern Python code
(versions 3.10-3.13).
When to Use This Skill
Auto-invoke when users ask about:
"make this pythonic" / "is this good python"
"type hints" / "type annotations" / "typing"
"LBYL vs EAFP" / "exception handling"
"pathlib vs os.path" / "path operations"
"CLI patterns" / "click usage"
"code review" / "improve this code"
Any Python code quality or standards question
Note
This skill is general Python standards , not Dagster-specific. Use /dagster-best-practices for Dagster patterns. When to Use This Skill vs. Others User Need Use This Skill Alternative Skill "make this pythonic" ✅ Yes - Python standards "is this good python" ✅ Yes - code quality "type hints" ✅ Yes - typing guidance "LBYL vs EAFP" ✅ Yes - exception patterns "pathlib vs os.path" ✅ Yes - path handling "best practices for dagster" ❌ No /dagster-best-practices "implement X pipeline" ❌ No /dg for implementation "which integration to use" ❌ No /dagster-expert "CLI argument parsing" ✅ Yes - CLI patterns Core Knowledge (ALWAYS Loaded) @dignified-python-core.md Version Detection Identify the project's minimum Python version by checking (in order): pyproject.toml - Look for requires-python field (e.g., requires-python = ">=3.12" ) setup.py or setup.cfg - Look for python_requires .python-version file - Contains version like 3.12 or 3.12.0 Default to Python 3.12 if no version specifier found Once identified, load the appropriate version-specific file: Python 3.10: Load versions/python-3.10.md Python 3.11: Load versions/python-3.11.md Python 3.12: Load versions/python-3.12.md Python 3.13: Load versions/python-3.13.md Conditional Loading (Load Based on Task Patterns) Core files above cover 80%+ of Python code patterns. Only load these additional files when you detect specific patterns: Pattern detection examples: If task mentions "click" or "CLI" -> Load references/cli-patterns.md If task mentions "subprocess" -> Load subprocess patterns from core-standards Reference Documentation Structure The references/ directory contains detailed guidance organized by topic: Core References core-standards.md - Essential standards (always loaded) cli-patterns.md - Command-line interface patterns (click, argparse) Version-Specific References ( references/versions/ ) python-3.10.md - Features available in Python 3.10+ python-3.11.md - Features available in Python 3.11+ python-3.12.md - Features available in Python 3.12+ python-3.13.md - Features available in Python 3.13+ Advanced Topics ( references/advanced/ ) exception-handling.md - LBYL patterns, error boundaries interfaces.md - ABC and Protocol patterns typing-advanced.md - Advanced typing patterns api-design.md - API design principles When to Read Each Reference Document references/advanced/exception-handling.md Read when : Writing try/except blocks Wrapping third-party APIs that may raise Seeing or writing from e or from None Unsure if LBYL alternative exists references/advanced/interfaces.md Read when : Creating ABC or Protocol classes Writing @abstractmethod decorators Designing gateway layer interfaces Choosing between ABC and Protocol references/advanced/typing-advanced.md Read when : Using typing.cast() Creating Literal type aliases Narrowing types in conditional blocks references/module-design.md Read when : Creating new Python modules Adding module-level code (beyond simple constants) Using @cache decorator at module level Seeing Path() or computation at module level Considering inline imports references/api-design.md Read when : Adding default parameter values to functions Defining functions with 5 or more parameters Using ThreadPoolExecutor.submit() Reviewing function signatures references/checklists.md Read when : Final review before committing Python code Unsure if you've followed all rules Need a quick lookup of requirements How to Use This Skill Core knowledge is loaded automatically (LBYL, pathlib, basic imports, anti-patterns) Version detection happens once - identify the minimum Python version and load the appropriate version file Reference documents are loaded on-demand based on the triggers above Additional patterns may require extra loading (CLI patterns, subprocess) Each file is self-contained with complete guidance for its domain
返回排行榜