Python Formatters, Linters, and Testers Runner.
Project description
pyfltr: Python Formatters, Linters, and Testers Runner
Python / Rust / .NET / TypeScript・JavaScript / ドキュメントなど多言語プロジェクトの formatter・linter・testerを単一コマンドで並列実行するCLIツール。 (要Python 3.11以上)
特徴
- 多言語対応のformatter・linter・testerをまとめて呼び出す単一コマンド
- 複数ツールの並列実行による総実行時間の短縮
- 設定の集約:
pyproject.tomlに寄せた統一設定 - 除外指定(exclude)の書式差をツール間で吸収
- 自動修正系ツール(ruff format・prettierなど)を修正と失敗扱いの両立で実行
- LLMエージェント向けJSON Lines出力(
pyfltr run-for-agent・PYFLTR_OUTPUT_FORMAT環境変数・--output-format=jsonl)に対応 - MCPサーバーを本体同梱(
pyfltr mcp)。Claude Desktopなどのエージェントから直接lint実行・アーカイブ参照が行える - シェル補完スクリプト生成(
pyfltr generate-shell-completion)に対応
インストール
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を指定する。
詳細は設定項目を参照。
ドキュメント
- https://ak110.github.io/pyfltr/ — 概要・対応ツール一覧・設定リファレンス
- https://ak110.github.io/pyfltr/llms.txt — LLM向け構造化インデックス
- docs/development/development.md — 開発者向け情報
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pyfltr-3.1.0.tar.gz.
File metadata
- Download URL: pyfltr-3.1.0.tar.gz
- Upload date:
- Size: 335.4 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6da28f1527a229d66e852f6960203c98d9e82f4a90757b7a7cd25ecadce06729
|
|
| MD5 |
6b1f5f7979e63bac578f4343198b55f4
|
|
| BLAKE2b-256 |
a2d0ec0c7492a565211649295ae009c54237f246aeaac06fcb960816410eb943
|
File details
Details for the file pyfltr-3.1.0-py3-none-any.whl.
File metadata
- Download URL: pyfltr-3.1.0-py3-none-any.whl
- Upload date:
- Size: 120.9 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e530f918700a97137e0c82c9a52be783b49a2739b4874a895eb75c1ba633a866
|
|
| MD5 |
8df0f71a07ca4fb22cb8a7eaf3ecd5d6
|
|
| BLAKE2b-256 |
c04a1aadad566a30a798527896bc9d0c6f4cfc45122041089012084897162e00
|