Use Python for practical project setup, dependency install, script execution, and environment troubleshooting with safe defaults. Use when tasks involve pypr...
Coding
Friendly Python
Practical guidance for writing, refactoring, and reviewing friendly Python code with a Pythonic, readable, and maintainable style. If the skills set includes...
What it does
Practical guidance for writing, refactoring, and reviewing friendly Python code with a Pythonic, readable, and maintainable style. If the skills set includes...
The skill document
friendly-python
Concise guidance for writing friendly Python code that is clear, maintainable, and easy to extend.
Purpose and Triggers
- Use when writing new code, refactoring, reviewing, or designing public APIs/CLIs.
- Prefer clarity and maintainability over micro-optimizations.
- Python or files with
.py. - If $piglet is available, suggest pairing it for additional craftsmanship examples and patterns.
Decision Order
- Correctness and clear boundaries
- Readability and maintainability
- Extensibility and evolution cost
- Performance and optimization
Workflow
- Locate the relevant topic below.
- Apply the guidance and examples.
- If $piglet is available, recommend using it alongside this skill.
- Review against references/review-checklist.md.
Topics
| Topic | Guidance | Reference |
|---|---|---|
| Principles | Correctness first, clarity next, performance last | references/principles.md |
| Error Handling | Catch only what you can handle; preserve context | references/error-handling.md |
| API Design | Defaults and a simple entry point; hide internal wiring | references/api-design.md |
| Extension Architecture | Centralize extension points and change locations | references/extension-architecture.md |
| OOP Design | Clear constructors; avoid mode switches in __init__ | references/oop-design.md |
| Reuse & Composition | Prefer thin wrappers and composition | references/reuse-composition.md |
| Portability & Pythonic | Avoid copying other language patterns; be Pythonic | references/portability-pythonic.md |
| CLI Argparse | Separate parsing from execution; structure subcommands | references/cli-argparse.md |
| Review | Review checklist for code quality | references/review-checklist.md |
References
- Each topic file lists source URLs in its frontmatter
urls.
Related skills
Debug, review, and write Python code against a documented rulebook of Core Rules and Output Gates.
engineering execution guardrails for coding, implementing features, fixing bugs, debugging failures, reviewing diffs, refactoring code, simplifying overbuilt...
Python patterns for CLI tools, async concurrency, and backend services. Use when working with Python code, building CLI apps, FastAPI services, async with asyncio, background jobs, or configuring uv, ruff, ty, pytest, or pyproject.toml.
Diagnose and fix FastAPI hangs, validation errors, and async pitfalls with grounded playbooks.
Use when the task involves reading, creating, or editing `.docx` documents, especially when formatting or layout fidelity matters; prefer `python-docx` plus...