[[bench]]
harness = false
name = "critical_path"
path = "benches/critical_path.rs"
[[bench]]
harness = false
name = "performance"
path = "benches/performance.rs"
[[bin]]
name = "pmat"
path = "src/bin/pmat.rs"
[build-dependencies.capnpc]
version = "0.20"
[build-dependencies.flate2]
version = "1.1"
[build-dependencies.hex]
version = "0.4"
[build-dependencies.serde]
features = ["derive"]
version = "1.0"
[build-dependencies.serde_json]
version = "1.0"
[build-dependencies.ureq]
version = "3.0"
[dependencies.anyhow]
version = "1.0"
[dependencies.async-trait]
version = "0.1"
[dependencies.axum]
default-features = false
features = ["json", "tokio", "http1", "query"]
version = "0.8"
[dependencies.bincode]
version = "1.3"
[dependencies.blake3]
version = "1.8"
[dependencies.bytes]
version = "1.10"
[dependencies.capnp]
version = "0.20"
[dependencies.capnpc]
version = "0.20"
[dependencies.chrono]
features = ["serde"]
version = "0.4"
[dependencies.clap]
default-features = false
features = ["std", "derive", "help", "env"]
version = "4.5"
[dependencies.cpp_demangle]
optional = true
version = "0.4"
[dependencies.crossbeam-channel]
version = "0.5"
[dependencies.crossterm]
optional = true
version = "0.29"
[dependencies.csv]
version = "1.3"
[dependencies.dashmap]
version = "6.1"
[dependencies.dirs]
version = "6.0"
[dependencies.fixedbitset]
optional = true
version = "0.4"
[dependencies.flate2]
version = "1.1"
[dependencies.futures]
version = "0.3"
[dependencies.gimli]
optional = true
version = "0.28"
[dependencies.git2]
default-features = false
features = ["https"]
version = "0.20"
[dependencies.glob]
version = "0.3"
[dependencies.goblin]
optional = true
version = "0.7"
[dependencies.handlebars]
default-features = false
features = ["string_helpers"]
version = "6.3"
[dependencies.hex]
version = "0.4"
[dependencies.http]
version = "1.3"
[dependencies.http-body-util]
version = "0.1"
[dependencies.httparse]
version = "1.10"
[dependencies.hyper]
default-features = false
features = ["http1", "server", "client"]
version = "1.6"
[dependencies.hyper-util]
default-features = false
features = ["tokio", "server", "client"]
version = "0.1"
[dependencies.ignore]
version = "0.4"
[dependencies.indicatif]
version = "0.17"
[dependencies.lazy_static]
version = "1.5"
[dependencies.lru]
features = ["hashbrown"]
version = "0.14"
[dependencies.notify]
version = "8.0"
[dependencies.num_cpus]
version = "1.17"
[dependencies.once_cell]
version = "1.21"
[dependencies.parking_lot]
version = "0.12"
[dependencies.petgraph]
version = "0.8"
[dependencies.pmcp]
features = ["full"]
optional = true
version = "0.3.1"
[dependencies.proc-macro2]
optional = true
version = "1.0"
[dependencies.pulldown-cmark]
version = "0.13"
[dependencies.quote]
optional = true
version = "1.0"
[dependencies.rand]
version = "0.9"
[dependencies.ratatui]
optional = true
version = "0.29"
[dependencies.rayon]
version = "1.10"
[dependencies.regex]
features = ["perf"]
version = "1.11"
[dependencies.reqwest]
default-features = false
features = ["json", "rustls-tls"]
version = "0.12"
[dependencies.roaring]
version = "0.10"
[dependencies.rustc-hash]
version = "1.1"
[dependencies.rustpython-parser]
optional = true
version = "0.4"
[dependencies.semver]
features = ["serde"]
version = "1.0"
[dependencies.serde]
default-features = false
features = ["derive", "std"]
version = "1.0"
[dependencies.serde_json]
default-features = false
features = ["std"]
version = "1.0"
[dependencies.serde_yaml]
version = "0.9"
[dependencies.sha2]
version = "0.10"
[dependencies.smallvec]
version = "1.15.0"
[dependencies.swc_common]
optional = true
version = "0.33"
[dependencies.swc_ecma_ast]
optional = true
version = "0.114"
[dependencies.swc_ecma_parser]
optional = true
version = "0.145"
[dependencies.swc_ecma_visit]
optional = true
version = "0.100"
[dependencies.syn]
features = ["full", "parsing", "visit"]
optional = true
version = "2.0"
[dependencies.sys-info]
version = "0.9.1"
[dependencies.tempfile]
version = "3.8"
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
features = ["rt-multi-thread", "macros", "net", "io-util", "io-std", "fs", "sync", "signal", "process"]
version = "1.45"
[dependencies.toml]
version = "0.8"
[dependencies.tower]
default-features = false
features = ["util", "timeout"]
version = "0.5"
[dependencies.tower-http]
default-features = false
features = ["fs", "trace", "compression-gzip", "timeout", "cors"]
version = "0.6"
[dependencies.tracing]
default-features = false
features = ["std"]
version = "0.1"
[dependencies.tracing-subscriber]
default-features = false
features = ["env-filter", "fmt", "std"]
version = "0.3"
[dependencies.tree-sitter]
optional = true
version = "0.22"
[dependencies.tree-sitter-c]
optional = true
version = "0.21"
[dependencies.tree-sitter-cpp]
optional = true
version = "0.22"
[dependencies.tree-sitter-kotlin]
optional = true
version = "0.3.8"
[dependencies.uuid]
features = ["v4", "serde"]
version = "1.17"
[dependencies.walkdir]
version = "2.5"
[dependencies.webbrowser]
version = "1.0"
[dependencies.xxhash-rust]
features = ["xxh64"]
version = "0.8"
[dev-dependencies.assert_cmd]
version = "2.0"
[dev-dependencies.criterion]
features = ["html_reports"]
version = "0.6"
[dev-dependencies.mockall]
version = "0.13"
[dev-dependencies.predicates]
version = "3.1"
[dev-dependencies.pretty_assertions]
version = "1.4"
[dev-dependencies.proptest]
version = "1.6"
[dev-dependencies.quickcheck]
version = "1.0"
[dev-dependencies.quickcheck_macros]
version = "1.0"
[dev-dependencies.reqwest]
default-features = false
features = ["json", "rustls-tls"]
version = "0.12"
[dev-dependencies.scraper]
version = "0.23"
[dev-dependencies.serial_test]
version = "3.2"
[dev-dependencies.tempfile]
version = "3.20"
[dev-dependencies.tokio-test]
version = "0.4"
[[example]]
name = "analyze_complexity"
path = "examples/analyze_complexity.rs"
[[example]]
name = "analyze_dead_code"
path = "examples/analyze_dead_code.rs"
[[example]]
name = "analyze_satd"
path = "examples/analyze_satd.rs"
[[example]]
name = "check_code_quality"
path = "examples/check_code_quality.rs"
[[example]]
name = "check_github_repo"
path = "examples/check_github_repo.rs"
[[example]]
name = "ci_integration"
path = "examples/ci_integration.rs"
[[example]]
name = "complexity_demo"
path = "examples/complexity_demo.rs"
[[example]]
name = "complexity_isolation"
path = "examples/complexity_isolation.rs"
[[example]]
name = "complexity_validation"
path = "examples/complexity_validation.rs"
[[example]]
name = "debug_complexity"
path = "examples/debug_complexity.rs"
[[example]]
name = "deep_context_complexity"
path = "examples/deep_context_complexity.rs"
[[example]]
name = "exit_codes"
path = "examples/exit_codes.rs"
[[example]]
name = "lint_hotspot_demo"
path = "examples/lint_hotspot_demo.rs"
[[example]]
name = "lint_hotspot_enforce_flag"
path = "examples/lint_hotspot_enforce_flag.rs"
[[example]]
name = "mcp_server_pmcp"
path = "examples/mcp_server_pmcp.rs"
[[example]]
name = "one_function_only"
path = "examples/one_function_only.rs"
[[example]]
name = "pmcp_analyze_workflow"
path = "examples/pmcp_analyze_workflow.rs"
[[example]]
name = "pmcp_refactor_session"
path = "examples/pmcp_refactor_session.rs"
[[example]]
name = "quality_gate"
path = "examples/quality_gate.rs"
[[example]]
name = "quality_gate_custom"
path = "examples/quality_gate_custom.rs"
[[example]]
name = "quality_gate_perf"
path = "examples/quality_gate_perf.rs"
[[example]]
name = "quality_gate_shows_checks"
path = "examples/quality_gate_shows_checks.rs"
[[example]]
name = "quality_gate_thresholds"
path = "examples/quality_gate_thresholds.rs"
[[example]]
name = "satd_lint_analysis"
path = "examples/satd_lint_analysis.rs"
[[example]]
name = "single_function_test"
path = "examples/single_function_test.rs"
[[example]]
name = "single_if_test"
path = "examples/single_if_test.rs"
[features]
all-languages = ["rust-ast", "typescript-ast", "python-ast", "c-ast", "cpp-ast", "kotlin-ast"]
c-ast = ["tree-sitter", "tree-sitter-c", "fixedbitset"]
cpp-ast = ["c-ast", "tree-sitter-cpp", "cpp_demangle", "gimli", "goblin"]
default = ["most-languages", "demo"]
demo = []
e2e-tests = []
integration-tests = []
kotlin-ast = ["tree-sitter", "tree-sitter-kotlin"]
most-languages = ["rust-ast", "typescript-ast", "c-ast", "cpp-ast", "kotlin-ast"]
perf-tests = []
pmcp-mcp = ["pmcp"]
python-ast = ["rust-ast", "rustpython-parser"]
rust-ast = ["syn", "quote", "proc-macro2"]
rust-only = ["rust-ast"]
skip-slow-tests = []
syn = ["dep:syn"]
tui = ["ratatui", "crossterm"]
typescript-ast = ["rust-ast", "swc_ecma_parser", "swc_common", "swc_ecma_ast", "swc_ecma_visit"]
[lib]
name = "pmat"
path = "src/lib.rs"
[package]
authors = ["Pragmatic AI Labs"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = "build.rs"
categories = ["command-line-utilities", "development-tools", "development-tools::testing"]
description = "PMAT - Zero-config AI context generation and code quality toolkit (CLI, MCP, HTTP)"
edition = "2021"
exclude = ["*.log", "test_*", "temp_*", "*.profraw", ".pmat-cache", "proptest-regressions"]
homepage = "https://paiml.com"
keywords = ["mcp", "code-analysis", "refactoring", "quality", "ai"]
license = "MIT OR Apache-2.0"
name = "pmat"
readme = "README.md"
repository = "https://github.com/paiml/paiml-mcp-agent-toolkit"
rust-version = "1.80.0"
version = "0.30.8"
[package.metadata.docs.rs]
features = ["default"]
rustc-args = ["--cfg", "docsrs"]
rustdoc-args = ["--cfg", "docsrs"]
[[test]]
name = "analyze_exit_status"
path = "tests/analyze_exit_status.rs"
[[test]]
name = "ast_dag_mermaid_pipeline"
path = "tests/ast_dag_mermaid_pipeline.rs"
[[test]]
name = "bin_integration"
path = "tests/bin_integration.rs"
[[test]]
name = "cli_comprehensive_integration"
path = "tests/cli_comprehensive_integration.rs"
[[test]]
name = "cli_context_tests"
path = "tests/cli_context_tests.rs"
[[test]]
name = "cli_documentation_sync"
path = "tests/cli_documentation_sync.rs"
[[test]]
name = "complexity_metrics"
path = "tests/complexity_metrics.rs"
[[test]]
name = "complexity_threshold_filtering"
path = "tests/complexity_threshold_filtering.rs"
[[test]]
name = "config_integration"
path = "tests/config_integration.rs"
[[test]]
name = "deep_context_cli_integration"
path = "tests/deep_context_cli_integration.rs"
[[test]]
name = "demo_core_extraction"
path = "tests/demo_core_extraction.rs"
[[test]]
name = "demo_e2e_integration"
path = "tests/demo_e2e_integration.rs"
[[test]]
name = "demo_integration"
path = "tests/demo_integration.rs"
[[test]]
name = "demo_web_integration"
path = "tests/demo_web_integration.rs"
[[test]]
name = "determinism_tests"
path = "tests/determinism_tests.rs"
[[test]]
name = "documentation_examples"
path = "tests/documentation_examples.rs"
[[test]]
name = "e2e_system"
path = "tests/e2e/system.rs"
required-features = ["e2e-tests"]
[[test]]
name = "enhanced_dag_integration"
path = "tests/enhanced_dag_integration.rs"
[[test]]
name = "execution_mode"
path = "tests/execution_mode.rs"
[[test]]
name = "export_integration"
path = "tests/export_integration.rs"
[[test]]
name = "generate_mermaid_example"
path = "tests/generate_mermaid_example.rs"
[[test]]
name = "generate_mermaid_test"
path = "tests/generate_mermaid_test.rs"
[[test]]
name = "git_clone_validation"
path = "tests/git_clone_validation.rs"
[[test]]
name = "include_pattern_integration"
path = "tests/include_pattern_integration.rs"
[[test]]
name = "kotlin_ast_test"
path = "tests/kotlin_ast_test.rs"
[[test]]
name = "kotlin_support_test"
path = "tests/kotlin_support_test.rs"
[[test]]
name = "mcp_documentation_sync"
path = "tests/mcp_documentation_sync.rs"
[[test]]
name = "mcp_server_integration"
path = "tests/mcp_server_integration.rs"
[[test]]
name = "mcp_tool_composition"
path = "tests/mcp_tool_composition.rs"
[[test]]
name = "mermaid_artifact_tests"
path = "tests/mermaid_artifact_tests.rs"
[[test]]
name = "mermaid_empty_bug_fix_test"
path = "tests/mermaid_empty_bug_fix_test.rs"
[[test]]
name = "performance_regression"
path = "tests/performance/regression.rs"
required-features = ["perf-tests"]
[[test]]
name = "protocol_adapters"
path = "tests/integration/protocols.rs"
required-features = ["integration-tests"]
[[test]]
name = "quality_gate_integration"
path = "tests/quality_gate_integration.rs"
[[test]]
name = "refactor_auto_property_integration"
path = "tests/refactor_auto_property_integration.rs"
[[test]]
name = "services_integration"
path = "tests/integration/services.rs"
required-features = ["integration-tests"]
[[test]]
name = "slow_integration"
path = "tests/slow_integration.rs"
[[test]]
name = "stateless_server_test"
path = "tests/stateless_server_test.rs"
[[test]]
name = "unit_core"
path = "tests/unit/core.rs"
required-features = []