pyfltr: 多言語プロジェクトの品質チェック基盤
多言語プロジェクトの品質チェックを一元管理し、コーディングエージェントから扱える形で提供する基盤。 Python / Rust / .NET / TypeScript・JavaScript / ドキュメントなどの formatter・linter・testerを単一コマンドで実行する。 プロジェクト固有のカスタムチェックも同一基盤へ統合できる。 (要Python 3.11以上)
特徴
- プロジェクト固有のカスタムチェック(独自スクリプト等)を組み込みツールと同一の実行基盤へ統合できる
- コーディングエージェント向けJSON Lines出力(
--output-format=jsonl)とMCPサーバー(pyfltr mcp)を提供する - formatter・linter・testerをまとめて呼び出し、複数ツールの並列実行で総実行時間を短縮する
- 設定を
pyproject.tomlに集約する - 除外指定(exclude)の書式差をツール間で吸収する
- 横断検索(
grep)と置換(replace、世代管理付き--undo対応)を提供する - シェル補完スクリプトを生成する
インストール
uvx pyfltrで実行する。事前インストールやdev依存への追加なしで最新版を取得して実行する。
uvx pyfltr --help
uvでバージョン管理する場合はuv add --dev pyfltrまたはuv add --dev "pyfltr[python]"で追加し、
uv run pyfltr ...で呼び出す。
pip環境ではpip install pyfltrを使う。
実行するツールはpyproject.tomlの[tool.pyfltr]セクションで指定する。
段階的な導入手順ははじめにを参照。
使い方
チェック実行(ci / run / fast)・横断検索と置換(grep / replace)など。
実行履歴参照(list-runs / show-run)・設定操作(config)・MCPサーバー(mcp)も利用できる。
詳細はCLIコマンドを参照。
コーディングエージェント向け
pyfltr runをエージェントから直接呼び出すか、pyfltr mcpでMCPサーバーとして登録する。
AI_AGENT / CODEX_CI / CLAUDECODE / CURSOR_AGENTのいずれかが設定された環境では、
runの出力形式がJSON Lines、静音モードが既定値として有効になる。
# 直接呼び出し(JSONL出力)
uvx pyfltr run
# MCPサーバーとして登録(Claude Code例)
claude mcp add pyfltr -- uvx pyfltr mcp
詳細はCLIコマンドの「コーディングエージェント連携」を参照。
プロジェクト固有のチェックを追加する方法は プロジェクト固有チェックの追加を参照。
ドキュメント
- https://ak110.github.io/pyfltr/: はじめに・対応ツール一覧・設定リファレンス
- https://ak110.github.io/pyfltr/llms.txt: LLM向け構造化インデックス
- docs/development/development.md: 開発者向け情報
Metadata
Release files for pyfltr 3.19.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyfltr-3.19.6.tar.gz | 914.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyfltr-3.19.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.3 MB
Release files / pyfltr-3.19.6.tar.gz
| Download URL | pyfltr-3.19.6.tar.gz |
|---|---|
| Size | 914.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6cebebd9d8a5e8f69a83a284059accc7bda628559982ca8da99a3b50a2b61699
|
|
BLAKE2b-256 checksum How to use checksums |
1b771bb9febc299ca6bbb556f9b3bcd79cd5ec8ffb39124134f22a4ff7bb8338
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.21 {"installer":{"name":"uv","version":"0.12.21","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}
|
Release files / pyfltr-3.19.6-py3-none-any.whl
| Download URL | pyfltr-3.19.6-py3-none-any.whl |
|---|---|
| Size | 394.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b5765151dd6ff2851a9da23a948dcf131aa9d3a89b2c9d306a0288b6f858be8a
|
|
BLAKE2b-256 checksum How to use checksums |
87c3d362a0f0133915c17547a29c74d1db5069519d1fabcc1a5b6a06fe50e887
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.21 {"installer":{"name":"uv","version":"0.12.21","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}
|