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

uvxでの実行も可能。

uvx pyfltr --help

Python系ツール(ruff / mypy / pylint / pyright / ty / pytest / uv-sort)を利用する場合は、extrasで追加依存を導入する。

pip install 'pyfltr[python]'

Python / JavaScript / Rust / .NETの各言語カテゴリに属するツールはすべて既定で無効(opt-in)である。 preset = "latest" + 言語カテゴリキー(python / javascript / rust / dotnet)のtrue指定だけで、 当該言語の推奨ツール一式が有効化される。 プリセット非収録のツール(tyなど)を追加したい場合のみ個別に{command} = trueを指定する。 詳細は設定項目を参照。

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

コーディングエージェントから利用する経路は2種類ある。

直接呼び出し(シェルコマンドが実行できる環境):

# JSONL形式で全チェックを実行し、結果をエージェントが読み込む
uvx pyfltr run-for-agent

# 直前runで失敗したツール・ファイルだけ再実行
uvx pyfltr run-for-agent --only-failed

run-for-agentpyfltr run --output-format=jsonlのエイリアス。 JSONL出力の末尾summary行で全体像を把握でき、必要に応じてdiagnostic行を参照することでトークン消費を抑えられる。

MCP経由(コーディングエージェントのMCPクライアント経由):

# コーディングエージェントへの登録例(コマンド形式)
claude mcp add pyfltr -- uvx pyfltr mcp

または設定ファイルに直接記載する方法:

{
  "mcpServers": {
    "pyfltr": {
      "command": "uvx",
      "args": ["pyfltr", "mcp"]
    }
  }
}

MCPツールrun_for_agentpathscommandsfail_fastを指定して実行できる。

ドキュメント

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.4.5.tar.gz (390.3 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.4.5-py3-none-any.whl (144.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyfltr-3.4.5.tar.gz
  • Upload date:
  • Size: 390.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.4.5.tar.gz
Algorithm Hash digest
SHA256 8f895be80a7b956592f7b2103774657077f75612fe4d221ec7eba25215a5d00d
MD5 23b3bea2f823525b6b82ecf6772b7825
BLAKE2b-256 6e87528aebb85bfe6cfbf062c186631a718d8d2413724e78b3282a09313a2077

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyfltr-3.4.5-py3-none-any.whl
  • Upload date:
  • Size: 144.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.4.5-py3-none-any.whl
Algorithm Hash digest
SHA256 73af3d45a984331f16d1815354db0d9d3d0b8b2da1b97a654e656ad75e776c2f
MD5 4d176cb5b45d2cc0f9bf8ee3d0a8ff30
BLAKE2b-256 4f8b5eaf4ce84ce0079f3c049cf95aa6d33fddead6d0af7d5ad12038d9f48e38

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