
Forgejudge
io.github.ahmedEid1由 GitHub 账号 ahmedEid1 发布v0.1.1更新于 Oct 25, 2026
Open eval leaderboard + CI gate for autonomous coding agents (solve, score, trace).
概览
已归档的 MCP 服务器,通过 stdio 提供 ForgeJudge 这一面向自主编码智能体的开放评测框架与排行榜。
- 可以做什么
- 运行 ForgeJudge 框架自检,报告黄金任务是否仍判定为已解决
- 用配置的模型求解黄金集任务,并对生成的补丁做确定性评分
- 通过该包的 MCP 服务器访问已冻结的排行榜快照与运行数据
- 提供库与命令行入口,用于批量评测、回归门禁和框架检查
- 适用场景
- 仅当你希望从助手中查看或复用 ForgeJudge 评测框架及其冻结排行榜时适用,例如重新评分补丁或研究其方法。该项目已归档且不再维护,不适合用于持续的评测工作。
- 运行要求
- 以 stdio 在本地运行,通常通过 uvx 加 mcp 附加依赖启动,需要 uv 和 Python 3.12。求解任务需要以 GROQ_API_KEY 提供的 Groq API 密钥;自检和 info 命令无需密钥或网络。完整重跑还涉及归档文档中所述的数据库与部署密钥。
安装
在 SourceWeft 中
- 打开 控制台中的 Forgejudge,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
ForgeJudge
An open leaderboard and CI gate for autonomous coding agents — every patch runs in a sandbox, every run is traced, every regression fails the build.
📦 Archived (2026-09-28). ForgeJudge is no longer maintained and nothing runs on a schedule any more. The leaderboard is frozen at the last complete sweep (2026-07-02, 162 runs). Two of its three models have since been retired by Groq. Archive notes & how to rerun it in a fork →
[CI] [regression gate] [license: MIT] [python 3.12]
▶ Archived leaderboard (frozen 2026-07-02): forgejudge.ahmedhobeishy.tech · playground · methodology · model swap · MCP registry
Final results — the last complete sweep, 2026-07-02 (run #34; hidden-test = the agent never sees the failing test; $0 free tier; same harness, swap the model; 18 tasks × 3 seeds = 54 runs/model, 162 total):
With the harness fixed, the 8B model trails the 70B/120B models by ~40 points (the model-swap signal), and
pass@3 ≥ pass@1reflects run-to-run variance — which is exactly why the CI gate is multi-seed. Every run's patch is inruns.jsonand re-grades to the same verdict. Traces were kept in Langfuse while the project ran; they are not public, so the trace links do not open for other viewers. Details, later unpublished sweeps and the retired models:docs/ARCHIVE.md.
ForgeJudge is an open-source autonomous software-engineering agent that proved its quality in public on every commit while it was active: a hand-rolled single-agent solver, a deterministic execution-as-judge harness, a leaderboard with per-run traces (now a frozen snapshot), and a CI gate that blocks regressions — all on a $0 / self-hostable stack against a contamination-resistant, intrinsically-verifiable golden set.
The engineered harness, observability, and gate are the deliverable — not a high resolution rate. A
$0free-model agent will score modestly by design. We prove value with a model-swap comparison: the score rises with a better model while the harness stays fixed.
How it works
- Solver — a single, phase-structured loop (
localize → repair → validate), not a multi-agent swarm: cheapest, most deterministic, most debuggable. BM25 localization, an LLM router over free tiers, a syntax edit-gate, a cheap critic pre-filter, and a cost/step budget with autosubmit. - Harness — encodes the SWE-bench
RESOLVED_FULLrule and is verified equivalent toswebench.harness.gradingon real PASS/FAIL/ERROR/XFAIL outcomes in CI — and deliberately stricter on a skippedFAIL_TO_PASS: swebench 4.1.0 rates a skipped oracle testRESOLVED_FULL(a skip is neither success nor failure), so a patch that makes the oracle skip rather than run grades as resolved. ForgeJudge counts a skip as not-passed, closing that cheat vector. Patches are also cheat-resistant: the canonical test files are restored before grading, so a patch can't neuter the oracle. - Golden set — 15 purpose-built post-cutoff fixtures + 3 tasks mined from the author's own repos (real commit SHAs, MIT/own license — zero leak/copyleft risk). Each is mutation-hardened: a wrong fix to the patched region is caught (16 mutation-hardened at mean score 0.94; 2 inconclusive for regex/string code; 0 weak).
- Sandbox / CI / sweep — GitHub Actions on a public repo does triple duty (ephemeral isolated VM sandbox + regression gate + leaderboard sweep) at
$0. The sweep ran nightly until the archive; it is manual (workflow_dispatch) now. - Observability — OpenTelemetry GenAI spans (
invoke_agent → retrieval / chat / execute_tool,gen_ai.usage.*, agen_ai.evaluation.resultpass/fail verdict) exported to Langfuse Cloud; every run recorded a trace link while the project ran. The traces are not public, so the links do not open for other viewers.
Two gates, two jobs
The deterministic gold-integrity gate (does the harness itself still work?) is kept separate from the stochastic regression gate (did a change make the agent meaningfully worse?) — because gold grading is deterministic and must never be averaged with noisy per-seed runs.
Quickstart
Prereq: uv (Python 3.12 is provisioned for you) — curl -LsSf https://astral.sh/uv/install.sh | sh.
Fast tests: uv run pytest -m "not slow". Full golden validation + mutation hardening: uv run pytest -m slow. Sweep one model without a database: uv run --env-file .env python -m forgejudge.eval.sweep --model groq/openai/gpt-oss-120b --seeds 0,1,2 --no-store --out runs-0.jsonl. The full rerun guide (secrets, database, deploy) is in docs/ARCHIVE.md. See CONTRIBUTING.md for the full pytest marker map and dev workflow.
Install
Working on the agent/harness itself? Clone and uv sync (above). To consume ForgeJudge as a package:
The published
forgejudge==0.1.0predates the archive: itsmodels.yamlstill lists the retiredllama-3.3-70b-versatilein several role chains.solve()still works through itsgpt-oss-120bprimary, but for the current chains install from git (pip install git+https://github.com/ahmedEid1/forgejudge).
Optional extras (installed only when you need them):
forgejudge selftest and forgejudge info work with the base install — no extras, no API key, no network.
Six objections, pre-empted
- "Your benchmark is contaminated / cherry-picked." The golden set is freshly authored / post-cutoff, sourced only from the author's own repos + fixtures (no third-party leak surface), and mutation-hardened so a wrong patch can't pass. SWE-bench Verified is now widely held contaminated — OpenAI stopped reporting it (2026-02); >32% of "passed" cases leaked the solution and ~31% passed on weak tests. Decontamination here is a documented, tested property — not a footnote.
- "Thin wrapper around an LLM / a framework." The orchestrator is hand-rolled (no LangChain): the control loop, the sandbox-and-score harness, the cheat-resistant grader, the mutation hardener, the OTel instrumentation, and the multi-seed CI gate are the work.
- "Your resolution rate is low vs SOTA." SOTA is ~88–94% with premium models and budgets; a
$0free-model number is modest on purpose. The deliverable is the engineered system; the model-swap comparison (score rises with a better model, harness fixed) is the proof. - "Is it actually autonomous or staged?" Every run recorded an OpenTelemetry/Langfuse trace, and every stored patch re-grades deterministically to its recorded verdict. The replay-first playground demos a real solve without exposing cost/abuse surface.
- "Three agent projects — one-trick pony?" One eval methodology — golden set + judge + traces + CI gate — across three domains at rising autonomy (Lumen → Thoth → ForgeJudge).
- Determinism. temperature=0 does not guarantee determinism (pass@1 varies 2–6pp). The scorer is fully deterministic; the gate is multi-seed (fail only when the candidate's CI upper bound is below the baseline's CI lower bound), so flaky single runs don't break the build.
Repository layout
License
MIT © 2026 Ahmed Hobeishy. Imports and attributes the MIT-licensed swebench grading harness.
来源:README.md,提交 f46967e
工具
0版本历史
1- v0.1.1最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分