
FailTrace
io.github.LBarimi由 GitHub 账号 LBarimi 发布v1.5.0更新于 Oct 24, 2026
Debugging experiments for coding agents: reproduce failures and verify fixes with test evidence.
概览
FailTrace 是一个本地 MCP 服务器,帮助编码代理复现偶发测试失败、保存基线,并用测试证据验证修复方案。
- 可以做什么
- 捕获失败的测试或失败信息并重复运行,建立有上限的基线,并在多次试验间保留失败特征。对比正常与失败试验,在 Git 历史中查找引入失败的改动,并最小化复现所需的输入。针对已保存的基线验证补丁,区分已观察到、正常样本与不确定的结果。无需重跑命令即可读取已保存的试验与日志页面,并把一次调查打包为可重放的包。
- 适用场景
- 适用于测试偶发失败、代理即将修改代码时,先捕获失败再对照检查修复。也适合跟踪某个 NUnit 或 Unity 测试直到修复完成,或排查是哪次 Git 改动引入了回归。
- 运行要求
- 通过 npx 启动的本地 stdio 进程,需要 Node.js 22.12 或更高版本及 npm。需在项目目录中运行,例如使用 mcp 子命令并指定项目绝对路径。不需要 AI API、账号或遥测;上下文捕获与二分查找依赖 Git。
安装
在 SourceWeft 中
- 打开 控制台中的 FailTrace,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
FailTrace
Reproduce the failure. Check the fix.
A test fails intermittently. Your coding agent changes the code. One passing retry leaves you guessing.
FailTrace repeats the same check, saves a failing baseline, and checks the proposed fix against it. Use the CLI or MCP tools to get trial results, a smaller reproducer, and evidence your agent can inspect before accepting a patch.
Local execution. No AI API, account, or telemetry required. Keep your existing test runner and assertions.
Quick start
With Node.js 22.12+ and npm, run this in any working directory:
[FailTrace demo: capture a failure, reduce its input, reject an unrelated crash, and check a patch]
Static walkthrough · Static poster · Demo guide
The demo reduces six input items to ["BUG"], rejects a patch that crashes for another reason, and checks a working patch. It saves the evidence in .failtrace/ and prints a replay command.
For coding agents
Connect the local stdio MCP server through your client's configuration:
Copy the MCP configuration and check the connection →
Your client launches this command. Running it alone in a terminal waits for MCP requests. The guide includes Windows setup.
Then ask your agent:
Use FailTrace to capture this test failure before editing. Choose the exact test or failure message, save a bounded baseline, and inspect the matching trial. After the change, verify against that baseline and explain any unrelated errors or incomplete evidence.
The seven MCP tools share the CLI's Core engine. They retain the failure signature and investigation evidence across repetition, comparison, regression search, minimization, verification and replay. Agents can retrieve saved trial and log pages without rerunning the command. Shell-capable agents can also use the CLI with --json.
[MCP workflow: capture the target, inspect saved stderr, and verify a declared patch]
The agent can inspect the saved failure before checking the patch.
Recheck an existing unit test
Follow an exact NUnit or Unity test through a fix. Each attempt gets a fresh NUnit 3 report. Missing or skipped tests and unrelated failures stay inconclusive, so an agent cannot accept them as evidence that the selected test passed.
Connect your test or try the original EditMode example →
NUnit support is included in 1.3.0 through CLI and MCP. The documented Unity validation covers the Windows EditMode example.
[NUnit evidence: a failing baseline, a passing candidate, and a skipped test kept inconclusive]
The selected test stays the same; a skipped report is not accepted as a passing test.
Use it on your own failure
From your project, replace the command and message with your own:
Run this before editing in a Git project. --capture-context records source identity for Verify; outside Git, select files with --context-source. Each trial saves its output, and exit 1 can mean the target was captured successfully. Then edit and verify the patch →
Command reference · Literal executable arguments · Reusable project scripts
[A reduced input packaged with a replay entry point reproduces the target failure]
The demo's bundle reproduces its original failure with exit 1. Keep the source, input and replay together; supply the target's prerequisites when packaging your own investigation.
What the results establish
FailTrace reports observations under the chosen settings. Verify separates a target observed, a healthy sample without that target, and inconclusive evidence. Bisect reports a sampled first-parent boundary; minimization rechecks its result without promising the smallest possible input.
The demo shows controlled example outcomes, not performance measurements. A passing sample does not prove a bug is gone.
Commands run with your permissions, and process cleanup is best effort. Retained stdout/stderr is capped by default at 16 MiB per trial and 256 MiB per run or bisect/minimization. Previous investigations accumulate separately. Review logs, commands and selected files before sharing; bundles still require the target's dependencies and setup.
Result and exit-code reference · Resource limits · Storage inventory · Bundle guide
Availability and contributing
The quick start uses npm's latest release; the verified version is 1.5.0. MCP configuration and repeatable installation examples keep that exact version pinned: installation options, GitHub release, and MCP Registry entry.
Version 1.5.0 adds: short run references, Verify readiness and next-step guidance, and intermittent-minimization guidance. See the changelog.
Documentation: choose your next task →
Development instructions · Compatibility · Roadmap · Third-party notices
来源:README.md,提交 2fc59dd
工具
0版本历史
1- v1.5.0最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分