mcpField
P
PAIML MCP Agent Toolkit

PAIML MCP Agent Toolkit

ローカル
paiml.github.io開発ツール1672 週間前に更新

PAIML MCP Agent Toolkit について

PMAT(PAIML MCP Agent Toolkit)は、MCP サーバーを主な形態とし、CLI も備えるコード品質分析と AI 向けコンテキスト生成のツールです。コーディングエージェントの動作を決定的にしたい開発者やチーム向けです。stdio と HTTP の両方のトランスポートに対応します。

主な機能

  1. 01AI が読めるコードコンテキストの生成
  2. 02A+ から F までの技術的負債評価
  3. 03テストスイートの品質を検証する変異テスト
  4. 04リポジトリの健全性スコアリング
  5. 05stdio と HTTP の MCP トランスポート
  6. 06エージェント向けのコミット前検証コマンド

活用シーン

  1. 01コーディングエージェント向けにプロジェクトコンテキストを生成し複雑度を分析
  2. 02コミット前に CI と同じチェックを実行
  3. 03複数のエージェントクライアントで 1 つの HTTP MCP サーバーを共有

MCP 対応

本プロジェクトは MCP サーバーとして、stdio または HTTP 経由で 20 個のツールを Claude Code、Claude Desktop、Cline などの MCP クライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

PMAT

PMAT

あらゆるコードベースに対応した、設定不要のAIコンテキスト生成


目次

PMAT とは?

PMAT(Pragmatic Multi-language Agent Toolkit)は、コード品質の分析とAIに対応したコンテキストの生成に必要なすべてを提供します。

  • コンテキスト生成 - Claude、GPT、その他のLLM向けの詳細な分析
  • 技術的負債の評価 - 6つの独立した指標によるA+からFまでのスコアリング
  • ミューテーションテスト - テストスイートの品質検証(85%超のキル率)
  • リポジトリのスコアリング - 定量的な健全性評価(0~289のスケール、11カテゴリ)
  • Git履歴RAG - RRF統合によるコミット履歴全体のセマンティック検索
  • セマンティック検索 - 自然言語によるコード検索
  • コンプライアンスガバナンス - コード品質、ベストプラクティス、再現性に関する157項目のチェック
  • 契約による設計 - チェックポイント検証とリカバリープロトコルを備えた、トヨタウェイの契約プロファイル
  • 自律的カイゼン - 自動修正とコミットに対応した、トヨタウェイの継続的改善
  • MCP 統合 - Claude Code、Cline、AI エージェント向けの20個のツールを、stdioとHTTPで提供(同一の機能)。複数のエージェントが並行動作する(ultracode)ワークフローでエンドツーエンドの検証済みです。詳しくはMCP サーバーを参照してください
  • 品質ゲート - コミット前フック、CI/CD統合、.pmat-gates.toml設定
  • 20以上の言語 - Rust、TypeScript、Python、Go、Java、C/C++、Lua、Leanなど

PAIML Stackの一部であり、トヨタウェイの品質原則(自働化、現地現物、カイゼン)に従っています。

注釈付きコード検索
pmat query の注釈付き出力

pmat query "cache invalidation" --churn --duplicates --entropy --faults

各結果には、TDG評価、Big-O計算量、Gitの変更頻度、コードクローン、パターンの多様性、障害の注釈、呼び出しグラフ、構文ハイライト付きソースが含まれます。

インストール

# Install from crates.io
cargo install pmat

macOSユーザーへの注意: rustup経由でのインストールに問題が発生した場合は、cargo install pmatを実行する前に、Homebrewを使ってRustをインストールまたは更新することをおすすめします:brew install rust。

# Or from source (latest)
git clone https://github.com/paiml/paiml-mcp-agent-toolkit
cd paiml-mcp-agent-toolkit && cargo install --path .

MCP サーバー

PMAT は CLI が主ではなく、MCP サーバーが主で、CLI はその次です。1 つのバイナリで 3 つのインターフェースを提供し、すべて同じツールレジストリを共有します。機能セットではなく、インターフェースを選びます。

インターフェース起動方法使用する場面
CLIpmat analyze complexity --path .人間またはシェルスクリプトが出力を読み取る場合。
stdio 経由の MCPpmat --mode mcpMCP クライアントが pmat 自体をサブプロセスとして起動する場合(Claude Code、Claude Desktop、Cline)。クライアント 1 つ、プロセス 1 つ、ポートなし、トークンなし。
HTTP 経由の MCPpmat serve --transport http --port 8765複数のクライアント、または別のマシンから接続する、長時間稼働するサーバーが 1 つ必要な場合。ストリーム可能な HTTP、ベアラー認証。

3.32.0 の新機能: mcp-http が デフォルトの機能セットに移動しました。cargo install pmat で HTTP トランスポートが使えるようになり、従来の --features mcp-http の指定は不要になりました。トランスポートをコンパイルしてもソケットは開きません。ソケットをバインドするのは pmat serve のみです。

クイックスタート — stdio

Claude Code は pmat をサブプロセスとして起動します。稼働し続けるものも、認証するものもありません。

cargo install pmat
claude mcp add --scope user pmat -- pmat --mode mcp
claude mcp list
# pmat: pmat --mode mcp - ✔ Connected

Claude Desktop では、同じコマンドを JSON 形式で独自の claude_desktop_config.json に指定します。

{
  "mcpServers": {
    "pmat": { "command": "pmat", "args": ["--mode", "mcp"] }
  }
}

フラグを渡せないクライアントの場合は、MCP_VERSION=1 pmat で同じサーバーを起動します。 クライアントを使わずに stdio インターフェースをスモークテストするには、次のようにします。

printf '%s\n' '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' \
  | pmat --mode mcp 2>/dev/null | jq -r '.result.tools | length'
# 19
クイックスタート — HTTP

サーバー 1 つで、多数のクライアントに対応します。以下のブロック全体をコピーして貼り付けてください。

cargo install pmat

export PMAT_MCP_HTTP_TOKEN='pmat-mcp-demo-token-0123456789'   # >= 16 chars; use your own
pmat serve --transport http --port 8765 &
#   pmat MCP (streamable HTTP) listening on http://127.0.0.1:8765/
#     auth: Bearer, from PMAT_MCP_HTTP_TOKEN; unauthenticated requests get 401
#     tools: 20
sleep 2

claude mcp add --scope user --transport http pmat http://127.0.0.1:8765/ \
  --header "Authorization: Bearer $PMAT_MCP_HTTP_TOKEN"
claude mcp list
# pmat: http://127.0.0.1:8765/ (HTTP) - ✔ Connected

--host を指定しない場合、サーバーは 127.0.0.1 にバインドします。別のマシンからアクセスするには、外部からルーティング可能なアドレスにバインドし、PMAT_MCP_HTTP_TOKEN を実際のシークレットとして扱ってください。ツールインターフェースは、サーバープロセスが読み取れる任意のパスを読み取り、解析できます。

1 時間ずつ費やすことになる 4 つの落とし穴

1. MCP はルートパス / で提供され、/mcp ではありません。 パスプレフィックスはありません。

for p in / /mcp /health; do
  printf '%-7s %s\n' "$p" "$(curl -s -o /dev/null -w '%{http_code}' -X POST "http://127.0.0.1:8765$p" \
    -H "Authorization: Bearer $PMAT_MCP_HTTP_TOKEN" \
    -H "Content-Type: application/json" \
    -H "Accept: application/json, text/event-stream" \
    -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}')"
done
# /       200
# /mcp    404
# /health 404

2. PMAT_MCP_HTTP_TOKEN は必須で、16 文字以上でなければなりません。 それより短い場合、サーバーは未認証での提供に切り替えるのではなく、起動を拒否します。基盤となる pmcp トランスポートは、認証プロバイダーが設定されていない場合、すべてのリクエストに応答するため、「トークンなし」は「サーバーなし」を意味する必要があります。トークンがないリクエストや、誤ったトークンを使ったリクエストには 401 が返されます。

PMAT_MCP_HTTP_TOKEN=too-short-123 pmat serve --transport http --port 8765
# Error: PMAT_MCP_HTTP_TOKEN must be at least 16 characters; got 13

3. 独自に作成したクライアントは Accept: application/json, text/event-stream を送信する必要があります。 ストリーム可能なトランスポートは、このヘッダーがないリクエストを拒否します。また、curl -f はメッセージを表示せず空文字列を返すため、デバッグ中は通常の curl -s で確認してください。

curl -s -w '\n-> HTTP %{http_code}\n' -X POST http://127.0.0.1:8765/ \
  -H "Authorization: Bearer $PMAT_MCP_HTTP_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'
# {"jsonrpc":"2.0","error":{"code":-32700,"message":"Accept header must include application/json or text/event-stream"},"id":null}
# -> HTTP 406

4. /health エンドポイントはありません。 GET /health は 404 を返すため、curl -f .../health によるレディネス確認ループは成功せず、その理由もわかりません。代わりに、実際の tools/list 呼び出しで確認してください。

curl -s -X POST http://127.0.0.1:8765/ \
  -H "Authorization: Bearer $PMAT_MCP_HTTP_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' \
  | jq -r '.result.tools | length'
# 19

MCP セッション ID は不要です。initialize は Mcp-Session-Id ヘッダーを返さず、先に initialize を呼び出したかどうかにかかわらず、tools/call を直接実行できます。

HTTP は縮小されたインターフェースではありません

どちらのトランスポートも同じレジストリから構築されているため、HTTP でも一部ではなく 20 個すべてのツールを提供します。tools/list のペイロードはバイト単位で同一です。

printf '%s\n%s\n' \
  '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"p","version":"1"}}}' \
  '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}' \
  | pmat --mode mcp 2>/dev/null \
  | jq -Sc 'select(.id==2)|.result.tools|sort_by(.name)' > /tmp/pmat-stdio-tools.json

curl -s -X POST http://127.0.0.1:8765/ \
  -H "Authorization: Bearer $PMAT_MCP_HTTP_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' \
  | jq -Sc '.result.tools|sort_by(.name)' > /tmp/pmat-http-tools.json

cmp /tmp/pmat-stdio-tools.json /tmp/pmat-http-tools.json && echo "identical"
# identical

19 個のツールは次のとおりです:analyze_complexity、analyze_satd、analyze_dead_code、analyze_dag、analyze_deep_context、analyze_big_o、analyze_reachability、analyze_hardcoded_paths、analyze_vacuous_tests、quality_gate、quality_proxy、generate_context、scaffold_project、git_operation、pmat_query_code、pmat_get_function、pmat_find_similar、pmat_index_stats、pdmt_deterministic_todos。名前と説明は、サーバー自身の登録情報から再生成される、機械検証済みのマニフェスト mcp.json としてリポジトリのルートにコミットされています。そのため、2 つのトランスポートが実際に提供する内容と食い違うことはありません。

実装されていないトランスポート

--transport には web-socket、http-sse、both、all も指定できます。これらはどれも実装されておらず、各値を指定すると、その旨を示すメッセージとともに 2 で終了します。提供に対応しているのは http のみです。

pmat serve --transport web-socket --port 8765
# error: pmat serve --transport websocket is not yet implemented

--transport に stdio を指定することはできません。指定すると clap エラーになります。stdio を使うには pmat --mode mcp を実行します。

使用方法

# Generate AI-ready context
pmat context --output context.md --format llm-optimized

# Analyze code complexity
pmat analyze complexity

# Grade technical debt (A+ through F)
pmat analyze tdg

# Score repository health
pmat repo-score .

# Pre-flight verify before committing (CI-faithful: fmt + complexity + satd + clippy + tests)
pmat verify --format json

# Run mutation testing
pmat mutate --target src/

# Start the MCP server over stdio, for Claude Code, Cline, etc. (see "MCP Server" above)
pmat --mode mcp
自律型エージェントの事前チェック(pmat verify)

pmat verify は、CI で適用されるものとまったく同じゲート一式(format、complexity、satd、clippy、tests)をフェイルファストで実行し、機械可読形式で出力するため、エージェントはコミット前に 「ここで成功すれば、CI でも成功する」 と確認できます。標準的なループは、edit → pmat verify --format json → fix on red → commit on green です。docs/agent-instructions/autonomous-verify-loop.md を参照してください。

Ultracode による検証

PMAT のリリースは、Claude Code のマルチエージェント動的ワークフローオーケストレーションである ultracode を使って、テストハーネスと対象ワークロードの両方としてドッグフーディングされています。

  • CLI 全体のスイープ:リリースごとに、並列エージェント群が 111 個のコマンドを実行
  • MCP のインターフェース:stdio JSON-RPC 経由ですべての 20 個のツールを検証。スキーマから導出した引数を使ったツールごとの呼び出し、1 つの作業ツリーに対する 8 方向の同時サーバーセッション(ロックエラーゼロ、スクラッチファイルの残留ゼロ)、バイトレベルのフレーミングチェック(stdout は JSON-RPC のみ)を実施。さらに、HTTP の tools/list ペイロードが stdio のものとバイト単位で同一であることを確認するトランスポート間の同等性チェックも実施
  • 決定性:TDG ベースラインとペナルティの帰属情報は実行間でバイト単位で同一にシリアライズされるため、独立したエージェントが順序のノイズによって食い違うことなく収束
  • 並行安全なキャッシュ:PID ごとに一意なスクラッチファイルを使い、原子的な名前変更による配置と古い孤立ファイルの一掃を実施。メトリクスの記録にはアドバイザリロックを使用

各スイープで得られた調査結果は、修正に反映する前に懐疑的なエージェントによって敵対的に再検証されます。pmat book のリリース事例研究を参照してください。

機能

コンテキスト生成

AI アシスタント向けに包括的なコンテキストを生成します。

pmat context                           # Basic analysis
pmat context --format llm-optimized    # AI-optimized output
pmat context --include-large-files     # Include files >500KB normally skipped
技術的負債の評価(TDG)

正確な品質評価のための、相互に直交する 6 つのメトリクスです。

pmat analyze tdg                       # Project-wide grade
pmat analyze tdg --include-components  # Per-component breakdown
pmat tdg baseline create               # Create quality baseline
pmat tdg check-regression              # Detect quality degradation

評価スケール:

  • A+/A:非常に高品質で、負債は最小限です
  • B+/B:品質が良好で、負債は管理可能です
  • C+/C:改善が必要です
  • D/F:技術的負債が深刻です
ミューテーションテスト

テストスイートの有効性を検証します。

pmat mutate --target src/lib.rs        # Single file
pmat mutate --target src/ --threshold 85  # Quality gate
pmat mutate --failures-only            # CI optimization

対応言語: Rust、Python、TypeScript、JavaScript、Go、C/C++、C#、Lua、Lean、Java、Kotlin、Ruby、Swift、PHP、Bash、SQL、Scala、YAML、Markdown、および MLOps モデル形式(GGUF、SafeTensors、APR)

リポジトリの健全性スコアリング

エビデンスに基づく品質メトリクス(0〜289 のスケール、11 カテゴリ):

pmat rust-project-score                # Fast mode (~3 min)
pmat rust-project-score --full         # Comprehensive (~10-15 min)
pmat repo-score . --deep               # Full git history
ワークフロー用プロンプト

EXTREME TDD を徹底する、事前設定済みの AI プロンプトです。

pmat prompt --list                     # Available prompts
pmat prompt code-coverage              # 85%+ coverage enforcement
pmat prompt debug                      # Five Whys analysis
pmat prompt quality-enforcement        # All quality gates
Git 履歴の RAG

TF-IDF セマンティック埋め込みを使って、意図から Git 履歴を検索します。

# Fuse git history into code search
pmat query "fix memory leak" -G

# Search with churn, clones, entropy, faults
pmat query "error handling" --churn --duplicates --entropy --faults
# Run the example
cargo run --example git_history_demo
Git フック

品質を自動的に徹底します。

pmat hooks install                     # Install pre-commit hooks
pmat hooks install --tdg-enforcement   # With TDG quality gates
pmat hooks status                      # Check hook status
コンプライアンスガバナンス(pmat comply)

コード品質、ベストプラクティス、ガバナンスに関する 162 個の自動チェックです。

pmat comply check                      # Run all compliance checks
pmat comply check --strict             # Exit non-zero on failure
pmat comply check --format json        # Machine-readable output
pmat comply migrate                    # Update to latest version

主なチェック項目:

  • CB-200:TDG グレードゲート — 最低グレード(デフォルトは A)を下回る定義がある場合にブロックします。pmat query が作成したインデックスを読み取ります。インデックスの作成や書き換えは行わず、.pmat/context.db が存在しない場合は Skip/「Not measured」と報告します
  • CB-304:デッドコード率の適用
  • CB-400:bashrs による Shell/Makefile の品質チェック
  • CB-500:Rust のベストプラクティス(30 以上のパターン)
  • CB-600:Lua のベストプラクティス
  • CB-900:Markdown リンクの検証
  • CB-1000:MLOps モデルの品質

Provable-Contracts の適用(CB-1200..1210):

  • CB-1208:バインディングの存在確認 — binding.yaml に記載された関数が src/ に存在することを検証し、ゴーストバインディングを検出します(L0〜L3 の適用レベル)
  • CB-1209:コントラクトトレイトの適用 — tests/contract_traits.rs で、コンパイラー検証済みのトレイト実装(13 個のカーネルトレイト)を確認します
  • CB-1210:事前条件の品質 — 大量生成された定型コードや、欠落している事後条件にフラグを立てます

.pmat.yaml で設定します。

comply:
  thresholds:
    min_tdg_grade: "A"          # CB-200 floor; `.pmat-gates.toml` [tdg] min_grade overrides this
    pv_lint_is_error: true        # CB-1201: FAIL on pv lint failure
    min_binding_existence: 95     # CB-1208: 95% binding verification
    require_all_traits: true      # CB-1209: 13/13 traits required
    min_kani_coverage: 20         # CB-1206: minimum Kani proof %
インフラストラクチャスコア(pmat infra-score)

CI/CD 品質のスコアリング(0~100 点、実証可能な契約に対するボーナス 10 点):

pmat infra-score                       # Text output
pmat infra-score --format json         # Machine-readable
pmat infra-score -v --failures-only    # Show only failing checks

カテゴリ: ワークフローアーキテクチャ(25 点)、ビルドの信頼性(25 点)、 品質パイプライン(20 点)、デプロイとリリース(15 点)、サプライチェーン(15 点)、 実証可能な契約のボーナス(10 点)。

ドキュメント検索(pmat query --docs)

コードと合わせて、ドキュメントファイル(Markdown、テキスト、YAML)を検索します:

pmat query "authentication" --docs          # Code + docs results
pmat query "deployment" --docs-only         # Only documentation
pmat query "API endpoints" --no-docs        # Exclude docs (default)
自律的なカイゼン(pmat kaizen)

トヨタウェイに基づく継続的な改善 — スキャン、自動修正、コミット:

pmat kaizen --dry-run                  # Scan only (no changes)
pmat kaizen                            # Apply safe auto-fixes
pmat kaizen --push                     # Fix, commit, and push (use --no-commit to skip)
pmat kaizen --format json -o report.json  # CI/CD integration

# Cross-stack mode: scan all batuta stack crates in one invocation
pmat kaizen --cross-stack --dry-run    # Scan all crates
pmat kaizen --cross-stack              # Fix and commit per-crate
pmat kaizen --cross-stack -f json      # Grouped JSON report
関数の抽出(pmat extract)

メタデータ付きで関数の境界を抽出します:

pmat extract --list src/lib.rs         # Function/struct/enum/trait boundaries, as JSON

使用例

AI 向けコンテキストの生成
# For Claude Code
pmat context --output context.md --format llm-optimized

# With semantic search
pmat embed sync --path ./src
pmat semantic search "error handling patterns"
CI/CD 統合
# Add to your CI pipeline
steps:
  - uses: actions/checkout@v4
  - run: cargo install pmat
  - run: pmat analyze tdg --fail-on-violation --min-grade B
  - run: pmat mutate --target src/ --threshold 80
品質ベースラインのワークフロー
# 1. Create baseline
pmat tdg baseline create --output .pmat/baseline.json

# 2. Check for regressions
pmat tdg check-regression \
  --baseline .pmat/baseline.json \
  --max-score-drop 5.0 \
  --fail-on-regression

アーキテクチャ

pmat/
├── src/
│   ├── cli/          Command handlers and dispatchers
│   ├── services/     Analysis engines (TDG, SATD, complexity, agent context)
│   ├── mcp_server/   MCP protocol server
│   ├── mcp_pmcp/     PMCP protocol integration
│   └── models/       Configuration and data models
├── examples/         113 runnable examples
└── docs/
    └── specifications/  Technical specs

品質

指標値
テスト21,200 件以上が合格
カバレッジ99.66%
ミューテーションスコア>80%
言語20 言語に加え、MLOps のモデル形式に対応
MCP ツール20 種類を利用可能
反証可能な品質コミットメント

ポパーの境界設定基準に基づき、すべての主張は測定および検証が可能です:

コミットメントしきい値検証方法
コンテキスト生成10K LOC のプロジェクトで 5 秒未満テストコーパスで time pmat context を実行
メモリ使用量100K LOC の解析で 500 MB 未満CI で heaptrack を使用して測定
テストカバレッジ行カバレッジ 85% 以上cargo llvm-cov(CI で適用)
ミューテーションスコアミュータントの 80% 以上をキルpmat mutate --threshold 80
ビルド時間増分ビルドで 3 分未満cargo build --timings
CI パイプライン合計 15 分未満GitHub Actions のワークフロー時間
バイナリサイズリリースバイナリが 50 MB 未満ls -lh target/release/pmat
言語パーサー20 言語すべてがパニックせずに解析可能CI でファズテスト

検証方法:

# Run self-assessment with Popper Falsifiability Score
pmat popper-score --verbose

# Individual commitment verification
cargo llvm-cov --html        # Coverage ≥85%
pmat mutate --threshold 80   # Mutation ≥80%
cargo build --timings        # Build time <3min

違反はリグレッションです: コミットメントに違反すると、CI のマージがブロックされます。

ベンチマーク結果(統計的な厳密性)

すべてのベンチマークでは、適切な統計手法を用いた Criterion.rs を使用しています:

操作平均95% 信頼区間標準偏差サンプルサイズ
コンテキスト(1K LOC)127ms[124, 130]±12.3msn=1000 回実行
コンテキスト(10K LOC)1.84s[1.79, 1.90]±156msn=500 回実行
TDG スコアリング156ms[148, 164]±18.2msn=500 回実行
複雑度解析23ms[22, 24]±3.1msn=1000 回実行

比較ベースライン(代替手段との比較):

指標PMATctagstree-sitter効果量
10K LOC の解析1.84s0.3s0.8sd=0.72(中程度)
メモリ(10K LOC)287MB45MB120MB-
意味解析の深さ完全構文のみAST のみ-

統計分析の全容については、docs/BENCHMARKS.mdを参照してください。

ML/AI の再現性

PMAT は、セマンティック検索と埋め込みに ML を使用しています。すべての ML 処理は再現可能です:

乱数シードの管理:

  • 埋め込みの生成には、決定論的な出力を得るために固定シード(SEED=42)を使用します
  • クラスタリング処理には固定シード(SEED=12345)を使用します
  • シードはdocs/ml/REPRODUCIBILITY.mdに記載されています

モデルアーティファクト:

  • HuggingFace の事前学習済みモデル(all-MiniLM-L6-v2)
  • モデルのバージョンは Cargo.toml で固定
  • ダウンロード時にハッシュを検証

データセットのソース

PMAT はモデルをトレーニングしませんが、評価には以下のデータソースを使用します:

データセットソース目的サイズ
CodeSearchNetGitHub/Microsoftセマンティック検索のベンチマーク200 万関数
PMAT-bench内部リグレッションテスト500 件のクエリ

データの来歴とライセンスについては、docs/ml/REPRODUCIBILITY.mdに記載されています。

Sovereign Stack

PMAT は、PAIML Sovereign Stack を基盤として構築されています。これは、純粋な Rust で実装され、SIMD で高速化されたライブラリ群です。

ライブラリ用途バージョン
aprenderML ライブラリ(テキスト類似度、クラスタリング、トピックモデリング)0.64
aprender-graphCSR グラフデータベース(PageRank、Louvain)0.64
aprender-db列指向分析データベース(ライブラリ trueno_db、オプション)0.64
aprender-ragVectorStore を使った RAG パイプライン0.64
aprender-vizターミナルでのグラフ可視化0.64
aprender-compute行列演算向け SIMD/GPU 計算(ライブラリ trueno)0.64
aprender-zram-coreSIMD による LZ4/ZSTD 圧縮(オプション)0.64
aprender-contracts証明可能なコントラクト(aprender-contracts-macros と併用)0.64
pmcpMCP プロトコル SDK(ストリーミング可能な HTTP トランスポート)2.17
pmatコード解析ツールキット3.40.0

主なメリット:

  • 純粋な Rust(C 依存関係なし、FFI なし)
  • SIMD を優先(AVX2、AVX-512、NEON を自動検出)
  • aprender アダプターにより、グラフアルゴリズムを 2~4 倍高速化

ドキュメント

コントリビューション

開発環境のセットアップ、テスト、プルリクエストのガイドラインについては、CONTRIBUTING.md をご覧ください。

関連項目

  • Cookbook — 実行可能な 113 個のサンプル

ライセンス

MIT License - 詳細は LICENSE をご覧ください。


Extreme TDD で構築 | PAIML の一部

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。