PMAT
Zero-configuration AI context generation for any codebase
      
______________________________________________________________________
目录
什么是PMAT?
PMAT (Pragmatic Multi-language Agent Toolkit)提供了分析代码质量和生成AI就绪上下文所需的一切:
- 上下文生成 -对Claude、GPT和其他LLM进行深入分析
- 技术债务评级 -使用6个正交指标进行A+至F评分
- 变异测试 -测试套件质量验证(85%+杀灭率)
- 存储库评分 -定量健康评估(0-289量表,11类)
- Git历史记录RAG -基于RRF融合的跨提交历史语义搜索
- 语义搜索 -自然语言代码发现
- 合规治理 -对代码质量、最佳实践和可重复性进行30多次检查
- 契约式设计 -带有检查点验证和救援协议的Toyota Way合同简介
- 自主改善 -丰田之路通过汽车维修和承诺持续改进
- MCP集成 -用于Claude Code、Cline和AI代理的19个工具
- 质量门 -预提交挂钩、CI/CD集成、,
.pmat-gates.toml配置 - 20+语言 -Rust、TypeScript、Python、Go、Java、C/C++、Lua、Lean等
部分 PAIML堆栈,遵循丰田之道质量原则(Jidoka、Genchi Genbutsu、Kaizen)。
注释代码搜索
pmat query "cache invalidation" --churn --duplicates --entropy --faults
每个结果都包括TDG等级、Big-O复杂性、git流失、代码克隆、模式多样性、故障注释、调用图和语法突出显示的源代码。
安装
# Install from crates.io
cargo install pmat
# Or from source (latest)
git clone https://github.com/paiml/paiml-mcp-agent-toolkit
cd paiml-mcp-agent-toolkit && cargo install --path .用法
# 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 .
# Run mutation testing
pmat mutate --target src/
# Start MCP server for Claude Code, Cline, etc.
pmat mcp特性
上下文生成
为AI助手生成全面的上下文:
pmat context # Basic analysis
pmat context --format llm-optimized # AI-optimized output
pmat context --include-tests # Include test files技术债务评级(TDG)
六个正交指标用于准确的质量评估:
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工作流提示
预配置的AI提示强制执行极限TDD:
pmat prompt --list # Available prompts
pmat prompt code-coverage # 85%+ coverage enforcement
pmat prompt debug # Five Whys analysis
pmat prompt quality-enforcement # All quality gatesGit历史记录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_demoGit挂钩
自动质量执行:
pmat hooks install # Install pre-commit hooks
pmat hooks install --tdg-enforcement # With TDG quality gates
pmat hooks status # Check hook status合规治理(pmat comply)
在代码质量、最佳实践和治理方面进行30多次自动检查:
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 Grade Gate——非A函数上的块(自动重建过时索引)
- CB-304:执行死代码百分比
- CB-400:通过bashs获得外壳/Makefile质量
- CB-500:Rust最佳实践(30多种模式)
- CB-600:Lua最佳实践
- CB-900:Markdown链接验证
- CB-1000:MLOps模型质量
可证明的合同执行(CB-1200..1210):
- CB-1208:绑定存在--验证
binding.yaml功能存在于src/,检测重影绑定(L0-L3强制级别) - CB-1209:合同特征执行-检查
tests/contract_traits.rs用于编译器验证的特性impls(13个内核特性) - CB-1210:前置条件质量--标记大量生成的样板和缺少的后置条件
通过配置 .pmat.yaml:
comply:
thresholds:
min_tdg_grade: "A"
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 --commit --push # Fix, commit, and push
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 --commit # Fix and commit per-crate
pmat kaizen --cross-stack -f json # Grouped JSON report功能提取(pmat extract)
使用元数据提取函数边界:
pmat extract src/lib.rs # Extract functions from file
pmat extract --list src/ # List all functions with imports and visibility例子
为AI生成上下文
# For Claude Code
pmat context --output context.md --format llm-optimized
# With semantic search
pmat embed sync ./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/ 89 runnable examples
└── docs/
└── specifications/ Technical specs质量
| 度量 | 值 |
|---|---|
| 测试 | 21200+通过 |
| 覆盖率 | 99.66% |
| 突变评分 | >80% |
| 语言 | 支持20种+MLOps模型格式 |
| MCP工具 | 19个可用 |
虚假的质量承诺
每 波普尔的划界标准,所有索赔都是可衡量和可测试的:
| 承诺 | 阈值 | 验证方法 |
|---|---|---|
| 上下文生成 | 10K LOC项目\Built with Extreme TDD | Part of PAIML |
