GitHub
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
作者による説明(英語の原文)
Open eval leaderboard + CI gate for autonomous coding agents (solve, score, trace).
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"forgejudge": {
"command": "uvx",
"args": [
"forgejudge"
]
}
}
}ターミナルでこれを実行します
claude mcp add forgejudge -- uvx forgejudgeプロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"forgejudge": {
"command": "uvx",
"args": [
"forgejudge"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"forgejudge": {
"type": "stdio",
"command": "uvx",
"args": [
"forgejudge"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント ahmedEid1 で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.1.1)がレジストリに届いたのは5 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。
同じカテゴリには:GitHub, Desktop Commander, Cloudflare MCP
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
MCP server for terminal commands, file operations, and process management
Cloudflare MCP servers
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
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 →](./docs/ARCHIVE.md)
▶ Archived leaderboard (frozen 2026-07-02): [forgejudge.ahmedhobeishy.tech](https://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):
| Model | pass@1 | pass@3 | Status today |
|---|---|---|---|
|
llama-3.3-70b-versatile| 98.1% | 100% | retired by Groq 2026-08-16 |
|
gpt-oss-120b| 94.4% | 94.4% | available |
|
llama-3.1-8b-instant| 57.4% | 72.2% | retired by Groq 2026-08-16 |
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.
flowchart TD
G["Golden set · Git-canonical 18 intrinsically-verifiable, mutation-hardened make-CI-green tasks"]
subgraph SOLVER["Single-agent solver"] direction LR L["localize (BM25)"] --> R["repair (LLM router · critic · syntax edit-gate)"] --> V["validate (run tests)"] end
G --> SOLVER SOLVER --> PATCH["unified diff"] SOLVER -. "every step traced" .-> TRACE["OTel → Langfuse per-run trace"]
PATCH --> H["Deterministic harness, in a sandbox apply test_patch + candidate patch · run F2P / P2P RESOLVED iff every FAIL_TO_PASS passes AND every PASS_TO_PASS stays green SWE-bench-style grading on a contamination-resistant task set · stricter on skips · cheat-resistant"]
H --> STORE["Run store Neon + pgvector"] STORE --> LB["Leaderboard pass@1 / pass@3 · cost · tokens · trace link"] H --> GATE["Multi-seed CI gate a PR that lowers the resolution rate fails the build"]
style G stroke:#3fb950,stroke-width:2px style H stroke:#4cc2ff,stroke-width:2px style GATE stroke:#f0883e,stroke-width:2px
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.RESOLVED_FULL rule and is verified equivalent to `swebench.harness.grading` on real PASS/FAIL/ERROR/XFAIL outcomes in CI — and *deliberately stricter* on a skipped FAIL_TO_PASS: swebench 4.1.0 rates a skipped oracle test RESOLVED_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.$0. The sweep ran nightly until the archive; it is manual (workflow_dispatch) now.invoke_agent → retrieval / chat / execute_tool, gen_ai.usage.*, a gen_ai.evaluation.result pass/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.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.
flowchart TD
PR["Pull request / commit"] --> GG["Gold-integrity gate deterministic · $0 · re-grade all gold patches"] GG -->|"any gold task unresolved"| F1["fail — the harness broke"] GG -->|"all gold tasks resolved"| OK1["harness intact"]
CRON["On-demand multi-seed sweep"] --> SEEDS["run the agent × N seeds → one resolution rate per seed"] SEEDS --> RG["Regression gate small-sample CI (Student-t / Wilson)"] BASE["baseline_scores.json per-seed reference"] --> RG RG -->|"candidate CI upper bound < baseline CI lower bound"| F2["❌ fail — real regression"] RG -->|"overlapping · equal · improved"| OK2["✓ no regression"]
style GG stroke:#4cc2ff,stroke-width:2px style RG stroke:#f0883e,stroke-width:2px
Prereq: uv (Python 3.12 is provisioned for you) — curl -LsSf https://astral.sh/uv/install.sh | sh.
git clone https://github.com/ahmedEid1/forgejudge && cd forgejudge
uv sync # Python 3.12, deps via uv
uv run python -m forgejudge.harness.runner_actions --patch-source gold # 18/18 resolved
uv run python - <<'PY' from forgejudge.golden.loader import load_tasks from forgejudge.agent.solver import solve from forgejudge.harness.grade import grade task = {t.instance_id: t for t in load_tasks("golden/dataset.jsonl")}["fixture-semver-001"] res = solve(task, run_id="demo", budget_usd=0.10, seed=0) print(res.status, "→ resolved:", grade(task, res.patch).resolved) PY
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.
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).
# Library + the `forgejudge` CLI (selftest / mcp / info):
pip install forgejudge forgejudge selftest # deterministic harness check — 18/18 resolved, no key forgejudge mcp # MCP server over stdio (needs the [mcp] extra)
uvx --from "forgejudge[mcp]" forgejudge mcp
Optional extras (installed only when you need them):
| Extra | Pulls in | For |
|---|---|---|
forgejudge[harness] | swebench | the swebench-equivalence grading check |
forgejudge[mcp] | fastmcp | the MCP server (forgejudge mcp) |
forgejudge[playground] | fastapi, uvicorn, httpx | the guarded live playground API (self-host; the hosted instance is no longer maintained) |
pip install "forgejudge[mcp]" # one extra
pip install "forgejudge[harness,mcp]" # several
forgejudge selftest and forgejudge info work with the base install — no extras, no API key, no network.
$0 free-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.冒頭だけを表示しています。続きはリポジトリで読めます