mcpField
B
basedpyright-type-checking

basedpyright-type-checking

github.com/laurigatesテスト・品質59326 回インストール1 日前に更新
リポジトリ

basedpyright-type-checking について

Pythonプロジェクト向けにBasedpyrightの設定と使い方を案内するスキルです。厳格度の選択、段階的な導入、エディター支援、Pyrightやmypyとの比較を扱います。

主な機能

  1. 01複数の厳格度で型チェックを設定
  2. 02型チェック範囲の段階的な拡大
  3. 03監視モードとJSON出力の実行
  4. 04Basedpyright、Pyright、mypyの比較

活用シーン

  1. 01Pythonプロジェクトの型チェック設定
  2. 02レガシーコードへの型付けの段階的導入
  3. 03CIでの型チェック実行

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/laurigates/claude-plugins --skill basedpyright-type-checking

インストール後、Claude Code で/basedpyright-type-checkingを入力して読み込まれたか確認します。

同梱ファイルREFERENCE.md

詳細

Basedpyright の型チェック

Basedpyright は Pyright のフォークで、追加機能とより厳格なデフォルト設定を備え、最大限の型安全性とパフォーマンスを実現するよう設計されています。

このスキルを使用する場面

次の場合にこのスキルを使用します…次の場合は別のツールを使用します…
Python の型チェックを設定するコードをフォーマットする(ruff format を使用)
厳格な型検証を設定するスタイル上の問題をリントする(ruff check を使用)
型チェッカーを比較する(basedpyright と mypy)未使用コードを検出する(vulture/deadcode を使用)
型情報に基づくエディターサポートのために LSP を設定するテストを実行する(pytest を使用)

インストール

uv を使用する(推奨)
# Install globally
uv tool install basedpyright

# Install as dev dependency
uv add --dev basedpyright

# Run with uv
uv run basedpyright
pipx を使用する
pipx install basedpyright

基本的な使い方

# Check entire project
basedpyright

# Check specific files/directories
basedpyright src/ tests/

# Watch mode for development
basedpyright --watch

# Output JSON for tooling integration
basedpyright --outputjson

# Verbose diagnostics
basedpyright --verbose

設定

最小限の厳格な設定(pyproject.toml)
[tool.basedpyright]
typeCheckingMode = "strict"
pythonVersion = "3.12"
include = ["src"]
exclude = ["**/__pycache__", "**/.venv"]

# Basedpyright-specific strict rules
reportUnusedCallResult = "error"
reportImplicitStringConcatenation = "error"
reportMissingSuperCall = "error"
reportUninitializedInstanceVariable = "error"

型チェックモード

モード説明用途
off型チェックなしレガシーコード、移行の開始時
basic基本的な型チェック段階的な型付けの導入
standard標準的な厳格さほとんどのプロジェクト(Pyright のデフォルト)
strict厳格な型チェック型安全なコードベース
all最大限の厳格さ高い保証が求められるシステム
段階的な型チェック
# Start with basic mode
[tool.basedpyright]
typeCheckingMode = "basic"
include = ["src/new_module"]  # Type check new code only

# Gradually expand
include = ["src/new_module", "src/api"]

# Eventually enable strict mode
typeCheckingMode = "strict"
include = ["src"]

型チェッカーの選び方

要素BasedpyrightPyrightmypy
速度最速最速遅め
厳格さ最も厳格なデフォルト設定設定可能設定可能
LSP サポート組み込み組み込みdmypy 経由
プラグインシステム限定的限定的豊富

より厳格なデフォルト設定と最速の速度で最大限の型安全性を求めるなら、Basedpyright を選びます。 Microsoft の公式サポートと VS Code Pylance との互換性を求めるなら、Pyright を選びます。 豊富なプラグインエコシステム(django-stubs、pydantic-mypy)を求めるなら、mypy を選びます。

インラインのエラー抑制

# Inline type ignore
result = unsafe_operation()  # type: ignore[reportUnknownVariableType]

# Function-level ignore
def legacy_function():  # basedpyright: ignore
    pass

エージェント向けの最適化

コンテキストコマンド
クイックチェックbasedpyright
JSON 出力basedpyright --outputjson
ウォッチモードbasedpyright --watch
CI チェックuv run basedpyright
詳細表示basedpyright --verbose

クイックリファレンス

フラグ説明
--watch開発用のウォッチモード
--outputjsonツール向けの JSON 出力
--verbose詳細な診断情報
--pythonversion X.YPython バージョンを上書き
--level <mode>型チェックモードを上書き

詳細な設定オプション、LSP 統合、移行ガイド、CI の設定、ベストプラクティスについては、REFERENCE.md を参照してください。

コメント