スキル一覧に戻る
tenzir

following-conventions

by tenzir

Claude plugins for Tenzirians

2🍴 0📅 2026年1月23日
GitHubで見るManusで実行

SKILL.md


name: following-conventions description: Tenzir Python coding standards and tooling setup. Use when writing python code, running ruff/mypy/pytest, encountering pyproject.toml/uv.lock, or setting up a new Python project.

Python Coding Conventions

Coding standards for Python projects at Tenzir.

Required Tools

All projects use:

  • uv — Dependency management and virtual environments
  • Ruff — Linting and formatting
  • Mypy — Static type checking
  • pytest — Testing

Default Libraries

Prefer to use these libraries to ensure uniform codebase across Tenzir repositories:

  • pydantic - Defining and validating models
  • FastAPI - Declaring REST APIs
  • Click - Providing a CLI interface

Quality Gates

Run before committing or releasing:

uv run ruff check \
  && uv run ruff format --check \
  && uv run mypy \
  && uv run pytest \
  && uv build

The chain fails fast on the first error.

Python Version

Target Python 3.12+. Use modern syntax and stdlib features freely—no backwards-compatibility with older versions.

Coding Style

Formatting

  • Ruff controls whitespace: 4-space indentation, double-quoted strings
  • 88 character line limit (Ruff/Black default)
  • Let Ruff order imports automatically

Type Hints

  • All public surfaces must be fully typed
  • Strict Mypy settings reject untyped or partial definitions
  • Avoid Any; fix warnings rather than ignoring them

Package structure and imports

  • Keep __init__.py files empty. They are only used to mark a directory as importable but do not contain any content, let alone non-trivial code.
  • Always use absolute imports from the package top level: from this_package.foo import bar instead of from .foo import bar.
  • Never use wildcard imports

Naming Conventions

ElementConventionExample
Modulessnake_casemy_module.py
Functionssnake_casecalculate_total()
Variablessnake_caseuser_count
ClassesPascalCaseDataProcessor
ConstantsCONSTANT_CASEMAX_RETRIES

CLI Conventions

  • Use kebab-case for CLI flags: --output-file, not --output_file
  • Keep user messages concise

Documentation Style

  • Write in active voice; rewrite passive sentences before committing
  • Focus on user-facing impact, not implementation details
  • Use explicit imports; isolate configuration helpers in config.py

Unit Test Conventions

  • Use pytest as testing framework
  • Use CliRunner for end-to-end CLI testing
  • Favor tmp_path for filesystem tests
  • Use parametrization for scenario variation
  • Maintain ≥80% coverage when coverage is configured

Project Setup

Only read the specific file you need when setting up a new project or modifying that tool's configuration:

スコア

総合スコア

65/100

リポジトリの品質指標に基づく評価

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

レビュー

💬

レビュー機能は近日公開予定です