Skip to main content

Python Formatters, Linters, and Testers Runner.

Project description

pyfltr: Python Formatters, Linters, and Testers Runner

CI PyPI version

Python / Rust / .NET / TypeScript・JavaScript / ドキュメントなど多言語プロジェクトの formatter・linter・testerを単一コマンドで並列実行するCLIツール。 (要Python 3.11以上)

特徴

  • formatter・linter・testerをまとめて呼び出す
  • 複数ツールの並列実行による総実行時間の短縮
  • コーディングエージェント向けJSON Lines出力(--output-format=jsonl
  • 設定の集約: pyproject.tomlに寄せた統一設定
  • 除外指定(exclude)の書式差をツール間で吸収
  • MCPサーバー(pyfltr mcp
  • シェル補完スクリプト生成

インストール

pip install pyfltr
# uv を使う場合
uv add --dev pyfltr

対応するPython系ツールはruff-format / ruff-check / mypy / pylint / pyright / ty / pytest / uv-sortの8種。 このうちtyのみpreset非収録のため、必要に応じてty = trueを個別指定する。 Python系ツールを利用する場合はextrasで追加依存を導入する。

pip install 'pyfltr[python]'

Python / JavaScript / Rust / .NETの各言語カテゴリに属するツールはすべて既定で無効(opt-in)である。 preset = "latest" + 言語カテゴリキー(python / javascript / rust / dotnet)のtrue指定だけで、 当該言語の推奨ツール一式が有効化される。 archive保持期間やキャッシュ設定など複数プロジェクトで共通にしたい設定は、 グローバル設定ファイル(Linux: ~/.config/pyfltr/config.toml)に集約できる。 詳細は設定項目および グローバル設定を参照。

使い方

uvx pyfltr --help

uvxでの実行も可能。

主なサブコマンド

  • pyfltr ci / run / fast — チェック実行(CI / ローカル全体 / 軽量)
  • pyfltr run-for-agent — エージェント向けJSONL出力(pyfltr run --output-format=jsonlのエイリアス)
  • pyfltr list-runs / show-run — 実行履歴の参照
  • pyfltr config — 設定ファイルの操作(get / set / delete / list
  • pyfltr command-info — ツール起動方式の確認
  • pyfltr mcp — MCPサーバー

詳細はCLIコマンドを参照。

コーディングエージェント向け運用

pyfltr run-for-agentをエージェントから直接呼び出すか、pyfltr mcpでMCPサーバーとして登録する。

# 直接呼び出し(JSONL出力)
uvx pyfltr run-for-agent

# MCPサーバーとして登録(Claude Code例)
claude mcp add pyfltr -- uvx pyfltr mcp

詳細はCLIコマンドの「コーディングエージェント連携」を参照。

ドキュメント

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyfltr-3.7.0.tar.gz (427.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyfltr-3.7.0-py3-none-any.whl (168.8 kB view details)

Uploaded Python 3

File details

Details for the file pyfltr-3.7.0.tar.gz.

File metadata

  • Download URL: pyfltr-3.7.0.tar.gz
  • Upload date:
  • Size: 427.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyfltr-3.7.0.tar.gz
Algorithm Hash digest
SHA256 0e36bb7ace3de3889602d0b2f0b4d5c2cdecd1abb9ff076422cedec44f2f62da
MD5 2c15668acca77821bc07753c4aae2f0b
BLAKE2b-256 a4d9ec5219205852b6e06ac612b511c06235d29f72dfd4fbe1e20e135a1c651b

See more details on using hashes here.

File details

Details for the file pyfltr-3.7.0-py3-none-any.whl.

File metadata

  • Download URL: pyfltr-3.7.0-py3-none-any.whl
  • Upload date:
  • Size: 168.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyfltr-3.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b0fc09a7385ee5429344ea7d241e5cc9299edb69e22876401fe8df950735b0f3
MD5 028c885af9c5e5fc98e7de92c436b691
BLAKE2b-256 2b30c66067b27307447246effd87e4442f2af6a00a7d65ab013135924ca8cb10

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page