mcpField
R
Repo Test Architect

Repo Test Architect

已认证精选本地服务
npmjs.com开发工具04 周前更新

关于 Repo Test Architect

Repo Test Architect 是本地优先、只读的工具,可依据可检查的证据审计仓库测试架构并规划测试工作。它面向开发者和代码审查流程,针对受支持的项目生态生成确定性发现、候选项排序和执行提示。

主要功能

  1. 01确定性仓库审计图
  2. 02支持多种生态的项目适配器
  3. 03测试候选项排序与计划
  4. 04执行和验证提示
  5. 05CLI 与本地调用工具
  6. 06脱敏诊断与数据包

适用场景

  1. 01审查仓库测试覆盖缺口
  2. 02规划多个项目根目录的高价值测试
  3. 03在修改代码前评估测试候选项
  4. 04通过 MCP 检查审计发现

MCP 相关

它提供本地 stdio MCP SDK 服务端,向 MCP 客户端开放仓库审计功能。README 将 `analyze_repository` 列为常规仓库审查的默认工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"repo-test-architect": {
"command": "npx",
"args": [
"-y",
"repo-test-architect"
]
}
}
}
启动命令npx -y repo-test-architect

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmrepo-test-architect1.0.0

工具

19

收录的工具列表 · 更新于 3 周前

参数类型必填说明
repoRootstring是仓库根目录路径。
changedPathsarray否可选的、相对于仓库的源文件路径,用于限制已检测项目中的目标选择。
excludeProjectRootsarray否可选的精确项目根目录或子树模式(例如 examples/**),用于在分析前排除项目。
goTargetobject否
goTarget.goosstring是用于限定范围的 Go 构建约束评估的显式 GOOS。
goTarget.goarchstring是用于限定范围的 Go 构建约束评估的显式 GOARCH。
goTarget.tagsarray否传递给目标感知型验证命令的自定义 Go 构建标签(可选)。

详细介绍

Repo Test Architect 徽标

Repo Test Architect

面向代码库的审计优先测试策略工具。

Repo Test Architect 会先构建确定性审计图,再让任何模型或 Agent 推理测试。其目标是根据工具可在本地检查的事实,找出符合代码库自身特点且价值高的测试工作:项目根目录、框架信号、现有测试、源代码分类、阻碍因素和剩余风险。

当前实现可以:

  • 通过受支持的适配器审计 JavaScript/TypeScript、PHP、Python、Ruby 和 Swift 项目
  • 通过同一共享构件模型审计受支持且范围有限的 Kotlin/JVM 测试样例
  • 通过受支持且范围有限的 Go 适配器,审计常规 Go 模块和字面量指定、位于代码库内的 go.work 成员
  • 通过受支持且范围有限的 Rust 适配器,审计常规 Cargo 包和字面量指定、位于代码库内的工作区成员
  • 通过受支持且范围有限的 .NET 适配器,审计一个常规 SDK 风格的 C# 测试项目,或一条唯一的字面量生产项目/测试项目边;支持范围包括受限的原生 xUnit MTP-v2 和 MSTest.Sdk v4 所有权、字面量目标框架和单跳根别名目标框架、一个位于代码库内的直接 *.cs 编译包含项、有限的按目标条件区分的包形态、范围受限的最近文件级构建属性和中心包属性、精确的不可变测试字段接收者、稳定的直接调用结果、内联 out 结果、框架异常断言和集合/字符串断言、单跳测试辅助函数,以及对已知 System 类型冲突的防护
  • 通过受支持且范围有限的 PHP 适配器,审计一个使用 PHPUnit 的常规 Composer/PSR-4 项目
  • 通过受支持且范围有限的 Elixir 适配器,审计一个常规 Mix 应用;要求精确的 MixProject/Mixfile、范围受限的源代码和 Mix 任务所有权、字面量本地 ExUnit 包装器发现,以及测试主体证据
  • 检测多语言项目根目录,并报告不受支持的生态系统,不将其隐藏
  • 在一次审计中生成完整的代码库分析、发现、排名、计划、执行提示和验证命令
  • 按可能的测试价值对源文件分类,并暂缓低价值的直接测试
  • 根据审计图对候选项排序并生成测试计划
  • 推导不依赖提供方的执行、上下文、并行安全性和代码库推理提示,而不选择模型或启动子 Agent
  • 分析跨项目边界的保守测试放置发现
  • 收集项目级统计信息,包括覆盖率、候选项数量、框架、命令和适配器使用情况
  • 提供默认禁用的本地 MCP 诊断、安全的内部错误报告 ID、运行时检查,以及可检查的脱敏数据包,不进行外部报告
  • 通过 CLI 命令、本地调用测试框架和 stdio MCP SDK 服务提供相同的确定性行为
  • 通过黄金快照、模型一致性场景、包检查和跨 OS CI 锁定行为

原生测试生成会有意暂缓。在适配器专属生成策略和修复循环测试样例就绪之前,generate_selected_test 会返回结构化的暂缓构件。

Repo Test Architect 1.0.0 已在 npm 上以 latest 标签发布,并收录于 Official MCP Registry;它稳定支持文档中说明的 CLI、MCP 工具、配置和版本化构件契约。请将其发现视为有证据支持的审查输入,而非自动修改代码库的指令。有关变更、兼容性和发布状态,请参阅 1.0.0 发行说明。

十种适配器在各自文档所述的边界内受支持。Dart/Flutter 仍处于实验阶段,原生测试生成仍会暂缓。

维护工作视时间安排而定,不保证响应时间或功能计划。欢迎提交聚焦明确的社区 PR;请参阅贡献指南和支持。

安装

需要 Node.js 20 或更高版本。

无需全局安装即可运行 CLI:

npx --yes repo-test-architect doctor
npx --yes repo-test-architect analyze .

固定到稳定版本:

npx --yes [email protected] doctor
npx --yes [email protected] analyze .

或者安装 CLI 和 MCP 服务二进制文件:

npm install --global repo-test-architect
repo-test-architect doctor
repo-test-architect analyze .

将本地 stdio MCP 服务添加到支持 MCP 的客户端:

{
  "mcpServers": {
    "repo-test-architect": {
      "command": "npx",
      "args": [
        "--yes",
        "repo-test-architect",
        "mcp"
      ]
    }
  }
}

如需让 MCP 客户端保持在此确切版本,请固定其版本:

{
  "mcpServers": {
    "repo-test-architect": {
      "command": "npx",
      "args": [
        "--yes",
        "[email protected]",
        "mcp"
      ]
    }
  }
}

客户端会在本地启动服务。除非客户端或其他已配置的工具将仓库源代码发送到其他位置,否则它会留在本机。连接的模型会收到指示:进行常规仓库审查时,先使用 analyze_repository。全局安装、本地检出和特定主机的指南,请参阅 MCP 客户端配置 和 Agent 安装路径。

快速开始

查看当前仓库的易读审查结果:

npx --yes repo-test-architect analyze .

analyze 会检测每个项目根目录,为每个项目运行一次受支持的适配器,并生成审计摘要、主要发现、候选项排名、测试计划、执行提示、项目统计信息和验证命令。Markdown 输出简洁明了;JSON 则保留完整的证据包:

npx --yes repo-test-architect analyze . --format json
npx --yes repo-test-architect analyze . --changed

实用的专项视图:

目标命令
完整仓库审查repo-test-architect analyze .
简洁的架构发现repo-test-architect findings-projects .
可执行的跨项目计划repo-test-architect plan-projects .
可复用的原始项目审计结果repo-test-architect audit-projects . --format json
运行时就绪状态repo-test-architect doctor

运行 repo-test-architect --help 查看简短的命令概览,或运行 repo-test-architect <command> --help 查看选项。CLI 参考 介绍了完整的功能。

对于已连接 MCP 的模型,等效的默认工具是 analyze_repository。只有在请求需要某项单独产物或已提供审计产物时,才使用范围更窄的工具。

当前范围

可用适配器:

  • dart(实验性):Dart 和 Flutter pubspec 包、惯例用法的 package:test 和 flutter_test 入口点、精确的库导入证据、Widget 测试建议,以及范围受限的 dart test / flutter test 命令;参见 Dart 和 Flutter 支持
  • csharp:一个静态 SDK 样式测试项目,或一条唯一的字面生产/测试项目边,包括范围受限的原生 xUnit MTP-v2 和 MSTest.Sdk v4 归属、精确的字面目标成员关系或一级根别名目标成员关系、一个仓库内的直接 *.cs 编译包含项、有限的项目本地目标条件包谓词,以及在无关项目中选出的一对项目;还包括范围受限的最近文件 Directory.Build.props 元数据和静态 Directory.Packages.props 版本、带有 xUnit、NUnit 或 MSTest 特性的测试、精确的项目文件命令、由可运行测试体拥有的直接类型调用、范围受限的具体局部变量或不可变测试字段接收者、一级稳定直接调用、接收者调用或内联 out var 结果断言、范围受限的异常断言,以及一个同类私有静态测试辅助函数调用层级;参见 C# alpha 支持矩阵
  • elixir:一个惯例用法的 Mix 应用,具有字面应用标识和精确的 MixProject/Mixfile 归属、惯例用法/应用前缀模块和协议、精确 Mix 任务、范围受限的首字母缩略词、词尾复数、重复声明和已编译本地 ExUnit 包装器归属、静态启动选项、测试体范围内的直接全限定或精确别名调用、保守的文件名证据,以及无阻碍的 mix test 命令;参见 Elixir alpha 支持
  • javascript:使用 Node 测试运行器(包括 TypeScript 执行脚本)、Bun test、AVA、Mocha/CommonJS、Vitest、Jest、Playwright、Cypress、Express/Supertest、React Testing Library 检测,以及范围受限的字面浏览器请求到路由证据的 JavaScript/TypeScript 仓库;有关证据边界和已知缺口,请参见 alpha 支持矩阵
  • go:惯例用法的 go.mod 项目和字面上位于仓库内的 go.work 成员,使用可运行的标准库 TestXxx、FuzzXxx 或 ExampleXxx 测试、包内文件名、唯一顶层符号,以及通过显式类型、精确简单构造函数结果或精确静态类型化测试辅助函数结果识别的解析器所有具体接收者方法符号;还包括范围受限的标准库和 Testify 断言用法、解析器范围内的局部遮蔽检查、同包或精确外部包导入(包括点导入)、泛型顶层函数,以及范围受限的由可调用函数体拥有的同包或模块本地源码调用层级、模块本地命令和可选的显式 GOOS/GOARCH/自定义标签选择;有关支持边界和阻碍项,请参见 alpha 支持矩阵
  • kotlin:惯例用法的 Gradle/Maven JVM 模块根目录、由 settings 声明的 Gradle 聚合项目,以及由根项目声明的 Maven reactor,包含 Kotlin 和/或 Java 标准源集、依赖限定的直接/导出传递模块证据、JUnit 4/5、kotlin.test、范围受限的 Gradle/JUnit Platform Kotest 通用规范、惯例用法的 Gradle/Spock 测试特性,以及通过直接 Maven 依赖或 Gradle useTestNG() 声明的方法级 TestNG;参见 Kotlin/JVM alpha 支持矩阵
  • php:一个根 Composer 项目,包含字面字符串值 PSR-4 源码/测试归属、范围受限的字面自动加载函数文件、静态声明的 PHPUnit、精确的范围受限命令或明确安全地不提供命令、惯例用法的可运行测试类(包括一条唯一的源码或测试归属 PHPUnit 基类边)、直接导入或精确同命名空间类调用,以及保守的基本文件名回退;参见 PHP alpha 支持
  • python:范围受限的 Python 包、FastAPI、Django 和 Flask 布局,包含声明式多包/命名空间归属、已配置的 pytest 发现、精确的绝对/相对导入、一级源码依赖证据、静态框架测试客户端路由证据、pytest/unittest、异步和基于属性的扩展、fixture 可达性、pip/setuptools、uv、Poetry、Hatch、tox、nox 和 coverage 配置;参见 Python alpha 支持矩阵
  • rust:惯例用法的 Cargo 包和字面上位于仓库内的工作区成员,使用内置的 #[test] 测试框架、内联 #[cfg(test)] 模块、精确排除外部仅用于测试的模块图、来自 tests/ 的精确 crate 模块导入,以及精确的无条件 crate 根符号重导出;参见 Rust alpha 支持矩阵
  • ruby:一个惯例用法的 Bundler 项目,包含 lib/ 源码、一个根 gemspec 或一组完整且精确命名的根 gemspec、可运行的 Minitest::Test test_* 方法或 RSpec 示例、精确的范围受限命令、根 .rspec 和精确的逐文件 spec_helper 加载、三层字面 require/唯一常量证据、精确的单例调用、精确的常量所属 RSpec described_class、直接不可变构造函数局部变量、单行 RSpec let/subject、精确的源码工厂和同组 RSpec 辅助函数接收者,以及精确的同文件字面共享示例包含;还包括范围受限的断言用法、保守的基本文件名回退,以及明确的 Minitest-spec/Rails/混合运行器阻碍项;参见 Ruby alpha 支持矩阵
  • swift:Swift Package Manager、Xcode 样式和 Bazel/rules_swift 布局、Swift Testing、XCTest、Quick/Nimble、SnapshotTesting、VaporTesting/XCTVapor、响应式框架,以及带有驱动程序特定限定条件的通用 Fluent 数据库边界;参见 Swift alpha 支持矩阵 项目检测通过受支持的有界适配器报告 Elixir Mix 根目录。未支持的生态系统仍会显示,以便客户端区分“尚未审计”和“不存在”。

没看到你的技术栈?提交适配器请求,并提供语言或生态系统、构建系统、测试框架,以及(如有可能)一个有代表性的公开代码库。此类请求有助于根据真实代码库结构和用户需求确定适配器的优先级。

公开软件包提供审计 CLI、stdio MCP 服务,以及确定性的 MCP invoke 测试工具,二进制文件名称保持稳定,详见下文。

高级 CLI 和贡献者参考

以下命令提供专用的产物、固定样例、评估、诊断和发布检查,供高级用户和代码库开发使用。

显示完整的命令和开发参考

直接运行完整分析,或针对多语言示例运行:

npm run analyze
npm run analyze:json
npm run analyze:example
npm run analyze:example:json

检查运行时和诊断功能的就绪状态:

npm run doctor
npm run doctor:json

本地 MCP 诊断默认处于禁用状态。可以显式将其输出到 stderr 或有界的本地 JSONL 文件;详见本地诊断。使用以下命令构建经过脱敏、可供检查的捆绑包:

npm run diagnostic-bundle -- --diagnostics-file ./.repo-test-architect/diagnostics.jsonl --format json
node ./src/cli/index.js diagnostic-bundle --diagnostics-file ./.repo-test-architect/diagnostics.jsonl --format json

列出已注册的适配器:

npm run adapters
npm run adapters:json

检查项目检测标记规则:

npm run detect-rules
npm run detect-rules:json

检测项目根目录和适配器匹配项:

npm run detect:example
npm run detect:example:json
npm run detect:kotlin-fixture
npm run detect:kotlin-fixture:json
npm run detect:apple-fixture
npm run detect:apple-fixture:json
npm run audit-projects:example
npm run audit-projects:example:json
npm run audit-projects:changed-since
npm run summarize-projects:example
npm run summarize-projects:example:json
npm run rank-projects:example
npm run rank-projects:example:json
npm run plan-projects:example
npm run plan-projects:example:json
npm run hints-projects:example
npm run hints-projects:example:json
npm run findings-projects:example
npm run findings-projects:example:json
npm run placement-projects:example
npm run placement-projects:example:json
npm run placement-projects:split-example:json
npm run stats-projects:example
npm run stats-projects:example:json

进行项目感知型自审计时,使用带引号的子树模式排除已纳入版本控制的固定样例或示例根目录:

node ./src/cli/index.js findings-projects . --exclude-project "examples/**"

复用已保存的项目审计产物:

node ./src/cli/index.js audit-projects ./examples/polyglot-workspace --format json
node ./src/cli/index.js summarize-projects --from-project-audits ./project-audits.json --format json
node ./src/cli/index.js rank-projects --from-project-audits ./project-audits.json --format json
node ./src/cli/index.js plan-projects --from-project-audits ./project-audits.json --format json
node ./src/cli/index.js findings-projects --from-project-audits ./project-audits.json --format json
node ./src/cli/index.js placement-projects --from-project-audits ./project-audits.json --format json
node ./src/cli/index.js stats-projects --from-project-audits ./project-audits.json --format json
npm run audit:example
npm run audit:kotlin-fixture

输出结构化审计图:

npm run audit:example:json
npm run audit:kotlin-fixture:json

根据审计图生成可执行的测试计划:

npm run plan:example
npm run plan:example:json
npm run hints:example
npm run hints:example:json
npm run plan:kotlin-fixture
npm run plan:kotlin-fixture:json
npm run plan:item:example
npm run plan:changed
npm run plan:changed-since

生成建议性的执行提示,同时保持计划产物不变:

node ./src/cli/index.js hints ./examples/node-vitest-basic --item add-test:src/authService.ts
node ./src/cli/index.js hints-projects ./examples/polyglot-workspace --format json

安装 CLI 的一方或 Agent 宿主仍负责模型选择、预算、权限、上下文加载和子 Agent 生命周期。

按稳定的目标 ID 解释某个已审计目标:

npm run explain:example

对测试候选项排序,但不生成测试:

npm run rank:example

根据审计证据分析现有测试的放置位置:

npm run placement:example
npm run placement:example:json
npm run placement:from-audit:example

测试 MCP 风格的工具接口:

npm run mcp:tools
npm run mcp:analyze:example
npm run mcp:adapters
npm run mcp:detect-rules
npm run mcp:detect:example
npm run mcp:audit-projects:example
npm run mcp:summarize-projects:example
npm run mcp:rank-projects:example
npm run mcp:plan-projects:example
npm run mcp:findings-projects:example
npm run mcp:placement-projects:example
npm run mcp:placement-split:example
npm run mcp:stats-projects:example
npm run mcp:audit:example
npm run mcp:audit:kotlin-fixture
npm run mcp:placement:example
npm run mcp:audit:envelope
npm run mcp:stdio
npm run mcp:smoke

根据现有审计 JSON 文件生成计划:

npm run plan:from-audit:example

运行审计器回归测试:

npm test
npm run alpha:check
npm run release:check

查找并筛选活跃的公开代码库,用于真实环境中的适配器验证:

npm run validation:repos -- --profile react
npm run validation:repos -- --profile workspace --limit 10
npm run validation:repos -- --profile swift,gradle,maven --format json

查找器使用经过身份验证的 GitHub 代码库搜索,在根目录清单中验证精确的生态系统标记,并根据维护活跃度、星标数、代码库大小、锁定文件、CI 和许可证元数据对候选项排序。运行 npm run validation:repos -- --list-profiles 查看可用配置,运行 --help 查看质量筛选选项。

检查每个受支持的适配器是否都有完整且固定的强化测试集:

npm run corpus:check
npm run corpus:scorecard
npm run corpus:measure -- --case python-asyncer --checkout /path/to/pinned/asyncer
npm run corpus:measure -- --case python-django --checkout /path/to/pinned/django --profile-phases
npm run csharp:performance:check
npm run javascript:performance:check
npm run python:performance:check
npm run kotlin:performance:check
npm run rust:performance:check
npm run swift:performance:check
npm run go:performance:check
npm run ruby:performance:check
npm run php:performance:check

版本化的 evals/validation-corpus.json 清单为每个适配器组记录一个常规库或服务、一个框架密集型应用,以及一个复杂的所有权图。每个受支持的适配器都必须拥有完整的适配器组;已注册的实验性适配器只有在具备这三个角色时才能添加。每条记录都包含通用的检测、所有权、命令、证据、排序、稳定性和性能评分卡。目前的 33 个固定项涵盖十个受支持的适配器和实验性 Dart,所有 231 个有界评分项均通过。Dart 实时验证还记录了原生上游测试套件的结果及当前限制。当适配器正确地拒绝不安全执行时,经审查的命令可以为 null。测试用例也可以携带有界的适配器审计选项,例如显式的 Go 构建目标,以确保重复测量不受主机环境影响。 corpus:scorecard 会为人工审查呈现评审约定。它会分别报告评审完整度和已评审检查项中的通过率,并显示每个领域的 PASS、FAIL 和 PENDING。使用 npm run corpus:scorecard -- --format json 可查看确定性的 validation-scorecard/v1 视图。这些是验证评审结果,并非对仓库质量的评级。

corpus:measure 会验证检出内容的确切固定 Git SHA,至少运行所选适配器三次,拒绝规范审计偏差,并报告用于更新评分卡的原始耗时、中位耗时、证据链接数量和规范化审计摘要。对于固定的 Python 和 Swift 版本,--profile-phases 默认运行五次,并额外报告遍历与文本读取、项目/构建归属、源代码发现/索引、测试解析/索引,以及证据/分类/产物组装的有序样本和中位数。这些开发阶段耗时仅通过回调报告,绝不会进入 audit/v1、CLI/MCP 审计输出或本地 MCP 诊断信息。

每项适配器性能检查都会单独运行一个生成的 400 个源文件/200 个测试的项目,验证其候选项和证据数量,并强制执行宽松的跨平台回归上限。Rust 门槛还包含一个额外跳过的 src/lib.rs 模块接线目标,该目标用于声明 400 个行为模块。这些合成门槛可补充记录的各仓库语料库分布。

使用 alpha:check 检查适配器支持里程碑。release:check 还会检查打包和已安装二进制文件的就绪情况。

CI 工作流会保留一个稳定的 Linux pr-gate:仅修改文档时运行针对性的约定测试,常规变更运行 npm run alpha:check,涉及分发的变更运行 npm run release:check。仅在运行时和可移植性相关变更时运行 Windows;仅在涉及 Swift 的变更时运行 macOS。合并到 master 后,会在 Linux 上运行完整的发布门禁;手动触发时,则会在三种操作系统上运行完整的发布门禁。

测试包含 evals/expected 下的黄金审计和计划快照,由 evals/fixtures.json 驱动;此外还有共享的适配器一致性检查,用于验证确定性 JSON、可移植路径、证据语义和下游产物的一致性。 JSON 架构和版本化产物的信号注册表位于 schemas/ 下。

有意更改审计行为后,刷新快照:

npm run eval:check
npm run eval:summary
npm run eval:test
npm run eval:update

对照确定性的工具结果,检查模型一致性场景中的锁定字段:

npm run model-consistency:check
npm run model-consistency:json
npm run model-consistency:json -- --profile local-small
npm run model-consistency:compare -- baseline-summary.json candidate-summary.json
npm run model-consistency:stats

CLI 需要 Node 20 或更高版本。默认的冒烟检查可跨平台运行:

npm run smoke

如果尚未安装 Node,仓库仍提供 PowerShell 冒烟检查:

powershell -ExecutionPolicy Bypass -File ./scripts/smoke.ps1

发布前检查软件包内容:

npm run pack:check
npm run bin:check
npm run installed-package:check
npm run distribution:check
npm run release:check

distribution:check 会验证打包和 MCP 元数据准备情况。更严格的 distribution:check:publish 会在发布前验证公开的 npm 和 MCP Registry 标识是否一致。请参阅分发。

## 范围
src/
  core/
    audit-model.ts
    audit-phase-timing.js
    plan-execution-hints.js
    plan-execution-hints.ts
    repository-text-files.js
    report.js
    report.ts
  diagnostics/
    diagnostics.js
  adapters/
    csharp/
      audit.js
    javascript/
      audit.js
      audit.ts
    kotlin/
      audit.js
    python/
      audit.js
    rust/
      audit.js
    swift/
      audit.js
  cli/
    index.js
examples/
  csharp-sdk-project-pair/
  csharp-sdk-unique-pair/
  csharp-sdk-xunit-basic/
  node-vitest-basic/
  express-supertest/
  react-testing-library/
  kotlin-junit-basic/
  kotlin-gradle-groovy-junit/
  kotlin-gradle-module-graph-junit/
  kotlin-maven-junit/
  kotlin-maven-reactor-junit/
  kotlin-maven-wrapper-junit4/
  kotlin-gradle-aggregate-kotest/
  kotlin-gradle-spock/
  kotlin-maven-testng/
  python-pytest-service/
  python-uv-pytest/
  python-poetry-pytest/
  rust-cargo-basic/
  rust-cargo-workspace-basic/
  swift-spm-xctest/
  swift-spm-swift-testing/
  swift-spm-quick-nimble/
  swift-spm-custom-paths/
  swift-spm-alternate-roots/
  swift-bazel-xctest/
  swift-xcode-test-plans/
  vapor-service-tests/
  vapor-mongodb-boundaries/
evals/
  expected/
  model-consistency/
schemas/

JavaScript/TypeScript、PHP、Python、Ruby、Swift、有限范围的 Kotlin/JVM 模块、Go 模块、C# SDK 项目形态以及 Rust Cargo 软件包,均为受支持的适配器验证点。PHP 支持涵盖 PHP Alpha Support 中规定的有限 Composer/PSR-4/PHPUnit 所有权、命令屏蔽和证据规则。Ruby 支持涵盖 Ruby Alpha Support 中规定的有限 Bundler/Minitest/RSpec 所有权和证据规则。Rust 支持包括字面定义且位于仓库内的工作区成员、精确的软件包命令、内置测试所有权、字面模块图、精确排除仅用于测试的模块、直接逻辑模块导入、固有关联调用,以及精确的无条件 crate 根符号重新导出,具体定义见 Rust Alpha Support。C# 支持涵盖一个常规 SDK 风格测试项目,或一个唯一的字面生产/测试项目依赖边,包括有限的原生 xUnit MTP-v2 和 MSTest.Sdk v4 所有权、精确的字面目标成员关系或单跳根别名目标成员关系、一个位于仓库内的直接 *.cs 编译包含项、有限的按目标条件划分的软件包谓词,以及包含无关项目的项目对;还涵盖有限的最近文件构建元数据和静态中心化软件包版本、精确的测试项目命令、归属于可运行主体的直接类型调用、有限的具体局部变量或不可变测试字段接收者、单跳稳定的直接调用、接收者调用或内联 out var 结果断言、有限的异常断言,以及一次同类私有静态测试辅助函数跳转;解决方案所有权仍不在支持范围内。Go 支持包括字面定义且位于仓库内的 go.work 成员、显式静态构建目标选择、有限的标准库/Testify 断言用法、通过具体局部变量和测试辅助函数绑定实现的解析器范围内接收者身份,以及归属于可调用主体的源码证据,具体定义见 Go Alpha Support。Kotlin/JVM 支持仅限于常规 Gradle/Maven 模块和直接声明的聚合图、JUnit、文档规定的 Kotest 通用规范和 Spock 特征变体,或方法级 TestNG,以及标准源集,具体定义见 Kotlin/JVM Alpha Support。

重要运行时入口:

  • CLI:src/cli/index.js
  • MCP 工具定义:src/mcp/tool-definitions.js
  • stdio MCP SDK 服务:src/mcp/stdio.js
  • 本地调用测试框架:src/mcp/invoke.js
  • 发布门禁:scripts/check-release-readiness.js

文档

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。