From f4ab6fa8c01ae8b473171155401921d22e059091 Mon Sep 17 00:00:00 2001 From: Hangzhi Date: Sun, 15 Feb 2026 21:18:22 +0000 Subject: [PATCH 1/2] Add contributors page with data collection pipeline - Add three Python scripts to collect merged PR data, author info, and generate ranked contribution aggregates from laude-institute/harbor - Create /contributors page with Harbor Contributors, Adapter Contributors, and Acknowledgments sections using the same tile grid pattern as /registry - Add Contributors nav tab in the shared layout --- PROGRESS.md | 61 + collect_pr_data.py | 118 + collect_user_data.py | 54 + generate_contributions.py | 81 + harbor_contribution.json | 2367 ++++++++++++++++ public/harbor_contribution.json | 2367 ++++++++++++++++ raw_github_users_data.json | 572 ++++ raw_pr_data.json | 2378 +++++++++++++++++ .../(home)/contributors/contributor-card.tsx | 49 + src/app/(home)/contributors/layout.tsx | 11 + src/app/(home)/contributors/page.tsx | 120 + src/lib/layout.shared.tsx | 5 + 12 files changed, 8183 insertions(+) create mode 100644 PROGRESS.md create mode 100644 collect_pr_data.py create mode 100644 collect_user_data.py create mode 100644 generate_contributions.py create mode 100644 harbor_contribution.json create mode 100644 public/harbor_contribution.json create mode 100644 raw_github_users_data.json create mode 100644 raw_pr_data.json create mode 100644 src/app/(home)/contributors/contributor-card.tsx create mode 100644 src/app/(home)/contributors/layout.tsx create mode 100644 src/app/(home)/contributors/page.tsx diff --git a/PROGRESS.md b/PROGRESS.md new file mode 100644 index 0000000..9fb3e77 --- /dev/null +++ b/PROGRESS.md @@ -0,0 +1,61 @@ +# Contributors Page Implementation Progress + +## Status: Complete + +## Steps Completed + +### 1. PR Data Collection (`collect_pr_data.py`) +- Fetches all merged PRs from `laude-institute/harbor` via GitHub API (`gh` CLI) +- Classifies each PR as `adapter`, `task`, `engineering`, or `other` based on title and labels +- Fetches per-PR additions/deletions stats +- Output: `raw_pr_data.json` (264 merged PRs) + +### 2. User Data Collection (`collect_user_data.py`) +- Reads unique author handles from `raw_pr_data.json` +- Fetches each user's GitHub profile (name, email, company/affiliation) +- Output: `raw_github_users_data.json` (95 unique authors) + +### 3. Contribution Aggregation (`generate_contributions.py`) +- Merges PR data and user data, keyed by GitHub handle +- Computes per-contributor: total additions, total deletions, PR count, PR list +- Ranks contributors by total additions (descending) +- Output: `harbor_contribution.json` (95 contributors) + +### 4. Contributors Page (Next.js) +- **Nav tab**: Added "Contributors" link in `src/lib/layout.shared.tsx` +- **Layout**: `src/app/(home)/contributors/layout.tsx` (mirrors registry layout) +- **Page**: `src/app/(home)/contributors/page.tsx` with three sections: + - **Harbor Contributors** — contributors with non-adapter PRs (67 contributors) + - **Harbor Adapter Contributors** — contributors with adapter PRs (37 contributors) + - **Acknowledgments** — 2077AI compute support credit +- **Card component**: `src/app/(home)/contributors/contributor-card.tsx` + - Links to GitHub profile + - Shows name, handle, affiliation, PR count, additions/deletions + - Follows the same grid tile pattern as the registry page +- **Data**: `public/harbor_contribution.json` (statically imported by page) +- **Design**: Follows the contributor list format of https://www.tbench.ai/contributors + +### 5. Verification +- TypeScript type check (`tsc --noEmit`): passes with zero errors +- Build compilation: successful (registry page fails due to pre-existing missing Supabase env vars, unrelated to contributors page) + +## Files Created/Modified + +### New Files +| File | Description | +|------|-------------| +| `collect_pr_data.py` | Script to collect merged PR data | +| `collect_user_data.py` | Script to collect PR author info | +| `generate_contributions.py` | Script to aggregate and rank contributions | +| `raw_pr_data.json` | Raw PR data (264 PRs) | +| `raw_github_users_data.json` | Raw user profile data (95 users) | +| `harbor_contribution.json` | Final aggregated contribution data | +| `public/harbor_contribution.json` | Copy for Next.js static import | +| `src/app/(home)/contributors/layout.tsx` | Contributors page layout | +| `src/app/(home)/contributors/page.tsx` | Contributors page component | +| `src/app/(home)/contributors/contributor-card.tsx` | Contributor card component | + +### Modified Files +| File | Change | +|------|--------| +| `src/lib/layout.shared.tsx` | Added "Contributors" nav link | diff --git a/collect_pr_data.py b/collect_pr_data.py new file mode 100644 index 0000000..fa6ceba --- /dev/null +++ b/collect_pr_data.py @@ -0,0 +1,118 @@ +#!/usr/bin/env python3 +"""Collect all merged PR data from laude-institute/harbor via GitHub API. + +Outputs raw_pr_data.json with fields: + pr_number, pr_url, author_github_handle, additions, deletions, pr_title, pr_type +""" + +import json +import subprocess +import sys + + +REPO = "laude-institute/harbor" +PER_PAGE = 100 + + +def classify_pr(title: str, labels: list[str]) -> str: + """Classify PR type based on title and labels.""" + title_lower = title.lower() + label_names = [l.lower() for l in labels] + + if any(k in title_lower for k in ["adapter", "[adapter]"]): + return "adapter" + if any(k in label_names for k in ["adapter"]): + return "adapter" + if any(k in title_lower for k in ["task", "[task]"]): + return "task" + if any(k in label_names for k in ["task"]): + return "task" + if any(k in title_lower for k in [ + "ci", "cd", "infra", "build", "deps", "chore", "refactor", + "test", "lint", "format", "config", "[engineering]", + ]): + return "engineering" + if any(k in label_names for k in ["engineering", "infrastructure", "ci/cd"]): + return "engineering" + return "other" + + +def fetch_merged_prs() -> list[dict]: + """Fetch all merged PRs using gh CLI with pagination.""" + # --paginate concatenates multiple JSON arrays; use jq-style flattening + cmd = [ + "gh", "api", "--paginate", + "--jq", ".[] | select(.merged_at != null)", + f"/repos/{REPO}/pulls?state=closed&per_page={PER_PAGE}", + ] + print(f"Fetching merged PRs from {REPO}...") + result = subprocess.run(cmd, capture_output=True, text=True, check=True) + + # Each line from --jq is a separate JSON object + # But with --jq and array expansion, they come as newline-delimited JSON + all_prs = [] + decoder = json.JSONDecoder() + text = result.stdout.strip() + pos = 0 + while pos < len(text): + # Skip whitespace + while pos < len(text) and text[pos] in ' \t\n\r': + pos += 1 + if pos >= len(text): + break + obj, end = decoder.raw_decode(text, pos) + all_prs.append(obj) + pos = end + + print(f"Found {len(all_prs)} merged PRs") + return all_prs + + +def get_pr_details(pr_number: int) -> dict: + """Fetch additions/deletions for a specific PR.""" + cmd = [ + "gh", "api", + f"/repos/{REPO}/pulls/{pr_number}", + ] + result = subprocess.run(cmd, capture_output=True, text=True, check=True) + return json.loads(result.stdout) + + +def main(): + merged_prs = fetch_merged_prs() + + pr_data = [] + total = len(merged_prs) + + for i, pr in enumerate(merged_prs): + pr_number = pr["number"] + print(f"[{i + 1}/{total}] Fetching details for PR #{pr_number}...") + + # Get detailed PR info for additions/deletions + details = get_pr_details(pr_number) + + labels = [label["name"] for label in pr.get("labels", [])] + + entry = { + "pr_number": pr_number, + "pr_url": pr["html_url"], + "author_github_handle": pr["user"]["login"], + "additions": details.get("additions", 0), + "deletions": details.get("deletions", 0), + "pr_title": pr["title"], + "pr_type": classify_pr(pr["title"], labels), + } + pr_data.append(entry) + + # Sort by PR number descending + pr_data.sort(key=lambda x: x["pr_number"], reverse=True) + + output_path = "raw_pr_data.json" + with open(output_path, "w") as f: + json.dump(pr_data, f, indent=2) + + print(f"\nWrote {len(pr_data)} PRs to {output_path}") + + +if __name__ == "__main__": + main() diff --git a/collect_user_data.py b/collect_user_data.py new file mode 100644 index 0000000..42e3d04 --- /dev/null +++ b/collect_user_data.py @@ -0,0 +1,54 @@ +#!/usr/bin/env python3 +"""Collect GitHub user info for all PR authors. + +Reads raw_pr_data.json to get unique author handles, then fetches +user profiles via GitHub API. + +Outputs raw_github_users_data.json with fields: + github_handle, email, name, affiliation +""" + +import json +import subprocess +import sys + + +def get_user_info(handle: str) -> dict: + """Fetch GitHub user profile.""" + cmd = ["gh", "api", f"/users/{handle}"] + result = subprocess.run(cmd, capture_output=True, text=True) + if result.returncode != 0: + print(f" Warning: could not fetch user {handle}: {result.stderr.strip()}") + return {} + return json.loads(result.stdout) + + +def main(): + with open("raw_pr_data.json") as f: + pr_data = json.load(f) + + # Collect unique author handles + handles = sorted(set(pr["author_github_handle"] for pr in pr_data)) + print(f"Found {len(handles)} unique authors") + + users = [] + for i, handle in enumerate(handles): + print(f"[{i + 1}/{len(handles)}] Fetching user info for {handle}...") + info = get_user_info(handle) + + users.append({ + "github_handle": handle, + "email": info.get("email") or "", + "name": info.get("name") or handle, + "affiliation": info.get("company") or "", + }) + + output_path = "raw_github_users_data.json" + with open(output_path, "w") as f: + json.dump(users, f, indent=2) + + print(f"\nWrote {len(users)} users to {output_path}") + + +if __name__ == "__main__": + main() diff --git a/generate_contributions.py b/generate_contributions.py new file mode 100644 index 0000000..9df72f7 --- /dev/null +++ b/generate_contributions.py @@ -0,0 +1,81 @@ +#!/usr/bin/env python3 +"""Generate harbor_contribution.json by merging PR data and user data. + +Reads raw_pr_data.json and raw_github_users_data.json, groups by author, +ranks by total additions, and outputs harbor_contribution.json. + +Output format per contributor: +{ + "github_handle": str, + "email": str, + "name": str, + "affiliation": str, + "pr_count": int, + "total_additions": int, + "total_deletions": int, + "pr_list": [ + {"pr_url": str, "pr_title": str, "pr_type": str} + ] +} +""" + +import json + + +def main(): + with open("raw_pr_data.json") as f: + pr_data = json.load(f) + + with open("raw_github_users_data.json") as f: + user_data = json.load(f) + + # Build user lookup + user_map = {u["github_handle"]: u for u in user_data} + + # Group PRs by author + contributors: dict[str, dict] = {} + + for pr in pr_data: + handle = pr["author_github_handle"] + + if handle not in contributors: + user_info = user_map.get(handle, {}) + contributors[handle] = { + "github_handle": handle, + "email": user_info.get("email", ""), + "name": user_info.get("name", handle), + "affiliation": user_info.get("affiliation", ""), + "pr_count": 0, + "total_additions": 0, + "total_deletions": 0, + "pr_list": [], + } + + c = contributors[handle] + c["pr_count"] += 1 + c["total_additions"] += pr["additions"] + c["total_deletions"] += pr["deletions"] + c["pr_list"].append({ + "pr_url": pr["pr_url"], + "pr_title": pr["pr_title"], + "pr_type": pr["pr_type"], + }) + + # Rank by total additions (descending) + ranked = sorted(contributors.values(), key=lambda x: x["total_additions"], reverse=True) + + output_path = "harbor_contribution.json" + with open(output_path, "w") as f: + json.dump(ranked, f, indent=2) + + print(f"Wrote {len(ranked)} contributors to {output_path}") + + # Print summary + print("\nTop 10 contributors by additions:") + for i, c in enumerate(ranked[:10]): + print(f" {i + 1}. {c['name']} (@{c['github_handle']}) - " + f"+{c['total_additions']}/-{c['total_deletions']} across {c['pr_count']} PRs") + + +if __name__ == "__main__": + main() diff --git a/harbor_contribution.json b/harbor_contribution.json new file mode 100644 index 0000000..3e302c6 --- /dev/null +++ b/harbor_contribution.json @@ -0,0 +1,2367 @@ +[ + { + "github_handle": "EstelYang", + "email": "", + "name": "EstelYang", + "affiliation": "", + "pr_count": 1, + "total_additions": 68583, + "total_deletions": 67032, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/351", + "pr_title": "[Ready for Review] Adapter: QCircuitBench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "chenzizhao", + "email": "", + "name": "Zizhao Chen", + "affiliation": "", + "pr_count": 4, + "total_additions": 37076, + "total_deletions": 71989, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/518", + "pr_title": "Revise bixbench README with known issue and task details", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/472", + "pr_title": "Update registry with bixbench-cli", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/451", + "pr_title": "[ready for review] bixbench-cli addition", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/154", + "pr_title": "[Ready for review - final fix] Adapter: BixBench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "RishiDesai", + "email": "", + "name": "Rishi Desai", + "affiliation": "", + "pr_count": 3, + "total_additions": 33046, + "total_deletions": 27018, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/512", + "pr_title": "registry for swe-gen-js", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/230", + "pr_title": "Serialize Docker image builds to prevent parallel build race condition", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/200", + "pr_title": "Allow custom BaseLLM backend for Agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "EtashGuha", + "email": "", + "name": "EtashGuha", + "affiliation": "", + "pr_count": 2, + "total_additions": 32570, + "total_deletions": 3336, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/113", + "pr_title": "update train on traces", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/38", + "pr_title": "added triage for together context limit issue", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Waterpine", + "email": "sbian8@wisc.edu", + "name": "Song Bian", + "affiliation": "University of Wisconsin-Madison", + "pr_count": 1, + "total_additions": 25831, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/307", + "pr_title": "[Ready for Review] mmau adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Ternura143", + "email": "", + "name": "Zixuan Zhu", + "affiliation": "NTU", + "pr_count": 1, + "total_additions": 24649, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/358", + "pr_title": "[Ready for Review - Final Fix] Adapter: bfcl", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "alexgshaw", + "email": "alexgshaw64@gmail.com", + "name": "Alex Shaw", + "affiliation": "Laude Institute", + "pr_count": 23, + "total_additions": 18837, + "total_deletions": 10958, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/603", + "pr_title": "Add Responses API support for Terminus", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/495", + "pr_title": "Claude/add package dashboard lxufb", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/476", + "pr_title": "Improve terminal bench mapper functionality", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/468", + "pr_title": "feat(hooks): add job-level named hook methods for trial lifecycle events", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/394", + "pr_title": "Remove verbose flag and show task counts", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/388", + "pr_title": "Postgres registry", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/362", + "pr_title": "Fix AttributeError when accessing default environment type in CLI", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/361", + "pr_title": "Change -a shorthand in start-env from --agent to --all", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/360", + "pr_title": "Restrict environment variables passed to Oracle container", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/359", + "pr_title": "Add include-standard-metadata option to tasks init", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/327", + "pr_title": "Make internet configurable from task config", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/326", + "pr_title": "Add CLAUDE.md documentation for AI assistants", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/325", + "pr_title": "feat: add support for custom environment implementations via import path", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/318", + "pr_title": "Revert to include env vars in docker.", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/70", + "pr_title": "Alexgshaw/support docker compose", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/52", + "pr_title": "Warn users about Modal Python installation", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/43", + "pr_title": "QOL upgrades from running a billion ICLR experiments", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/24", + "pr_title": "Rename package, strip out db, reformat results and configs, change base environment methods.", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/22", + "pr_title": "Daytona", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/18", + "pr_title": "Alex-temp", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/14", + "pr_title": "Add Claude Code GitHub Workflow", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/9", + "pr_title": "Create cli command for single trial", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/1", + "pr_title": "Working branch", + "pr_type": "other" + } + ] + }, + { + "github_handle": "li-boxuan", + "email": "", + "name": "Boxuan Li", + "affiliation": "Microsoft", + "pr_count": 47, + "total_additions": 18670, + "total_deletions": 6305, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/475", + "pr_title": "Revert litellm hack for OpenHands", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/420", + "pr_title": "Fix: Remove duplicate error_msg in OutputLengthExceededError handling", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/364", + "pr_title": "Fix unit test failure in lite_llm.py", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/350", + "pr_title": "Add get model limit utility and fix Terminus-2 error message", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/341", + "pr_title": "Bump OpenHands to 1.0.0 in tests and update gold trajectories & traces", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/313", + "pr_title": "Fix ruff check on fork", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/274", + "pr_title": "Add CI gate for ruff linter on modified files", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/272", + "pr_title": "Do not pass host env variables to Docker environment", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/265", + "pr_title": "Terminus-2: Support optional interleaved thinking", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/237", + "pr_title": "GPU support + example task that requires GPU", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/225", + "pr_title": "Trajectories & traces for OpenHands: handle tool calling", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/184", + "pr_title": "Terminus-2 Trajectory: raw_content & linear_history modes", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/183", + "pr_title": "Export SFT traces from trajectories", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/177", + "pr_title": "Fix error message in Terminus trajectory", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/174", + "pr_title": "Add integration tests for exported traces", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/169", + "pr_title": "OpenHands trajectory fixes: tool call definitions and bookkeeping steps", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/156", + "pr_title": "Terminus-2: Add model_info parameter to register LLM info", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/141", + "pr_title": "Terminus-2: Full trajectories, rollout details, bug fixes and E2E tests", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/132", + "pr_title": "Terminus trajectory: Remove first user message", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/125", + "pr_title": "Terminus 2: prompt token ids and reasoning content", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/122", + "pr_title": "Fix metric discrepancy in openhands golden trajectory", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/118", + "pr_title": "Clean up integration tests + Drop source_call_id for terminus trajectory", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/117", + "pr_title": "Terminus-2: Include erroneous json response in trajectory message field", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/105", + "pr_title": "Fix test.sh in example task", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/95", + "pr_title": "CI: remove redundant test stage", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/93", + "pr_title": "Gemini-CLI to generate trajectory in ATIF", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/84", + "pr_title": "Terminus-2 to return rollout details (completion_token_ids, log_probs)", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/81", + "pr_title": "Terminus-2: Remove token counting hack", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/79", + "pr_title": "Fix token counting in terminus_2 summarisation subagent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/78", + "pr_title": "Mini SWE Agent: use forked version + generate trajectory following ATIF spec", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/76", + "pr_title": "Polish trajectory model field descriptions", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/71", + "pr_title": "Openhands to generate trajectory in ATIF", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/65", + "pr_title": "Add trajectory validator and tests", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/62", + "pr_title": "Handle exceptions on non-critical paths", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/60", + "pr_title": "Terminus-2 Agent: metrics reporting & trajectory generation", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/56", + "pr_title": "[RFC] Agent Trajectory Interchange Format (ATIF) Specification", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/55", + "pr_title": "Fix docker exec deadlock for tasks with large output", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/51", + "pr_title": "Fix ruff violations and add linting to CI", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/50", + "pr_title": "Terminus-2 to pass session_id", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/48", + "pr_title": "Regenerate corrupt uv.lock", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/45", + "pr_title": "Include logprobs in AgentContext", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/37", + "pr_title": "Return cost in AgentResult", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/33", + "pr_title": "Port docker cache clean up logic from terminal-bench", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/32", + "pr_title": "Add token count for OpenHands agent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/31", + "pr_title": "Fix & clean up tests", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/30", + "pr_title": "Minor change to openhands agent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/29", + "pr_title": "Agent refactoring - jinja2 templating, versioning, tests, CI, and more", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "MichaelY310", + "email": "", + "name": "Michael Yang", + "affiliation": "", + "pr_count": 1, + "total_additions": 15684, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/96", + "pr_title": "[Ready For Review] Adding SWTBench Adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "jakozaur", + "email": "jacek@migdal.pl", + "name": "Jacek Migdal", + "affiliation": "", + "pr_count": 2, + "total_additions": 13564, + "total_deletions": 13120, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/662", + "pr_title": "Add otel-bench benchmark to registry.json", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/661", + "pr_title": "Add binary-audit benchmark to registry.json", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Anjiang-Wei", + "email": "", + "name": "Anjiang Wei", + "affiliation": "Stanford University", + "pr_count": 2, + "total_additions": 13415, + "total_deletions": 10, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/418", + "pr_title": "Remove repository path setup from run_adapter.py to fix ruff error", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/395", + "pr_title": "[Ready for Review] Adapter: SATBench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "terryyz", + "email": "terryzhuo25@gmail.com", + "name": "Terry Yue Zhuo", + "affiliation": "", + "pr_count": 1, + "total_additions": 10081, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/330", + "pr_title": "[Ready for Review - fixing] Adapter: BigCodeBench-Hard", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "robertzhidealx", + "email": "0xrobertzhang@gmail.com", + "name": "Robert Zhang", + "affiliation": "", + "pr_count": 1, + "total_additions": 9252, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/249", + "pr_title": "Adapters: SWE-bench Pro", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Slimshilin", + "email": "", + "name": "Slimshilin", + "affiliation": "", + "pr_count": 7, + "total_additions": 9179, + "total_deletions": 10887, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/580", + "pr_title": "Add parity API instructions for adapter experiments", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/579", + "pr_title": "[Ready to merge] OPENAI_BASE_URL support for codex.", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/516", + "pr_title": "remove aider-polyglot and livecodebench duplicates", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/263", + "pr_title": "Fix EvoEval Adapter forked_repo Link", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/98", + "pr_title": "Adapters readme template", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/83", + "pr_title": "Adapter README template", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/82", + "pr_title": "Fix -t to -p. Polish README", + "pr_type": "other" + } + ] + }, + { + "github_handle": "harshraj172", + "email": "", + "name": "Harsh Raj", + "affiliation": "Khoury College, Northeastern University ", + "pr_count": 5, + "total_additions": 8873, + "total_deletions": 241, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/458", + "pr_title": "add codex trajectory.json back", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/115", + "pr_title": "Add swesmith adapter", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/86", + "pr_title": "claude-code atif formatting", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/77", + "pr_title": "Codex ATIF trajectory", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/58", + "pr_title": "Add the `aider-polyglot` adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "davidheineman", + "email": "david@davidheineman.com", + "name": "David Heineman", + "affiliation": "", + "pr_count": 1, + "total_additions": 8656, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/100", + "pr_title": "[Ready for Review] Adapter: SWE-Lancer", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Michaelsqj", + "email": "shenqijia11@gmail.com", + "name": "Qijia Shen", + "affiliation": "", + "pr_count": 1, + "total_additions": 8263, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/577", + "pr_title": "add seta env to registry.json", + "pr_type": "other" + } + ] + }, + { + "github_handle": "killthefullmoon", + "email": "killthefullmoon@gmail.com", + "name": "Hui Shen", + "affiliation": "University of Michigan", + "pr_count": 1, + "total_additions": 7849, + "total_deletions": 904, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/432", + "pr_title": "[Ready for Review] Adapter: DS1000", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "digitsisyph", + "email": "", + "name": "Gary?", + "affiliation": "", + "pr_count": 3, + "total_additions": 7109, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/153", + "pr_title": "Add adapter init command", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/143", + "pr_title": "Add trajectory viewer", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/69", + "pr_title": "Add adapter for evoeval", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "hanxu12", + "email": "", + "name": "Han Xu", + "affiliation": "", + "pr_count": 1, + "total_additions": 7030, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/380", + "pr_title": "[Ready for Review] Adapter: LawBench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "linhaowei1", + "email": "", + "name": "Haowei Lin", + "affiliation": "Peking University", + "pr_count": 6, + "total_additions": 6653, + "total_deletions": 47, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/440", + "pr_title": "[Ready for Review] Adapter: Algotune", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/438", + "pr_title": "[BugFix] Fix hello-world registry format", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/424", + "pr_title": "[FIX] Update Parity for Adapter: AutoCodeBench", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/292", + "pr_title": "[fix adapter] Revise the parity results for SLDBench", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/151", + "pr_title": "[adapter] Add SLDBench", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/106", + "pr_title": "Add Autocodebench adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "self-supervisor", + "email": "", + "name": "self-supervisor", + "affiliation": "@VmaxAI ", + "pr_count": 1, + "total_additions": 6266, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/563", + "pr_title": "Vmax tasks", + "pr_type": "task" + } + ] + }, + { + "github_handle": "TheMikeMerrill", + "email": "", + "name": "TheMikeMerrill", + "affiliation": "", + "pr_count": 6, + "total_additions": 6136, + "total_deletions": 1352, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/40", + "pr_title": "t2 context improperly queried", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/27", + "pr_title": "Fix token tracking", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/20", + "pr_title": "Mikeam/agents two", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/19", + "pr_title": "Add logging to terminus", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/16", + "pr_title": "Initial terminus2", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/2", + "pr_title": "Add DB implementation", + "pr_type": "other" + } + ] + }, + { + "github_handle": "aht", + "email": "", + "name": "Hai-Anh Trinh", + "affiliation": "grammarly.com", + "pr_count": 1, + "total_additions": 5038, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/256", + "pr_title": "[Ready for Review] Adapter: REASONING GYM ", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "neginraoof", + "email": "", + "name": "Negin Raoof", + "affiliation": "UC Berkeley", + "pr_count": 5, + "total_additions": 4637, + "total_deletions": 302, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/279", + "pr_title": "Adding swe-agent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/243", + "pr_title": "Inline swe-agent inference config", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/242", + "pr_title": "Add SWE-agent configuration example", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/49", + "pr_title": "updated terminus 2 summarization fallback", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/44", + "pr_title": "Swebench adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "junhongmit", + "email": "junhonghust@gmail.com", + "name": "Junhong Lin", + "affiliation": "Massachusetts Institute of Technology", + "pr_count": 1, + "total_additions": 3521, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/97", + "pr_title": "[Adapter] Adding USACO Adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "octaviaguo", + "email": "", + "name": "octaviaguo", + "affiliation": "", + "pr_count": 2, + "total_additions": 3471, + "total_deletions": 153, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/446", + "pr_title": "Update StrongReject adapter with new registry", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/363", + "pr_title": "[Ready for Review] Adapter: StrongReject", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "HaishuoFang", + "email": "fanghaishuo@gmail.com", + "name": "Haishuo", + "affiliation": "TU Darmstadt", + "pr_count": 2, + "total_additions": 2966, + "total_deletions": 87, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/434", + "pr_title": "Fix ruff check error for financeagent Adapter", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/267", + "pr_title": "[Ready for Review - final discussion] Adapter: FinanceAgent", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "penfever", + "email": "", + "name": "Ben Feuer", + "affiliation": "", + "pr_count": 16, + "total_additions": 2734, + "total_deletions": 202, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/526", + "pr_title": "OpenHands Improvements", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/465", + "pr_title": "[FEATURE] Close old log handlers after trial returns", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/339", + "pr_title": "[FEATURE] Improve LiteLLM Handling of vLLM Hosted Models ", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/337", + "pr_title": "[TINY] Increase tmux history limit", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/336", + "pr_title": "[TINY] Warn user if required model_info is left unset", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/276", + "pr_title": "[FEATURE] Make asciinema recording optional", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/235", + "pr_title": "add verifier output and instructions", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/217", + "pr_title": "Extract result during trace exports", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/163", + "pr_title": "Enhance episode conversation extraction logic", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/160", + "pr_title": "BUGFIX: Numeric rather than lexical sorting of episodes", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/147", + "pr_title": "Robust termination of aiohttp events wrapping Daytona containers", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/144", + "pr_title": "Oracle Agent Hardening", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/142", + "pr_title": "Penfever/handle vllm context length errors correctly", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/119", + "pr_title": "guard traces format acquisition", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/42", + "pr_title": "Penfever/all scripts", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/36", + "pr_title": "Penfever/working", + "pr_type": "other" + } + ] + }, + { + "github_handle": "DannyGooo", + "email": "", + "name": "Yonghui Liu", + "affiliation": "", + "pr_count": 2, + "total_additions": 2716, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/452", + "pr_title": "[Ready for Review] Adapter: Spider2 - Experiment with Harbor-supported agents", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/436", + "pr_title": "[Ready for Review] Adapter: Spider2", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "StevenDillmann", + "email": "", + "name": "Steven Dillmann", + "affiliation": "Stanford University", + "pr_count": 10, + "total_additions": 2601, + "total_deletions": 28, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/638", + "pr_title": "Revise citation section in README.md", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/637", + "pr_title": "Remove version in CITATION.cff", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/566", + "pr_title": "Update CITATION.cff", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/564", + "pr_title": "Update title in citation section in README.md", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/560", + "pr_title": "Fix author formatting in citation", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/556", + "pr_title": "Update citation section in README.md", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/444", + "pr_title": "Make reasoning parameters configurable via kwargs", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/260", + "pr_title": "Add initial CITATION.cff file", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/146", + "pr_title": "[Adapter] Update ReplicationBench to include masked manuscripts of papers", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/92", + "pr_title": "[Adapter] Adding ReplicationBench adapter to Harbor", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Ji-Pengliang", + "email": "", + "name": "Pengliang Ji", + "affiliation": "", + "pr_count": 3, + "total_additions": 2230, + "total_deletions": 3, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/550", + "pr_title": "Add --n-attempts 2 to arc_agi_2 reproduction command", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/401", + "pr_title": "update arc-agi-2 parity test pr", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/220", + "pr_title": "[Ready for Review - fixing] Adapter: ARC-AGI-2 benchmark", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "audreycs", + "email": "", + "name": "Yuxin Wang", + "affiliation": "Dartmouth College", + "pr_count": 1, + "total_additions": 2158, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/88", + "pr_title": "[Adapter] Adding Livecodebench adpter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Dongzhikang", + "email": "", + "name": "Zhikang Dong", + "affiliation": "", + "pr_count": 1, + "total_additions": 2140, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/89", + "pr_title": "adapter for Deveval", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "crystalxyz", + "email": "", + "name": "Crystal Zhou", + "affiliation": "", + "pr_count": 1, + "total_additions": 2124, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/201", + "pr_title": "[Ready for review - Final Review] Adapter: LAB-Bench FigQA", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "xianliu", + "email": "lxjsj@fedoraproject.org", + "name": "Xian Liu", + "affiliation": "Meetchances/ex-Bytedance/ex-Redhat", + "pr_count": 1, + "total_additions": 2116, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/402", + "pr_title": "[Ready for Review] Add crustbench adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Rebabit", + "email": "", + "name": "Rebecca Deng", + "affiliation": "", + "pr_count": 1, + "total_additions": 1883, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/311", + "pr_title": "[Ready for Review - Final Fix] Adapter: MMMLU", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "1171-jpg", + "email": "", + "name": "140", + "affiliation": "", + "pr_count": 1, + "total_additions": 1836, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/403", + "pr_title": "[Ready for Review] Adapter: Ineqmath", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "omi-n", + "email": "", + "name": "nabil", + "affiliation": "University of Washington, Microsoft", + "pr_count": 1, + "total_additions": 1771, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/99", + "pr_title": "[Adapter] Add mlgym-bench adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Hangzhi", + "email": "hangzhiweiwei@gmail.com", + "name": "Yiwei Dai", + "affiliation": "", + "pr_count": 1, + "total_additions": 1768, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/346", + "pr_title": "[Ready for review -Final Fix] Quixbugs adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "kobe0938", + "email": "xiaokunchen0@gmail.com", + "name": "Kobe Chen", + "affiliation": "Stanford U", + "pr_count": 1, + "total_additions": 1761, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/257", + "pr_title": "[Ready for Review - fixing] Adapter: Humanevalfix", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "neverSettles", + "email": "", + "name": "Chris Settles", + "affiliation": "Operative AI, Inc", + "pr_count": 1, + "total_additions": 1748, + "total_deletions": 122, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/549", + "pr_title": "ATIF 1.5->1.6: Support multimodal trajectories", + "pr_type": "other" + } + ] + }, + { + "github_handle": "XuandongZhao", + "email": "csxuandongzhao@gmail.com", + "name": "Xuandong Zhao", + "affiliation": "UC Berkeley", + "pr_count": 1, + "total_additions": 1723, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/264", + "pr_title": "[Adapter] GPQA-Diamond Adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "kanazawa-asyncio", + "email": "", + "name": "Kanaza", + "affiliation": "", + "pr_count": 1, + "total_additions": 1208, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/376", + "pr_title": "feat(registry): add Alibaba terminal-bench-pro dataset", + "pr_type": "other" + } + ] + }, + { + "github_handle": "cliangyu", + "email": "", + "name": "Leon Chen", + "affiliation": "Stanford University", + "pr_count": 1, + "total_additions": 1197, + "total_deletions": 19, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/26", + "pr_title": "Migrate 11 agents from terminal-bench to sandboxes", + "pr_type": "other" + } + ] + }, + { + "github_handle": "LithiumDA", + "email": "", + "name": "Shanda Li", + "affiliation": "Carnegie Mellon University", + "pr_count": 4, + "total_additions": 1147, + "total_deletions": 15, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/466", + "pr_title": "fix (adapter): registery", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/139", + "pr_title": "[Adapter] fix (codepde): remove tmux & asciinema from Dockerfile", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/102", + "pr_title": "[CodePDE Adapter] fix: linting", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/90", + "pr_title": "[Adapter] Adding CodePDE adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "giansegato", + "email": "", + "name": "gian", + "affiliation": "", + "pr_count": 2, + "total_additions": 999, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/212", + "pr_title": "feat: Add GKE/Kubernetes environment support", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/135", + "pr_title": "Add extended thinking mode support for Anthropic models", + "pr_type": "other" + } + ] + }, + { + "github_handle": "orfeas-menis", + "email": "", + "name": "Orfeas Menis", + "affiliation": "", + "pr_count": 1, + "total_additions": 887, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/149", + "pr_title": "Adapter for AIME", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "ibercovich", + "email": "", + "name": "Ivan Bercovich", + "affiliation": "ScOp Venture Capital", + "pr_count": 8, + "total_additions": 671, + "total_deletions": 66, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/319", + "pr_title": "feat(viewer): round rewards to 4 decimal places", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/298", + "pr_title": "made newline a requirement in prompt since small LLMs were failing", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/251", + "pr_title": "feat(mini-swe-agent): pass through OPENAI_API_BASE for custom endpoints", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/148", + "pr_title": "Updated checker and debugger", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/74", + "pr_title": "Update model name in gemini-cli-job.yaml", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/73", + "pr_title": "Replace 'sb' with 'harbor' in README", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/68", + "pr_title": "Update sandbox creation timeout configuration", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/47", + "pr_title": "porting sb tasks check and debug from terminal-bench", + "pr_type": "task" + } + ] + }, + { + "github_handle": "mieciu", + "email": "", + "name": "Przemys\u0142aw Hejman", + "affiliation": "blindroot.com", + "pr_count": 4, + "total_additions": 612, + "total_deletions": 54, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/515", + "pr_title": "Fix openrouter model name ", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/246", + "pr_title": "Support `--env daytona --ek network_block_all=true` in `harbor run`", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/214", + "pr_title": "Fix `--no-delete` in Docker environment", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/170", + "pr_title": "Adding CompileBench dataset/adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "dot-agi", + "email": "ps4534@nyu.edu", + "name": "Pratyush Shukla", + "affiliation": "Abundant AI", + "pr_count": 2, + "total_additions": 450, + "total_deletions": 21, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/589", + "pr_title": "Fix Docker environment directory nesting and stale container bugs", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/539", + "pr_title": "Fix NVM sourcing failure with strict mode", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "connor-cognition", + "email": "", + "name": "connor-cognition", + "affiliation": "", + "pr_count": 2, + "total_additions": 293, + "total_deletions": 8, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/470", + "pr_title": "feat: add secret and volume support to modal environment", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/457", + "pr_title": "chore: pin modal sdk to `1.3.1.dev9`", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "CharlieFRuan", + "email": "", + "name": "Charlie Ruan", + "affiliation": "UC Berkeley", + "pr_count": 8, + "total_additions": 288, + "total_deletions": 94, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/686", + "pr_title": "[Terminus] Fix `n_episodes` counting when error out", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/653", + "pr_title": "[Terminus] Do not retry on ContextLengthExceededError when enable_summarize=False", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/651", + "pr_title": "[Env] Make sandbox lifecycle timeouts configurable via environment kwargs", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/650", + "pr_title": "[Modal] Add tenacity to modal just like daytona", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/593", + "pr_title": "[LLMs] Remove ParseError as it is not used anywhere", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/592", + "pr_title": "[Trial] Remove EnvironmentBuildTimeoutError since it is not used", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/561", + "pr_title": "[Env] Add EnvironmentConfig.suppress_override_warnings and Terminus kwarg suppress_max_turns_warning", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/524", + "pr_title": "[terminus] Remove _logger and use BaseAgent logger directly", + "pr_type": "other" + } + ] + }, + { + "github_handle": "james-rl", + "email": "", + "name": "james-rl", + "affiliation": "", + "pr_count": 3, + "total_additions": 285, + "total_deletions": 119, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/467", + "pr_title": "Prefer prebuilt images when running with runloop env", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/210", + "pr_title": "Added resource config for runloop env", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/189", + "pr_title": "Fixed runloop env", + "pr_type": "other" + } + ] + }, + { + "github_handle": "stared", + "email": "pmigdal@gmail.com", + "name": "Piotr Migda\u0142", + "affiliation": "ex: Quantum Flytrap CTO & cofounder", + "pr_count": 2, + "total_additions": 285, + "total_deletions": 27, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/367", + "pr_title": "Viewer cost estimate with LiteLLM", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/308", + "pr_title": "Add smart port handling for `harbor view`", + "pr_type": "other" + } + ] + }, + { + "github_handle": "dines-rl", + "email": "", + "name": "Alexander Dines", + "affiliation": "Run Loop", + "pr_count": 1, + "total_additions": 275, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/46", + "pr_title": "Add Runloop Environment", + "pr_type": "other" + } + ] + }, + { + "github_handle": "rotemtam", + "email": "", + "name": "Rotem Tamir", + "affiliation": "honeybadge.co", + "pr_count": 2, + "total_additions": 220, + "total_deletions": 7, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/262", + "pr_title": "fix: `--agent-import-path` ignored when `-a` not specified", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/259", + "pr_title": "fix: add Alpine Linux support for claude-code agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "pashpashpash", + "email": "nik@cline.bot", + "name": "pashpashpash", + "affiliation": "vault77.ai", + "pr_count": 1, + "total_additions": 178, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/198", + "pr_title": "cline cli integration", + "pr_type": "other" + } + ] + }, + { + "github_handle": "anishathalye", + "email": "me@anishathalye.com", + "name": "Anish Athalye", + "affiliation": "@joinhandshake", + "pr_count": 1, + "total_additions": 174, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/655", + "pr_title": "Add MCP support for OpenHands", + "pr_type": "other" + } + ] + }, + { + "github_handle": "pfbyjy", + "email": "", + "name": "Meji A", + "affiliation": "", + "pr_count": 2, + "total_additions": 109, + "total_deletions": 23, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/333", + "pr_title": "Update claude_code.py to allow access to all tools", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/75", + "pr_title": "Convert Terminal-Bench docker-compose to Harbor format in mapper", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "richardzhuang0412", + "email": "", + "name": "Richard Zhuang", + "affiliation": "", + "pr_count": 1, + "total_additions": 91, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/181", + "pr_title": "Added patching fix for openhand when handling together context limit error", + "pr_type": "other" + } + ] + }, + { + "github_handle": "nandatheguntupalli", + "email": "", + "name": "Nanda Guntupalli", + "affiliation": "", + "pr_count": 1, + "total_additions": 74, + "total_deletions": 11, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/399", + "pr_title": "Enhance documentation and structure in CLAUDE.md and README.md", + "pr_type": "other" + } + ] + }, + { + "github_handle": "AkshayVenkataraman", + "email": "akshayv2k@gmail.com", + "name": "Akshay Venkataraman", + "affiliation": "", + "pr_count": 3, + "total_additions": 45, + "total_deletions": 9, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/247", + "pr_title": "initial commit to enable agent setup timeout override", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/226", + "pr_title": "improved workdir parse logic", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/195", + "pr_title": "made tmux viewport size configurable", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "bstee615", + "email": "benjaminjsteenhoek@gmail.com", + "name": "Benjamin Steenhoek", + "affiliation": "@Microsoft", + "pr_count": 1, + "total_additions": 43, + "total_deletions": 20, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/269", + "pr_title": "Support Azure OpenAI endpoints for LiteLLM agents", + "pr_type": "other" + } + ] + }, + { + "github_handle": "tlongwell-block", + "email": "", + "name": "tlongwell-block", + "affiliation": "", + "pr_count": 2, + "total_additions": 41, + "total_deletions": 15, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/191", + "pr_title": "support additional inference providers for the goose agent to allow benching open models", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/188", + "pr_title": "enable goose developer and todo extensions in harbor recipe", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "rootCircle", + "email": "", + "name": "Lab Rat", + "affiliation": "@uber, @iiitl ", + "pr_count": 1, + "total_additions": 40, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/343", + "pr_title": "Fix: normalize `--path .` to absolute to prevent invalid Docker tags", + "pr_type": "other" + } + ] + }, + { + "github_handle": "luxinyu1", + "email": "", + "name": "Solaris", + "affiliation": "ISCAS", + "pr_count": 2, + "total_additions": 27, + "total_deletions": 11, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/506", + "pr_title": "Fix Claude Code trajectory extraction when subagents are used", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/236", + "pr_title": "Add custom API base URL support for claude code agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "rohitpaulk", + "email": "rohitpaulk@gmail.com", + "name": "Paul Kuruvilla", + "affiliation": "@codecrafters-io", + "pr_count": 1, + "total_additions": 23, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/499", + "pr_title": "[Ready for review] Raise RuntimeError for agent setup failures", + "pr_type": "other" + } + ] + }, + { + "github_handle": "WingchunSiu", + "email": "", + "name": "Michael Siu", + "affiliation": "University of Southern California", + "pr_count": 1, + "total_additions": 21, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/652", + "pr_title": "Add llm_call_kwargs to Terminus2 for per-call LLM parameter", + "pr_type": "other" + } + ] + }, + { + "github_handle": "josancamon19", + "email": "", + "name": "Joan Cabezas", + "affiliation": "", + "pr_count": 1, + "total_additions": 18, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/643", + "pr_title": "fix: Gemini CLI ATIF trajectory conversion for harbor view", + "pr_type": "other" + } + ] + }, + { + "github_handle": "avelanarius", + "email": "", + "name": "Piotr Grabowski", + "affiliation": "@QuesmaOrg", + "pr_count": 1, + "total_additions": 16, + "total_deletions": 16, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/275", + "pr_title": "[Adapter] Update CompileBench adapter, fixing oracle on Daytona", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "ZhengShenghan", + "email": "shenghan.zheng.gr@dartmouth.edu", + "name": "Shenghan Zheng", + "affiliation": "Dartmouth College", + "pr_count": 1, + "total_additions": 12, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/535", + "pr_title": "[Ready for Review] BUG-FIX: fix gemini-cli skill loading failure", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Yiozolm", + "email": "m202310581@xs.ustb.edu.cn", + "name": "Fangzhou Yi", + "affiliation": "University of Science and Technology Beijing", + "pr_count": 1, + "total_additions": 10, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/464", + "pr_title": "Add support for GLM models", + "pr_type": "other" + } + ] + }, + { + "github_handle": "MarcoRossignoli", + "email": "", + "name": "Marco Rossignoli", + "affiliation": "@microsoft", + "pr_count": 1, + "total_additions": 9, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/507", + "pr_title": "Support large dataset downloads on Windows", + "pr_type": "other" + } + ] + }, + { + "github_handle": "ethanlshen", + "email": "ethans03@cs.washington.edu", + "name": "Ethan Shen", + "affiliation": "", + "pr_count": 1, + "total_additions": 9, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/94", + "pr_title": "Added summarization toggle", + "pr_type": "other" + } + ] + }, + { + "github_handle": "lurf21", + "email": "", + "name": "Ruofan Lu", + "affiliation": "The Chinese University of Hong Kong", + "pr_count": 2, + "total_additions": 7, + "total_deletions": 5, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/700", + "pr_title": "fix openhands reasoning_effort", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/284", + "pr_title": "fix: pass env variables when oracle agent executes the command", + "pr_type": "other" + } + ] + }, + { + "github_handle": "dpedchenko", + "email": "", + "name": "Dmitrii Pedchenko", + "affiliation": "FAIR @ Meta MSL", + "pr_count": 1, + "total_additions": 7, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/194", + "pr_title": "Minor change to Modal backend", + "pr_type": "other" + } + ] + }, + { + "github_handle": "tmacie", + "email": "", + "name": "tmacie", + "affiliation": "", + "pr_count": 1, + "total_additions": 6, + "total_deletions": 8, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/586", + "pr_title": "Fix modal gpu selection", + "pr_type": "other" + } + ] + }, + { + "github_handle": "dzorlu", + "email": "", + "name": "Deniz", + "affiliation": "", + "pr_count": 1, + "total_additions": 6, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/232", + "pr_title": "feat: store all messages", + "pr_type": "other" + } + ] + }, + { + "github_handle": "ai-jz", + "email": "", + "name": "ai-jz", + "affiliation": "", + "pr_count": 1, + "total_additions": 6, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/173", + "pr_title": "feat: Add Claude Code OAuth token support for subscription users", + "pr_type": "other" + } + ] + }, + { + "github_handle": "beran-t", + "email": "", + "name": "Berry", + "affiliation": "", + "pr_count": 1, + "total_additions": 5, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/627", + "pr_title": "Fix E2B exec() throwing on non-zero exit codes", + "pr_type": "other" + } + ] + }, + { + "github_handle": "ifoukarakis", + "email": "", + "name": "Ioannis Foukarakis", + "affiliation": "", + "pr_count": 1, + "total_additions": 5, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/323", + "pr_title": "fix: default registry URL reference", + "pr_type": "other" + } + ] + }, + { + "github_handle": "KunWuLuan", + "email": "kunwuluan@gmail.com", + "name": "GreenHand", + "affiliation": "", + "pr_count": 1, + "total_additions": 4, + "total_deletions": 3, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/658", + "pr_title": "fix(swe_agent): support multiple API key variables from model name", + "pr_type": "other" + } + ] + }, + { + "github_handle": "xdotli", + "email": "xiangyi@benchflow.ai", + "name": "Xiangyi Li", + "affiliation": "@benchflow-ai", + "pr_count": 1, + "total_additions": 4, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/459", + "pr_title": "fix(claude-code): CLAUDE_CONFIG_DIR giving errors for accessing .claude folder", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "thdxr", + "email": "mail@thdxr.com", + "name": "Dax", + "affiliation": "", + "pr_count": 2, + "total_additions": 4, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/316", + "pr_title": "Change opencode command to output JSON format", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/121", + "pr_title": "Enable OPENCODE_FAKE_VCS for OpenCode agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Chesars", + "email": "", + "name": "Cesar Garcia", + "affiliation": "", + "pr_count": 2, + "total_additions": 4, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/176", + "pr_title": "fix: flaky terminus_2 timeout test", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/175", + "pr_title": "docs: Fix broken link in README.md", + "pr_type": "other" + } + ] + }, + { + "github_handle": "HiromuHota", + "email": "hiromu.hota@gmail.com", + "name": "Hiromu Hota", + "affiliation": "https://snorkel.ai/", + "pr_count": 2, + "total_additions": 4, + "total_deletions": 7, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/131", + "pr_title": "Add content from run-tests.sh correctly during migration", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/130", + "pr_title": "Allow difficulty: unknown for compat w/TB1.0", + "pr_type": "other" + } + ] + }, + { + "github_handle": "vatsj", + "email": "jacobstavrianos@gmail.com", + "name": "Jacob Stavrianos", + "affiliation": "", + "pr_count": 1, + "total_additions": 3, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/481", + "pr_title": "suppress daytona container auto-shutdown", + "pr_type": "other" + } + ] + }, + { + "github_handle": "likaixin2000", + "email": "likaixin@u.nus.edu", + "name": "Kaixin Li", + "affiliation": "National University of Singapore", + "pr_count": 1, + "total_additions": 2, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/513", + "pr_title": "Fix error message formatting for invalid agent names", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "michaelrglass", + "email": "", + "name": "Michael Glass", + "affiliation": "IBM", + "pr_count": 2, + "total_additions": 2, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/489", + "pr_title": "Fix docker environment to treat empty docker_image as no prebuilt image", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/456", + "pr_title": "Stderr was being lost by redirecting to stdout after the tee command", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Guangy627", + "email": "", + "name": "Guangy627", + "affiliation": "", + "pr_count": 1, + "total_additions": 2, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/485", + "pr_title": "Fix/trajectorydump", + "pr_type": "other" + } + ] + }, + { + "github_handle": "paraliine", + "email": "", + "name": "Xiaoxuan Peng", + "affiliation": "CQU", + "pr_count": 2, + "total_additions": 2, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/216", + "pr_title": "Fix Terminus2 tmux logging path", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/215", + "pr_title": "Fix blocking tmux send-keys execution", + "pr_type": "other" + } + ] + }, + { + "github_handle": "tyler-griggs", + "email": "", + "name": "Tyler Griggs", + "affiliation": "", + "pr_count": 1, + "total_additions": 2, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/21", + "pr_title": "Update .gitignore", + "pr_type": "other" + } + ] + }, + { + "github_handle": "liyuyun-lyy", + "email": "", + "name": "liyuyun-lyy", + "affiliation": "Alibaba", + "pr_count": 1, + "total_additions": 1, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/168", + "pr_title": "fix: use yolo mode to pass hello world test", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "santaboi", + "email": "", + "name": "Yang Fan Chiang", + "affiliation": "University of Maryland College Park", + "pr_count": 1, + "total_additions": 1, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/104", + "pr_title": "Fix Terminal Bench 2.0 description typo", + "pr_type": "other" + } + ] + } +] \ No newline at end of file diff --git a/public/harbor_contribution.json b/public/harbor_contribution.json new file mode 100644 index 0000000..3e302c6 --- /dev/null +++ b/public/harbor_contribution.json @@ -0,0 +1,2367 @@ +[ + { + "github_handle": "EstelYang", + "email": "", + "name": "EstelYang", + "affiliation": "", + "pr_count": 1, + "total_additions": 68583, + "total_deletions": 67032, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/351", + "pr_title": "[Ready for Review] Adapter: QCircuitBench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "chenzizhao", + "email": "", + "name": "Zizhao Chen", + "affiliation": "", + "pr_count": 4, + "total_additions": 37076, + "total_deletions": 71989, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/518", + "pr_title": "Revise bixbench README with known issue and task details", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/472", + "pr_title": "Update registry with bixbench-cli", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/451", + "pr_title": "[ready for review] bixbench-cli addition", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/154", + "pr_title": "[Ready for review - final fix] Adapter: BixBench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "RishiDesai", + "email": "", + "name": "Rishi Desai", + "affiliation": "", + "pr_count": 3, + "total_additions": 33046, + "total_deletions": 27018, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/512", + "pr_title": "registry for swe-gen-js", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/230", + "pr_title": "Serialize Docker image builds to prevent parallel build race condition", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/200", + "pr_title": "Allow custom BaseLLM backend for Agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "EtashGuha", + "email": "", + "name": "EtashGuha", + "affiliation": "", + "pr_count": 2, + "total_additions": 32570, + "total_deletions": 3336, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/113", + "pr_title": "update train on traces", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/38", + "pr_title": "added triage for together context limit issue", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Waterpine", + "email": "sbian8@wisc.edu", + "name": "Song Bian", + "affiliation": "University of Wisconsin-Madison", + "pr_count": 1, + "total_additions": 25831, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/307", + "pr_title": "[Ready for Review] mmau adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Ternura143", + "email": "", + "name": "Zixuan Zhu", + "affiliation": "NTU", + "pr_count": 1, + "total_additions": 24649, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/358", + "pr_title": "[Ready for Review - Final Fix] Adapter: bfcl", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "alexgshaw", + "email": "alexgshaw64@gmail.com", + "name": "Alex Shaw", + "affiliation": "Laude Institute", + "pr_count": 23, + "total_additions": 18837, + "total_deletions": 10958, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/603", + "pr_title": "Add Responses API support for Terminus", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/495", + "pr_title": "Claude/add package dashboard lxufb", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/476", + "pr_title": "Improve terminal bench mapper functionality", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/468", + "pr_title": "feat(hooks): add job-level named hook methods for trial lifecycle events", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/394", + "pr_title": "Remove verbose flag and show task counts", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/388", + "pr_title": "Postgres registry", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/362", + "pr_title": "Fix AttributeError when accessing default environment type in CLI", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/361", + "pr_title": "Change -a shorthand in start-env from --agent to --all", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/360", + "pr_title": "Restrict environment variables passed to Oracle container", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/359", + "pr_title": "Add include-standard-metadata option to tasks init", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/327", + "pr_title": "Make internet configurable from task config", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/326", + "pr_title": "Add CLAUDE.md documentation for AI assistants", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/325", + "pr_title": "feat: add support for custom environment implementations via import path", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/318", + "pr_title": "Revert to include env vars in docker.", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/70", + "pr_title": "Alexgshaw/support docker compose", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/52", + "pr_title": "Warn users about Modal Python installation", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/43", + "pr_title": "QOL upgrades from running a billion ICLR experiments", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/24", + "pr_title": "Rename package, strip out db, reformat results and configs, change base environment methods.", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/22", + "pr_title": "Daytona", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/18", + "pr_title": "Alex-temp", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/14", + "pr_title": "Add Claude Code GitHub Workflow", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/9", + "pr_title": "Create cli command for single trial", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/1", + "pr_title": "Working branch", + "pr_type": "other" + } + ] + }, + { + "github_handle": "li-boxuan", + "email": "", + "name": "Boxuan Li", + "affiliation": "Microsoft", + "pr_count": 47, + "total_additions": 18670, + "total_deletions": 6305, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/475", + "pr_title": "Revert litellm hack for OpenHands", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/420", + "pr_title": "Fix: Remove duplicate error_msg in OutputLengthExceededError handling", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/364", + "pr_title": "Fix unit test failure in lite_llm.py", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/350", + "pr_title": "Add get model limit utility and fix Terminus-2 error message", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/341", + "pr_title": "Bump OpenHands to 1.0.0 in tests and update gold trajectories & traces", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/313", + "pr_title": "Fix ruff check on fork", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/274", + "pr_title": "Add CI gate for ruff linter on modified files", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/272", + "pr_title": "Do not pass host env variables to Docker environment", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/265", + "pr_title": "Terminus-2: Support optional interleaved thinking", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/237", + "pr_title": "GPU support + example task that requires GPU", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/225", + "pr_title": "Trajectories & traces for OpenHands: handle tool calling", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/184", + "pr_title": "Terminus-2 Trajectory: raw_content & linear_history modes", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/183", + "pr_title": "Export SFT traces from trajectories", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/177", + "pr_title": "Fix error message in Terminus trajectory", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/174", + "pr_title": "Add integration tests for exported traces", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/169", + "pr_title": "OpenHands trajectory fixes: tool call definitions and bookkeeping steps", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/156", + "pr_title": "Terminus-2: Add model_info parameter to register LLM info", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/141", + "pr_title": "Terminus-2: Full trajectories, rollout details, bug fixes and E2E tests", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/132", + "pr_title": "Terminus trajectory: Remove first user message", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/125", + "pr_title": "Terminus 2: prompt token ids and reasoning content", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/122", + "pr_title": "Fix metric discrepancy in openhands golden trajectory", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/118", + "pr_title": "Clean up integration tests + Drop source_call_id for terminus trajectory", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/117", + "pr_title": "Terminus-2: Include erroneous json response in trajectory message field", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/105", + "pr_title": "Fix test.sh in example task", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/95", + "pr_title": "CI: remove redundant test stage", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/93", + "pr_title": "Gemini-CLI to generate trajectory in ATIF", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/84", + "pr_title": "Terminus-2 to return rollout details (completion_token_ids, log_probs)", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/81", + "pr_title": "Terminus-2: Remove token counting hack", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/79", + "pr_title": "Fix token counting in terminus_2 summarisation subagent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/78", + "pr_title": "Mini SWE Agent: use forked version + generate trajectory following ATIF spec", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/76", + "pr_title": "Polish trajectory model field descriptions", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/71", + "pr_title": "Openhands to generate trajectory in ATIF", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/65", + "pr_title": "Add trajectory validator and tests", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/62", + "pr_title": "Handle exceptions on non-critical paths", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/60", + "pr_title": "Terminus-2 Agent: metrics reporting & trajectory generation", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/56", + "pr_title": "[RFC] Agent Trajectory Interchange Format (ATIF) Specification", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/55", + "pr_title": "Fix docker exec deadlock for tasks with large output", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/51", + "pr_title": "Fix ruff violations and add linting to CI", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/50", + "pr_title": "Terminus-2 to pass session_id", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/48", + "pr_title": "Regenerate corrupt uv.lock", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/45", + "pr_title": "Include logprobs in AgentContext", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/37", + "pr_title": "Return cost in AgentResult", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/33", + "pr_title": "Port docker cache clean up logic from terminal-bench", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/32", + "pr_title": "Add token count for OpenHands agent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/31", + "pr_title": "Fix & clean up tests", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/30", + "pr_title": "Minor change to openhands agent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/29", + "pr_title": "Agent refactoring - jinja2 templating, versioning, tests, CI, and more", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "MichaelY310", + "email": "", + "name": "Michael Yang", + "affiliation": "", + "pr_count": 1, + "total_additions": 15684, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/96", + "pr_title": "[Ready For Review] Adding SWTBench Adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "jakozaur", + "email": "jacek@migdal.pl", + "name": "Jacek Migdal", + "affiliation": "", + "pr_count": 2, + "total_additions": 13564, + "total_deletions": 13120, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/662", + "pr_title": "Add otel-bench benchmark to registry.json", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/661", + "pr_title": "Add binary-audit benchmark to registry.json", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Anjiang-Wei", + "email": "", + "name": "Anjiang Wei", + "affiliation": "Stanford University", + "pr_count": 2, + "total_additions": 13415, + "total_deletions": 10, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/418", + "pr_title": "Remove repository path setup from run_adapter.py to fix ruff error", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/395", + "pr_title": "[Ready for Review] Adapter: SATBench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "terryyz", + "email": "terryzhuo25@gmail.com", + "name": "Terry Yue Zhuo", + "affiliation": "", + "pr_count": 1, + "total_additions": 10081, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/330", + "pr_title": "[Ready for Review - fixing] Adapter: BigCodeBench-Hard", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "robertzhidealx", + "email": "0xrobertzhang@gmail.com", + "name": "Robert Zhang", + "affiliation": "", + "pr_count": 1, + "total_additions": 9252, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/249", + "pr_title": "Adapters: SWE-bench Pro", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Slimshilin", + "email": "", + "name": "Slimshilin", + "affiliation": "", + "pr_count": 7, + "total_additions": 9179, + "total_deletions": 10887, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/580", + "pr_title": "Add parity API instructions for adapter experiments", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/579", + "pr_title": "[Ready to merge] OPENAI_BASE_URL support for codex.", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/516", + "pr_title": "remove aider-polyglot and livecodebench duplicates", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/263", + "pr_title": "Fix EvoEval Adapter forked_repo Link", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/98", + "pr_title": "Adapters readme template", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/83", + "pr_title": "Adapter README template", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/82", + "pr_title": "Fix -t to -p. Polish README", + "pr_type": "other" + } + ] + }, + { + "github_handle": "harshraj172", + "email": "", + "name": "Harsh Raj", + "affiliation": "Khoury College, Northeastern University ", + "pr_count": 5, + "total_additions": 8873, + "total_deletions": 241, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/458", + "pr_title": "add codex trajectory.json back", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/115", + "pr_title": "Add swesmith adapter", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/86", + "pr_title": "claude-code atif formatting", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/77", + "pr_title": "Codex ATIF trajectory", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/58", + "pr_title": "Add the `aider-polyglot` adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "davidheineman", + "email": "david@davidheineman.com", + "name": "David Heineman", + "affiliation": "", + "pr_count": 1, + "total_additions": 8656, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/100", + "pr_title": "[Ready for Review] Adapter: SWE-Lancer", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Michaelsqj", + "email": "shenqijia11@gmail.com", + "name": "Qijia Shen", + "affiliation": "", + "pr_count": 1, + "total_additions": 8263, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/577", + "pr_title": "add seta env to registry.json", + "pr_type": "other" + } + ] + }, + { + "github_handle": "killthefullmoon", + "email": "killthefullmoon@gmail.com", + "name": "Hui Shen", + "affiliation": "University of Michigan", + "pr_count": 1, + "total_additions": 7849, + "total_deletions": 904, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/432", + "pr_title": "[Ready for Review] Adapter: DS1000", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "digitsisyph", + "email": "", + "name": "Gary?", + "affiliation": "", + "pr_count": 3, + "total_additions": 7109, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/153", + "pr_title": "Add adapter init command", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/143", + "pr_title": "Add trajectory viewer", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/69", + "pr_title": "Add adapter for evoeval", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "hanxu12", + "email": "", + "name": "Han Xu", + "affiliation": "", + "pr_count": 1, + "total_additions": 7030, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/380", + "pr_title": "[Ready for Review] Adapter: LawBench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "linhaowei1", + "email": "", + "name": "Haowei Lin", + "affiliation": "Peking University", + "pr_count": 6, + "total_additions": 6653, + "total_deletions": 47, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/440", + "pr_title": "[Ready for Review] Adapter: Algotune", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/438", + "pr_title": "[BugFix] Fix hello-world registry format", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/424", + "pr_title": "[FIX] Update Parity for Adapter: AutoCodeBench", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/292", + "pr_title": "[fix adapter] Revise the parity results for SLDBench", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/151", + "pr_title": "[adapter] Add SLDBench", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/106", + "pr_title": "Add Autocodebench adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "self-supervisor", + "email": "", + "name": "self-supervisor", + "affiliation": "@VmaxAI ", + "pr_count": 1, + "total_additions": 6266, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/563", + "pr_title": "Vmax tasks", + "pr_type": "task" + } + ] + }, + { + "github_handle": "TheMikeMerrill", + "email": "", + "name": "TheMikeMerrill", + "affiliation": "", + "pr_count": 6, + "total_additions": 6136, + "total_deletions": 1352, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/40", + "pr_title": "t2 context improperly queried", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/27", + "pr_title": "Fix token tracking", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/20", + "pr_title": "Mikeam/agents two", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/19", + "pr_title": "Add logging to terminus", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/16", + "pr_title": "Initial terminus2", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/2", + "pr_title": "Add DB implementation", + "pr_type": "other" + } + ] + }, + { + "github_handle": "aht", + "email": "", + "name": "Hai-Anh Trinh", + "affiliation": "grammarly.com", + "pr_count": 1, + "total_additions": 5038, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/256", + "pr_title": "[Ready for Review] Adapter: REASONING GYM ", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "neginraoof", + "email": "", + "name": "Negin Raoof", + "affiliation": "UC Berkeley", + "pr_count": 5, + "total_additions": 4637, + "total_deletions": 302, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/279", + "pr_title": "Adding swe-agent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/243", + "pr_title": "Inline swe-agent inference config", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/242", + "pr_title": "Add SWE-agent configuration example", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/49", + "pr_title": "updated terminus 2 summarization fallback", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/44", + "pr_title": "Swebench adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "junhongmit", + "email": "junhonghust@gmail.com", + "name": "Junhong Lin", + "affiliation": "Massachusetts Institute of Technology", + "pr_count": 1, + "total_additions": 3521, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/97", + "pr_title": "[Adapter] Adding USACO Adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "octaviaguo", + "email": "", + "name": "octaviaguo", + "affiliation": "", + "pr_count": 2, + "total_additions": 3471, + "total_deletions": 153, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/446", + "pr_title": "Update StrongReject adapter with new registry", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/363", + "pr_title": "[Ready for Review] Adapter: StrongReject", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "HaishuoFang", + "email": "fanghaishuo@gmail.com", + "name": "Haishuo", + "affiliation": "TU Darmstadt", + "pr_count": 2, + "total_additions": 2966, + "total_deletions": 87, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/434", + "pr_title": "Fix ruff check error for financeagent Adapter", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/267", + "pr_title": "[Ready for Review - final discussion] Adapter: FinanceAgent", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "penfever", + "email": "", + "name": "Ben Feuer", + "affiliation": "", + "pr_count": 16, + "total_additions": 2734, + "total_deletions": 202, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/526", + "pr_title": "OpenHands Improvements", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/465", + "pr_title": "[FEATURE] Close old log handlers after trial returns", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/339", + "pr_title": "[FEATURE] Improve LiteLLM Handling of vLLM Hosted Models ", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/337", + "pr_title": "[TINY] Increase tmux history limit", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/336", + "pr_title": "[TINY] Warn user if required model_info is left unset", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/276", + "pr_title": "[FEATURE] Make asciinema recording optional", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/235", + "pr_title": "add verifier output and instructions", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/217", + "pr_title": "Extract result during trace exports", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/163", + "pr_title": "Enhance episode conversation extraction logic", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/160", + "pr_title": "BUGFIX: Numeric rather than lexical sorting of episodes", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/147", + "pr_title": "Robust termination of aiohttp events wrapping Daytona containers", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/144", + "pr_title": "Oracle Agent Hardening", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/142", + "pr_title": "Penfever/handle vllm context length errors correctly", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/119", + "pr_title": "guard traces format acquisition", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/42", + "pr_title": "Penfever/all scripts", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/36", + "pr_title": "Penfever/working", + "pr_type": "other" + } + ] + }, + { + "github_handle": "DannyGooo", + "email": "", + "name": "Yonghui Liu", + "affiliation": "", + "pr_count": 2, + "total_additions": 2716, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/452", + "pr_title": "[Ready for Review] Adapter: Spider2 - Experiment with Harbor-supported agents", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/436", + "pr_title": "[Ready for Review] Adapter: Spider2", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "StevenDillmann", + "email": "", + "name": "Steven Dillmann", + "affiliation": "Stanford University", + "pr_count": 10, + "total_additions": 2601, + "total_deletions": 28, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/638", + "pr_title": "Revise citation section in README.md", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/637", + "pr_title": "Remove version in CITATION.cff", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/566", + "pr_title": "Update CITATION.cff", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/564", + "pr_title": "Update title in citation section in README.md", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/560", + "pr_title": "Fix author formatting in citation", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/556", + "pr_title": "Update citation section in README.md", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/444", + "pr_title": "Make reasoning parameters configurable via kwargs", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/260", + "pr_title": "Add initial CITATION.cff file", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/146", + "pr_title": "[Adapter] Update ReplicationBench to include masked manuscripts of papers", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/92", + "pr_title": "[Adapter] Adding ReplicationBench adapter to Harbor", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Ji-Pengliang", + "email": "", + "name": "Pengliang Ji", + "affiliation": "", + "pr_count": 3, + "total_additions": 2230, + "total_deletions": 3, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/550", + "pr_title": "Add --n-attempts 2 to arc_agi_2 reproduction command", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/401", + "pr_title": "update arc-agi-2 parity test pr", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/220", + "pr_title": "[Ready for Review - fixing] Adapter: ARC-AGI-2 benchmark", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "audreycs", + "email": "", + "name": "Yuxin Wang", + "affiliation": "Dartmouth College", + "pr_count": 1, + "total_additions": 2158, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/88", + "pr_title": "[Adapter] Adding Livecodebench adpter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Dongzhikang", + "email": "", + "name": "Zhikang Dong", + "affiliation": "", + "pr_count": 1, + "total_additions": 2140, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/89", + "pr_title": "adapter for Deveval", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "crystalxyz", + "email": "", + "name": "Crystal Zhou", + "affiliation": "", + "pr_count": 1, + "total_additions": 2124, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/201", + "pr_title": "[Ready for review - Final Review] Adapter: LAB-Bench FigQA", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "xianliu", + "email": "lxjsj@fedoraproject.org", + "name": "Xian Liu", + "affiliation": "Meetchances/ex-Bytedance/ex-Redhat", + "pr_count": 1, + "total_additions": 2116, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/402", + "pr_title": "[Ready for Review] Add crustbench adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Rebabit", + "email": "", + "name": "Rebecca Deng", + "affiliation": "", + "pr_count": 1, + "total_additions": 1883, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/311", + "pr_title": "[Ready for Review - Final Fix] Adapter: MMMLU", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "1171-jpg", + "email": "", + "name": "140", + "affiliation": "", + "pr_count": 1, + "total_additions": 1836, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/403", + "pr_title": "[Ready for Review] Adapter: Ineqmath", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "omi-n", + "email": "", + "name": "nabil", + "affiliation": "University of Washington, Microsoft", + "pr_count": 1, + "total_additions": 1771, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/99", + "pr_title": "[Adapter] Add mlgym-bench adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Hangzhi", + "email": "hangzhiweiwei@gmail.com", + "name": "Yiwei Dai", + "affiliation": "", + "pr_count": 1, + "total_additions": 1768, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/346", + "pr_title": "[Ready for review -Final Fix] Quixbugs adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "kobe0938", + "email": "xiaokunchen0@gmail.com", + "name": "Kobe Chen", + "affiliation": "Stanford U", + "pr_count": 1, + "total_additions": 1761, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/257", + "pr_title": "[Ready for Review - fixing] Adapter: Humanevalfix", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "neverSettles", + "email": "", + "name": "Chris Settles", + "affiliation": "Operative AI, Inc", + "pr_count": 1, + "total_additions": 1748, + "total_deletions": 122, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/549", + "pr_title": "ATIF 1.5->1.6: Support multimodal trajectories", + "pr_type": "other" + } + ] + }, + { + "github_handle": "XuandongZhao", + "email": "csxuandongzhao@gmail.com", + "name": "Xuandong Zhao", + "affiliation": "UC Berkeley", + "pr_count": 1, + "total_additions": 1723, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/264", + "pr_title": "[Adapter] GPQA-Diamond Adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "kanazawa-asyncio", + "email": "", + "name": "Kanaza", + "affiliation": "", + "pr_count": 1, + "total_additions": 1208, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/376", + "pr_title": "feat(registry): add Alibaba terminal-bench-pro dataset", + "pr_type": "other" + } + ] + }, + { + "github_handle": "cliangyu", + "email": "", + "name": "Leon Chen", + "affiliation": "Stanford University", + "pr_count": 1, + "total_additions": 1197, + "total_deletions": 19, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/26", + "pr_title": "Migrate 11 agents from terminal-bench to sandboxes", + "pr_type": "other" + } + ] + }, + { + "github_handle": "LithiumDA", + "email": "", + "name": "Shanda Li", + "affiliation": "Carnegie Mellon University", + "pr_count": 4, + "total_additions": 1147, + "total_deletions": 15, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/466", + "pr_title": "fix (adapter): registery", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/139", + "pr_title": "[Adapter] fix (codepde): remove tmux & asciinema from Dockerfile", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/102", + "pr_title": "[CodePDE Adapter] fix: linting", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/90", + "pr_title": "[Adapter] Adding CodePDE adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "giansegato", + "email": "", + "name": "gian", + "affiliation": "", + "pr_count": 2, + "total_additions": 999, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/212", + "pr_title": "feat: Add GKE/Kubernetes environment support", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/135", + "pr_title": "Add extended thinking mode support for Anthropic models", + "pr_type": "other" + } + ] + }, + { + "github_handle": "orfeas-menis", + "email": "", + "name": "Orfeas Menis", + "affiliation": "", + "pr_count": 1, + "total_additions": 887, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/149", + "pr_title": "Adapter for AIME", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "ibercovich", + "email": "", + "name": "Ivan Bercovich", + "affiliation": "ScOp Venture Capital", + "pr_count": 8, + "total_additions": 671, + "total_deletions": 66, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/319", + "pr_title": "feat(viewer): round rewards to 4 decimal places", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/298", + "pr_title": "made newline a requirement in prompt since small LLMs were failing", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/251", + "pr_title": "feat(mini-swe-agent): pass through OPENAI_API_BASE for custom endpoints", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/148", + "pr_title": "Updated checker and debugger", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/74", + "pr_title": "Update model name in gemini-cli-job.yaml", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/73", + "pr_title": "Replace 'sb' with 'harbor' in README", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/68", + "pr_title": "Update sandbox creation timeout configuration", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/47", + "pr_title": "porting sb tasks check and debug from terminal-bench", + "pr_type": "task" + } + ] + }, + { + "github_handle": "mieciu", + "email": "", + "name": "Przemys\u0142aw Hejman", + "affiliation": "blindroot.com", + "pr_count": 4, + "total_additions": 612, + "total_deletions": 54, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/515", + "pr_title": "Fix openrouter model name ", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/246", + "pr_title": "Support `--env daytona --ek network_block_all=true` in `harbor run`", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/214", + "pr_title": "Fix `--no-delete` in Docker environment", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/170", + "pr_title": "Adding CompileBench dataset/adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "dot-agi", + "email": "ps4534@nyu.edu", + "name": "Pratyush Shukla", + "affiliation": "Abundant AI", + "pr_count": 2, + "total_additions": 450, + "total_deletions": 21, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/589", + "pr_title": "Fix Docker environment directory nesting and stale container bugs", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/539", + "pr_title": "Fix NVM sourcing failure with strict mode", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "connor-cognition", + "email": "", + "name": "connor-cognition", + "affiliation": "", + "pr_count": 2, + "total_additions": 293, + "total_deletions": 8, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/470", + "pr_title": "feat: add secret and volume support to modal environment", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/457", + "pr_title": "chore: pin modal sdk to `1.3.1.dev9`", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "CharlieFRuan", + "email": "", + "name": "Charlie Ruan", + "affiliation": "UC Berkeley", + "pr_count": 8, + "total_additions": 288, + "total_deletions": 94, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/686", + "pr_title": "[Terminus] Fix `n_episodes` counting when error out", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/653", + "pr_title": "[Terminus] Do not retry on ContextLengthExceededError when enable_summarize=False", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/651", + "pr_title": "[Env] Make sandbox lifecycle timeouts configurable via environment kwargs", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/650", + "pr_title": "[Modal] Add tenacity to modal just like daytona", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/593", + "pr_title": "[LLMs] Remove ParseError as it is not used anywhere", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/592", + "pr_title": "[Trial] Remove EnvironmentBuildTimeoutError since it is not used", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/561", + "pr_title": "[Env] Add EnvironmentConfig.suppress_override_warnings and Terminus kwarg suppress_max_turns_warning", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/524", + "pr_title": "[terminus] Remove _logger and use BaseAgent logger directly", + "pr_type": "other" + } + ] + }, + { + "github_handle": "james-rl", + "email": "", + "name": "james-rl", + "affiliation": "", + "pr_count": 3, + "total_additions": 285, + "total_deletions": 119, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/467", + "pr_title": "Prefer prebuilt images when running with runloop env", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/210", + "pr_title": "Added resource config for runloop env", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/189", + "pr_title": "Fixed runloop env", + "pr_type": "other" + } + ] + }, + { + "github_handle": "stared", + "email": "pmigdal@gmail.com", + "name": "Piotr Migda\u0142", + "affiliation": "ex: Quantum Flytrap CTO & cofounder", + "pr_count": 2, + "total_additions": 285, + "total_deletions": 27, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/367", + "pr_title": "Viewer cost estimate with LiteLLM", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/308", + "pr_title": "Add smart port handling for `harbor view`", + "pr_type": "other" + } + ] + }, + { + "github_handle": "dines-rl", + "email": "", + "name": "Alexander Dines", + "affiliation": "Run Loop", + "pr_count": 1, + "total_additions": 275, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/46", + "pr_title": "Add Runloop Environment", + "pr_type": "other" + } + ] + }, + { + "github_handle": "rotemtam", + "email": "", + "name": "Rotem Tamir", + "affiliation": "honeybadge.co", + "pr_count": 2, + "total_additions": 220, + "total_deletions": 7, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/262", + "pr_title": "fix: `--agent-import-path` ignored when `-a` not specified", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/259", + "pr_title": "fix: add Alpine Linux support for claude-code agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "pashpashpash", + "email": "nik@cline.bot", + "name": "pashpashpash", + "affiliation": "vault77.ai", + "pr_count": 1, + "total_additions": 178, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/198", + "pr_title": "cline cli integration", + "pr_type": "other" + } + ] + }, + { + "github_handle": "anishathalye", + "email": "me@anishathalye.com", + "name": "Anish Athalye", + "affiliation": "@joinhandshake", + "pr_count": 1, + "total_additions": 174, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/655", + "pr_title": "Add MCP support for OpenHands", + "pr_type": "other" + } + ] + }, + { + "github_handle": "pfbyjy", + "email": "", + "name": "Meji A", + "affiliation": "", + "pr_count": 2, + "total_additions": 109, + "total_deletions": 23, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/333", + "pr_title": "Update claude_code.py to allow access to all tools", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/75", + "pr_title": "Convert Terminal-Bench docker-compose to Harbor format in mapper", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "richardzhuang0412", + "email": "", + "name": "Richard Zhuang", + "affiliation": "", + "pr_count": 1, + "total_additions": 91, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/181", + "pr_title": "Added patching fix for openhand when handling together context limit error", + "pr_type": "other" + } + ] + }, + { + "github_handle": "nandatheguntupalli", + "email": "", + "name": "Nanda Guntupalli", + "affiliation": "", + "pr_count": 1, + "total_additions": 74, + "total_deletions": 11, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/399", + "pr_title": "Enhance documentation and structure in CLAUDE.md and README.md", + "pr_type": "other" + } + ] + }, + { + "github_handle": "AkshayVenkataraman", + "email": "akshayv2k@gmail.com", + "name": "Akshay Venkataraman", + "affiliation": "", + "pr_count": 3, + "total_additions": 45, + "total_deletions": 9, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/247", + "pr_title": "initial commit to enable agent setup timeout override", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/226", + "pr_title": "improved workdir parse logic", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/195", + "pr_title": "made tmux viewport size configurable", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "bstee615", + "email": "benjaminjsteenhoek@gmail.com", + "name": "Benjamin Steenhoek", + "affiliation": "@Microsoft", + "pr_count": 1, + "total_additions": 43, + "total_deletions": 20, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/269", + "pr_title": "Support Azure OpenAI endpoints for LiteLLM agents", + "pr_type": "other" + } + ] + }, + { + "github_handle": "tlongwell-block", + "email": "", + "name": "tlongwell-block", + "affiliation": "", + "pr_count": 2, + "total_additions": 41, + "total_deletions": 15, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/191", + "pr_title": "support additional inference providers for the goose agent to allow benching open models", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/188", + "pr_title": "enable goose developer and todo extensions in harbor recipe", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "rootCircle", + "email": "", + "name": "Lab Rat", + "affiliation": "@uber, @iiitl ", + "pr_count": 1, + "total_additions": 40, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/343", + "pr_title": "Fix: normalize `--path .` to absolute to prevent invalid Docker tags", + "pr_type": "other" + } + ] + }, + { + "github_handle": "luxinyu1", + "email": "", + "name": "Solaris", + "affiliation": "ISCAS", + "pr_count": 2, + "total_additions": 27, + "total_deletions": 11, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/506", + "pr_title": "Fix Claude Code trajectory extraction when subagents are used", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/236", + "pr_title": "Add custom API base URL support for claude code agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "rohitpaulk", + "email": "rohitpaulk@gmail.com", + "name": "Paul Kuruvilla", + "affiliation": "@codecrafters-io", + "pr_count": 1, + "total_additions": 23, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/499", + "pr_title": "[Ready for review] Raise RuntimeError for agent setup failures", + "pr_type": "other" + } + ] + }, + { + "github_handle": "WingchunSiu", + "email": "", + "name": "Michael Siu", + "affiliation": "University of Southern California", + "pr_count": 1, + "total_additions": 21, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/652", + "pr_title": "Add llm_call_kwargs to Terminus2 for per-call LLM parameter", + "pr_type": "other" + } + ] + }, + { + "github_handle": "josancamon19", + "email": "", + "name": "Joan Cabezas", + "affiliation": "", + "pr_count": 1, + "total_additions": 18, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/643", + "pr_title": "fix: Gemini CLI ATIF trajectory conversion for harbor view", + "pr_type": "other" + } + ] + }, + { + "github_handle": "avelanarius", + "email": "", + "name": "Piotr Grabowski", + "affiliation": "@QuesmaOrg", + "pr_count": 1, + "total_additions": 16, + "total_deletions": 16, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/275", + "pr_title": "[Adapter] Update CompileBench adapter, fixing oracle on Daytona", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "ZhengShenghan", + "email": "shenghan.zheng.gr@dartmouth.edu", + "name": "Shenghan Zheng", + "affiliation": "Dartmouth College", + "pr_count": 1, + "total_additions": 12, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/535", + "pr_title": "[Ready for Review] BUG-FIX: fix gemini-cli skill loading failure", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Yiozolm", + "email": "m202310581@xs.ustb.edu.cn", + "name": "Fangzhou Yi", + "affiliation": "University of Science and Technology Beijing", + "pr_count": 1, + "total_additions": 10, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/464", + "pr_title": "Add support for GLM models", + "pr_type": "other" + } + ] + }, + { + "github_handle": "MarcoRossignoli", + "email": "", + "name": "Marco Rossignoli", + "affiliation": "@microsoft", + "pr_count": 1, + "total_additions": 9, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/507", + "pr_title": "Support large dataset downloads on Windows", + "pr_type": "other" + } + ] + }, + { + "github_handle": "ethanlshen", + "email": "ethans03@cs.washington.edu", + "name": "Ethan Shen", + "affiliation": "", + "pr_count": 1, + "total_additions": 9, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/94", + "pr_title": "Added summarization toggle", + "pr_type": "other" + } + ] + }, + { + "github_handle": "lurf21", + "email": "", + "name": "Ruofan Lu", + "affiliation": "The Chinese University of Hong Kong", + "pr_count": 2, + "total_additions": 7, + "total_deletions": 5, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/700", + "pr_title": "fix openhands reasoning_effort", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/284", + "pr_title": "fix: pass env variables when oracle agent executes the command", + "pr_type": "other" + } + ] + }, + { + "github_handle": "dpedchenko", + "email": "", + "name": "Dmitrii Pedchenko", + "affiliation": "FAIR @ Meta MSL", + "pr_count": 1, + "total_additions": 7, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/194", + "pr_title": "Minor change to Modal backend", + "pr_type": "other" + } + ] + }, + { + "github_handle": "tmacie", + "email": "", + "name": "tmacie", + "affiliation": "", + "pr_count": 1, + "total_additions": 6, + "total_deletions": 8, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/586", + "pr_title": "Fix modal gpu selection", + "pr_type": "other" + } + ] + }, + { + "github_handle": "dzorlu", + "email": "", + "name": "Deniz", + "affiliation": "", + "pr_count": 1, + "total_additions": 6, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/232", + "pr_title": "feat: store all messages", + "pr_type": "other" + } + ] + }, + { + "github_handle": "ai-jz", + "email": "", + "name": "ai-jz", + "affiliation": "", + "pr_count": 1, + "total_additions": 6, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/173", + "pr_title": "feat: Add Claude Code OAuth token support for subscription users", + "pr_type": "other" + } + ] + }, + { + "github_handle": "beran-t", + "email": "", + "name": "Berry", + "affiliation": "", + "pr_count": 1, + "total_additions": 5, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/627", + "pr_title": "Fix E2B exec() throwing on non-zero exit codes", + "pr_type": "other" + } + ] + }, + { + "github_handle": "ifoukarakis", + "email": "", + "name": "Ioannis Foukarakis", + "affiliation": "", + "pr_count": 1, + "total_additions": 5, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/323", + "pr_title": "fix: default registry URL reference", + "pr_type": "other" + } + ] + }, + { + "github_handle": "KunWuLuan", + "email": "kunwuluan@gmail.com", + "name": "GreenHand", + "affiliation": "", + "pr_count": 1, + "total_additions": 4, + "total_deletions": 3, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/658", + "pr_title": "fix(swe_agent): support multiple API key variables from model name", + "pr_type": "other" + } + ] + }, + { + "github_handle": "xdotli", + "email": "xiangyi@benchflow.ai", + "name": "Xiangyi Li", + "affiliation": "@benchflow-ai", + "pr_count": 1, + "total_additions": 4, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/459", + "pr_title": "fix(claude-code): CLAUDE_CONFIG_DIR giving errors for accessing .claude folder", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "thdxr", + "email": "mail@thdxr.com", + "name": "Dax", + "affiliation": "", + "pr_count": 2, + "total_additions": 4, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/316", + "pr_title": "Change opencode command to output JSON format", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/121", + "pr_title": "Enable OPENCODE_FAKE_VCS for OpenCode agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Chesars", + "email": "", + "name": "Cesar Garcia", + "affiliation": "", + "pr_count": 2, + "total_additions": 4, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/176", + "pr_title": "fix: flaky terminus_2 timeout test", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/175", + "pr_title": "docs: Fix broken link in README.md", + "pr_type": "other" + } + ] + }, + { + "github_handle": "HiromuHota", + "email": "hiromu.hota@gmail.com", + "name": "Hiromu Hota", + "affiliation": "https://snorkel.ai/", + "pr_count": 2, + "total_additions": 4, + "total_deletions": 7, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/131", + "pr_title": "Add content from run-tests.sh correctly during migration", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/130", + "pr_title": "Allow difficulty: unknown for compat w/TB1.0", + "pr_type": "other" + } + ] + }, + { + "github_handle": "vatsj", + "email": "jacobstavrianos@gmail.com", + "name": "Jacob Stavrianos", + "affiliation": "", + "pr_count": 1, + "total_additions": 3, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/481", + "pr_title": "suppress daytona container auto-shutdown", + "pr_type": "other" + } + ] + }, + { + "github_handle": "likaixin2000", + "email": "likaixin@u.nus.edu", + "name": "Kaixin Li", + "affiliation": "National University of Singapore", + "pr_count": 1, + "total_additions": 2, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/513", + "pr_title": "Fix error message formatting for invalid agent names", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "michaelrglass", + "email": "", + "name": "Michael Glass", + "affiliation": "IBM", + "pr_count": 2, + "total_additions": 2, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/489", + "pr_title": "Fix docker environment to treat empty docker_image as no prebuilt image", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/456", + "pr_title": "Stderr was being lost by redirecting to stdout after the tee command", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Guangy627", + "email": "", + "name": "Guangy627", + "affiliation": "", + "pr_count": 1, + "total_additions": 2, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/485", + "pr_title": "Fix/trajectorydump", + "pr_type": "other" + } + ] + }, + { + "github_handle": "paraliine", + "email": "", + "name": "Xiaoxuan Peng", + "affiliation": "CQU", + "pr_count": 2, + "total_additions": 2, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/216", + "pr_title": "Fix Terminus2 tmux logging path", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/laude-institute/harbor/pull/215", + "pr_title": "Fix blocking tmux send-keys execution", + "pr_type": "other" + } + ] + }, + { + "github_handle": "tyler-griggs", + "email": "", + "name": "Tyler Griggs", + "affiliation": "", + "pr_count": 1, + "total_additions": 2, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/21", + "pr_title": "Update .gitignore", + "pr_type": "other" + } + ] + }, + { + "github_handle": "liyuyun-lyy", + "email": "", + "name": "liyuyun-lyy", + "affiliation": "Alibaba", + "pr_count": 1, + "total_additions": 1, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/168", + "pr_title": "fix: use yolo mode to pass hello world test", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "santaboi", + "email": "", + "name": "Yang Fan Chiang", + "affiliation": "University of Maryland College Park", + "pr_count": 1, + "total_additions": 1, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/laude-institute/harbor/pull/104", + "pr_title": "Fix Terminal Bench 2.0 description typo", + "pr_type": "other" + } + ] + } +] \ No newline at end of file diff --git a/raw_github_users_data.json b/raw_github_users_data.json new file mode 100644 index 0000000..8359227 --- /dev/null +++ b/raw_github_users_data.json @@ -0,0 +1,572 @@ +[ + { + "github_handle": "1171-jpg", + "email": "", + "name": "140", + "affiliation": "" + }, + { + "github_handle": "AkshayVenkataraman", + "email": "akshayv2k@gmail.com", + "name": "Akshay Venkataraman", + "affiliation": "" + }, + { + "github_handle": "Anjiang-Wei", + "email": "", + "name": "Anjiang Wei", + "affiliation": "Stanford University" + }, + { + "github_handle": "CharlieFRuan", + "email": "", + "name": "Charlie Ruan", + "affiliation": "UC Berkeley" + }, + { + "github_handle": "Chesars", + "email": "", + "name": "Cesar Garcia", + "affiliation": "" + }, + { + "github_handle": "DannyGooo", + "email": "", + "name": "Yonghui Liu", + "affiliation": "" + }, + { + "github_handle": "Dongzhikang", + "email": "", + "name": "Zhikang Dong", + "affiliation": "" + }, + { + "github_handle": "EstelYang", + "email": "", + "name": "EstelYang", + "affiliation": "" + }, + { + "github_handle": "EtashGuha", + "email": "", + "name": "EtashGuha", + "affiliation": "" + }, + { + "github_handle": "Guangy627", + "email": "", + "name": "Guangy627", + "affiliation": "" + }, + { + "github_handle": "HaishuoFang", + "email": "fanghaishuo@gmail.com", + "name": "Haishuo", + "affiliation": "TU Darmstadt" + }, + { + "github_handle": "Hangzhi", + "email": "hangzhiweiwei@gmail.com", + "name": "Yiwei Dai", + "affiliation": "" + }, + { + "github_handle": "HiromuHota", + "email": "hiromu.hota@gmail.com", + "name": "Hiromu Hota", + "affiliation": "https://snorkel.ai/" + }, + { + "github_handle": "Ji-Pengliang", + "email": "", + "name": "Pengliang Ji", + "affiliation": "" + }, + { + "github_handle": "KunWuLuan", + "email": "kunwuluan@gmail.com", + "name": "GreenHand", + "affiliation": "" + }, + { + "github_handle": "LithiumDA", + "email": "", + "name": "Shanda Li", + "affiliation": "Carnegie Mellon University" + }, + { + "github_handle": "MarcoRossignoli", + "email": "", + "name": "Marco Rossignoli", + "affiliation": "@microsoft" + }, + { + "github_handle": "MichaelY310", + "email": "", + "name": "Michael Yang", + "affiliation": "" + }, + { + "github_handle": "Michaelsqj", + "email": "shenqijia11@gmail.com", + "name": "Qijia Shen", + "affiliation": "" + }, + { + "github_handle": "Rebabit", + "email": "", + "name": "Rebecca Deng", + "affiliation": "" + }, + { + "github_handle": "RishiDesai", + "email": "", + "name": "Rishi Desai", + "affiliation": "" + }, + { + "github_handle": "Slimshilin", + "email": "", + "name": "Slimshilin", + "affiliation": "" + }, + { + "github_handle": "StevenDillmann", + "email": "", + "name": "Steven Dillmann", + "affiliation": "Stanford University" + }, + { + "github_handle": "Ternura143", + "email": "", + "name": "Zixuan Zhu", + "affiliation": "NTU" + }, + { + "github_handle": "TheMikeMerrill", + "email": "", + "name": "TheMikeMerrill", + "affiliation": "" + }, + { + "github_handle": "Waterpine", + "email": "sbian8@wisc.edu", + "name": "Song Bian", + "affiliation": "University of Wisconsin-Madison" + }, + { + "github_handle": "WingchunSiu", + "email": "", + "name": "Michael Siu", + "affiliation": "University of Southern California" + }, + { + "github_handle": "XuandongZhao", + "email": "csxuandongzhao@gmail.com", + "name": "Xuandong Zhao", + "affiliation": "UC Berkeley" + }, + { + "github_handle": "Yiozolm", + "email": "m202310581@xs.ustb.edu.cn", + "name": "Fangzhou Yi", + "affiliation": "University of Science and Technology Beijing" + }, + { + "github_handle": "ZhengShenghan", + "email": "shenghan.zheng.gr@dartmouth.edu", + "name": "Shenghan Zheng", + "affiliation": "Dartmouth College" + }, + { + "github_handle": "aht", + "email": "", + "name": "Hai-Anh Trinh", + "affiliation": "grammarly.com" + }, + { + "github_handle": "ai-jz", + "email": "", + "name": "ai-jz", + "affiliation": "" + }, + { + "github_handle": "alexgshaw", + "email": "alexgshaw64@gmail.com", + "name": "Alex Shaw", + "affiliation": "Laude Institute" + }, + { + "github_handle": "anishathalye", + "email": "me@anishathalye.com", + "name": "Anish Athalye", + "affiliation": "@joinhandshake" + }, + { + "github_handle": "audreycs", + "email": "", + "name": "Yuxin Wang", + "affiliation": "Dartmouth College" + }, + { + "github_handle": "avelanarius", + "email": "", + "name": "Piotr Grabowski", + "affiliation": "@QuesmaOrg" + }, + { + "github_handle": "beran-t", + "email": "", + "name": "Berry", + "affiliation": "" + }, + { + "github_handle": "bstee615", + "email": "benjaminjsteenhoek@gmail.com", + "name": "Benjamin Steenhoek", + "affiliation": "@Microsoft" + }, + { + "github_handle": "chenzizhao", + "email": "", + "name": "Zizhao Chen", + "affiliation": "" + }, + { + "github_handle": "cliangyu", + "email": "", + "name": "Leon Chen", + "affiliation": "Stanford University" + }, + { + "github_handle": "connor-cognition", + "email": "", + "name": "connor-cognition", + "affiliation": "" + }, + { + "github_handle": "crystalxyz", + "email": "", + "name": "Crystal Zhou", + "affiliation": "" + }, + { + "github_handle": "davidheineman", + "email": "david@davidheineman.com", + "name": "David Heineman", + "affiliation": "" + }, + { + "github_handle": "digitsisyph", + "email": "", + "name": "Gary?", + "affiliation": "" + }, + { + "github_handle": "dines-rl", + "email": "", + "name": "Alexander Dines", + "affiliation": "Run Loop" + }, + { + "github_handle": "dot-agi", + "email": "ps4534@nyu.edu", + "name": "Pratyush Shukla", + "affiliation": "Abundant AI" + }, + { + "github_handle": "dpedchenko", + "email": "", + "name": "Dmitrii Pedchenko", + "affiliation": "FAIR @ Meta MSL" + }, + { + "github_handle": "dzorlu", + "email": "", + "name": "Deniz", + "affiliation": "" + }, + { + "github_handle": "ethanlshen", + "email": "ethans03@cs.washington.edu", + "name": "Ethan Shen", + "affiliation": "" + }, + { + "github_handle": "giansegato", + "email": "", + "name": "gian", + "affiliation": "" + }, + { + "github_handle": "hanxu12", + "email": "", + "name": "Han Xu", + "affiliation": "" + }, + { + "github_handle": "harshraj172", + "email": "", + "name": "Harsh Raj", + "affiliation": "Khoury College, Northeastern University " + }, + { + "github_handle": "ibercovich", + "email": "", + "name": "Ivan Bercovich", + "affiliation": "ScOp Venture Capital" + }, + { + "github_handle": "ifoukarakis", + "email": "", + "name": "Ioannis Foukarakis", + "affiliation": "" + }, + { + "github_handle": "jakozaur", + "email": "jacek@migdal.pl", + "name": "Jacek Migdal", + "affiliation": "" + }, + { + "github_handle": "james-rl", + "email": "", + "name": "james-rl", + "affiliation": "" + }, + { + "github_handle": "josancamon19", + "email": "", + "name": "Joan Cabezas", + "affiliation": "" + }, + { + "github_handle": "junhongmit", + "email": "junhonghust@gmail.com", + "name": "Junhong Lin", + "affiliation": "Massachusetts Institute of Technology" + }, + { + "github_handle": "kanazawa-asyncio", + "email": "", + "name": "Kanaza", + "affiliation": "" + }, + { + "github_handle": "killthefullmoon", + "email": "killthefullmoon@gmail.com", + "name": "Hui Shen", + "affiliation": "University of Michigan" + }, + { + "github_handle": "kobe0938", + "email": "xiaokunchen0@gmail.com", + "name": "Kobe Chen", + "affiliation": "Stanford U" + }, + { + "github_handle": "li-boxuan", + "email": "", + "name": "Boxuan Li", + "affiliation": "Microsoft" + }, + { + "github_handle": "likaixin2000", + "email": "likaixin@u.nus.edu", + "name": "Kaixin Li", + "affiliation": "National University of Singapore" + }, + { + "github_handle": "linhaowei1", + "email": "", + "name": "Haowei Lin", + "affiliation": "Peking University" + }, + { + "github_handle": "liyuyun-lyy", + "email": "", + "name": "liyuyun-lyy", + "affiliation": "Alibaba" + }, + { + "github_handle": "lurf21", + "email": "", + "name": "Ruofan Lu", + "affiliation": "The Chinese University of Hong Kong" + }, + { + "github_handle": "luxinyu1", + "email": "", + "name": "Solaris", + "affiliation": "ISCAS" + }, + { + "github_handle": "michaelrglass", + "email": "", + "name": "Michael Glass", + "affiliation": "IBM" + }, + { + "github_handle": "mieciu", + "email": "", + "name": "Przemys\u0142aw Hejman", + "affiliation": "blindroot.com" + }, + { + "github_handle": "nandatheguntupalli", + "email": "", + "name": "Nanda Guntupalli", + "affiliation": "" + }, + { + "github_handle": "neginraoof", + "email": "", + "name": "Negin Raoof", + "affiliation": "UC Berkeley" + }, + { + "github_handle": "neverSettles", + "email": "", + "name": "Chris Settles", + "affiliation": "Operative AI, Inc" + }, + { + "github_handle": "octaviaguo", + "email": "", + "name": "octaviaguo", + "affiliation": "" + }, + { + "github_handle": "omi-n", + "email": "", + "name": "nabil", + "affiliation": "University of Washington, Microsoft" + }, + { + "github_handle": "orfeas-menis", + "email": "", + "name": "Orfeas Menis", + "affiliation": "" + }, + { + "github_handle": "paraliine", + "email": "", + "name": "Xiaoxuan Peng", + "affiliation": "CQU" + }, + { + "github_handle": "pashpashpash", + "email": "nik@cline.bot", + "name": "pashpashpash", + "affiliation": "vault77.ai" + }, + { + "github_handle": "penfever", + "email": "", + "name": "Ben Feuer", + "affiliation": "" + }, + { + "github_handle": "pfbyjy", + "email": "", + "name": "Meji A", + "affiliation": "" + }, + { + "github_handle": "richardzhuang0412", + "email": "", + "name": "Richard Zhuang", + "affiliation": "" + }, + { + "github_handle": "robertzhidealx", + "email": "0xrobertzhang@gmail.com", + "name": "Robert Zhang", + "affiliation": "" + }, + { + "github_handle": "rohitpaulk", + "email": "rohitpaulk@gmail.com", + "name": "Paul Kuruvilla", + "affiliation": "@codecrafters-io" + }, + { + "github_handle": "rootCircle", + "email": "", + "name": "Lab Rat", + "affiliation": "@uber, @iiitl " + }, + { + "github_handle": "rotemtam", + "email": "", + "name": "Rotem Tamir", + "affiliation": "honeybadge.co" + }, + { + "github_handle": "santaboi", + "email": "", + "name": "Yang Fan Chiang", + "affiliation": "University of Maryland College Park" + }, + { + "github_handle": "self-supervisor", + "email": "", + "name": "self-supervisor", + "affiliation": "@VmaxAI " + }, + { + "github_handle": "stared", + "email": "pmigdal@gmail.com", + "name": "Piotr Migda\u0142", + "affiliation": "ex: Quantum Flytrap CTO & cofounder" + }, + { + "github_handle": "terryyz", + "email": "terryzhuo25@gmail.com", + "name": "Terry Yue Zhuo", + "affiliation": "" + }, + { + "github_handle": "thdxr", + "email": "mail@thdxr.com", + "name": "Dax", + "affiliation": "" + }, + { + "github_handle": "tlongwell-block", + "email": "", + "name": "tlongwell-block", + "affiliation": "" + }, + { + "github_handle": "tmacie", + "email": "", + "name": "tmacie", + "affiliation": "" + }, + { + "github_handle": "tyler-griggs", + "email": "", + "name": "Tyler Griggs", + "affiliation": "" + }, + { + "github_handle": "vatsj", + "email": "jacobstavrianos@gmail.com", + "name": "Jacob Stavrianos", + "affiliation": "" + }, + { + "github_handle": "xdotli", + "email": "xiangyi@benchflow.ai", + "name": "Xiangyi Li", + "affiliation": "@benchflow-ai" + }, + { + "github_handle": "xianliu", + "email": "lxjsj@fedoraproject.org", + "name": "Xian Liu", + "affiliation": "Meetchances/ex-Bytedance/ex-Redhat" + } +] \ No newline at end of file diff --git a/raw_pr_data.json b/raw_pr_data.json new file mode 100644 index 0000000..ddb8c91 --- /dev/null +++ b/raw_pr_data.json @@ -0,0 +1,2378 @@ +[ + { + "pr_number": 700, + "pr_url": "https://github.com/laude-institute/harbor/pull/700", + "author_github_handle": "lurf21", + "additions": 1, + "deletions": 3, + "pr_title": "fix openhands reasoning_effort", + "pr_type": "other" + }, + { + "pr_number": 686, + "pr_url": "https://github.com/laude-institute/harbor/pull/686", + "author_github_handle": "CharlieFRuan", + "additions": 5, + "deletions": 8, + "pr_title": "[Terminus] Fix `n_episodes` counting when error out", + "pr_type": "other" + }, + { + "pr_number": 662, + "pr_url": "https://github.com/laude-institute/harbor/pull/662", + "author_github_handle": "jakozaur", + "additions": 6722, + "deletions": 6560, + "pr_title": "Add otel-bench benchmark to registry.json", + "pr_type": "other" + }, + { + "pr_number": 661, + "pr_url": "https://github.com/laude-institute/harbor/pull/661", + "author_github_handle": "jakozaur", + "additions": 6842, + "deletions": 6560, + "pr_title": "Add binary-audit benchmark to registry.json", + "pr_type": "other" + }, + { + "pr_number": 658, + "pr_url": "https://github.com/laude-institute/harbor/pull/658", + "author_github_handle": "KunWuLuan", + "additions": 4, + "deletions": 3, + "pr_title": "fix(swe_agent): support multiple API key variables from model name", + "pr_type": "other" + }, + { + "pr_number": 655, + "pr_url": "https://github.com/laude-institute/harbor/pull/655", + "author_github_handle": "anishathalye", + "additions": 174, + "deletions": 2, + "pr_title": "Add MCP support for OpenHands", + "pr_type": "other" + }, + { + "pr_number": 653, + "pr_url": "https://github.com/laude-institute/harbor/pull/653", + "author_github_handle": "CharlieFRuan", + "additions": 125, + "deletions": 2, + "pr_title": "[Terminus] Do not retry on ContextLengthExceededError when enable_summarize=False", + "pr_type": "other" + }, + { + "pr_number": 652, + "pr_url": "https://github.com/laude-institute/harbor/pull/652", + "author_github_handle": "WingchunSiu", + "additions": 21, + "deletions": 4, + "pr_title": "Add llm_call_kwargs to Terminus2 for per-call LLM parameter", + "pr_type": "other" + }, + { + "pr_number": 651, + "pr_url": "https://github.com/laude-institute/harbor/pull/651", + "author_github_handle": "CharlieFRuan", + "additions": 42, + "deletions": 7, + "pr_title": "[Env] Make sandbox lifecycle timeouts configurable via environment kwargs", + "pr_type": "engineering" + }, + { + "pr_number": 650, + "pr_url": "https://github.com/laude-institute/harbor/pull/650", + "author_github_handle": "CharlieFRuan", + "additions": 52, + "deletions": 13, + "pr_title": "[Modal] Add tenacity to modal just like daytona", + "pr_type": "engineering" + }, + { + "pr_number": 643, + "pr_url": "https://github.com/laude-institute/harbor/pull/643", + "author_github_handle": "josancamon19", + "additions": 18, + "deletions": 4, + "pr_title": "fix: Gemini CLI ATIF trajectory conversion for harbor view", + "pr_type": "other" + }, + { + "pr_number": 638, + "pr_url": "https://github.com/laude-institute/harbor/pull/638", + "author_github_handle": "StevenDillmann", + "additions": 7, + "deletions": 6, + "pr_title": "Revise citation section in README.md", + "pr_type": "engineering" + }, + { + "pr_number": 637, + "pr_url": "https://github.com/laude-institute/harbor/pull/637", + "author_github_handle": "StevenDillmann", + "additions": 0, + "deletions": 1, + "pr_title": "Remove version in CITATION.cff", + "pr_type": "engineering" + }, + { + "pr_number": 627, + "pr_url": "https://github.com/laude-institute/harbor/pull/627", + "author_github_handle": "beran-t", + "additions": 5, + "deletions": 1, + "pr_title": "Fix E2B exec() throwing on non-zero exit codes", + "pr_type": "other" + }, + { + "pr_number": 603, + "pr_url": "https://github.com/laude-institute/harbor/pull/603", + "author_github_handle": "alexgshaw", + "additions": 548, + "deletions": 35, + "pr_title": "Add Responses API support for Terminus", + "pr_type": "other" + }, + { + "pr_number": 593, + "pr_url": "https://github.com/laude-institute/harbor/pull/593", + "author_github_handle": "CharlieFRuan", + "additions": 0, + "deletions": 6, + "pr_title": "[LLMs] Remove ParseError as it is not used anywhere", + "pr_type": "other" + }, + { + "pr_number": 592, + "pr_url": "https://github.com/laude-institute/harbor/pull/592", + "author_github_handle": "CharlieFRuan", + "additions": 0, + "deletions": 4, + "pr_title": "[Trial] Remove EnvironmentBuildTimeoutError since it is not used", + "pr_type": "engineering" + }, + { + "pr_number": 589, + "pr_url": "https://github.com/laude-institute/harbor/pull/589", + "author_github_handle": "dot-agi", + "additions": 172, + "deletions": 3, + "pr_title": "Fix Docker environment directory nesting and stale container bugs", + "pr_type": "other" + }, + { + "pr_number": 586, + "pr_url": "https://github.com/laude-institute/harbor/pull/586", + "author_github_handle": "tmacie", + "additions": 6, + "deletions": 8, + "pr_title": "Fix modal gpu selection", + "pr_type": "other" + }, + { + "pr_number": 580, + "pr_url": "https://github.com/laude-institute/harbor/pull/580", + "author_github_handle": "Slimshilin", + "additions": 76, + "deletions": 0, + "pr_title": "Add parity API instructions for adapter experiments", + "pr_type": "adapter" + }, + { + "pr_number": 579, + "pr_url": "https://github.com/laude-institute/harbor/pull/579", + "author_github_handle": "Slimshilin", + "additions": 3, + "deletions": 0, + "pr_title": "[Ready to merge] OPENAI_BASE_URL support for codex.", + "pr_type": "other" + }, + { + "pr_number": 577, + "pr_url": "https://github.com/laude-institute/harbor/pull/577", + "author_github_handle": "Michaelsqj", + "additions": 8263, + "deletions": 0, + "pr_title": "add seta env to registry.json", + "pr_type": "other" + }, + { + "pr_number": 566, + "pr_url": "https://github.com/laude-institute/harbor/pull/566", + "author_github_handle": "StevenDillmann", + "additions": 4, + "deletions": 11, + "pr_title": "Update CITATION.cff", + "pr_type": "engineering" + }, + { + "pr_number": 564, + "pr_url": "https://github.com/laude-institute/harbor/pull/564", + "author_github_handle": "StevenDillmann", + "additions": 3, + "deletions": 3, + "pr_title": "Update title in citation section in README.md", + "pr_type": "engineering" + }, + { + "pr_number": 563, + "pr_url": "https://github.com/laude-institute/harbor/pull/563", + "author_github_handle": "self-supervisor", + "additions": 6266, + "deletions": 0, + "pr_title": "Vmax tasks", + "pr_type": "task" + }, + { + "pr_number": 561, + "pr_url": "https://github.com/laude-institute/harbor/pull/561", + "author_github_handle": "CharlieFRuan", + "additions": 36, + "deletions": 24, + "pr_title": "[Env] Add EnvironmentConfig.suppress_override_warnings and Terminus kwarg suppress_max_turns_warning", + "pr_type": "engineering" + }, + { + "pr_number": 560, + "pr_url": "https://github.com/laude-institute/harbor/pull/560", + "author_github_handle": "StevenDillmann", + "additions": 1, + "deletions": 1, + "pr_title": "Fix author formatting in citation", + "pr_type": "engineering" + }, + { + "pr_number": 556, + "pr_url": "https://github.com/laude-institute/harbor/pull/556", + "author_github_handle": "StevenDillmann", + "additions": 11, + "deletions": 2, + "pr_title": "Update citation section in README.md", + "pr_type": "engineering" + }, + { + "pr_number": 550, + "pr_url": "https://github.com/laude-institute/harbor/pull/550", + "author_github_handle": "Ji-Pengliang", + "additions": 1, + "deletions": 1, + "pr_title": "Add --n-attempts 2 to arc_agi_2 reproduction command", + "pr_type": "other" + }, + { + "pr_number": 549, + "pr_url": "https://github.com/laude-institute/harbor/pull/549", + "author_github_handle": "neverSettles", + "additions": 1748, + "deletions": 122, + "pr_title": "ATIF 1.5->1.6: Support multimodal trajectories", + "pr_type": "other" + }, + { + "pr_number": 539, + "pr_url": "https://github.com/laude-institute/harbor/pull/539", + "author_github_handle": "dot-agi", + "additions": 278, + "deletions": 18, + "pr_title": "Fix NVM sourcing failure with strict mode", + "pr_type": "engineering" + }, + { + "pr_number": 535, + "pr_url": "https://github.com/laude-institute/harbor/pull/535", + "author_github_handle": "ZhengShenghan", + "additions": 12, + "deletions": 1, + "pr_title": "[Ready for Review] BUG-FIX: fix gemini-cli skill loading failure", + "pr_type": "other" + }, + { + "pr_number": 526, + "pr_url": "https://github.com/laude-institute/harbor/pull/526", + "author_github_handle": "penfever", + "additions": 48, + "deletions": 23, + "pr_title": "OpenHands Improvements", + "pr_type": "other" + }, + { + "pr_number": 524, + "pr_url": "https://github.com/laude-institute/harbor/pull/524", + "author_github_handle": "CharlieFRuan", + "additions": 28, + "deletions": 30, + "pr_title": "[terminus] Remove _logger and use BaseAgent logger directly", + "pr_type": "other" + }, + { + "pr_number": 518, + "pr_url": "https://github.com/laude-institute/harbor/pull/518", + "author_github_handle": "chenzizhao", + "additions": 4, + "deletions": 2, + "pr_title": "Revise bixbench README with known issue and task details", + "pr_type": "task" + }, + { + "pr_number": 516, + "pr_url": "https://github.com/laude-institute/harbor/pull/516", + "author_github_handle": "Slimshilin", + "additions": 8899, + "deletions": 10863, + "pr_title": "remove aider-polyglot and livecodebench duplicates", + "pr_type": "other" + }, + { + "pr_number": 515, + "pr_url": "https://github.com/laude-institute/harbor/pull/515", + "author_github_handle": "mieciu", + "additions": 5, + "deletions": 1, + "pr_title": "Fix openrouter model name ", + "pr_type": "other" + }, + { + "pr_number": 513, + "pr_url": "https://github.com/laude-institute/harbor/pull/513", + "author_github_handle": "likaixin2000", + "additions": 2, + "deletions": 2, + "pr_title": "Fix error message formatting for invalid agent names", + "pr_type": "engineering" + }, + { + "pr_number": 512, + "pr_url": "https://github.com/laude-institute/harbor/pull/512", + "author_github_handle": "RishiDesai", + "additions": 33022, + "deletions": 27015, + "pr_title": "registry for swe-gen-js", + "pr_type": "other" + }, + { + "pr_number": 507, + "pr_url": "https://github.com/laude-institute/harbor/pull/507", + "author_github_handle": "MarcoRossignoli", + "additions": 9, + "deletions": 2, + "pr_title": "Support large dataset downloads on Windows", + "pr_type": "other" + }, + { + "pr_number": 506, + "pr_url": "https://github.com/laude-institute/harbor/pull/506", + "author_github_handle": "luxinyu1", + "additions": 6, + "deletions": 10, + "pr_title": "Fix Claude Code trajectory extraction when subagents are used", + "pr_type": "other" + }, + { + "pr_number": 499, + "pr_url": "https://github.com/laude-institute/harbor/pull/499", + "author_github_handle": "rohitpaulk", + "additions": 23, + "deletions": 4, + "pr_title": "[Ready for review] Raise RuntimeError for agent setup failures", + "pr_type": "other" + }, + { + "pr_number": 495, + "pr_url": "https://github.com/laude-institute/harbor/pull/495", + "author_github_handle": "alexgshaw", + "additions": 6119, + "deletions": 4693, + "pr_title": "Claude/add package dashboard lxufb", + "pr_type": "other" + }, + { + "pr_number": 489, + "pr_url": "https://github.com/laude-institute/harbor/pull/489", + "author_github_handle": "michaelrglass", + "additions": 1, + "deletions": 1, + "pr_title": "Fix docker environment to treat empty docker_image as no prebuilt image", + "pr_type": "other" + }, + { + "pr_number": 485, + "pr_url": "https://github.com/laude-institute/harbor/pull/485", + "author_github_handle": "Guangy627", + "additions": 2, + "deletions": 2, + "pr_title": "Fix/trajectorydump", + "pr_type": "other" + }, + { + "pr_number": 481, + "pr_url": "https://github.com/laude-institute/harbor/pull/481", + "author_github_handle": "vatsj", + "additions": 3, + "deletions": 0, + "pr_title": "suppress daytona container auto-shutdown", + "pr_type": "other" + }, + { + "pr_number": 476, + "pr_url": "https://github.com/laude-institute/harbor/pull/476", + "author_github_handle": "alexgshaw", + "additions": 857, + "deletions": 465, + "pr_title": "Improve terminal bench mapper functionality", + "pr_type": "other" + }, + { + "pr_number": 475, + "pr_url": "https://github.com/laude-institute/harbor/pull/475", + "author_github_handle": "li-boxuan", + "additions": 3, + "deletions": 100, + "pr_title": "Revert litellm hack for OpenHands", + "pr_type": "other" + }, + { + "pr_number": 472, + "pr_url": "https://github.com/laude-institute/harbor/pull/472", + "author_github_handle": "chenzizhao", + "additions": 5502, + "deletions": 4265, + "pr_title": "Update registry with bixbench-cli", + "pr_type": "other" + }, + { + "pr_number": 470, + "pr_url": "https://github.com/laude-institute/harbor/pull/470", + "author_github_handle": "connor-cognition", + "additions": 13, + "deletions": 1, + "pr_title": "feat: add secret and volume support to modal environment", + "pr_type": "other" + }, + { + "pr_number": 468, + "pr_url": "https://github.com/laude-institute/harbor/pull/468", + "author_github_handle": "alexgshaw", + "additions": 217, + "deletions": 72, + "pr_title": "feat(hooks): add job-level named hook methods for trial lifecycle events", + "pr_type": "other" + }, + { + "pr_number": 467, + "pr_url": "https://github.com/laude-institute/harbor/pull/467", + "author_github_handle": "james-rl", + "additions": 107, + "deletions": 46, + "pr_title": "Prefer prebuilt images when running with runloop env", + "pr_type": "other" + }, + { + "pr_number": 466, + "pr_url": "https://github.com/laude-institute/harbor/pull/466", + "author_github_handle": "LithiumDA", + "additions": 1, + "deletions": 1, + "pr_title": "fix (adapter): registery", + "pr_type": "adapter" + }, + { + "pr_number": 465, + "pr_url": "https://github.com/laude-institute/harbor/pull/465", + "author_github_handle": "penfever", + "additions": 67, + "deletions": 39, + "pr_title": "[FEATURE] Close old log handlers after trial returns", + "pr_type": "other" + }, + { + "pr_number": 464, + "pr_url": "https://github.com/laude-institute/harbor/pull/464", + "author_github_handle": "Yiozolm", + "additions": 10, + "deletions": 4, + "pr_title": "Add support for GLM models", + "pr_type": "other" + }, + { + "pr_number": 459, + "pr_url": "https://github.com/laude-institute/harbor/pull/459", + "author_github_handle": "xdotli", + "additions": 4, + "deletions": 1, + "pr_title": "fix(claude-code): CLAUDE_CONFIG_DIR giving errors for accessing .claude folder", + "pr_type": "engineering" + }, + { + "pr_number": 458, + "pr_url": "https://github.com/laude-institute/harbor/pull/458", + "author_github_handle": "harshraj172", + "additions": 413, + "deletions": 31, + "pr_title": "add codex trajectory.json back", + "pr_type": "other" + }, + { + "pr_number": 457, + "pr_url": "https://github.com/laude-institute/harbor/pull/457", + "author_github_handle": "connor-cognition", + "additions": 280, + "deletions": 7, + "pr_title": "chore: pin modal sdk to `1.3.1.dev9`", + "pr_type": "engineering" + }, + { + "pr_number": 456, + "pr_url": "https://github.com/laude-institute/harbor/pull/456", + "author_github_handle": "michaelrglass", + "additions": 1, + "deletions": 1, + "pr_title": "Stderr was being lost by redirecting to stdout after the tee command", + "pr_type": "other" + }, + { + "pr_number": 452, + "pr_url": "https://github.com/laude-institute/harbor/pull/452", + "author_github_handle": "DannyGooo", + "additions": 23, + "deletions": 2, + "pr_title": "[Ready for Review] Adapter: Spider2 - Experiment with Harbor-supported agents", + "pr_type": "adapter" + }, + { + "pr_number": 451, + "pr_url": "https://github.com/laude-institute/harbor/pull/451", + "author_github_handle": "chenzizhao", + "additions": 145, + "deletions": 28, + "pr_title": "[ready for review] bixbench-cli addition", + "pr_type": "other" + }, + { + "pr_number": 446, + "pr_url": "https://github.com/laude-institute/harbor/pull/446", + "author_github_handle": "octaviaguo", + "additions": 162, + "deletions": 153, + "pr_title": "Update StrongReject adapter with new registry", + "pr_type": "adapter" + }, + { + "pr_number": 444, + "pr_url": "https://github.com/laude-institute/harbor/pull/444", + "author_github_handle": "StevenDillmann", + "additions": 36, + "deletions": 4, + "pr_title": "Make reasoning parameters configurable via kwargs", + "pr_type": "engineering" + }, + { + "pr_number": 440, + "pr_url": "https://github.com/laude-institute/harbor/pull/440", + "author_github_handle": "linhaowei1", + "additions": 3207, + "deletions": 0, + "pr_title": "[Ready for Review] Adapter: Algotune", + "pr_type": "adapter" + }, + { + "pr_number": 438, + "pr_url": "https://github.com/laude-institute/harbor/pull/438", + "author_github_handle": "linhaowei1", + "additions": 10, + "deletions": 3, + "pr_title": "[BugFix] Fix hello-world registry format", + "pr_type": "engineering" + }, + { + "pr_number": 436, + "pr_url": "https://github.com/laude-institute/harbor/pull/436", + "author_github_handle": "DannyGooo", + "additions": 2693, + "deletions": 0, + "pr_title": "[Ready for Review] Adapter: Spider2", + "pr_type": "adapter" + }, + { + "pr_number": 434, + "pr_url": "https://github.com/laude-institute/harbor/pull/434", + "author_github_handle": "HaishuoFang", + "additions": 172, + "deletions": 87, + "pr_title": "Fix ruff check error for financeagent Adapter", + "pr_type": "adapter" + }, + { + "pr_number": 432, + "pr_url": "https://github.com/laude-institute/harbor/pull/432", + "author_github_handle": "killthefullmoon", + "additions": 7849, + "deletions": 904, + "pr_title": "[Ready for Review] Adapter: DS1000", + "pr_type": "adapter" + }, + { + "pr_number": 424, + "pr_url": "https://github.com/laude-institute/harbor/pull/424", + "author_github_handle": "linhaowei1", + "additions": 14, + "deletions": 14, + "pr_title": "[FIX] Update Parity for Adapter: AutoCodeBench", + "pr_type": "adapter" + }, + { + "pr_number": 420, + "pr_url": "https://github.com/laude-institute/harbor/pull/420", + "author_github_handle": "li-boxuan", + "additions": 0, + "deletions": 1, + "pr_title": "Fix: Remove duplicate error_msg in OutputLengthExceededError handling", + "pr_type": "other" + }, + { + "pr_number": 418, + "pr_url": "https://github.com/laude-institute/harbor/pull/418", + "author_github_handle": "Anjiang-Wei", + "additions": 7, + "deletions": 9, + "pr_title": "Remove repository path setup from run_adapter.py to fix ruff error", + "pr_type": "adapter" + }, + { + "pr_number": 403, + "pr_url": "https://github.com/laude-institute/harbor/pull/403", + "author_github_handle": "1171-jpg", + "additions": 1836, + "deletions": 0, + "pr_title": "[Ready for Review] Adapter: Ineqmath", + "pr_type": "adapter" + }, + { + "pr_number": 402, + "pr_url": "https://github.com/laude-institute/harbor/pull/402", + "author_github_handle": "xianliu", + "additions": 2116, + "deletions": 0, + "pr_title": "[Ready for Review] Add crustbench adapter", + "pr_type": "adapter" + }, + { + "pr_number": 401, + "pr_url": "https://github.com/laude-institute/harbor/pull/401", + "author_github_handle": "Ji-Pengliang", + "additions": 1, + "deletions": 1, + "pr_title": "update arc-agi-2 parity test pr", + "pr_type": "engineering" + }, + { + "pr_number": 399, + "pr_url": "https://github.com/laude-institute/harbor/pull/399", + "author_github_handle": "nandatheguntupalli", + "additions": 74, + "deletions": 11, + "pr_title": "Enhance documentation and structure in CLAUDE.md and README.md", + "pr_type": "other" + }, + { + "pr_number": 395, + "pr_url": "https://github.com/laude-institute/harbor/pull/395", + "author_github_handle": "Anjiang-Wei", + "additions": 13408, + "deletions": 1, + "pr_title": "[Ready for Review] Adapter: SATBench", + "pr_type": "adapter" + }, + { + "pr_number": 394, + "pr_url": "https://github.com/laude-institute/harbor/pull/394", + "author_github_handle": "alexgshaw", + "additions": 12, + "deletions": 40, + "pr_title": "Remove verbose flag and show task counts", + "pr_type": "task" + }, + { + "pr_number": 388, + "pr_url": "https://github.com/laude-institute/harbor/pull/388", + "author_github_handle": "alexgshaw", + "additions": 2565, + "deletions": 584, + "pr_title": "Postgres registry", + "pr_type": "other" + }, + { + "pr_number": 380, + "pr_url": "https://github.com/laude-institute/harbor/pull/380", + "author_github_handle": "hanxu12", + "additions": 7030, + "deletions": 1, + "pr_title": "[Ready for Review] Adapter: LawBench", + "pr_type": "adapter" + }, + { + "pr_number": 376, + "pr_url": "https://github.com/laude-institute/harbor/pull/376", + "author_github_handle": "kanazawa-asyncio", + "additions": 1208, + "deletions": 1, + "pr_title": "feat(registry): add Alibaba terminal-bench-pro dataset", + "pr_type": "other" + }, + { + "pr_number": 367, + "pr_url": "https://github.com/laude-institute/harbor/pull/367", + "author_github_handle": "stared", + "additions": 104, + "deletions": 7, + "pr_title": "Viewer cost estimate with LiteLLM", + "pr_type": "other" + }, + { + "pr_number": 364, + "pr_url": "https://github.com/laude-institute/harbor/pull/364", + "author_github_handle": "li-boxuan", + "additions": 23, + "deletions": 13, + "pr_title": "Fix unit test failure in lite_llm.py", + "pr_type": "engineering" + }, + { + "pr_number": 363, + "pr_url": "https://github.com/laude-institute/harbor/pull/363", + "author_github_handle": "octaviaguo", + "additions": 3309, + "deletions": 0, + "pr_title": "[Ready for Review] Adapter: StrongReject", + "pr_type": "adapter" + }, + { + "pr_number": 362, + "pr_url": "https://github.com/laude-institute/harbor/pull/362", + "author_github_handle": "alexgshaw", + "additions": 2, + "deletions": 6, + "pr_title": "Fix AttributeError when accessing default environment type in CLI", + "pr_type": "other" + }, + { + "pr_number": 361, + "pr_url": "https://github.com/laude-institute/harbor/pull/361", + "author_github_handle": "alexgshaw", + "additions": 1, + "deletions": 1, + "pr_title": "Change -a shorthand in start-env from --agent to --all", + "pr_type": "other" + }, + { + "pr_number": 360, + "pr_url": "https://github.com/laude-institute/harbor/pull/360", + "author_github_handle": "alexgshaw", + "additions": 17, + "deletions": 12, + "pr_title": "Restrict environment variables passed to Oracle container", + "pr_type": "other" + }, + { + "pr_number": 359, + "pr_url": "https://github.com/laude-institute/harbor/pull/359", + "author_github_handle": "alexgshaw", + "additions": 21, + "deletions": 1, + "pr_title": "Add include-standard-metadata option to tasks init", + "pr_type": "task" + }, + { + "pr_number": 358, + "pr_url": "https://github.com/laude-institute/harbor/pull/358", + "author_github_handle": "Ternura143", + "additions": 24649, + "deletions": 0, + "pr_title": "[Ready for Review - Final Fix] Adapter: bfcl", + "pr_type": "adapter" + }, + { + "pr_number": 351, + "pr_url": "https://github.com/laude-institute/harbor/pull/351", + "author_github_handle": "EstelYang", + "additions": 68583, + "deletions": 67032, + "pr_title": "[Ready for Review] Adapter: QCircuitBench", + "pr_type": "adapter" + }, + { + "pr_number": 350, + "pr_url": "https://github.com/laude-institute/harbor/pull/350", + "author_github_handle": "li-boxuan", + "additions": 111, + "deletions": 6, + "pr_title": "Add get model limit utility and fix Terminus-2 error message", + "pr_type": "other" + }, + { + "pr_number": 346, + "pr_url": "https://github.com/laude-institute/harbor/pull/346", + "author_github_handle": "Hangzhi", + "additions": 1768, + "deletions": 0, + "pr_title": "[Ready for review -Final Fix] Quixbugs adapter", + "pr_type": "adapter" + }, + { + "pr_number": 343, + "pr_url": "https://github.com/laude-institute/harbor/pull/343", + "author_github_handle": "rootCircle", + "additions": 40, + "deletions": 2, + "pr_title": "Fix: normalize `--path .` to absolute to prevent invalid Docker tags", + "pr_type": "other" + }, + { + "pr_number": 341, + "pr_url": "https://github.com/laude-institute/harbor/pull/341", + "author_github_handle": "li-boxuan", + "additions": 9, + "deletions": 9, + "pr_title": "Bump OpenHands to 1.0.0 in tests and update gold trajectories & traces", + "pr_type": "engineering" + }, + { + "pr_number": 339, + "pr_url": "https://github.com/laude-institute/harbor/pull/339", + "author_github_handle": "penfever", + "additions": 139, + "deletions": 9, + "pr_title": "[FEATURE] Improve LiteLLM Handling of vLLM Hosted Models ", + "pr_type": "other" + }, + { + "pr_number": 337, + "pr_url": "https://github.com/laude-institute/harbor/pull/337", + "author_github_handle": "penfever", + "additions": 9, + "deletions": 0, + "pr_title": "[TINY] Increase tmux history limit", + "pr_type": "other" + }, + { + "pr_number": 336, + "pr_url": "https://github.com/laude-institute/harbor/pull/336", + "author_github_handle": "penfever", + "additions": 16, + "deletions": 2, + "pr_title": "[TINY] Warn user if required model_info is left unset", + "pr_type": "other" + }, + { + "pr_number": 333, + "pr_url": "https://github.com/laude-institute/harbor/pull/333", + "author_github_handle": "pfbyjy", + "additions": 57, + "deletions": 19, + "pr_title": "Update claude_code.py to allow access to all tools", + "pr_type": "other" + }, + { + "pr_number": 330, + "pr_url": "https://github.com/laude-institute/harbor/pull/330", + "author_github_handle": "terryyz", + "additions": 10081, + "deletions": 0, + "pr_title": "[Ready for Review - fixing] Adapter: BigCodeBench-Hard", + "pr_type": "adapter" + }, + { + "pr_number": 327, + "pr_url": "https://github.com/laude-institute/harbor/pull/327", + "author_github_handle": "alexgshaw", + "additions": 79, + "deletions": 34, + "pr_title": "Make internet configurable from task config", + "pr_type": "task" + }, + { + "pr_number": 326, + "pr_url": "https://github.com/laude-institute/harbor/pull/326", + "author_github_handle": "alexgshaw", + "additions": 286, + "deletions": 1, + "pr_title": "Add CLAUDE.md documentation for AI assistants", + "pr_type": "other" + }, + { + "pr_number": 325, + "pr_url": "https://github.com/laude-institute/harbor/pull/325", + "author_github_handle": "alexgshaw", + "additions": 181, + "deletions": 28, + "pr_title": "feat: add support for custom environment implementations via import path", + "pr_type": "other" + }, + { + "pr_number": 323, + "pr_url": "https://github.com/laude-institute/harbor/pull/323", + "author_github_handle": "ifoukarakis", + "additions": 5, + "deletions": 4, + "pr_title": "fix: default registry URL reference", + "pr_type": "other" + }, + { + "pr_number": 319, + "pr_url": "https://github.com/laude-institute/harbor/pull/319", + "author_github_handle": "ibercovich", + "additions": 9, + "deletions": 1, + "pr_title": "feat(viewer): round rewards to 4 decimal places", + "pr_type": "engineering" + }, + { + "pr_number": 318, + "pr_url": "https://github.com/laude-institute/harbor/pull/318", + "author_github_handle": "alexgshaw", + "additions": 10, + "deletions": 9, + "pr_title": "Revert to include env vars in docker.", + "pr_type": "other" + }, + { + "pr_number": 316, + "pr_url": "https://github.com/laude-institute/harbor/pull/316", + "author_github_handle": "thdxr", + "additions": 1, + "deletions": 1, + "pr_title": "Change opencode command to output JSON format", + "pr_type": "engineering" + }, + { + "pr_number": 313, + "pr_url": "https://github.com/laude-institute/harbor/pull/313", + "author_github_handle": "li-boxuan", + "additions": 332, + "deletions": 232, + "pr_title": "Fix ruff check on fork", + "pr_type": "other" + }, + { + "pr_number": 311, + "pr_url": "https://github.com/laude-institute/harbor/pull/311", + "author_github_handle": "Rebabit", + "additions": 1883, + "deletions": 0, + "pr_title": "[Ready for Review - Final Fix] Adapter: MMMLU", + "pr_type": "adapter" + }, + { + "pr_number": 308, + "pr_url": "https://github.com/laude-institute/harbor/pull/308", + "author_github_handle": "stared", + "additions": 181, + "deletions": 20, + "pr_title": "Add smart port handling for `harbor view`", + "pr_type": "other" + }, + { + "pr_number": 307, + "pr_url": "https://github.com/laude-institute/harbor/pull/307", + "author_github_handle": "Waterpine", + "additions": 25831, + "deletions": 0, + "pr_title": "[Ready for Review] mmau adapter", + "pr_type": "adapter" + }, + { + "pr_number": 298, + "pr_url": "https://github.com/laude-institute/harbor/pull/298", + "author_github_handle": "ibercovich", + "additions": 22, + "deletions": 22, + "pr_title": "made newline a requirement in prompt since small LLMs were failing", + "pr_type": "other" + }, + { + "pr_number": 292, + "pr_url": "https://github.com/laude-institute/harbor/pull/292", + "author_github_handle": "linhaowei1", + "additions": 29, + "deletions": 29, + "pr_title": "[fix adapter] Revise the parity results for SLDBench", + "pr_type": "adapter" + }, + { + "pr_number": 284, + "pr_url": "https://github.com/laude-institute/harbor/pull/284", + "author_github_handle": "lurf21", + "additions": 6, + "deletions": 2, + "pr_title": "fix: pass env variables when oracle agent executes the command", + "pr_type": "other" + }, + { + "pr_number": 279, + "pr_url": "https://github.com/laude-institute/harbor/pull/279", + "author_github_handle": "neginraoof", + "additions": 485, + "deletions": 0, + "pr_title": "Adding swe-agent", + "pr_type": "other" + }, + { + "pr_number": 276, + "pr_url": "https://github.com/laude-institute/harbor/pull/276", + "author_github_handle": "penfever", + "additions": 45, + "deletions": 21, + "pr_title": "[FEATURE] Make asciinema recording optional", + "pr_type": "engineering" + }, + { + "pr_number": 275, + "pr_url": "https://github.com/laude-institute/harbor/pull/275", + "author_github_handle": "avelanarius", + "additions": 16, + "deletions": 16, + "pr_title": "[Adapter] Update CompileBench adapter, fixing oracle on Daytona", + "pr_type": "adapter" + }, + { + "pr_number": 274, + "pr_url": "https://github.com/laude-institute/harbor/pull/274", + "author_github_handle": "li-boxuan", + "additions": 292, + "deletions": 148, + "pr_title": "Add CI gate for ruff linter on modified files", + "pr_type": "engineering" + }, + { + "pr_number": 272, + "pr_url": "https://github.com/laude-institute/harbor/pull/272", + "author_github_handle": "li-boxuan", + "additions": 1, + "deletions": 1, + "pr_title": "Do not pass host env variables to Docker environment", + "pr_type": "other" + }, + { + "pr_number": 269, + "pr_url": "https://github.com/laude-institute/harbor/pull/269", + "author_github_handle": "bstee615", + "additions": 43, + "deletions": 20, + "pr_title": "Support Azure OpenAI endpoints for LiteLLM agents", + "pr_type": "other" + }, + { + "pr_number": 267, + "pr_url": "https://github.com/laude-institute/harbor/pull/267", + "author_github_handle": "HaishuoFang", + "additions": 2794, + "deletions": 0, + "pr_title": "[Ready for Review - final discussion] Adapter: FinanceAgent", + "pr_type": "adapter" + }, + { + "pr_number": 265, + "pr_url": "https://github.com/laude-institute/harbor/pull/265", + "author_github_handle": "li-boxuan", + "additions": 219, + "deletions": 4, + "pr_title": "Terminus-2: Support optional interleaved thinking", + "pr_type": "other" + }, + { + "pr_number": 264, + "pr_url": "https://github.com/laude-institute/harbor/pull/264", + "author_github_handle": "XuandongZhao", + "additions": 1723, + "deletions": 0, + "pr_title": "[Adapter] GPQA-Diamond Adapter", + "pr_type": "adapter" + }, + { + "pr_number": 263, + "pr_url": "https://github.com/laude-institute/harbor/pull/263", + "author_github_handle": "Slimshilin", + "additions": 1, + "deletions": 1, + "pr_title": "Fix EvoEval Adapter forked_repo Link", + "pr_type": "adapter" + }, + { + "pr_number": 262, + "pr_url": "https://github.com/laude-institute/harbor/pull/262", + "author_github_handle": "rotemtam", + "additions": 123, + "deletions": 1, + "pr_title": "fix: `--agent-import-path` ignored when `-a` not specified", + "pr_type": "engineering" + }, + { + "pr_number": 260, + "pr_url": "https://github.com/laude-institute/harbor/pull/260", + "author_github_handle": "StevenDillmann", + "additions": 21, + "deletions": 0, + "pr_title": "Add initial CITATION.cff file", + "pr_type": "engineering" + }, + { + "pr_number": 259, + "pr_url": "https://github.com/laude-institute/harbor/pull/259", + "author_github_handle": "rotemtam", + "additions": 97, + "deletions": 6, + "pr_title": "fix: add Alpine Linux support for claude-code agent", + "pr_type": "other" + }, + { + "pr_number": 257, + "pr_url": "https://github.com/laude-institute/harbor/pull/257", + "author_github_handle": "kobe0938", + "additions": 1761, + "deletions": 2, + "pr_title": "[Ready for Review - fixing] Adapter: Humanevalfix", + "pr_type": "adapter" + }, + { + "pr_number": 256, + "pr_url": "https://github.com/laude-institute/harbor/pull/256", + "author_github_handle": "aht", + "additions": 5038, + "deletions": 0, + "pr_title": "[Ready for Review] Adapter: REASONING GYM ", + "pr_type": "adapter" + }, + { + "pr_number": 251, + "pr_url": "https://github.com/laude-institute/harbor/pull/251", + "author_github_handle": "ibercovich", + "additions": 4, + "deletions": 0, + "pr_title": "feat(mini-swe-agent): pass through OPENAI_API_BASE for custom endpoints", + "pr_type": "other" + }, + { + "pr_number": 249, + "pr_url": "https://github.com/laude-institute/harbor/pull/249", + "author_github_handle": "robertzhidealx", + "additions": 9252, + "deletions": 0, + "pr_title": "Adapters: SWE-bench Pro", + "pr_type": "adapter" + }, + { + "pr_number": 247, + "pr_url": "https://github.com/laude-institute/harbor/pull/247", + "author_github_handle": "AkshayVenkataraman", + "additions": 18, + "deletions": 1, + "pr_title": "initial commit to enable agent setup timeout override", + "pr_type": "other" + }, + { + "pr_number": 246, + "pr_url": "https://github.com/laude-institute/harbor/pull/246", + "author_github_handle": "mieciu", + "additions": 8, + "deletions": 1, + "pr_title": "Support `--env daytona --ek network_block_all=true` in `harbor run`", + "pr_type": "other" + }, + { + "pr_number": 243, + "pr_url": "https://github.com/laude-institute/harbor/pull/243", + "author_github_handle": "neginraoof", + "additions": 140, + "deletions": 0, + "pr_title": "Inline swe-agent inference config", + "pr_type": "engineering" + }, + { + "pr_number": 242, + "pr_url": "https://github.com/laude-institute/harbor/pull/242", + "author_github_handle": "neginraoof", + "additions": 161, + "deletions": 56, + "pr_title": "Add SWE-agent configuration example", + "pr_type": "engineering" + }, + { + "pr_number": 237, + "pr_url": "https://github.com/laude-institute/harbor/pull/237", + "author_github_handle": "li-boxuan", + "additions": 223, + "deletions": 2, + "pr_title": "GPU support + example task that requires GPU", + "pr_type": "task" + }, + { + "pr_number": 236, + "pr_url": "https://github.com/laude-institute/harbor/pull/236", + "author_github_handle": "luxinyu1", + "additions": 21, + "deletions": 1, + "pr_title": "Add custom API base URL support for claude code agent", + "pr_type": "other" + }, + { + "pr_number": 235, + "pr_url": "https://github.com/laude-institute/harbor/pull/235", + "author_github_handle": "penfever", + "additions": 244, + "deletions": 3, + "pr_title": "add verifier output and instructions", + "pr_type": "other" + }, + { + "pr_number": 232, + "pr_url": "https://github.com/laude-institute/harbor/pull/232", + "author_github_handle": "dzorlu", + "additions": 6, + "deletions": 0, + "pr_title": "feat: store all messages", + "pr_type": "other" + }, + { + "pr_number": 230, + "pr_url": "https://github.com/laude-institute/harbor/pull/230", + "author_github_handle": "RishiDesai", + "additions": 12, + "deletions": 2, + "pr_title": "Serialize Docker image builds to prevent parallel build race condition", + "pr_type": "engineering" + }, + { + "pr_number": 226, + "pr_url": "https://github.com/laude-institute/harbor/pull/226", + "author_github_handle": "AkshayVenkataraman", + "additions": 9, + "deletions": 6, + "pr_title": "improved workdir parse logic", + "pr_type": "other" + }, + { + "pr_number": 225, + "pr_url": "https://github.com/laude-institute/harbor/pull/225", + "author_github_handle": "li-boxuan", + "additions": 1731, + "deletions": 478, + "pr_title": "Trajectories & traces for OpenHands: handle tool calling", + "pr_type": "other" + }, + { + "pr_number": 220, + "pr_url": "https://github.com/laude-institute/harbor/pull/220", + "author_github_handle": "Ji-Pengliang", + "additions": 2228, + "deletions": 1, + "pr_title": "[Ready for Review - fixing] Adapter: ARC-AGI-2 benchmark", + "pr_type": "adapter" + }, + { + "pr_number": 217, + "pr_url": "https://github.com/laude-institute/harbor/pull/217", + "author_github_handle": "penfever", + "additions": 226, + "deletions": 42, + "pr_title": "Extract result during trace exports", + "pr_type": "other" + }, + { + "pr_number": 216, + "pr_url": "https://github.com/laude-institute/harbor/pull/216", + "author_github_handle": "paraliine", + "additions": 1, + "deletions": 1, + "pr_title": "Fix Terminus2 tmux logging path", + "pr_type": "other" + }, + { + "pr_number": 215, + "pr_url": "https://github.com/laude-institute/harbor/pull/215", + "author_github_handle": "paraliine", + "additions": 1, + "deletions": 1, + "pr_title": "Fix blocking tmux send-keys execution", + "pr_type": "other" + }, + { + "pr_number": 214, + "pr_url": "https://github.com/laude-institute/harbor/pull/214", + "author_github_handle": "mieciu", + "additions": 119, + "deletions": 52, + "pr_title": "Fix `--no-delete` in Docker environment", + "pr_type": "other" + }, + { + "pr_number": 212, + "pr_url": "https://github.com/laude-institute/harbor/pull/212", + "author_github_handle": "giansegato", + "additions": 976, + "deletions": 0, + "pr_title": "feat: Add GKE/Kubernetes environment support", + "pr_type": "other" + }, + { + "pr_number": 210, + "pr_url": "https://github.com/laude-institute/harbor/pull/210", + "author_github_handle": "james-rl", + "additions": 28, + "deletions": 14, + "pr_title": "Added resource config for runloop env", + "pr_type": "engineering" + }, + { + "pr_number": 201, + "pr_url": "https://github.com/laude-institute/harbor/pull/201", + "author_github_handle": "crystalxyz", + "additions": 2124, + "deletions": 0, + "pr_title": "[Ready for review - Final Review] Adapter: LAB-Bench FigQA", + "pr_type": "adapter" + }, + { + "pr_number": 200, + "pr_url": "https://github.com/laude-institute/harbor/pull/200", + "author_github_handle": "RishiDesai", + "additions": 12, + "deletions": 1, + "pr_title": "Allow custom BaseLLM backend for Agent", + "pr_type": "other" + }, + { + "pr_number": 198, + "pr_url": "https://github.com/laude-institute/harbor/pull/198", + "author_github_handle": "pashpashpash", + "additions": 178, + "deletions": 0, + "pr_title": "cline cli integration", + "pr_type": "other" + }, + { + "pr_number": 195, + "pr_url": "https://github.com/laude-institute/harbor/pull/195", + "author_github_handle": "AkshayVenkataraman", + "additions": 18, + "deletions": 2, + "pr_title": "made tmux viewport size configurable", + "pr_type": "engineering" + }, + { + "pr_number": 194, + "pr_url": "https://github.com/laude-institute/harbor/pull/194", + "author_github_handle": "dpedchenko", + "additions": 7, + "deletions": 4, + "pr_title": "Minor change to Modal backend", + "pr_type": "other" + }, + { + "pr_number": 191, + "pr_url": "https://github.com/laude-institute/harbor/pull/191", + "author_github_handle": "tlongwell-block", + "additions": 30, + "deletions": 14, + "pr_title": "support additional inference providers for the goose agent to allow benching open models", + "pr_type": "other" + }, + { + "pr_number": 189, + "pr_url": "https://github.com/laude-institute/harbor/pull/189", + "author_github_handle": "james-rl", + "additions": 150, + "deletions": 59, + "pr_title": "Fixed runloop env", + "pr_type": "other" + }, + { + "pr_number": 188, + "pr_url": "https://github.com/laude-institute/harbor/pull/188", + "author_github_handle": "tlongwell-block", + "additions": 11, + "deletions": 1, + "pr_title": "enable goose developer and todo extensions in harbor recipe", + "pr_type": "engineering" + }, + { + "pr_number": 184, + "pr_url": "https://github.com/laude-institute/harbor/pull/184", + "author_github_handle": "li-boxuan", + "additions": 676, + "deletions": 72, + "pr_title": "Terminus-2 Trajectory: raw_content & linear_history modes", + "pr_type": "other" + }, + { + "pr_number": 183, + "pr_url": "https://github.com/laude-institute/harbor/pull/183", + "author_github_handle": "li-boxuan", + "additions": 1007, + "deletions": 244, + "pr_title": "Export SFT traces from trajectories", + "pr_type": "other" + }, + { + "pr_number": 181, + "pr_url": "https://github.com/laude-institute/harbor/pull/181", + "author_github_handle": "richardzhuang0412", + "additions": 91, + "deletions": 0, + "pr_title": "Added patching fix for openhand when handling together context limit error", + "pr_type": "other" + }, + { + "pr_number": 177, + "pr_url": "https://github.com/laude-institute/harbor/pull/177", + "author_github_handle": "li-boxuan", + "additions": 2, + "deletions": 2, + "pr_title": "Fix error message in Terminus trajectory", + "pr_type": "other" + }, + { + "pr_number": 176, + "pr_url": "https://github.com/laude-institute/harbor/pull/176", + "author_github_handle": "Chesars", + "additions": 3, + "deletions": 0, + "pr_title": "fix: flaky terminus_2 timeout test", + "pr_type": "engineering" + }, + { + "pr_number": 175, + "pr_url": "https://github.com/laude-institute/harbor/pull/175", + "author_github_handle": "Chesars", + "additions": 1, + "deletions": 1, + "pr_title": "docs: Fix broken link in README.md", + "pr_type": "other" + }, + { + "pr_number": 174, + "pr_url": "https://github.com/laude-institute/harbor/pull/174", + "author_github_handle": "li-boxuan", + "additions": 728, + "deletions": 1, + "pr_title": "Add integration tests for exported traces", + "pr_type": "engineering" + }, + { + "pr_number": 173, + "pr_url": "https://github.com/laude-institute/harbor/pull/173", + "author_github_handle": "ai-jz", + "additions": 6, + "deletions": 1, + "pr_title": "feat: Add Claude Code OAuth token support for subscription users", + "pr_type": "other" + }, + { + "pr_number": 170, + "pr_url": "https://github.com/laude-institute/harbor/pull/170", + "author_github_handle": "mieciu", + "additions": 480, + "deletions": 0, + "pr_title": "Adding CompileBench dataset/adapter", + "pr_type": "adapter" + }, + { + "pr_number": 169, + "pr_url": "https://github.com/laude-institute/harbor/pull/169", + "author_github_handle": "li-boxuan", + "additions": 254, + "deletions": 19, + "pr_title": "OpenHands trajectory fixes: tool call definitions and bookkeeping steps", + "pr_type": "other" + }, + { + "pr_number": 168, + "pr_url": "https://github.com/laude-institute/harbor/pull/168", + "author_github_handle": "liyuyun-lyy", + "additions": 1, + "deletions": 1, + "pr_title": "fix: use yolo mode to pass hello world test", + "pr_type": "engineering" + }, + { + "pr_number": 163, + "pr_url": "https://github.com/laude-institute/harbor/pull/163", + "author_github_handle": "penfever", + "additions": 34, + "deletions": 9, + "pr_title": "Enhance episode conversation extraction logic", + "pr_type": "other" + }, + { + "pr_number": 160, + "pr_url": "https://github.com/laude-institute/harbor/pull/160", + "author_github_handle": "penfever", + "additions": 12, + "deletions": 4, + "pr_title": "BUGFIX: Numeric rather than lexical sorting of episodes", + "pr_type": "other" + }, + { + "pr_number": 156, + "pr_url": "https://github.com/laude-institute/harbor/pull/156", + "author_github_handle": "li-boxuan", + "additions": 113, + "deletions": 19, + "pr_title": "Terminus-2: Add model_info parameter to register LLM info", + "pr_type": "other" + }, + { + "pr_number": 154, + "pr_url": "https://github.com/laude-institute/harbor/pull/154", + "author_github_handle": "chenzizhao", + "additions": 31425, + "deletions": 67694, + "pr_title": "[Ready for review - final fix] Adapter: BixBench", + "pr_type": "adapter" + }, + { + "pr_number": 153, + "pr_url": "https://github.com/laude-institute/harbor/pull/153", + "author_github_handle": "digitsisyph", + "additions": 1299, + "deletions": 1, + "pr_title": "Add adapter init command", + "pr_type": "adapter" + }, + { + "pr_number": 151, + "pr_url": "https://github.com/laude-institute/harbor/pull/151", + "author_github_handle": "linhaowei1", + "additions": 1440, + "deletions": 1, + "pr_title": "[adapter] Add SLDBench", + "pr_type": "adapter" + }, + { + "pr_number": 149, + "pr_url": "https://github.com/laude-institute/harbor/pull/149", + "author_github_handle": "orfeas-menis", + "additions": 887, + "deletions": 0, + "pr_title": "Adapter for AIME", + "pr_type": "adapter" + }, + { + "pr_number": 148, + "pr_url": "https://github.com/laude-institute/harbor/pull/148", + "author_github_handle": "ibercovich", + "additions": 355, + "deletions": 31, + "pr_title": "Updated checker and debugger", + "pr_type": "other" + }, + { + "pr_number": 147, + "pr_url": "https://github.com/laude-institute/harbor/pull/147", + "author_github_handle": "penfever", + "additions": 25, + "deletions": 19, + "pr_title": "Robust termination of aiohttp events wrapping Daytona containers", + "pr_type": "other" + }, + { + "pr_number": 146, + "pr_url": "https://github.com/laude-institute/harbor/pull/146", + "author_github_handle": "StevenDillmann", + "additions": 547, + "deletions": 0, + "pr_title": "[Adapter] Update ReplicationBench to include masked manuscripts of papers", + "pr_type": "adapter" + }, + { + "pr_number": 144, + "pr_url": "https://github.com/laude-institute/harbor/pull/144", + "author_github_handle": "penfever", + "additions": 20, + "deletions": 18, + "pr_title": "Oracle Agent Hardening", + "pr_type": "other" + }, + { + "pr_number": 143, + "pr_url": "https://github.com/laude-institute/harbor/pull/143", + "author_github_handle": "digitsisyph", + "additions": 4096, + "deletions": 0, + "pr_title": "Add trajectory viewer", + "pr_type": "other" + }, + { + "pr_number": 142, + "pr_url": "https://github.com/laude-institute/harbor/pull/142", + "author_github_handle": "penfever", + "additions": 54, + "deletions": 4, + "pr_title": "Penfever/handle vllm context length errors correctly", + "pr_type": "other" + }, + { + "pr_number": 141, + "pr_url": "https://github.com/laude-institute/harbor/pull/141", + "author_github_handle": "li-boxuan", + "additions": 1619, + "deletions": 1782, + "pr_title": "Terminus-2: Full trajectories, rollout details, bug fixes and E2E tests", + "pr_type": "engineering" + }, + { + "pr_number": 139, + "pr_url": "https://github.com/laude-institute/harbor/pull/139", + "author_github_handle": "LithiumDA", + "additions": 1, + "deletions": 3, + "pr_title": "[Adapter] fix (codepde): remove tmux & asciinema from Dockerfile", + "pr_type": "adapter" + }, + { + "pr_number": 135, + "pr_url": "https://github.com/laude-institute/harbor/pull/135", + "author_github_handle": "giansegato", + "additions": 23, + "deletions": 0, + "pr_title": "Add extended thinking mode support for Anthropic models", + "pr_type": "other" + }, + { + "pr_number": 132, + "pr_url": "https://github.com/laude-institute/harbor/pull/132", + "author_github_handle": "li-boxuan", + "additions": 17, + "deletions": 46, + "pr_title": "Terminus trajectory: Remove first user message", + "pr_type": "other" + }, + { + "pr_number": 131, + "pr_url": "https://github.com/laude-institute/harbor/pull/131", + "author_github_handle": "HiromuHota", + "additions": 3, + "deletions": 7, + "pr_title": "Add content from run-tests.sh correctly during migration", + "pr_type": "engineering" + }, + { + "pr_number": 130, + "pr_url": "https://github.com/laude-institute/harbor/pull/130", + "author_github_handle": "HiromuHota", + "additions": 1, + "deletions": 0, + "pr_title": "Allow difficulty: unknown for compat w/TB1.0", + "pr_type": "other" + }, + { + "pr_number": 125, + "pr_url": "https://github.com/laude-institute/harbor/pull/125", + "author_github_handle": "li-boxuan", + "additions": 105, + "deletions": 74, + "pr_title": "Terminus 2: prompt token ids and reasoning content", + "pr_type": "other" + }, + { + "pr_number": 122, + "pr_url": "https://github.com/laude-institute/harbor/pull/122", + "author_github_handle": "li-boxuan", + "additions": 10, + "deletions": 32, + "pr_title": "Fix metric discrepancy in openhands golden trajectory", + "pr_type": "other" + }, + { + "pr_number": 121, + "pr_url": "https://github.com/laude-institute/harbor/pull/121", + "author_github_handle": "thdxr", + "additions": 3, + "deletions": 0, + "pr_title": "Enable OPENCODE_FAKE_VCS for OpenCode agent", + "pr_type": "other" + }, + { + "pr_number": 119, + "pr_url": "https://github.com/laude-institute/harbor/pull/119", + "author_github_handle": "penfever", + "additions": 8, + "deletions": 4, + "pr_title": "guard traces format acquisition", + "pr_type": "engineering" + }, + { + "pr_number": 118, + "pr_url": "https://github.com/laude-institute/harbor/pull/118", + "author_github_handle": "li-boxuan", + "additions": 206, + "deletions": 314, + "pr_title": "Clean up integration tests + Drop source_call_id for terminus trajectory", + "pr_type": "engineering" + }, + { + "pr_number": 117, + "pr_url": "https://github.com/laude-institute/harbor/pull/117", + "author_github_handle": "li-boxuan", + "additions": 486, + "deletions": 1, + "pr_title": "Terminus-2: Include erroneous json response in trajectory message field", + "pr_type": "other" + }, + { + "pr_number": 115, + "pr_url": "https://github.com/laude-institute/harbor/pull/115", + "author_github_handle": "harshraj172", + "additions": 4301, + "deletions": 0, + "pr_title": "Add swesmith adapter", + "pr_type": "adapter" + }, + { + "pr_number": 113, + "pr_url": "https://github.com/laude-institute/harbor/pull/113", + "author_github_handle": "EtashGuha", + "additions": 32565, + "deletions": 3335, + "pr_title": "update train on traces", + "pr_type": "other" + }, + { + "pr_number": 106, + "pr_url": "https://github.com/laude-institute/harbor/pull/106", + "author_github_handle": "linhaowei1", + "additions": 1953, + "deletions": 0, + "pr_title": "Add Autocodebench adapter", + "pr_type": "adapter" + }, + { + "pr_number": 105, + "pr_url": "https://github.com/laude-institute/harbor/pull/105", + "author_github_handle": "li-boxuan", + "additions": 1, + "deletions": 1, + "pr_title": "Fix test.sh in example task", + "pr_type": "task" + }, + { + "pr_number": 104, + "pr_url": "https://github.com/laude-institute/harbor/pull/104", + "author_github_handle": "santaboi", + "additions": 1, + "deletions": 1, + "pr_title": "Fix Terminal Bench 2.0 description typo", + "pr_type": "other" + }, + { + "pr_number": 102, + "pr_url": "https://github.com/laude-institute/harbor/pull/102", + "author_github_handle": "LithiumDA", + "additions": 9, + "deletions": 11, + "pr_title": "[CodePDE Adapter] fix: linting", + "pr_type": "adapter" + }, + { + "pr_number": 100, + "pr_url": "https://github.com/laude-institute/harbor/pull/100", + "author_github_handle": "davidheineman", + "additions": 8656, + "deletions": 0, + "pr_title": "[Ready for Review] Adapter: SWE-Lancer", + "pr_type": "adapter" + }, + { + "pr_number": 99, + "pr_url": "https://github.com/laude-institute/harbor/pull/99", + "author_github_handle": "omi-n", + "additions": 1771, + "deletions": 1, + "pr_title": "[Adapter] Add mlgym-bench adapter", + "pr_type": "adapter" + }, + { + "pr_number": 98, + "pr_url": "https://github.com/laude-institute/harbor/pull/98", + "author_github_handle": "Slimshilin", + "additions": 18, + "deletions": 4, + "pr_title": "Adapters readme template", + "pr_type": "adapter" + }, + { + "pr_number": 97, + "pr_url": "https://github.com/laude-institute/harbor/pull/97", + "author_github_handle": "junhongmit", + "additions": 3521, + "deletions": 0, + "pr_title": "[Adapter] Adding USACO Adapter", + "pr_type": "adapter" + }, + { + "pr_number": 96, + "pr_url": "https://github.com/laude-institute/harbor/pull/96", + "author_github_handle": "MichaelY310", + "additions": 15684, + "deletions": 0, + "pr_title": "[Ready For Review] Adding SWTBench Adapter", + "pr_type": "adapter" + }, + { + "pr_number": 95, + "pr_url": "https://github.com/laude-institute/harbor/pull/95", + "author_github_handle": "li-boxuan", + "additions": 0, + "deletions": 6, + "pr_title": "CI: remove redundant test stage", + "pr_type": "engineering" + }, + { + "pr_number": 94, + "pr_url": "https://github.com/laude-institute/harbor/pull/94", + "author_github_handle": "ethanlshen", + "additions": 9, + "deletions": 1, + "pr_title": "Added summarization toggle", + "pr_type": "other" + }, + { + "pr_number": 93, + "pr_url": "https://github.com/laude-institute/harbor/pull/93", + "author_github_handle": "li-boxuan", + "additions": 235, + "deletions": 8, + "pr_title": "Gemini-CLI to generate trajectory in ATIF", + "pr_type": "other" + }, + { + "pr_number": 92, + "pr_url": "https://github.com/laude-institute/harbor/pull/92", + "author_github_handle": "StevenDillmann", + "additions": 1971, + "deletions": 0, + "pr_title": "[Adapter] Adding ReplicationBench adapter to Harbor", + "pr_type": "adapter" + }, + { + "pr_number": 90, + "pr_url": "https://github.com/laude-institute/harbor/pull/90", + "author_github_handle": "LithiumDA", + "additions": 1136, + "deletions": 0, + "pr_title": "[Adapter] Adding CodePDE adapter", + "pr_type": "adapter" + }, + { + "pr_number": 89, + "pr_url": "https://github.com/laude-institute/harbor/pull/89", + "author_github_handle": "Dongzhikang", + "additions": 2140, + "deletions": 2, + "pr_title": "adapter for Deveval", + "pr_type": "adapter" + }, + { + "pr_number": 88, + "pr_url": "https://github.com/laude-institute/harbor/pull/88", + "author_github_handle": "audreycs", + "additions": 2158, + "deletions": 0, + "pr_title": "[Adapter] Adding Livecodebench adpter", + "pr_type": "adapter" + }, + { + "pr_number": 86, + "pr_url": "https://github.com/laude-institute/harbor/pull/86", + "author_github_handle": "harshraj172", + "additions": 679, + "deletions": 31, + "pr_title": "claude-code atif formatting", + "pr_type": "engineering" + }, + { + "pr_number": 84, + "pr_url": "https://github.com/laude-institute/harbor/pull/84", + "author_github_handle": "li-boxuan", + "additions": 1093, + "deletions": 609, + "pr_title": "Terminus-2 to return rollout details (completion_token_ids, log_probs)", + "pr_type": "other" + }, + { + "pr_number": 83, + "pr_url": "https://github.com/laude-institute/harbor/pull/83", + "author_github_handle": "Slimshilin", + "additions": 178, + "deletions": 0, + "pr_title": "Adapter README template", + "pr_type": "adapter" + }, + { + "pr_number": 82, + "pr_url": "https://github.com/laude-institute/harbor/pull/82", + "author_github_handle": "Slimshilin", + "additions": 4, + "deletions": 19, + "pr_title": "Fix -t to -p. Polish README", + "pr_type": "other" + }, + { + "pr_number": 81, + "pr_url": "https://github.com/laude-institute/harbor/pull/81", + "author_github_handle": "li-boxuan", + "additions": 42, + "deletions": 46, + "pr_title": "Terminus-2: Remove token counting hack", + "pr_type": "other" + }, + { + "pr_number": 79, + "pr_url": "https://github.com/laude-institute/harbor/pull/79", + "author_github_handle": "li-boxuan", + "additions": 6, + "deletions": 1, + "pr_title": "Fix token counting in terminus_2 summarisation subagent", + "pr_type": "other" + }, + { + "pr_number": 78, + "pr_url": "https://github.com/laude-institute/harbor/pull/78", + "author_github_handle": "li-boxuan", + "additions": 303, + "deletions": 13, + "pr_title": "Mini SWE Agent: use forked version + generate trajectory following ATIF spec", + "pr_type": "other" + }, + { + "pr_number": 77, + "pr_url": "https://github.com/laude-institute/harbor/pull/77", + "author_github_handle": "harshraj172", + "additions": 428, + "deletions": 19, + "pr_title": "Codex ATIF trajectory", + "pr_type": "other" + }, + { + "pr_number": 76, + "pr_url": "https://github.com/laude-institute/harbor/pull/76", + "author_github_handle": "li-boxuan", + "additions": 20, + "deletions": 11, + "pr_title": "Polish trajectory model field descriptions", + "pr_type": "other" + }, + { + "pr_number": 75, + "pr_url": "https://github.com/laude-institute/harbor/pull/75", + "author_github_handle": "pfbyjy", + "additions": 52, + "deletions": 4, + "pr_title": "Convert Terminal-Bench docker-compose to Harbor format in mapper", + "pr_type": "engineering" + }, + { + "pr_number": 74, + "pr_url": "https://github.com/laude-institute/harbor/pull/74", + "author_github_handle": "ibercovich", + "additions": 2, + "deletions": 2, + "pr_title": "Update model name in gemini-cli-job.yaml", + "pr_type": "other" + }, + { + "pr_number": 73, + "pr_url": "https://github.com/laude-institute/harbor/pull/73", + "author_github_handle": "ibercovich", + "additions": 7, + "deletions": 7, + "pr_title": "Replace 'sb' with 'harbor' in README", + "pr_type": "other" + }, + { + "pr_number": 71, + "pr_url": "https://github.com/laude-institute/harbor/pull/71", + "author_github_handle": "li-boxuan", + "additions": 787, + "deletions": 25, + "pr_title": "Openhands to generate trajectory in ATIF", + "pr_type": "other" + }, + { + "pr_number": 70, + "pr_url": "https://github.com/laude-institute/harbor/pull/70", + "author_github_handle": "alexgshaw", + "additions": 2810, + "deletions": 1516, + "pr_title": "Alexgshaw/support docker compose", + "pr_type": "other" + }, + { + "pr_number": 69, + "pr_url": "https://github.com/laude-institute/harbor/pull/69", + "author_github_handle": "digitsisyph", + "additions": 1714, + "deletions": 1, + "pr_title": "Add adapter for evoeval", + "pr_type": "adapter" + }, + { + "pr_number": 68, + "pr_url": "https://github.com/laude-institute/harbor/pull/68", + "author_github_handle": "ibercovich", + "additions": 3, + "deletions": 1, + "pr_title": "Update sandbox creation timeout configuration", + "pr_type": "engineering" + }, + { + "pr_number": 65, + "pr_url": "https://github.com/laude-institute/harbor/pull/65", + "author_github_handle": "li-boxuan", + "additions": 915, + "deletions": 4, + "pr_title": "Add trajectory validator and tests", + "pr_type": "engineering" + }, + { + "pr_number": 62, + "pr_url": "https://github.com/laude-institute/harbor/pull/62", + "author_github_handle": "li-boxuan", + "additions": 19, + "deletions": 5, + "pr_title": "Handle exceptions on non-critical paths", + "pr_type": "other" + }, + { + "pr_number": 60, + "pr_url": "https://github.com/laude-institute/harbor/pull/60", + "author_github_handle": "li-boxuan", + "additions": 3134, + "deletions": 553, + "pr_title": "Terminus-2 Agent: metrics reporting & trajectory generation", + "pr_type": "other" + }, + { + "pr_number": 58, + "pr_url": "https://github.com/laude-institute/harbor/pull/58", + "author_github_handle": "harshraj172", + "additions": 3052, + "deletions": 160, + "pr_title": "Add the `aider-polyglot` adapter", + "pr_type": "adapter" + }, + { + "pr_number": 56, + "pr_url": "https://github.com/laude-institute/harbor/pull/56", + "author_github_handle": "li-boxuan", + "additions": 1176, + "deletions": 0, + "pr_title": "[RFC] Agent Trajectory Interchange Format (ATIF) Specification", + "pr_type": "engineering" + }, + { + "pr_number": 55, + "pr_url": "https://github.com/laude-institute/harbor/pull/55", + "author_github_handle": "li-boxuan", + "additions": 12, + "deletions": 8, + "pr_title": "Fix docker exec deadlock for tasks with large output", + "pr_type": "task" + }, + { + "pr_number": 52, + "pr_url": "https://github.com/laude-institute/harbor/pull/52", + "author_github_handle": "alexgshaw", + "additions": 4, + "deletions": 0, + "pr_title": "Warn users about Modal Python installation", + "pr_type": "other" + }, + { + "pr_number": 51, + "pr_url": "https://github.com/laude-institute/harbor/pull/51", + "author_github_handle": "li-boxuan", + "additions": 15, + "deletions": 17, + "pr_title": "Fix ruff violations and add linting to CI", + "pr_type": "engineering" + }, + { + "pr_number": 50, + "pr_url": "https://github.com/laude-institute/harbor/pull/50", + "author_github_handle": "li-boxuan", + "additions": 210, + "deletions": 0, + "pr_title": "Terminus-2 to pass session_id", + "pr_type": "other" + }, + { + "pr_number": 49, + "pr_url": "https://github.com/laude-institute/harbor/pull/49", + "author_github_handle": "neginraoof", + "additions": 99, + "deletions": 55, + "pr_title": "updated terminus 2 summarization fallback", + "pr_type": "other" + }, + { + "pr_number": 48, + "pr_url": "https://github.com/laude-institute/harbor/pull/48", + "author_github_handle": "li-boxuan", + "additions": 616, + "deletions": 988, + "pr_title": "Regenerate corrupt uv.lock", + "pr_type": "other" + }, + { + "pr_number": 47, + "pr_url": "https://github.com/laude-institute/harbor/pull/47", + "author_github_handle": "ibercovich", + "additions": 269, + "deletions": 2, + "pr_title": "porting sb tasks check and debug from terminal-bench", + "pr_type": "task" + }, + { + "pr_number": 46, + "pr_url": "https://github.com/laude-institute/harbor/pull/46", + "author_github_handle": "dines-rl", + "additions": 275, + "deletions": 1, + "pr_title": "Add Runloop Environment", + "pr_type": "other" + }, + { + "pr_number": 45, + "pr_url": "https://github.com/laude-institute/harbor/pull/45", + "author_github_handle": "li-boxuan", + "additions": 373, + "deletions": 27, + "pr_title": "Include logprobs in AgentContext", + "pr_type": "other" + }, + { + "pr_number": 44, + "pr_url": "https://github.com/laude-institute/harbor/pull/44", + "author_github_handle": "neginraoof", + "additions": 3752, + "deletions": 191, + "pr_title": "Swebench adapter", + "pr_type": "adapter" + }, + { + "pr_number": 43, + "pr_url": "https://github.com/laude-institute/harbor/pull/43", + "author_github_handle": "alexgshaw", + "additions": 1939, + "deletions": 864, + "pr_title": "QOL upgrades from running a billion ICLR experiments", + "pr_type": "other" + }, + { + "pr_number": 42, + "pr_url": "https://github.com/laude-institute/harbor/pull/42", + "author_github_handle": "penfever", + "additions": 1586, + "deletions": 4, + "pr_title": "Penfever/all scripts", + "pr_type": "other" + }, + { + "pr_number": 40, + "pr_url": "https://github.com/laude-institute/harbor/pull/40", + "author_github_handle": "TheMikeMerrill", + "additions": 13, + "deletions": 6, + "pr_title": "t2 context improperly queried", + "pr_type": "other" + }, + { + "pr_number": 38, + "pr_url": "https://github.com/laude-institute/harbor/pull/38", + "author_github_handle": "EtashGuha", + "additions": 5, + "deletions": 1, + "pr_title": "added triage for together context limit issue", + "pr_type": "other" + }, + { + "pr_number": 37, + "pr_url": "https://github.com/laude-institute/harbor/pull/37", + "author_github_handle": "li-boxuan", + "additions": 9, + "deletions": 4, + "pr_title": "Return cost in AgentResult", + "pr_type": "other" + }, + { + "pr_number": 36, + "pr_url": "https://github.com/laude-institute/harbor/pull/36", + "author_github_handle": "penfever", + "additions": 201, + "deletions": 1, + "pr_title": "Penfever/working", + "pr_type": "other" + }, + { + "pr_number": 33, + "pr_url": "https://github.com/laude-institute/harbor/pull/33", + "author_github_handle": "li-boxuan", + "additions": 25, + "deletions": 1, + "pr_title": "Port docker cache clean up logic from terminal-bench", + "pr_type": "other" + }, + { + "pr_number": 32, + "pr_url": "https://github.com/laude-institute/harbor/pull/32", + "author_github_handle": "li-boxuan", + "additions": 32, + "deletions": 0, + "pr_title": "Add token count for OpenHands agent", + "pr_type": "other" + }, + { + "pr_number": 31, + "pr_url": "https://github.com/laude-institute/harbor/pull/31", + "author_github_handle": "li-boxuan", + "additions": 57, + "deletions": 198, + "pr_title": "Fix & clean up tests", + "pr_type": "engineering" + }, + { + "pr_number": 30, + "pr_url": "https://github.com/laude-institute/harbor/pull/30", + "author_github_handle": "li-boxuan", + "additions": 2, + "deletions": 3, + "pr_title": "Minor change to openhands agent", + "pr_type": "other" + }, + { + "pr_number": 29, + "pr_url": "https://github.com/laude-institute/harbor/pull/29", + "author_github_handle": "li-boxuan", + "additions": 1421, + "deletions": 177, + "pr_title": "Agent refactoring - jinja2 templating, versioning, tests, CI, and more", + "pr_type": "engineering" + }, + { + "pr_number": 27, + "pr_url": "https://github.com/laude-institute/harbor/pull/27", + "author_github_handle": "TheMikeMerrill", + "additions": 20, + "deletions": 11, + "pr_title": "Fix token tracking", + "pr_type": "other" + }, + { + "pr_number": 26, + "pr_url": "https://github.com/laude-institute/harbor/pull/26", + "author_github_handle": "cliangyu", + "additions": 1197, + "deletions": 19, + "pr_title": "Migrate 11 agents from terminal-bench to sandboxes", + "pr_type": "other" + }, + { + "pr_number": 24, + "pr_url": "https://github.com/laude-institute/harbor/pull/24", + "author_github_handle": "alexgshaw", + "additions": 1380, + "deletions": 2335, + "pr_title": "Rename package, strip out db, reformat results and configs, change base environment methods.", + "pr_type": "engineering" + }, + { + "pr_number": 22, + "pr_url": "https://github.com/laude-institute/harbor/pull/22", + "author_github_handle": "alexgshaw", + "additions": 612, + "deletions": 151, + "pr_title": "Daytona", + "pr_type": "other" + }, + { + "pr_number": 21, + "pr_url": "https://github.com/laude-institute/harbor/pull/21", + "author_github_handle": "tyler-griggs", + "additions": 2, + "deletions": 1, + "pr_title": "Update .gitignore", + "pr_type": "other" + }, + { + "pr_number": 20, + "pr_url": "https://github.com/laude-institute/harbor/pull/20", + "author_github_handle": "TheMikeMerrill", + "additions": 204, + "deletions": 71, + "pr_title": "Mikeam/agents two", + "pr_type": "other" + }, + { + "pr_number": 19, + "pr_url": "https://github.com/laude-institute/harbor/pull/19", + "author_github_handle": "TheMikeMerrill", + "additions": 1409, + "deletions": 906, + "pr_title": "Add logging to terminus", + "pr_type": "other" + }, + { + "pr_number": 18, + "pr_url": "https://github.com/laude-institute/harbor/pull/18", + "author_github_handle": "alexgshaw", + "additions": 223, + "deletions": 55, + "pr_title": "Alex-temp", + "pr_type": "other" + }, + { + "pr_number": 16, + "pr_url": "https://github.com/laude-institute/harbor/pull/16", + "author_github_handle": "TheMikeMerrill", + "additions": 3453, + "deletions": 281, + "pr_title": "Initial terminus2", + "pr_type": "other" + }, + { + "pr_number": 14, + "pr_url": "https://github.com/laude-institute/harbor/pull/14", + "author_github_handle": "alexgshaw", + "additions": 142, + "deletions": 0, + "pr_title": "Add Claude Code GitHub Workflow", + "pr_type": "other" + }, + { + "pr_number": 9, + "pr_url": "https://github.com/laude-institute/harbor/pull/9", + "author_github_handle": "alexgshaw", + "additions": 294, + "deletions": 0, + "pr_title": "Create cli command for single trial", + "pr_type": "other" + }, + { + "pr_number": 2, + "pr_url": "https://github.com/laude-institute/harbor/pull/2", + "author_github_handle": "TheMikeMerrill", + "additions": 1037, + "deletions": 77, + "pr_title": "Add DB implementation", + "pr_type": "other" + }, + { + "pr_number": 1, + "pr_url": "https://github.com/laude-institute/harbor/pull/1", + "author_github_handle": "alexgshaw", + "additions": 518, + "deletions": 56, + "pr_title": "Working branch", + "pr_type": "other" + } +] \ No newline at end of file diff --git a/src/app/(home)/contributors/contributor-card.tsx b/src/app/(home)/contributors/contributor-card.tsx new file mode 100644 index 0000000..5b56c53 --- /dev/null +++ b/src/app/(home)/contributors/contributor-card.tsx @@ -0,0 +1,49 @@ +import Link from "next/link"; +import { + Card, + CardHeader, + CardTitle, + CardDescription, +} from "@/components/ui/card"; + +interface ContributorCardProps { + name: string; + githubHandle: string; + affiliation: string; + prCount: number; + totalAdditions: number; + totalDeletions: number; +} + +export function ContributorCard({ + name, + githubHandle, + affiliation, + prCount, + totalAdditions, + totalDeletions, +}: ContributorCardProps) { + return ( + + + + {name} + + @{githubHandle} + + {affiliation && ( +

{affiliation}

+ )} +

+ {prCount} PRs · +{totalAdditions.toLocaleString()} / −{totalDeletions.toLocaleString()} +

+
+
+ + ); +} diff --git a/src/app/(home)/contributors/layout.tsx b/src/app/(home)/contributors/layout.tsx new file mode 100644 index 0000000..878e242 --- /dev/null +++ b/src/app/(home)/contributors/layout.tsx @@ -0,0 +1,11 @@ +export default function ContributorsLayout({ + children, +}: { + children: React.ReactNode; +}) { + return ( +
+
{children}
+
+ ); +} diff --git a/src/app/(home)/contributors/page.tsx b/src/app/(home)/contributors/page.tsx new file mode 100644 index 0000000..4c04aea --- /dev/null +++ b/src/app/(home)/contributors/page.tsx @@ -0,0 +1,120 @@ +import contributionData from "../../../../public/harbor_contribution.json"; +import { ContributorCard } from "./contributor-card"; +import Link from "next/link"; + +interface Contributor { + github_handle: string; + email: string; + name: string; + affiliation: string; + pr_count: number; + total_additions: number; + total_deletions: number; + pr_list: { pr_url: string; pr_title: string; pr_type: string }[]; +} + +function partitionContributors(data: Contributor[]) { + const harborContributors: Contributor[] = []; + const adapterContributors: Contributor[] = []; + + for (const c of data) { + const hasAdapter = c.pr_list.some((pr) => pr.pr_type === "adapter"); + const hasNonAdapter = c.pr_list.some((pr) => pr.pr_type !== "adapter"); + + if (hasNonAdapter) { + harborContributors.push(c); + } + if (hasAdapter) { + adapterContributors.push(c); + } + } + + return { harborContributors, adapterContributors }; +} + +export default function ContributorsPage() { + const data = contributionData as Contributor[]; + const { harborContributors, adapterContributors } = + partitionContributors(data); + + return ( + <> +
+

+ Contributors +

+

+ Harbor is built by an open community of contributors. Interested in + contributing?{" "} + + Learn how to get started + + . +

+
+ +
+

+ Harbor Contributors +

+
+
+ {harborContributors.map((c) => ( + + ))} +
+
+
+ +
+

+ Harbor Adapter Contributors +

+
+
+ {adapterContributors.map((c) => ( + + ))} +
+
+
+ +
+

+ Acknowledgments +

+
+

+ API inference compute for parity experiments is generously supported + by{" "} + + 2077AI + + . +

+
+
+ + ); +} diff --git a/src/lib/layout.shared.tsx b/src/lib/layout.shared.tsx index 3d9f30c..e66a5d9 100644 --- a/src/lib/layout.shared.tsx +++ b/src/lib/layout.shared.tsx @@ -21,6 +21,11 @@ export function baseOptions(): BaseLayoutProps { text: "Registry", active: "nested-url", }, + { + url: "/contributors", + text: "Contributors", + active: "nested-url", + }, { url: "https://discord.gg/6xWPKhGDbA", text: "Discord", From 3c257aba4dd60fa3247ccc0cb77cab3048c9d13a Mon Sep 17 00:00:00 2001 From: Hangzhi Date: Mon, 9 Mar 2026 00:00:22 +0000 Subject: [PATCH 2/2] Reorganize contributors pipeline and improve page - Move scripts to utils/contributors/src/ and data to utils/contributors/data/ - Remove redundant public/harbor_contribution.json copy - Add ctbcli with refresh, refresh-prdata, refresh-userdata, generate commands - Add verified_github_users_data.json as source of truth for curated info - Rank Harbor Contributors by rank then non-adapter PR count - Rank Adapter Contributors by adapter_rank then adapter PR count - Show name, GitHub handle, and role on contributor cards - Include verified users with no PRs (e.g. advisors) in output - Refresh data: 332 merged PRs, 126 contributors - Add README documenting the pipeline --- PROGRESS.md | 61 - generate_contributions.py | 81 - harbor_contribution.json | 2367 ----------- public/harbor_contribution.json | 2367 ----------- .../(home)/contributors/contributor-card.tsx | 28 +- src/app/(home)/contributors/page.tsx | 37 +- utils/contributors/README.md | 112 + utils/contributors/ctbcli | 55 + .../data/harbor_contribution.json | 3677 +++++++++++++++++ .../data/raw_github_users_data.json | 190 +- .../contributors/data/raw_pr_data.json | 1140 +++-- .../data/verified_github_users_data.json | 311 ++ .../contributors/src/collect_pr_data.py | 5 +- .../contributors/src/collect_user_data.py | 7 +- .../src/generate_contributions.py | 123 + 15 files changed, 5378 insertions(+), 5183 deletions(-) delete mode 100644 PROGRESS.md delete mode 100644 generate_contributions.py delete mode 100644 harbor_contribution.json delete mode 100644 public/harbor_contribution.json create mode 100644 utils/contributors/README.md create mode 100755 utils/contributors/ctbcli create mode 100644 utils/contributors/data/harbor_contribution.json rename raw_github_users_data.json => utils/contributors/data/raw_github_users_data.json (75%) rename raw_pr_data.json => utils/contributors/data/raw_pr_data.json (59%) create mode 100644 utils/contributors/data/verified_github_users_data.json rename collect_pr_data.py => utils/contributors/src/collect_pr_data.py (95%) rename collect_user_data.py => utils/contributors/src/collect_user_data.py (86%) create mode 100644 utils/contributors/src/generate_contributions.py diff --git a/PROGRESS.md b/PROGRESS.md deleted file mode 100644 index 9fb3e77..0000000 --- a/PROGRESS.md +++ /dev/null @@ -1,61 +0,0 @@ -# Contributors Page Implementation Progress - -## Status: Complete - -## Steps Completed - -### 1. PR Data Collection (`collect_pr_data.py`) -- Fetches all merged PRs from `laude-institute/harbor` via GitHub API (`gh` CLI) -- Classifies each PR as `adapter`, `task`, `engineering`, or `other` based on title and labels -- Fetches per-PR additions/deletions stats -- Output: `raw_pr_data.json` (264 merged PRs) - -### 2. User Data Collection (`collect_user_data.py`) -- Reads unique author handles from `raw_pr_data.json` -- Fetches each user's GitHub profile (name, email, company/affiliation) -- Output: `raw_github_users_data.json` (95 unique authors) - -### 3. Contribution Aggregation (`generate_contributions.py`) -- Merges PR data and user data, keyed by GitHub handle -- Computes per-contributor: total additions, total deletions, PR count, PR list -- Ranks contributors by total additions (descending) -- Output: `harbor_contribution.json` (95 contributors) - -### 4. Contributors Page (Next.js) -- **Nav tab**: Added "Contributors" link in `src/lib/layout.shared.tsx` -- **Layout**: `src/app/(home)/contributors/layout.tsx` (mirrors registry layout) -- **Page**: `src/app/(home)/contributors/page.tsx` with three sections: - - **Harbor Contributors** — contributors with non-adapter PRs (67 contributors) - - **Harbor Adapter Contributors** — contributors with adapter PRs (37 contributors) - - **Acknowledgments** — 2077AI compute support credit -- **Card component**: `src/app/(home)/contributors/contributor-card.tsx` - - Links to GitHub profile - - Shows name, handle, affiliation, PR count, additions/deletions - - Follows the same grid tile pattern as the registry page -- **Data**: `public/harbor_contribution.json` (statically imported by page) -- **Design**: Follows the contributor list format of https://www.tbench.ai/contributors - -### 5. Verification -- TypeScript type check (`tsc --noEmit`): passes with zero errors -- Build compilation: successful (registry page fails due to pre-existing missing Supabase env vars, unrelated to contributors page) - -## Files Created/Modified - -### New Files -| File | Description | -|------|-------------| -| `collect_pr_data.py` | Script to collect merged PR data | -| `collect_user_data.py` | Script to collect PR author info | -| `generate_contributions.py` | Script to aggregate and rank contributions | -| `raw_pr_data.json` | Raw PR data (264 PRs) | -| `raw_github_users_data.json` | Raw user profile data (95 users) | -| `harbor_contribution.json` | Final aggregated contribution data | -| `public/harbor_contribution.json` | Copy for Next.js static import | -| `src/app/(home)/contributors/layout.tsx` | Contributors page layout | -| `src/app/(home)/contributors/page.tsx` | Contributors page component | -| `src/app/(home)/contributors/contributor-card.tsx` | Contributor card component | - -### Modified Files -| File | Change | -|------|--------| -| `src/lib/layout.shared.tsx` | Added "Contributors" nav link | diff --git a/generate_contributions.py b/generate_contributions.py deleted file mode 100644 index 9df72f7..0000000 --- a/generate_contributions.py +++ /dev/null @@ -1,81 +0,0 @@ -#!/usr/bin/env python3 -"""Generate harbor_contribution.json by merging PR data and user data. - -Reads raw_pr_data.json and raw_github_users_data.json, groups by author, -ranks by total additions, and outputs harbor_contribution.json. - -Output format per contributor: -{ - "github_handle": str, - "email": str, - "name": str, - "affiliation": str, - "pr_count": int, - "total_additions": int, - "total_deletions": int, - "pr_list": [ - {"pr_url": str, "pr_title": str, "pr_type": str} - ] -} -""" - -import json - - -def main(): - with open("raw_pr_data.json") as f: - pr_data = json.load(f) - - with open("raw_github_users_data.json") as f: - user_data = json.load(f) - - # Build user lookup - user_map = {u["github_handle"]: u for u in user_data} - - # Group PRs by author - contributors: dict[str, dict] = {} - - for pr in pr_data: - handle = pr["author_github_handle"] - - if handle not in contributors: - user_info = user_map.get(handle, {}) - contributors[handle] = { - "github_handle": handle, - "email": user_info.get("email", ""), - "name": user_info.get("name", handle), - "affiliation": user_info.get("affiliation", ""), - "pr_count": 0, - "total_additions": 0, - "total_deletions": 0, - "pr_list": [], - } - - c = contributors[handle] - c["pr_count"] += 1 - c["total_additions"] += pr["additions"] - c["total_deletions"] += pr["deletions"] - c["pr_list"].append({ - "pr_url": pr["pr_url"], - "pr_title": pr["pr_title"], - "pr_type": pr["pr_type"], - }) - - # Rank by total additions (descending) - ranked = sorted(contributors.values(), key=lambda x: x["total_additions"], reverse=True) - - output_path = "harbor_contribution.json" - with open(output_path, "w") as f: - json.dump(ranked, f, indent=2) - - print(f"Wrote {len(ranked)} contributors to {output_path}") - - # Print summary - print("\nTop 10 contributors by additions:") - for i, c in enumerate(ranked[:10]): - print(f" {i + 1}. {c['name']} (@{c['github_handle']}) - " - f"+{c['total_additions']}/-{c['total_deletions']} across {c['pr_count']} PRs") - - -if __name__ == "__main__": - main() diff --git a/harbor_contribution.json b/harbor_contribution.json deleted file mode 100644 index 3e302c6..0000000 --- a/harbor_contribution.json +++ /dev/null @@ -1,2367 +0,0 @@ -[ - { - "github_handle": "EstelYang", - "email": "", - "name": "EstelYang", - "affiliation": "", - "pr_count": 1, - "total_additions": 68583, - "total_deletions": 67032, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/351", - "pr_title": "[Ready for Review] Adapter: QCircuitBench", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "chenzizhao", - "email": "", - "name": "Zizhao Chen", - "affiliation": "", - "pr_count": 4, - "total_additions": 37076, - "total_deletions": 71989, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/518", - "pr_title": "Revise bixbench README with known issue and task details", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/472", - "pr_title": "Update registry with bixbench-cli", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/451", - "pr_title": "[ready for review] bixbench-cli addition", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/154", - "pr_title": "[Ready for review - final fix] Adapter: BixBench", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "RishiDesai", - "email": "", - "name": "Rishi Desai", - "affiliation": "", - "pr_count": 3, - "total_additions": 33046, - "total_deletions": 27018, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/512", - "pr_title": "registry for swe-gen-js", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/230", - "pr_title": "Serialize Docker image builds to prevent parallel build race condition", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/200", - "pr_title": "Allow custom BaseLLM backend for Agent", - "pr_type": "other" - } - ] - }, - { - "github_handle": "EtashGuha", - "email": "", - "name": "EtashGuha", - "affiliation": "", - "pr_count": 2, - "total_additions": 32570, - "total_deletions": 3336, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/113", - "pr_title": "update train on traces", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/38", - "pr_title": "added triage for together context limit issue", - "pr_type": "other" - } - ] - }, - { - "github_handle": "Waterpine", - "email": "sbian8@wisc.edu", - "name": "Song Bian", - "affiliation": "University of Wisconsin-Madison", - "pr_count": 1, - "total_additions": 25831, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/307", - "pr_title": "[Ready for Review] mmau adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Ternura143", - "email": "", - "name": "Zixuan Zhu", - "affiliation": "NTU", - "pr_count": 1, - "total_additions": 24649, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/358", - "pr_title": "[Ready for Review - Final Fix] Adapter: bfcl", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "alexgshaw", - "email": "alexgshaw64@gmail.com", - "name": "Alex Shaw", - "affiliation": "Laude Institute", - "pr_count": 23, - "total_additions": 18837, - "total_deletions": 10958, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/603", - "pr_title": "Add Responses API support for Terminus", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/495", - "pr_title": "Claude/add package dashboard lxufb", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/476", - "pr_title": "Improve terminal bench mapper functionality", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/468", - "pr_title": "feat(hooks): add job-level named hook methods for trial lifecycle events", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/394", - "pr_title": "Remove verbose flag and show task counts", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/388", - "pr_title": "Postgres registry", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/362", - "pr_title": "Fix AttributeError when accessing default environment type in CLI", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/361", - "pr_title": "Change -a shorthand in start-env from --agent to --all", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/360", - "pr_title": "Restrict environment variables passed to Oracle container", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/359", - "pr_title": "Add include-standard-metadata option to tasks init", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/327", - "pr_title": "Make internet configurable from task config", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/326", - "pr_title": "Add CLAUDE.md documentation for AI assistants", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/325", - "pr_title": "feat: add support for custom environment implementations via import path", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/318", - "pr_title": "Revert to include env vars in docker.", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/70", - "pr_title": "Alexgshaw/support docker compose", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/52", - "pr_title": "Warn users about Modal Python installation", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/43", - "pr_title": "QOL upgrades from running a billion ICLR experiments", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/24", - "pr_title": "Rename package, strip out db, reformat results and configs, change base environment methods.", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/22", - "pr_title": "Daytona", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/18", - "pr_title": "Alex-temp", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/14", - "pr_title": "Add Claude Code GitHub Workflow", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/9", - "pr_title": "Create cli command for single trial", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/1", - "pr_title": "Working branch", - "pr_type": "other" - } - ] - }, - { - "github_handle": "li-boxuan", - "email": "", - "name": "Boxuan Li", - "affiliation": "Microsoft", - "pr_count": 47, - "total_additions": 18670, - "total_deletions": 6305, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/475", - "pr_title": "Revert litellm hack for OpenHands", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/420", - "pr_title": "Fix: Remove duplicate error_msg in OutputLengthExceededError handling", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/364", - "pr_title": "Fix unit test failure in lite_llm.py", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/350", - "pr_title": "Add get model limit utility and fix Terminus-2 error message", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/341", - "pr_title": "Bump OpenHands to 1.0.0 in tests and update gold trajectories & traces", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/313", - "pr_title": "Fix ruff check on fork", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/274", - "pr_title": "Add CI gate for ruff linter on modified files", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/272", - "pr_title": "Do not pass host env variables to Docker environment", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/265", - "pr_title": "Terminus-2: Support optional interleaved thinking", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/237", - "pr_title": "GPU support + example task that requires GPU", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/225", - "pr_title": "Trajectories & traces for OpenHands: handle tool calling", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/184", - "pr_title": "Terminus-2 Trajectory: raw_content & linear_history modes", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/183", - "pr_title": "Export SFT traces from trajectories", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/177", - "pr_title": "Fix error message in Terminus trajectory", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/174", - "pr_title": "Add integration tests for exported traces", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/169", - "pr_title": "OpenHands trajectory fixes: tool call definitions and bookkeeping steps", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/156", - "pr_title": "Terminus-2: Add model_info parameter to register LLM info", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/141", - "pr_title": "Terminus-2: Full trajectories, rollout details, bug fixes and E2E tests", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/132", - "pr_title": "Terminus trajectory: Remove first user message", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/125", - "pr_title": "Terminus 2: prompt token ids and reasoning content", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/122", - "pr_title": "Fix metric discrepancy in openhands golden trajectory", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/118", - "pr_title": "Clean up integration tests + Drop source_call_id for terminus trajectory", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/117", - "pr_title": "Terminus-2: Include erroneous json response in trajectory message field", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/105", - "pr_title": "Fix test.sh in example task", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/95", - "pr_title": "CI: remove redundant test stage", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/93", - "pr_title": "Gemini-CLI to generate trajectory in ATIF", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/84", - "pr_title": "Terminus-2 to return rollout details (completion_token_ids, log_probs)", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/81", - "pr_title": "Terminus-2: Remove token counting hack", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/79", - "pr_title": "Fix token counting in terminus_2 summarisation subagent", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/78", - "pr_title": "Mini SWE Agent: use forked version + generate trajectory following ATIF spec", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/76", - "pr_title": "Polish trajectory model field descriptions", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/71", - "pr_title": "Openhands to generate trajectory in ATIF", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/65", - "pr_title": "Add trajectory validator and tests", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/62", - "pr_title": "Handle exceptions on non-critical paths", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/60", - "pr_title": "Terminus-2 Agent: metrics reporting & trajectory generation", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/56", - "pr_title": "[RFC] Agent Trajectory Interchange Format (ATIF) Specification", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/55", - "pr_title": "Fix docker exec deadlock for tasks with large output", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/51", - "pr_title": "Fix ruff violations and add linting to CI", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/50", - "pr_title": "Terminus-2 to pass session_id", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/48", - "pr_title": "Regenerate corrupt uv.lock", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/45", - "pr_title": "Include logprobs in AgentContext", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/37", - "pr_title": "Return cost in AgentResult", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/33", - "pr_title": "Port docker cache clean up logic from terminal-bench", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/32", - "pr_title": "Add token count for OpenHands agent", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/31", - "pr_title": "Fix & clean up tests", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/30", - "pr_title": "Minor change to openhands agent", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/29", - "pr_title": "Agent refactoring - jinja2 templating, versioning, tests, CI, and more", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "MichaelY310", - "email": "", - "name": "Michael Yang", - "affiliation": "", - "pr_count": 1, - "total_additions": 15684, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/96", - "pr_title": "[Ready For Review] Adding SWTBench Adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "jakozaur", - "email": "jacek@migdal.pl", - "name": "Jacek Migdal", - "affiliation": "", - "pr_count": 2, - "total_additions": 13564, - "total_deletions": 13120, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/662", - "pr_title": "Add otel-bench benchmark to registry.json", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/661", - "pr_title": "Add binary-audit benchmark to registry.json", - "pr_type": "other" - } - ] - }, - { - "github_handle": "Anjiang-Wei", - "email": "", - "name": "Anjiang Wei", - "affiliation": "Stanford University", - "pr_count": 2, - "total_additions": 13415, - "total_deletions": 10, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/418", - "pr_title": "Remove repository path setup from run_adapter.py to fix ruff error", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/395", - "pr_title": "[Ready for Review] Adapter: SATBench", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "terryyz", - "email": "terryzhuo25@gmail.com", - "name": "Terry Yue Zhuo", - "affiliation": "", - "pr_count": 1, - "total_additions": 10081, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/330", - "pr_title": "[Ready for Review - fixing] Adapter: BigCodeBench-Hard", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "robertzhidealx", - "email": "0xrobertzhang@gmail.com", - "name": "Robert Zhang", - "affiliation": "", - "pr_count": 1, - "total_additions": 9252, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/249", - "pr_title": "Adapters: SWE-bench Pro", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Slimshilin", - "email": "", - "name": "Slimshilin", - "affiliation": "", - "pr_count": 7, - "total_additions": 9179, - "total_deletions": 10887, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/580", - "pr_title": "Add parity API instructions for adapter experiments", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/579", - "pr_title": "[Ready to merge] OPENAI_BASE_URL support for codex.", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/516", - "pr_title": "remove aider-polyglot and livecodebench duplicates", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/263", - "pr_title": "Fix EvoEval Adapter forked_repo Link", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/98", - "pr_title": "Adapters readme template", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/83", - "pr_title": "Adapter README template", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/82", - "pr_title": "Fix -t to -p. Polish README", - "pr_type": "other" - } - ] - }, - { - "github_handle": "harshraj172", - "email": "", - "name": "Harsh Raj", - "affiliation": "Khoury College, Northeastern University ", - "pr_count": 5, - "total_additions": 8873, - "total_deletions": 241, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/458", - "pr_title": "add codex trajectory.json back", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/115", - "pr_title": "Add swesmith adapter", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/86", - "pr_title": "claude-code atif formatting", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/77", - "pr_title": "Codex ATIF trajectory", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/58", - "pr_title": "Add the `aider-polyglot` adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "davidheineman", - "email": "david@davidheineman.com", - "name": "David Heineman", - "affiliation": "", - "pr_count": 1, - "total_additions": 8656, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/100", - "pr_title": "[Ready for Review] Adapter: SWE-Lancer", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Michaelsqj", - "email": "shenqijia11@gmail.com", - "name": "Qijia Shen", - "affiliation": "", - "pr_count": 1, - "total_additions": 8263, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/577", - "pr_title": "add seta env to registry.json", - "pr_type": "other" - } - ] - }, - { - "github_handle": "killthefullmoon", - "email": "killthefullmoon@gmail.com", - "name": "Hui Shen", - "affiliation": "University of Michigan", - "pr_count": 1, - "total_additions": 7849, - "total_deletions": 904, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/432", - "pr_title": "[Ready for Review] Adapter: DS1000", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "digitsisyph", - "email": "", - "name": "Gary?", - "affiliation": "", - "pr_count": 3, - "total_additions": 7109, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/153", - "pr_title": "Add adapter init command", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/143", - "pr_title": "Add trajectory viewer", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/69", - "pr_title": "Add adapter for evoeval", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "hanxu12", - "email": "", - "name": "Han Xu", - "affiliation": "", - "pr_count": 1, - "total_additions": 7030, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/380", - "pr_title": "[Ready for Review] Adapter: LawBench", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "linhaowei1", - "email": "", - "name": "Haowei Lin", - "affiliation": "Peking University", - "pr_count": 6, - "total_additions": 6653, - "total_deletions": 47, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/440", - "pr_title": "[Ready for Review] Adapter: Algotune", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/438", - "pr_title": "[BugFix] Fix hello-world registry format", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/424", - "pr_title": "[FIX] Update Parity for Adapter: AutoCodeBench", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/292", - "pr_title": "[fix adapter] Revise the parity results for SLDBench", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/151", - "pr_title": "[adapter] Add SLDBench", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/106", - "pr_title": "Add Autocodebench adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "self-supervisor", - "email": "", - "name": "self-supervisor", - "affiliation": "@VmaxAI ", - "pr_count": 1, - "total_additions": 6266, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/563", - "pr_title": "Vmax tasks", - "pr_type": "task" - } - ] - }, - { - "github_handle": "TheMikeMerrill", - "email": "", - "name": "TheMikeMerrill", - "affiliation": "", - "pr_count": 6, - "total_additions": 6136, - "total_deletions": 1352, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/40", - "pr_title": "t2 context improperly queried", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/27", - "pr_title": "Fix token tracking", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/20", - "pr_title": "Mikeam/agents two", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/19", - "pr_title": "Add logging to terminus", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/16", - "pr_title": "Initial terminus2", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/2", - "pr_title": "Add DB implementation", - "pr_type": "other" - } - ] - }, - { - "github_handle": "aht", - "email": "", - "name": "Hai-Anh Trinh", - "affiliation": "grammarly.com", - "pr_count": 1, - "total_additions": 5038, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/256", - "pr_title": "[Ready for Review] Adapter: REASONING GYM ", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "neginraoof", - "email": "", - "name": "Negin Raoof", - "affiliation": "UC Berkeley", - "pr_count": 5, - "total_additions": 4637, - "total_deletions": 302, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/279", - "pr_title": "Adding swe-agent", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/243", - "pr_title": "Inline swe-agent inference config", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/242", - "pr_title": "Add SWE-agent configuration example", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/49", - "pr_title": "updated terminus 2 summarization fallback", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/44", - "pr_title": "Swebench adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "junhongmit", - "email": "junhonghust@gmail.com", - "name": "Junhong Lin", - "affiliation": "Massachusetts Institute of Technology", - "pr_count": 1, - "total_additions": 3521, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/97", - "pr_title": "[Adapter] Adding USACO Adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "octaviaguo", - "email": "", - "name": "octaviaguo", - "affiliation": "", - "pr_count": 2, - "total_additions": 3471, - "total_deletions": 153, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/446", - "pr_title": "Update StrongReject adapter with new registry", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/363", - "pr_title": "[Ready for Review] Adapter: StrongReject", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "HaishuoFang", - "email": "fanghaishuo@gmail.com", - "name": "Haishuo", - "affiliation": "TU Darmstadt", - "pr_count": 2, - "total_additions": 2966, - "total_deletions": 87, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/434", - "pr_title": "Fix ruff check error for financeagent Adapter", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/267", - "pr_title": "[Ready for Review - final discussion] Adapter: FinanceAgent", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "penfever", - "email": "", - "name": "Ben Feuer", - "affiliation": "", - "pr_count": 16, - "total_additions": 2734, - "total_deletions": 202, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/526", - "pr_title": "OpenHands Improvements", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/465", - "pr_title": "[FEATURE] Close old log handlers after trial returns", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/339", - "pr_title": "[FEATURE] Improve LiteLLM Handling of vLLM Hosted Models ", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/337", - "pr_title": "[TINY] Increase tmux history limit", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/336", - "pr_title": "[TINY] Warn user if required model_info is left unset", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/276", - "pr_title": "[FEATURE] Make asciinema recording optional", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/235", - "pr_title": "add verifier output and instructions", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/217", - "pr_title": "Extract result during trace exports", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/163", - "pr_title": "Enhance episode conversation extraction logic", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/160", - "pr_title": "BUGFIX: Numeric rather than lexical sorting of episodes", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/147", - "pr_title": "Robust termination of aiohttp events wrapping Daytona containers", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/144", - "pr_title": "Oracle Agent Hardening", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/142", - "pr_title": "Penfever/handle vllm context length errors correctly", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/119", - "pr_title": "guard traces format acquisition", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/42", - "pr_title": "Penfever/all scripts", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/36", - "pr_title": "Penfever/working", - "pr_type": "other" - } - ] - }, - { - "github_handle": "DannyGooo", - "email": "", - "name": "Yonghui Liu", - "affiliation": "", - "pr_count": 2, - "total_additions": 2716, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/452", - "pr_title": "[Ready for Review] Adapter: Spider2 - Experiment with Harbor-supported agents", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/436", - "pr_title": "[Ready for Review] Adapter: Spider2", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "StevenDillmann", - "email": "", - "name": "Steven Dillmann", - "affiliation": "Stanford University", - "pr_count": 10, - "total_additions": 2601, - "total_deletions": 28, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/638", - "pr_title": "Revise citation section in README.md", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/637", - "pr_title": "Remove version in CITATION.cff", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/566", - "pr_title": "Update CITATION.cff", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/564", - "pr_title": "Update title in citation section in README.md", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/560", - "pr_title": "Fix author formatting in citation", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/556", - "pr_title": "Update citation section in README.md", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/444", - "pr_title": "Make reasoning parameters configurable via kwargs", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/260", - "pr_title": "Add initial CITATION.cff file", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/146", - "pr_title": "[Adapter] Update ReplicationBench to include masked manuscripts of papers", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/92", - "pr_title": "[Adapter] Adding ReplicationBench adapter to Harbor", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Ji-Pengliang", - "email": "", - "name": "Pengliang Ji", - "affiliation": "", - "pr_count": 3, - "total_additions": 2230, - "total_deletions": 3, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/550", - "pr_title": "Add --n-attempts 2 to arc_agi_2 reproduction command", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/401", - "pr_title": "update arc-agi-2 parity test pr", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/220", - "pr_title": "[Ready for Review - fixing] Adapter: ARC-AGI-2 benchmark", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "audreycs", - "email": "", - "name": "Yuxin Wang", - "affiliation": "Dartmouth College", - "pr_count": 1, - "total_additions": 2158, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/88", - "pr_title": "[Adapter] Adding Livecodebench adpter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Dongzhikang", - "email": "", - "name": "Zhikang Dong", - "affiliation": "", - "pr_count": 1, - "total_additions": 2140, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/89", - "pr_title": "adapter for Deveval", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "crystalxyz", - "email": "", - "name": "Crystal Zhou", - "affiliation": "", - "pr_count": 1, - "total_additions": 2124, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/201", - "pr_title": "[Ready for review - Final Review] Adapter: LAB-Bench FigQA", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "xianliu", - "email": "lxjsj@fedoraproject.org", - "name": "Xian Liu", - "affiliation": "Meetchances/ex-Bytedance/ex-Redhat", - "pr_count": 1, - "total_additions": 2116, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/402", - "pr_title": "[Ready for Review] Add crustbench adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Rebabit", - "email": "", - "name": "Rebecca Deng", - "affiliation": "", - "pr_count": 1, - "total_additions": 1883, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/311", - "pr_title": "[Ready for Review - Final Fix] Adapter: MMMLU", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "1171-jpg", - "email": "", - "name": "140", - "affiliation": "", - "pr_count": 1, - "total_additions": 1836, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/403", - "pr_title": "[Ready for Review] Adapter: Ineqmath", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "omi-n", - "email": "", - "name": "nabil", - "affiliation": "University of Washington, Microsoft", - "pr_count": 1, - "total_additions": 1771, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/99", - "pr_title": "[Adapter] Add mlgym-bench adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Hangzhi", - "email": "hangzhiweiwei@gmail.com", - "name": "Yiwei Dai", - "affiliation": "", - "pr_count": 1, - "total_additions": 1768, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/346", - "pr_title": "[Ready for review -Final Fix] Quixbugs adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "kobe0938", - "email": "xiaokunchen0@gmail.com", - "name": "Kobe Chen", - "affiliation": "Stanford U", - "pr_count": 1, - "total_additions": 1761, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/257", - "pr_title": "[Ready for Review - fixing] Adapter: Humanevalfix", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "neverSettles", - "email": "", - "name": "Chris Settles", - "affiliation": "Operative AI, Inc", - "pr_count": 1, - "total_additions": 1748, - "total_deletions": 122, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/549", - "pr_title": "ATIF 1.5->1.6: Support multimodal trajectories", - "pr_type": "other" - } - ] - }, - { - "github_handle": "XuandongZhao", - "email": "csxuandongzhao@gmail.com", - "name": "Xuandong Zhao", - "affiliation": "UC Berkeley", - "pr_count": 1, - "total_additions": 1723, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/264", - "pr_title": "[Adapter] GPQA-Diamond Adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "kanazawa-asyncio", - "email": "", - "name": "Kanaza", - "affiliation": "", - "pr_count": 1, - "total_additions": 1208, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/376", - "pr_title": "feat(registry): add Alibaba terminal-bench-pro dataset", - "pr_type": "other" - } - ] - }, - { - "github_handle": "cliangyu", - "email": "", - "name": "Leon Chen", - "affiliation": "Stanford University", - "pr_count": 1, - "total_additions": 1197, - "total_deletions": 19, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/26", - "pr_title": "Migrate 11 agents from terminal-bench to sandboxes", - "pr_type": "other" - } - ] - }, - { - "github_handle": "LithiumDA", - "email": "", - "name": "Shanda Li", - "affiliation": "Carnegie Mellon University", - "pr_count": 4, - "total_additions": 1147, - "total_deletions": 15, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/466", - "pr_title": "fix (adapter): registery", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/139", - "pr_title": "[Adapter] fix (codepde): remove tmux & asciinema from Dockerfile", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/102", - "pr_title": "[CodePDE Adapter] fix: linting", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/90", - "pr_title": "[Adapter] Adding CodePDE adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "giansegato", - "email": "", - "name": "gian", - "affiliation": "", - "pr_count": 2, - "total_additions": 999, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/212", - "pr_title": "feat: Add GKE/Kubernetes environment support", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/135", - "pr_title": "Add extended thinking mode support for Anthropic models", - "pr_type": "other" - } - ] - }, - { - "github_handle": "orfeas-menis", - "email": "", - "name": "Orfeas Menis", - "affiliation": "", - "pr_count": 1, - "total_additions": 887, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/149", - "pr_title": "Adapter for AIME", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "ibercovich", - "email": "", - "name": "Ivan Bercovich", - "affiliation": "ScOp Venture Capital", - "pr_count": 8, - "total_additions": 671, - "total_deletions": 66, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/319", - "pr_title": "feat(viewer): round rewards to 4 decimal places", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/298", - "pr_title": "made newline a requirement in prompt since small LLMs were failing", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/251", - "pr_title": "feat(mini-swe-agent): pass through OPENAI_API_BASE for custom endpoints", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/148", - "pr_title": "Updated checker and debugger", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/74", - "pr_title": "Update model name in gemini-cli-job.yaml", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/73", - "pr_title": "Replace 'sb' with 'harbor' in README", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/68", - "pr_title": "Update sandbox creation timeout configuration", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/47", - "pr_title": "porting sb tasks check and debug from terminal-bench", - "pr_type": "task" - } - ] - }, - { - "github_handle": "mieciu", - "email": "", - "name": "Przemys\u0142aw Hejman", - "affiliation": "blindroot.com", - "pr_count": 4, - "total_additions": 612, - "total_deletions": 54, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/515", - "pr_title": "Fix openrouter model name ", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/246", - "pr_title": "Support `--env daytona --ek network_block_all=true` in `harbor run`", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/214", - "pr_title": "Fix `--no-delete` in Docker environment", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/170", - "pr_title": "Adding CompileBench dataset/adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "dot-agi", - "email": "ps4534@nyu.edu", - "name": "Pratyush Shukla", - "affiliation": "Abundant AI", - "pr_count": 2, - "total_additions": 450, - "total_deletions": 21, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/589", - "pr_title": "Fix Docker environment directory nesting and stale container bugs", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/539", - "pr_title": "Fix NVM sourcing failure with strict mode", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "connor-cognition", - "email": "", - "name": "connor-cognition", - "affiliation": "", - "pr_count": 2, - "total_additions": 293, - "total_deletions": 8, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/470", - "pr_title": "feat: add secret and volume support to modal environment", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/457", - "pr_title": "chore: pin modal sdk to `1.3.1.dev9`", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "CharlieFRuan", - "email": "", - "name": "Charlie Ruan", - "affiliation": "UC Berkeley", - "pr_count": 8, - "total_additions": 288, - "total_deletions": 94, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/686", - "pr_title": "[Terminus] Fix `n_episodes` counting when error out", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/653", - "pr_title": "[Terminus] Do not retry on ContextLengthExceededError when enable_summarize=False", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/651", - "pr_title": "[Env] Make sandbox lifecycle timeouts configurable via environment kwargs", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/650", - "pr_title": "[Modal] Add tenacity to modal just like daytona", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/593", - "pr_title": "[LLMs] Remove ParseError as it is not used anywhere", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/592", - "pr_title": "[Trial] Remove EnvironmentBuildTimeoutError since it is not used", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/561", - "pr_title": "[Env] Add EnvironmentConfig.suppress_override_warnings and Terminus kwarg suppress_max_turns_warning", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/524", - "pr_title": "[terminus] Remove _logger and use BaseAgent logger directly", - "pr_type": "other" - } - ] - }, - { - "github_handle": "james-rl", - "email": "", - "name": "james-rl", - "affiliation": "", - "pr_count": 3, - "total_additions": 285, - "total_deletions": 119, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/467", - "pr_title": "Prefer prebuilt images when running with runloop env", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/210", - "pr_title": "Added resource config for runloop env", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/189", - "pr_title": "Fixed runloop env", - "pr_type": "other" - } - ] - }, - { - "github_handle": "stared", - "email": "pmigdal@gmail.com", - "name": "Piotr Migda\u0142", - "affiliation": "ex: Quantum Flytrap CTO & cofounder", - "pr_count": 2, - "total_additions": 285, - "total_deletions": 27, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/367", - "pr_title": "Viewer cost estimate with LiteLLM", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/308", - "pr_title": "Add smart port handling for `harbor view`", - "pr_type": "other" - } - ] - }, - { - "github_handle": "dines-rl", - "email": "", - "name": "Alexander Dines", - "affiliation": "Run Loop", - "pr_count": 1, - "total_additions": 275, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/46", - "pr_title": "Add Runloop Environment", - "pr_type": "other" - } - ] - }, - { - "github_handle": "rotemtam", - "email": "", - "name": "Rotem Tamir", - "affiliation": "honeybadge.co", - "pr_count": 2, - "total_additions": 220, - "total_deletions": 7, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/262", - "pr_title": "fix: `--agent-import-path` ignored when `-a` not specified", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/259", - "pr_title": "fix: add Alpine Linux support for claude-code agent", - "pr_type": "other" - } - ] - }, - { - "github_handle": "pashpashpash", - "email": "nik@cline.bot", - "name": "pashpashpash", - "affiliation": "vault77.ai", - "pr_count": 1, - "total_additions": 178, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/198", - "pr_title": "cline cli integration", - "pr_type": "other" - } - ] - }, - { - "github_handle": "anishathalye", - "email": "me@anishathalye.com", - "name": "Anish Athalye", - "affiliation": "@joinhandshake", - "pr_count": 1, - "total_additions": 174, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/655", - "pr_title": "Add MCP support for OpenHands", - "pr_type": "other" - } - ] - }, - { - "github_handle": "pfbyjy", - "email": "", - "name": "Meji A", - "affiliation": "", - "pr_count": 2, - "total_additions": 109, - "total_deletions": 23, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/333", - "pr_title": "Update claude_code.py to allow access to all tools", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/75", - "pr_title": "Convert Terminal-Bench docker-compose to Harbor format in mapper", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "richardzhuang0412", - "email": "", - "name": "Richard Zhuang", - "affiliation": "", - "pr_count": 1, - "total_additions": 91, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/181", - "pr_title": "Added patching fix for openhand when handling together context limit error", - "pr_type": "other" - } - ] - }, - { - "github_handle": "nandatheguntupalli", - "email": "", - "name": "Nanda Guntupalli", - "affiliation": "", - "pr_count": 1, - "total_additions": 74, - "total_deletions": 11, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/399", - "pr_title": "Enhance documentation and structure in CLAUDE.md and README.md", - "pr_type": "other" - } - ] - }, - { - "github_handle": "AkshayVenkataraman", - "email": "akshayv2k@gmail.com", - "name": "Akshay Venkataraman", - "affiliation": "", - "pr_count": 3, - "total_additions": 45, - "total_deletions": 9, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/247", - "pr_title": "initial commit to enable agent setup timeout override", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/226", - "pr_title": "improved workdir parse logic", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/195", - "pr_title": "made tmux viewport size configurable", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "bstee615", - "email": "benjaminjsteenhoek@gmail.com", - "name": "Benjamin Steenhoek", - "affiliation": "@Microsoft", - "pr_count": 1, - "total_additions": 43, - "total_deletions": 20, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/269", - "pr_title": "Support Azure OpenAI endpoints for LiteLLM agents", - "pr_type": "other" - } - ] - }, - { - "github_handle": "tlongwell-block", - "email": "", - "name": "tlongwell-block", - "affiliation": "", - "pr_count": 2, - "total_additions": 41, - "total_deletions": 15, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/191", - "pr_title": "support additional inference providers for the goose agent to allow benching open models", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/188", - "pr_title": "enable goose developer and todo extensions in harbor recipe", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "rootCircle", - "email": "", - "name": "Lab Rat", - "affiliation": "@uber, @iiitl ", - "pr_count": 1, - "total_additions": 40, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/343", - "pr_title": "Fix: normalize `--path .` to absolute to prevent invalid Docker tags", - "pr_type": "other" - } - ] - }, - { - "github_handle": "luxinyu1", - "email": "", - "name": "Solaris", - "affiliation": "ISCAS", - "pr_count": 2, - "total_additions": 27, - "total_deletions": 11, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/506", - "pr_title": "Fix Claude Code trajectory extraction when subagents are used", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/236", - "pr_title": "Add custom API base URL support for claude code agent", - "pr_type": "other" - } - ] - }, - { - "github_handle": "rohitpaulk", - "email": "rohitpaulk@gmail.com", - "name": "Paul Kuruvilla", - "affiliation": "@codecrafters-io", - "pr_count": 1, - "total_additions": 23, - "total_deletions": 4, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/499", - "pr_title": "[Ready for review] Raise RuntimeError for agent setup failures", - "pr_type": "other" - } - ] - }, - { - "github_handle": "WingchunSiu", - "email": "", - "name": "Michael Siu", - "affiliation": "University of Southern California", - "pr_count": 1, - "total_additions": 21, - "total_deletions": 4, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/652", - "pr_title": "Add llm_call_kwargs to Terminus2 for per-call LLM parameter", - "pr_type": "other" - } - ] - }, - { - "github_handle": "josancamon19", - "email": "", - "name": "Joan Cabezas", - "affiliation": "", - "pr_count": 1, - "total_additions": 18, - "total_deletions": 4, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/643", - "pr_title": "fix: Gemini CLI ATIF trajectory conversion for harbor view", - "pr_type": "other" - } - ] - }, - { - "github_handle": "avelanarius", - "email": "", - "name": "Piotr Grabowski", - "affiliation": "@QuesmaOrg", - "pr_count": 1, - "total_additions": 16, - "total_deletions": 16, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/275", - "pr_title": "[Adapter] Update CompileBench adapter, fixing oracle on Daytona", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "ZhengShenghan", - "email": "shenghan.zheng.gr@dartmouth.edu", - "name": "Shenghan Zheng", - "affiliation": "Dartmouth College", - "pr_count": 1, - "total_additions": 12, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/535", - "pr_title": "[Ready for Review] BUG-FIX: fix gemini-cli skill loading failure", - "pr_type": "other" - } - ] - }, - { - "github_handle": "Yiozolm", - "email": "m202310581@xs.ustb.edu.cn", - "name": "Fangzhou Yi", - "affiliation": "University of Science and Technology Beijing", - "pr_count": 1, - "total_additions": 10, - "total_deletions": 4, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/464", - "pr_title": "Add support for GLM models", - "pr_type": "other" - } - ] - }, - { - "github_handle": "MarcoRossignoli", - "email": "", - "name": "Marco Rossignoli", - "affiliation": "@microsoft", - "pr_count": 1, - "total_additions": 9, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/507", - "pr_title": "Support large dataset downloads on Windows", - "pr_type": "other" - } - ] - }, - { - "github_handle": "ethanlshen", - "email": "ethans03@cs.washington.edu", - "name": "Ethan Shen", - "affiliation": "", - "pr_count": 1, - "total_additions": 9, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/94", - "pr_title": "Added summarization toggle", - "pr_type": "other" - } - ] - }, - { - "github_handle": "lurf21", - "email": "", - "name": "Ruofan Lu", - "affiliation": "The Chinese University of Hong Kong", - "pr_count": 2, - "total_additions": 7, - "total_deletions": 5, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/700", - "pr_title": "fix openhands reasoning_effort", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/284", - "pr_title": "fix: pass env variables when oracle agent executes the command", - "pr_type": "other" - } - ] - }, - { - "github_handle": "dpedchenko", - "email": "", - "name": "Dmitrii Pedchenko", - "affiliation": "FAIR @ Meta MSL", - "pr_count": 1, - "total_additions": 7, - "total_deletions": 4, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/194", - "pr_title": "Minor change to Modal backend", - "pr_type": "other" - } - ] - }, - { - "github_handle": "tmacie", - "email": "", - "name": "tmacie", - "affiliation": "", - "pr_count": 1, - "total_additions": 6, - "total_deletions": 8, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/586", - "pr_title": "Fix modal gpu selection", - "pr_type": "other" - } - ] - }, - { - "github_handle": "dzorlu", - "email": "", - "name": "Deniz", - "affiliation": "", - "pr_count": 1, - "total_additions": 6, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/232", - "pr_title": "feat: store all messages", - "pr_type": "other" - } - ] - }, - { - "github_handle": "ai-jz", - "email": "", - "name": "ai-jz", - "affiliation": "", - "pr_count": 1, - "total_additions": 6, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/173", - "pr_title": "feat: Add Claude Code OAuth token support for subscription users", - "pr_type": "other" - } - ] - }, - { - "github_handle": "beran-t", - "email": "", - "name": "Berry", - "affiliation": "", - "pr_count": 1, - "total_additions": 5, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/627", - "pr_title": "Fix E2B exec() throwing on non-zero exit codes", - "pr_type": "other" - } - ] - }, - { - "github_handle": "ifoukarakis", - "email": "", - "name": "Ioannis Foukarakis", - "affiliation": "", - "pr_count": 1, - "total_additions": 5, - "total_deletions": 4, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/323", - "pr_title": "fix: default registry URL reference", - "pr_type": "other" - } - ] - }, - { - "github_handle": "KunWuLuan", - "email": "kunwuluan@gmail.com", - "name": "GreenHand", - "affiliation": "", - "pr_count": 1, - "total_additions": 4, - "total_deletions": 3, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/658", - "pr_title": "fix(swe_agent): support multiple API key variables from model name", - "pr_type": "other" - } - ] - }, - { - "github_handle": "xdotli", - "email": "xiangyi@benchflow.ai", - "name": "Xiangyi Li", - "affiliation": "@benchflow-ai", - "pr_count": 1, - "total_additions": 4, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/459", - "pr_title": "fix(claude-code): CLAUDE_CONFIG_DIR giving errors for accessing .claude folder", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "thdxr", - "email": "mail@thdxr.com", - "name": "Dax", - "affiliation": "", - "pr_count": 2, - "total_additions": 4, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/316", - "pr_title": "Change opencode command to output JSON format", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/121", - "pr_title": "Enable OPENCODE_FAKE_VCS for OpenCode agent", - "pr_type": "other" - } - ] - }, - { - "github_handle": "Chesars", - "email": "", - "name": "Cesar Garcia", - "affiliation": "", - "pr_count": 2, - "total_additions": 4, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/176", - "pr_title": "fix: flaky terminus_2 timeout test", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/175", - "pr_title": "docs: Fix broken link in README.md", - "pr_type": "other" - } - ] - }, - { - "github_handle": "HiromuHota", - "email": "hiromu.hota@gmail.com", - "name": "Hiromu Hota", - "affiliation": "https://snorkel.ai/", - "pr_count": 2, - "total_additions": 4, - "total_deletions": 7, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/131", - "pr_title": "Add content from run-tests.sh correctly during migration", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/130", - "pr_title": "Allow difficulty: unknown for compat w/TB1.0", - "pr_type": "other" - } - ] - }, - { - "github_handle": "vatsj", - "email": "jacobstavrianos@gmail.com", - "name": "Jacob Stavrianos", - "affiliation": "", - "pr_count": 1, - "total_additions": 3, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/481", - "pr_title": "suppress daytona container auto-shutdown", - "pr_type": "other" - } - ] - }, - { - "github_handle": "likaixin2000", - "email": "likaixin@u.nus.edu", - "name": "Kaixin Li", - "affiliation": "National University of Singapore", - "pr_count": 1, - "total_additions": 2, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/513", - "pr_title": "Fix error message formatting for invalid agent names", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "michaelrglass", - "email": "", - "name": "Michael Glass", - "affiliation": "IBM", - "pr_count": 2, - "total_additions": 2, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/489", - "pr_title": "Fix docker environment to treat empty docker_image as no prebuilt image", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/456", - "pr_title": "Stderr was being lost by redirecting to stdout after the tee command", - "pr_type": "other" - } - ] - }, - { - "github_handle": "Guangy627", - "email": "", - "name": "Guangy627", - "affiliation": "", - "pr_count": 1, - "total_additions": 2, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/485", - "pr_title": "Fix/trajectorydump", - "pr_type": "other" - } - ] - }, - { - "github_handle": "paraliine", - "email": "", - "name": "Xiaoxuan Peng", - "affiliation": "CQU", - "pr_count": 2, - "total_additions": 2, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/216", - "pr_title": "Fix Terminus2 tmux logging path", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/215", - "pr_title": "Fix blocking tmux send-keys execution", - "pr_type": "other" - } - ] - }, - { - "github_handle": "tyler-griggs", - "email": "", - "name": "Tyler Griggs", - "affiliation": "", - "pr_count": 1, - "total_additions": 2, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/21", - "pr_title": "Update .gitignore", - "pr_type": "other" - } - ] - }, - { - "github_handle": "liyuyun-lyy", - "email": "", - "name": "liyuyun-lyy", - "affiliation": "Alibaba", - "pr_count": 1, - "total_additions": 1, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/168", - "pr_title": "fix: use yolo mode to pass hello world test", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "santaboi", - "email": "", - "name": "Yang Fan Chiang", - "affiliation": "University of Maryland College Park", - "pr_count": 1, - "total_additions": 1, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/104", - "pr_title": "Fix Terminal Bench 2.0 description typo", - "pr_type": "other" - } - ] - } -] \ No newline at end of file diff --git a/public/harbor_contribution.json b/public/harbor_contribution.json deleted file mode 100644 index 3e302c6..0000000 --- a/public/harbor_contribution.json +++ /dev/null @@ -1,2367 +0,0 @@ -[ - { - "github_handle": "EstelYang", - "email": "", - "name": "EstelYang", - "affiliation": "", - "pr_count": 1, - "total_additions": 68583, - "total_deletions": 67032, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/351", - "pr_title": "[Ready for Review] Adapter: QCircuitBench", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "chenzizhao", - "email": "", - "name": "Zizhao Chen", - "affiliation": "", - "pr_count": 4, - "total_additions": 37076, - "total_deletions": 71989, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/518", - "pr_title": "Revise bixbench README with known issue and task details", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/472", - "pr_title": "Update registry with bixbench-cli", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/451", - "pr_title": "[ready for review] bixbench-cli addition", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/154", - "pr_title": "[Ready for review - final fix] Adapter: BixBench", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "RishiDesai", - "email": "", - "name": "Rishi Desai", - "affiliation": "", - "pr_count": 3, - "total_additions": 33046, - "total_deletions": 27018, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/512", - "pr_title": "registry for swe-gen-js", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/230", - "pr_title": "Serialize Docker image builds to prevent parallel build race condition", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/200", - "pr_title": "Allow custom BaseLLM backend for Agent", - "pr_type": "other" - } - ] - }, - { - "github_handle": "EtashGuha", - "email": "", - "name": "EtashGuha", - "affiliation": "", - "pr_count": 2, - "total_additions": 32570, - "total_deletions": 3336, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/113", - "pr_title": "update train on traces", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/38", - "pr_title": "added triage for together context limit issue", - "pr_type": "other" - } - ] - }, - { - "github_handle": "Waterpine", - "email": "sbian8@wisc.edu", - "name": "Song Bian", - "affiliation": "University of Wisconsin-Madison", - "pr_count": 1, - "total_additions": 25831, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/307", - "pr_title": "[Ready for Review] mmau adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Ternura143", - "email": "", - "name": "Zixuan Zhu", - "affiliation": "NTU", - "pr_count": 1, - "total_additions": 24649, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/358", - "pr_title": "[Ready for Review - Final Fix] Adapter: bfcl", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "alexgshaw", - "email": "alexgshaw64@gmail.com", - "name": "Alex Shaw", - "affiliation": "Laude Institute", - "pr_count": 23, - "total_additions": 18837, - "total_deletions": 10958, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/603", - "pr_title": "Add Responses API support for Terminus", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/495", - "pr_title": "Claude/add package dashboard lxufb", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/476", - "pr_title": "Improve terminal bench mapper functionality", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/468", - "pr_title": "feat(hooks): add job-level named hook methods for trial lifecycle events", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/394", - "pr_title": "Remove verbose flag and show task counts", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/388", - "pr_title": "Postgres registry", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/362", - "pr_title": "Fix AttributeError when accessing default environment type in CLI", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/361", - "pr_title": "Change -a shorthand in start-env from --agent to --all", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/360", - "pr_title": "Restrict environment variables passed to Oracle container", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/359", - "pr_title": "Add include-standard-metadata option to tasks init", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/327", - "pr_title": "Make internet configurable from task config", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/326", - "pr_title": "Add CLAUDE.md documentation for AI assistants", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/325", - "pr_title": "feat: add support for custom environment implementations via import path", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/318", - "pr_title": "Revert to include env vars in docker.", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/70", - "pr_title": "Alexgshaw/support docker compose", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/52", - "pr_title": "Warn users about Modal Python installation", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/43", - "pr_title": "QOL upgrades from running a billion ICLR experiments", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/24", - "pr_title": "Rename package, strip out db, reformat results and configs, change base environment methods.", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/22", - "pr_title": "Daytona", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/18", - "pr_title": "Alex-temp", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/14", - "pr_title": "Add Claude Code GitHub Workflow", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/9", - "pr_title": "Create cli command for single trial", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/1", - "pr_title": "Working branch", - "pr_type": "other" - } - ] - }, - { - "github_handle": "li-boxuan", - "email": "", - "name": "Boxuan Li", - "affiliation": "Microsoft", - "pr_count": 47, - "total_additions": 18670, - "total_deletions": 6305, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/475", - "pr_title": "Revert litellm hack for OpenHands", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/420", - "pr_title": "Fix: Remove duplicate error_msg in OutputLengthExceededError handling", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/364", - "pr_title": "Fix unit test failure in lite_llm.py", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/350", - "pr_title": "Add get model limit utility and fix Terminus-2 error message", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/341", - "pr_title": "Bump OpenHands to 1.0.0 in tests and update gold trajectories & traces", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/313", - "pr_title": "Fix ruff check on fork", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/274", - "pr_title": "Add CI gate for ruff linter on modified files", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/272", - "pr_title": "Do not pass host env variables to Docker environment", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/265", - "pr_title": "Terminus-2: Support optional interleaved thinking", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/237", - "pr_title": "GPU support + example task that requires GPU", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/225", - "pr_title": "Trajectories & traces for OpenHands: handle tool calling", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/184", - "pr_title": "Terminus-2 Trajectory: raw_content & linear_history modes", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/183", - "pr_title": "Export SFT traces from trajectories", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/177", - "pr_title": "Fix error message in Terminus trajectory", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/174", - "pr_title": "Add integration tests for exported traces", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/169", - "pr_title": "OpenHands trajectory fixes: tool call definitions and bookkeeping steps", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/156", - "pr_title": "Terminus-2: Add model_info parameter to register LLM info", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/141", - "pr_title": "Terminus-2: Full trajectories, rollout details, bug fixes and E2E tests", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/132", - "pr_title": "Terminus trajectory: Remove first user message", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/125", - "pr_title": "Terminus 2: prompt token ids and reasoning content", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/122", - "pr_title": "Fix metric discrepancy in openhands golden trajectory", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/118", - "pr_title": "Clean up integration tests + Drop source_call_id for terminus trajectory", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/117", - "pr_title": "Terminus-2: Include erroneous json response in trajectory message field", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/105", - "pr_title": "Fix test.sh in example task", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/95", - "pr_title": "CI: remove redundant test stage", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/93", - "pr_title": "Gemini-CLI to generate trajectory in ATIF", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/84", - "pr_title": "Terminus-2 to return rollout details (completion_token_ids, log_probs)", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/81", - "pr_title": "Terminus-2: Remove token counting hack", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/79", - "pr_title": "Fix token counting in terminus_2 summarisation subagent", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/78", - "pr_title": "Mini SWE Agent: use forked version + generate trajectory following ATIF spec", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/76", - "pr_title": "Polish trajectory model field descriptions", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/71", - "pr_title": "Openhands to generate trajectory in ATIF", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/65", - "pr_title": "Add trajectory validator and tests", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/62", - "pr_title": "Handle exceptions on non-critical paths", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/60", - "pr_title": "Terminus-2 Agent: metrics reporting & trajectory generation", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/56", - "pr_title": "[RFC] Agent Trajectory Interchange Format (ATIF) Specification", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/55", - "pr_title": "Fix docker exec deadlock for tasks with large output", - "pr_type": "task" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/51", - "pr_title": "Fix ruff violations and add linting to CI", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/50", - "pr_title": "Terminus-2 to pass session_id", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/48", - "pr_title": "Regenerate corrupt uv.lock", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/45", - "pr_title": "Include logprobs in AgentContext", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/37", - "pr_title": "Return cost in AgentResult", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/33", - "pr_title": "Port docker cache clean up logic from terminal-bench", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/32", - "pr_title": "Add token count for OpenHands agent", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/31", - "pr_title": "Fix & clean up tests", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/30", - "pr_title": "Minor change to openhands agent", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/29", - "pr_title": "Agent refactoring - jinja2 templating, versioning, tests, CI, and more", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "MichaelY310", - "email": "", - "name": "Michael Yang", - "affiliation": "", - "pr_count": 1, - "total_additions": 15684, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/96", - "pr_title": "[Ready For Review] Adding SWTBench Adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "jakozaur", - "email": "jacek@migdal.pl", - "name": "Jacek Migdal", - "affiliation": "", - "pr_count": 2, - "total_additions": 13564, - "total_deletions": 13120, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/662", - "pr_title": "Add otel-bench benchmark to registry.json", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/661", - "pr_title": "Add binary-audit benchmark to registry.json", - "pr_type": "other" - } - ] - }, - { - "github_handle": "Anjiang-Wei", - "email": "", - "name": "Anjiang Wei", - "affiliation": "Stanford University", - "pr_count": 2, - "total_additions": 13415, - "total_deletions": 10, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/418", - "pr_title": "Remove repository path setup from run_adapter.py to fix ruff error", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/395", - "pr_title": "[Ready for Review] Adapter: SATBench", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "terryyz", - "email": "terryzhuo25@gmail.com", - "name": "Terry Yue Zhuo", - "affiliation": "", - "pr_count": 1, - "total_additions": 10081, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/330", - "pr_title": "[Ready for Review - fixing] Adapter: BigCodeBench-Hard", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "robertzhidealx", - "email": "0xrobertzhang@gmail.com", - "name": "Robert Zhang", - "affiliation": "", - "pr_count": 1, - "total_additions": 9252, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/249", - "pr_title": "Adapters: SWE-bench Pro", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Slimshilin", - "email": "", - "name": "Slimshilin", - "affiliation": "", - "pr_count": 7, - "total_additions": 9179, - "total_deletions": 10887, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/580", - "pr_title": "Add parity API instructions for adapter experiments", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/579", - "pr_title": "[Ready to merge] OPENAI_BASE_URL support for codex.", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/516", - "pr_title": "remove aider-polyglot and livecodebench duplicates", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/263", - "pr_title": "Fix EvoEval Adapter forked_repo Link", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/98", - "pr_title": "Adapters readme template", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/83", - "pr_title": "Adapter README template", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/82", - "pr_title": "Fix -t to -p. Polish README", - "pr_type": "other" - } - ] - }, - { - "github_handle": "harshraj172", - "email": "", - "name": "Harsh Raj", - "affiliation": "Khoury College, Northeastern University ", - "pr_count": 5, - "total_additions": 8873, - "total_deletions": 241, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/458", - "pr_title": "add codex trajectory.json back", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/115", - "pr_title": "Add swesmith adapter", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/86", - "pr_title": "claude-code atif formatting", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/77", - "pr_title": "Codex ATIF trajectory", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/58", - "pr_title": "Add the `aider-polyglot` adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "davidheineman", - "email": "david@davidheineman.com", - "name": "David Heineman", - "affiliation": "", - "pr_count": 1, - "total_additions": 8656, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/100", - "pr_title": "[Ready for Review] Adapter: SWE-Lancer", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Michaelsqj", - "email": "shenqijia11@gmail.com", - "name": "Qijia Shen", - "affiliation": "", - "pr_count": 1, - "total_additions": 8263, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/577", - "pr_title": "add seta env to registry.json", - "pr_type": "other" - } - ] - }, - { - "github_handle": "killthefullmoon", - "email": "killthefullmoon@gmail.com", - "name": "Hui Shen", - "affiliation": "University of Michigan", - "pr_count": 1, - "total_additions": 7849, - "total_deletions": 904, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/432", - "pr_title": "[Ready for Review] Adapter: DS1000", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "digitsisyph", - "email": "", - "name": "Gary?", - "affiliation": "", - "pr_count": 3, - "total_additions": 7109, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/153", - "pr_title": "Add adapter init command", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/143", - "pr_title": "Add trajectory viewer", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/69", - "pr_title": "Add adapter for evoeval", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "hanxu12", - "email": "", - "name": "Han Xu", - "affiliation": "", - "pr_count": 1, - "total_additions": 7030, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/380", - "pr_title": "[Ready for Review] Adapter: LawBench", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "linhaowei1", - "email": "", - "name": "Haowei Lin", - "affiliation": "Peking University", - "pr_count": 6, - "total_additions": 6653, - "total_deletions": 47, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/440", - "pr_title": "[Ready for Review] Adapter: Algotune", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/438", - "pr_title": "[BugFix] Fix hello-world registry format", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/424", - "pr_title": "[FIX] Update Parity for Adapter: AutoCodeBench", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/292", - "pr_title": "[fix adapter] Revise the parity results for SLDBench", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/151", - "pr_title": "[adapter] Add SLDBench", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/106", - "pr_title": "Add Autocodebench adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "self-supervisor", - "email": "", - "name": "self-supervisor", - "affiliation": "@VmaxAI ", - "pr_count": 1, - "total_additions": 6266, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/563", - "pr_title": "Vmax tasks", - "pr_type": "task" - } - ] - }, - { - "github_handle": "TheMikeMerrill", - "email": "", - "name": "TheMikeMerrill", - "affiliation": "", - "pr_count": 6, - "total_additions": 6136, - "total_deletions": 1352, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/40", - "pr_title": "t2 context improperly queried", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/27", - "pr_title": "Fix token tracking", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/20", - "pr_title": "Mikeam/agents two", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/19", - "pr_title": "Add logging to terminus", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/16", - "pr_title": "Initial terminus2", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/2", - "pr_title": "Add DB implementation", - "pr_type": "other" - } - ] - }, - { - "github_handle": "aht", - "email": "", - "name": "Hai-Anh Trinh", - "affiliation": "grammarly.com", - "pr_count": 1, - "total_additions": 5038, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/256", - "pr_title": "[Ready for Review] Adapter: REASONING GYM ", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "neginraoof", - "email": "", - "name": "Negin Raoof", - "affiliation": "UC Berkeley", - "pr_count": 5, - "total_additions": 4637, - "total_deletions": 302, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/279", - "pr_title": "Adding swe-agent", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/243", - "pr_title": "Inline swe-agent inference config", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/242", - "pr_title": "Add SWE-agent configuration example", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/49", - "pr_title": "updated terminus 2 summarization fallback", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/44", - "pr_title": "Swebench adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "junhongmit", - "email": "junhonghust@gmail.com", - "name": "Junhong Lin", - "affiliation": "Massachusetts Institute of Technology", - "pr_count": 1, - "total_additions": 3521, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/97", - "pr_title": "[Adapter] Adding USACO Adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "octaviaguo", - "email": "", - "name": "octaviaguo", - "affiliation": "", - "pr_count": 2, - "total_additions": 3471, - "total_deletions": 153, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/446", - "pr_title": "Update StrongReject adapter with new registry", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/363", - "pr_title": "[Ready for Review] Adapter: StrongReject", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "HaishuoFang", - "email": "fanghaishuo@gmail.com", - "name": "Haishuo", - "affiliation": "TU Darmstadt", - "pr_count": 2, - "total_additions": 2966, - "total_deletions": 87, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/434", - "pr_title": "Fix ruff check error for financeagent Adapter", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/267", - "pr_title": "[Ready for Review - final discussion] Adapter: FinanceAgent", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "penfever", - "email": "", - "name": "Ben Feuer", - "affiliation": "", - "pr_count": 16, - "total_additions": 2734, - "total_deletions": 202, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/526", - "pr_title": "OpenHands Improvements", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/465", - "pr_title": "[FEATURE] Close old log handlers after trial returns", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/339", - "pr_title": "[FEATURE] Improve LiteLLM Handling of vLLM Hosted Models ", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/337", - "pr_title": "[TINY] Increase tmux history limit", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/336", - "pr_title": "[TINY] Warn user if required model_info is left unset", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/276", - "pr_title": "[FEATURE] Make asciinema recording optional", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/235", - "pr_title": "add verifier output and instructions", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/217", - "pr_title": "Extract result during trace exports", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/163", - "pr_title": "Enhance episode conversation extraction logic", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/160", - "pr_title": "BUGFIX: Numeric rather than lexical sorting of episodes", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/147", - "pr_title": "Robust termination of aiohttp events wrapping Daytona containers", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/144", - "pr_title": "Oracle Agent Hardening", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/142", - "pr_title": "Penfever/handle vllm context length errors correctly", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/119", - "pr_title": "guard traces format acquisition", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/42", - "pr_title": "Penfever/all scripts", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/36", - "pr_title": "Penfever/working", - "pr_type": "other" - } - ] - }, - { - "github_handle": "DannyGooo", - "email": "", - "name": "Yonghui Liu", - "affiliation": "", - "pr_count": 2, - "total_additions": 2716, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/452", - "pr_title": "[Ready for Review] Adapter: Spider2 - Experiment with Harbor-supported agents", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/436", - "pr_title": "[Ready for Review] Adapter: Spider2", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "StevenDillmann", - "email": "", - "name": "Steven Dillmann", - "affiliation": "Stanford University", - "pr_count": 10, - "total_additions": 2601, - "total_deletions": 28, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/638", - "pr_title": "Revise citation section in README.md", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/637", - "pr_title": "Remove version in CITATION.cff", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/566", - "pr_title": "Update CITATION.cff", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/564", - "pr_title": "Update title in citation section in README.md", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/560", - "pr_title": "Fix author formatting in citation", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/556", - "pr_title": "Update citation section in README.md", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/444", - "pr_title": "Make reasoning parameters configurable via kwargs", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/260", - "pr_title": "Add initial CITATION.cff file", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/146", - "pr_title": "[Adapter] Update ReplicationBench to include masked manuscripts of papers", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/92", - "pr_title": "[Adapter] Adding ReplicationBench adapter to Harbor", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Ji-Pengliang", - "email": "", - "name": "Pengliang Ji", - "affiliation": "", - "pr_count": 3, - "total_additions": 2230, - "total_deletions": 3, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/550", - "pr_title": "Add --n-attempts 2 to arc_agi_2 reproduction command", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/401", - "pr_title": "update arc-agi-2 parity test pr", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/220", - "pr_title": "[Ready for Review - fixing] Adapter: ARC-AGI-2 benchmark", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "audreycs", - "email": "", - "name": "Yuxin Wang", - "affiliation": "Dartmouth College", - "pr_count": 1, - "total_additions": 2158, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/88", - "pr_title": "[Adapter] Adding Livecodebench adpter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Dongzhikang", - "email": "", - "name": "Zhikang Dong", - "affiliation": "", - "pr_count": 1, - "total_additions": 2140, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/89", - "pr_title": "adapter for Deveval", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "crystalxyz", - "email": "", - "name": "Crystal Zhou", - "affiliation": "", - "pr_count": 1, - "total_additions": 2124, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/201", - "pr_title": "[Ready for review - Final Review] Adapter: LAB-Bench FigQA", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "xianliu", - "email": "lxjsj@fedoraproject.org", - "name": "Xian Liu", - "affiliation": "Meetchances/ex-Bytedance/ex-Redhat", - "pr_count": 1, - "total_additions": 2116, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/402", - "pr_title": "[Ready for Review] Add crustbench adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Rebabit", - "email": "", - "name": "Rebecca Deng", - "affiliation": "", - "pr_count": 1, - "total_additions": 1883, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/311", - "pr_title": "[Ready for Review - Final Fix] Adapter: MMMLU", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "1171-jpg", - "email": "", - "name": "140", - "affiliation": "", - "pr_count": 1, - "total_additions": 1836, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/403", - "pr_title": "[Ready for Review] Adapter: Ineqmath", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "omi-n", - "email": "", - "name": "nabil", - "affiliation": "University of Washington, Microsoft", - "pr_count": 1, - "total_additions": 1771, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/99", - "pr_title": "[Adapter] Add mlgym-bench adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "Hangzhi", - "email": "hangzhiweiwei@gmail.com", - "name": "Yiwei Dai", - "affiliation": "", - "pr_count": 1, - "total_additions": 1768, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/346", - "pr_title": "[Ready for review -Final Fix] Quixbugs adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "kobe0938", - "email": "xiaokunchen0@gmail.com", - "name": "Kobe Chen", - "affiliation": "Stanford U", - "pr_count": 1, - "total_additions": 1761, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/257", - "pr_title": "[Ready for Review - fixing] Adapter: Humanevalfix", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "neverSettles", - "email": "", - "name": "Chris Settles", - "affiliation": "Operative AI, Inc", - "pr_count": 1, - "total_additions": 1748, - "total_deletions": 122, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/549", - "pr_title": "ATIF 1.5->1.6: Support multimodal trajectories", - "pr_type": "other" - } - ] - }, - { - "github_handle": "XuandongZhao", - "email": "csxuandongzhao@gmail.com", - "name": "Xuandong Zhao", - "affiliation": "UC Berkeley", - "pr_count": 1, - "total_additions": 1723, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/264", - "pr_title": "[Adapter] GPQA-Diamond Adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "kanazawa-asyncio", - "email": "", - "name": "Kanaza", - "affiliation": "", - "pr_count": 1, - "total_additions": 1208, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/376", - "pr_title": "feat(registry): add Alibaba terminal-bench-pro dataset", - "pr_type": "other" - } - ] - }, - { - "github_handle": "cliangyu", - "email": "", - "name": "Leon Chen", - "affiliation": "Stanford University", - "pr_count": 1, - "total_additions": 1197, - "total_deletions": 19, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/26", - "pr_title": "Migrate 11 agents from terminal-bench to sandboxes", - "pr_type": "other" - } - ] - }, - { - "github_handle": "LithiumDA", - "email": "", - "name": "Shanda Li", - "affiliation": "Carnegie Mellon University", - "pr_count": 4, - "total_additions": 1147, - "total_deletions": 15, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/466", - "pr_title": "fix (adapter): registery", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/139", - "pr_title": "[Adapter] fix (codepde): remove tmux & asciinema from Dockerfile", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/102", - "pr_title": "[CodePDE Adapter] fix: linting", - "pr_type": "adapter" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/90", - "pr_title": "[Adapter] Adding CodePDE adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "giansegato", - "email": "", - "name": "gian", - "affiliation": "", - "pr_count": 2, - "total_additions": 999, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/212", - "pr_title": "feat: Add GKE/Kubernetes environment support", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/135", - "pr_title": "Add extended thinking mode support for Anthropic models", - "pr_type": "other" - } - ] - }, - { - "github_handle": "orfeas-menis", - "email": "", - "name": "Orfeas Menis", - "affiliation": "", - "pr_count": 1, - "total_additions": 887, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/149", - "pr_title": "Adapter for AIME", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "ibercovich", - "email": "", - "name": "Ivan Bercovich", - "affiliation": "ScOp Venture Capital", - "pr_count": 8, - "total_additions": 671, - "total_deletions": 66, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/319", - "pr_title": "feat(viewer): round rewards to 4 decimal places", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/298", - "pr_title": "made newline a requirement in prompt since small LLMs were failing", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/251", - "pr_title": "feat(mini-swe-agent): pass through OPENAI_API_BASE for custom endpoints", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/148", - "pr_title": "Updated checker and debugger", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/74", - "pr_title": "Update model name in gemini-cli-job.yaml", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/73", - "pr_title": "Replace 'sb' with 'harbor' in README", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/68", - "pr_title": "Update sandbox creation timeout configuration", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/47", - "pr_title": "porting sb tasks check and debug from terminal-bench", - "pr_type": "task" - } - ] - }, - { - "github_handle": "mieciu", - "email": "", - "name": "Przemys\u0142aw Hejman", - "affiliation": "blindroot.com", - "pr_count": 4, - "total_additions": 612, - "total_deletions": 54, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/515", - "pr_title": "Fix openrouter model name ", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/246", - "pr_title": "Support `--env daytona --ek network_block_all=true` in `harbor run`", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/214", - "pr_title": "Fix `--no-delete` in Docker environment", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/170", - "pr_title": "Adding CompileBench dataset/adapter", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "dot-agi", - "email": "ps4534@nyu.edu", - "name": "Pratyush Shukla", - "affiliation": "Abundant AI", - "pr_count": 2, - "total_additions": 450, - "total_deletions": 21, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/589", - "pr_title": "Fix Docker environment directory nesting and stale container bugs", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/539", - "pr_title": "Fix NVM sourcing failure with strict mode", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "connor-cognition", - "email": "", - "name": "connor-cognition", - "affiliation": "", - "pr_count": 2, - "total_additions": 293, - "total_deletions": 8, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/470", - "pr_title": "feat: add secret and volume support to modal environment", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/457", - "pr_title": "chore: pin modal sdk to `1.3.1.dev9`", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "CharlieFRuan", - "email": "", - "name": "Charlie Ruan", - "affiliation": "UC Berkeley", - "pr_count": 8, - "total_additions": 288, - "total_deletions": 94, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/686", - "pr_title": "[Terminus] Fix `n_episodes` counting when error out", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/653", - "pr_title": "[Terminus] Do not retry on ContextLengthExceededError when enable_summarize=False", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/651", - "pr_title": "[Env] Make sandbox lifecycle timeouts configurable via environment kwargs", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/650", - "pr_title": "[Modal] Add tenacity to modal just like daytona", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/593", - "pr_title": "[LLMs] Remove ParseError as it is not used anywhere", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/592", - "pr_title": "[Trial] Remove EnvironmentBuildTimeoutError since it is not used", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/561", - "pr_title": "[Env] Add EnvironmentConfig.suppress_override_warnings and Terminus kwarg suppress_max_turns_warning", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/524", - "pr_title": "[terminus] Remove _logger and use BaseAgent logger directly", - "pr_type": "other" - } - ] - }, - { - "github_handle": "james-rl", - "email": "", - "name": "james-rl", - "affiliation": "", - "pr_count": 3, - "total_additions": 285, - "total_deletions": 119, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/467", - "pr_title": "Prefer prebuilt images when running with runloop env", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/210", - "pr_title": "Added resource config for runloop env", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/189", - "pr_title": "Fixed runloop env", - "pr_type": "other" - } - ] - }, - { - "github_handle": "stared", - "email": "pmigdal@gmail.com", - "name": "Piotr Migda\u0142", - "affiliation": "ex: Quantum Flytrap CTO & cofounder", - "pr_count": 2, - "total_additions": 285, - "total_deletions": 27, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/367", - "pr_title": "Viewer cost estimate with LiteLLM", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/308", - "pr_title": "Add smart port handling for `harbor view`", - "pr_type": "other" - } - ] - }, - { - "github_handle": "dines-rl", - "email": "", - "name": "Alexander Dines", - "affiliation": "Run Loop", - "pr_count": 1, - "total_additions": 275, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/46", - "pr_title": "Add Runloop Environment", - "pr_type": "other" - } - ] - }, - { - "github_handle": "rotemtam", - "email": "", - "name": "Rotem Tamir", - "affiliation": "honeybadge.co", - "pr_count": 2, - "total_additions": 220, - "total_deletions": 7, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/262", - "pr_title": "fix: `--agent-import-path` ignored when `-a` not specified", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/259", - "pr_title": "fix: add Alpine Linux support for claude-code agent", - "pr_type": "other" - } - ] - }, - { - "github_handle": "pashpashpash", - "email": "nik@cline.bot", - "name": "pashpashpash", - "affiliation": "vault77.ai", - "pr_count": 1, - "total_additions": 178, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/198", - "pr_title": "cline cli integration", - "pr_type": "other" - } - ] - }, - { - "github_handle": "anishathalye", - "email": "me@anishathalye.com", - "name": "Anish Athalye", - "affiliation": "@joinhandshake", - "pr_count": 1, - "total_additions": 174, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/655", - "pr_title": "Add MCP support for OpenHands", - "pr_type": "other" - } - ] - }, - { - "github_handle": "pfbyjy", - "email": "", - "name": "Meji A", - "affiliation": "", - "pr_count": 2, - "total_additions": 109, - "total_deletions": 23, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/333", - "pr_title": "Update claude_code.py to allow access to all tools", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/75", - "pr_title": "Convert Terminal-Bench docker-compose to Harbor format in mapper", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "richardzhuang0412", - "email": "", - "name": "Richard Zhuang", - "affiliation": "", - "pr_count": 1, - "total_additions": 91, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/181", - "pr_title": "Added patching fix for openhand when handling together context limit error", - "pr_type": "other" - } - ] - }, - { - "github_handle": "nandatheguntupalli", - "email": "", - "name": "Nanda Guntupalli", - "affiliation": "", - "pr_count": 1, - "total_additions": 74, - "total_deletions": 11, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/399", - "pr_title": "Enhance documentation and structure in CLAUDE.md and README.md", - "pr_type": "other" - } - ] - }, - { - "github_handle": "AkshayVenkataraman", - "email": "akshayv2k@gmail.com", - "name": "Akshay Venkataraman", - "affiliation": "", - "pr_count": 3, - "total_additions": 45, - "total_deletions": 9, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/247", - "pr_title": "initial commit to enable agent setup timeout override", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/226", - "pr_title": "improved workdir parse logic", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/195", - "pr_title": "made tmux viewport size configurable", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "bstee615", - "email": "benjaminjsteenhoek@gmail.com", - "name": "Benjamin Steenhoek", - "affiliation": "@Microsoft", - "pr_count": 1, - "total_additions": 43, - "total_deletions": 20, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/269", - "pr_title": "Support Azure OpenAI endpoints for LiteLLM agents", - "pr_type": "other" - } - ] - }, - { - "github_handle": "tlongwell-block", - "email": "", - "name": "tlongwell-block", - "affiliation": "", - "pr_count": 2, - "total_additions": 41, - "total_deletions": 15, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/191", - "pr_title": "support additional inference providers for the goose agent to allow benching open models", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/188", - "pr_title": "enable goose developer and todo extensions in harbor recipe", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "rootCircle", - "email": "", - "name": "Lab Rat", - "affiliation": "@uber, @iiitl ", - "pr_count": 1, - "total_additions": 40, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/343", - "pr_title": "Fix: normalize `--path .` to absolute to prevent invalid Docker tags", - "pr_type": "other" - } - ] - }, - { - "github_handle": "luxinyu1", - "email": "", - "name": "Solaris", - "affiliation": "ISCAS", - "pr_count": 2, - "total_additions": 27, - "total_deletions": 11, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/506", - "pr_title": "Fix Claude Code trajectory extraction when subagents are used", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/236", - "pr_title": "Add custom API base URL support for claude code agent", - "pr_type": "other" - } - ] - }, - { - "github_handle": "rohitpaulk", - "email": "rohitpaulk@gmail.com", - "name": "Paul Kuruvilla", - "affiliation": "@codecrafters-io", - "pr_count": 1, - "total_additions": 23, - "total_deletions": 4, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/499", - "pr_title": "[Ready for review] Raise RuntimeError for agent setup failures", - "pr_type": "other" - } - ] - }, - { - "github_handle": "WingchunSiu", - "email": "", - "name": "Michael Siu", - "affiliation": "University of Southern California", - "pr_count": 1, - "total_additions": 21, - "total_deletions": 4, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/652", - "pr_title": "Add llm_call_kwargs to Terminus2 for per-call LLM parameter", - "pr_type": "other" - } - ] - }, - { - "github_handle": "josancamon19", - "email": "", - "name": "Joan Cabezas", - "affiliation": "", - "pr_count": 1, - "total_additions": 18, - "total_deletions": 4, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/643", - "pr_title": "fix: Gemini CLI ATIF trajectory conversion for harbor view", - "pr_type": "other" - } - ] - }, - { - "github_handle": "avelanarius", - "email": "", - "name": "Piotr Grabowski", - "affiliation": "@QuesmaOrg", - "pr_count": 1, - "total_additions": 16, - "total_deletions": 16, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/275", - "pr_title": "[Adapter] Update CompileBench adapter, fixing oracle on Daytona", - "pr_type": "adapter" - } - ] - }, - { - "github_handle": "ZhengShenghan", - "email": "shenghan.zheng.gr@dartmouth.edu", - "name": "Shenghan Zheng", - "affiliation": "Dartmouth College", - "pr_count": 1, - "total_additions": 12, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/535", - "pr_title": "[Ready for Review] BUG-FIX: fix gemini-cli skill loading failure", - "pr_type": "other" - } - ] - }, - { - "github_handle": "Yiozolm", - "email": "m202310581@xs.ustb.edu.cn", - "name": "Fangzhou Yi", - "affiliation": "University of Science and Technology Beijing", - "pr_count": 1, - "total_additions": 10, - "total_deletions": 4, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/464", - "pr_title": "Add support for GLM models", - "pr_type": "other" - } - ] - }, - { - "github_handle": "MarcoRossignoli", - "email": "", - "name": "Marco Rossignoli", - "affiliation": "@microsoft", - "pr_count": 1, - "total_additions": 9, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/507", - "pr_title": "Support large dataset downloads on Windows", - "pr_type": "other" - } - ] - }, - { - "github_handle": "ethanlshen", - "email": "ethans03@cs.washington.edu", - "name": "Ethan Shen", - "affiliation": "", - "pr_count": 1, - "total_additions": 9, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/94", - "pr_title": "Added summarization toggle", - "pr_type": "other" - } - ] - }, - { - "github_handle": "lurf21", - "email": "", - "name": "Ruofan Lu", - "affiliation": "The Chinese University of Hong Kong", - "pr_count": 2, - "total_additions": 7, - "total_deletions": 5, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/700", - "pr_title": "fix openhands reasoning_effort", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/284", - "pr_title": "fix: pass env variables when oracle agent executes the command", - "pr_type": "other" - } - ] - }, - { - "github_handle": "dpedchenko", - "email": "", - "name": "Dmitrii Pedchenko", - "affiliation": "FAIR @ Meta MSL", - "pr_count": 1, - "total_additions": 7, - "total_deletions": 4, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/194", - "pr_title": "Minor change to Modal backend", - "pr_type": "other" - } - ] - }, - { - "github_handle": "tmacie", - "email": "", - "name": "tmacie", - "affiliation": "", - "pr_count": 1, - "total_additions": 6, - "total_deletions": 8, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/586", - "pr_title": "Fix modal gpu selection", - "pr_type": "other" - } - ] - }, - { - "github_handle": "dzorlu", - "email": "", - "name": "Deniz", - "affiliation": "", - "pr_count": 1, - "total_additions": 6, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/232", - "pr_title": "feat: store all messages", - "pr_type": "other" - } - ] - }, - { - "github_handle": "ai-jz", - "email": "", - "name": "ai-jz", - "affiliation": "", - "pr_count": 1, - "total_additions": 6, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/173", - "pr_title": "feat: Add Claude Code OAuth token support for subscription users", - "pr_type": "other" - } - ] - }, - { - "github_handle": "beran-t", - "email": "", - "name": "Berry", - "affiliation": "", - "pr_count": 1, - "total_additions": 5, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/627", - "pr_title": "Fix E2B exec() throwing on non-zero exit codes", - "pr_type": "other" - } - ] - }, - { - "github_handle": "ifoukarakis", - "email": "", - "name": "Ioannis Foukarakis", - "affiliation": "", - "pr_count": 1, - "total_additions": 5, - "total_deletions": 4, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/323", - "pr_title": "fix: default registry URL reference", - "pr_type": "other" - } - ] - }, - { - "github_handle": "KunWuLuan", - "email": "kunwuluan@gmail.com", - "name": "GreenHand", - "affiliation": "", - "pr_count": 1, - "total_additions": 4, - "total_deletions": 3, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/658", - "pr_title": "fix(swe_agent): support multiple API key variables from model name", - "pr_type": "other" - } - ] - }, - { - "github_handle": "xdotli", - "email": "xiangyi@benchflow.ai", - "name": "Xiangyi Li", - "affiliation": "@benchflow-ai", - "pr_count": 1, - "total_additions": 4, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/459", - "pr_title": "fix(claude-code): CLAUDE_CONFIG_DIR giving errors for accessing .claude folder", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "thdxr", - "email": "mail@thdxr.com", - "name": "Dax", - "affiliation": "", - "pr_count": 2, - "total_additions": 4, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/316", - "pr_title": "Change opencode command to output JSON format", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/121", - "pr_title": "Enable OPENCODE_FAKE_VCS for OpenCode agent", - "pr_type": "other" - } - ] - }, - { - "github_handle": "Chesars", - "email": "", - "name": "Cesar Garcia", - "affiliation": "", - "pr_count": 2, - "total_additions": 4, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/176", - "pr_title": "fix: flaky terminus_2 timeout test", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/175", - "pr_title": "docs: Fix broken link in README.md", - "pr_type": "other" - } - ] - }, - { - "github_handle": "HiromuHota", - "email": "hiromu.hota@gmail.com", - "name": "Hiromu Hota", - "affiliation": "https://snorkel.ai/", - "pr_count": 2, - "total_additions": 4, - "total_deletions": 7, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/131", - "pr_title": "Add content from run-tests.sh correctly during migration", - "pr_type": "engineering" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/130", - "pr_title": "Allow difficulty: unknown for compat w/TB1.0", - "pr_type": "other" - } - ] - }, - { - "github_handle": "vatsj", - "email": "jacobstavrianos@gmail.com", - "name": "Jacob Stavrianos", - "affiliation": "", - "pr_count": 1, - "total_additions": 3, - "total_deletions": 0, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/481", - "pr_title": "suppress daytona container auto-shutdown", - "pr_type": "other" - } - ] - }, - { - "github_handle": "likaixin2000", - "email": "likaixin@u.nus.edu", - "name": "Kaixin Li", - "affiliation": "National University of Singapore", - "pr_count": 1, - "total_additions": 2, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/513", - "pr_title": "Fix error message formatting for invalid agent names", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "michaelrglass", - "email": "", - "name": "Michael Glass", - "affiliation": "IBM", - "pr_count": 2, - "total_additions": 2, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/489", - "pr_title": "Fix docker environment to treat empty docker_image as no prebuilt image", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/456", - "pr_title": "Stderr was being lost by redirecting to stdout after the tee command", - "pr_type": "other" - } - ] - }, - { - "github_handle": "Guangy627", - "email": "", - "name": "Guangy627", - "affiliation": "", - "pr_count": 1, - "total_additions": 2, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/485", - "pr_title": "Fix/trajectorydump", - "pr_type": "other" - } - ] - }, - { - "github_handle": "paraliine", - "email": "", - "name": "Xiaoxuan Peng", - "affiliation": "CQU", - "pr_count": 2, - "total_additions": 2, - "total_deletions": 2, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/216", - "pr_title": "Fix Terminus2 tmux logging path", - "pr_type": "other" - }, - { - "pr_url": "https://github.com/laude-institute/harbor/pull/215", - "pr_title": "Fix blocking tmux send-keys execution", - "pr_type": "other" - } - ] - }, - { - "github_handle": "tyler-griggs", - "email": "", - "name": "Tyler Griggs", - "affiliation": "", - "pr_count": 1, - "total_additions": 2, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/21", - "pr_title": "Update .gitignore", - "pr_type": "other" - } - ] - }, - { - "github_handle": "liyuyun-lyy", - "email": "", - "name": "liyuyun-lyy", - "affiliation": "Alibaba", - "pr_count": 1, - "total_additions": 1, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/168", - "pr_title": "fix: use yolo mode to pass hello world test", - "pr_type": "engineering" - } - ] - }, - { - "github_handle": "santaboi", - "email": "", - "name": "Yang Fan Chiang", - "affiliation": "University of Maryland College Park", - "pr_count": 1, - "total_additions": 1, - "total_deletions": 1, - "pr_list": [ - { - "pr_url": "https://github.com/laude-institute/harbor/pull/104", - "pr_title": "Fix Terminal Bench 2.0 description typo", - "pr_type": "other" - } - ] - } -] \ No newline at end of file diff --git a/src/app/(home)/contributors/contributor-card.tsx b/src/app/(home)/contributors/contributor-card.tsx index 5b56c53..143f016 100644 --- a/src/app/(home)/contributors/contributor-card.tsx +++ b/src/app/(home)/contributors/contributor-card.tsx @@ -9,20 +9,12 @@ import { interface ContributorCardProps { name: string; githubHandle: string; - affiliation: string; - prCount: number; - totalAdditions: number; - totalDeletions: number; + role: string; } -export function ContributorCard({ - name, - githubHandle, - affiliation, - prCount, - totalAdditions, - totalDeletions, -}: ContributorCardProps) { +export function ContributorCard({ name, githubHandle, role }: ContributorCardProps) { + const hasName = name && name !== githubHandle; + return ( - {name} + + {hasName ? name : `@${githubHandle}`} + - @{githubHandle} + {hasName ? `@${githubHandle} · ${role}` : role} - {affiliation && ( -

{affiliation}

- )} -

- {prCount} PRs · +{totalAdditions.toLocaleString()} / −{totalDeletions.toLocaleString()} -

diff --git a/src/app/(home)/contributors/page.tsx b/src/app/(home)/contributors/page.tsx index 4c04aea..23aa6c7 100644 --- a/src/app/(home)/contributors/page.tsx +++ b/src/app/(home)/contributors/page.tsx @@ -1,4 +1,4 @@ -import contributionData from "../../../../public/harbor_contribution.json"; +import contributionData from "../../../../utils/contributors/data/harbor_contribution.json"; import { ContributorCard } from "./contributor-card"; import Link from "next/link"; @@ -7,28 +7,43 @@ interface Contributor { email: string; name: string; affiliation: string; + role: string; + rank: number; + adapter_rank: number; pr_count: number; + adapter_pr_count: number; + non_adapter_pr_count: number; total_additions: number; total_deletions: number; pr_list: { pr_url: string; pr_title: string; pr_type: string }[]; } +function lastName(c: Contributor): string { + const parts = c.name.trim().split(/\s+/); + return (parts[parts.length - 1] ?? c.github_handle).toLowerCase(); +} + function partitionContributors(data: Contributor[]) { const harborContributors: Contributor[] = []; const adapterContributors: Contributor[] = []; for (const c of data) { - const hasAdapter = c.pr_list.some((pr) => pr.pr_type === "adapter"); - const hasNonAdapter = c.pr_list.some((pr) => pr.pr_type !== "adapter"); - - if (hasNonAdapter) { + if (c.non_adapter_pr_count > 0 || c.rank !== 0) { harborContributors.push(c); } - if (hasAdapter) { + if (c.adapter_pr_count > 0 || c.adapter_rank !== 0) { adapterContributors.push(c); } } + // Rank first takes priority (descending), then PR count, then last name + harborContributors.sort( + (a, b) => b.rank - a.rank || b.non_adapter_pr_count - a.non_adapter_pr_count || lastName(a).localeCompare(lastName(b)), + ); + adapterContributors.sort( + (a, b) => b.adapter_rank - a.adapter_rank || b.adapter_pr_count - a.adapter_pr_count || lastName(a).localeCompare(lastName(b)), + ); + return { harborContributors, adapterContributors }; } @@ -64,10 +79,7 @@ export default function ContributorsPage() { key={`harbor-${c.github_handle}`} name={c.name} githubHandle={c.github_handle} - affiliation={c.affiliation} - prCount={c.pr_count} - totalAdditions={c.total_additions} - totalDeletions={c.total_deletions} + role={c.role} /> ))} @@ -85,10 +97,7 @@ export default function ContributorsPage() { key={`adapter-${c.github_handle}`} name={c.name} githubHandle={c.github_handle} - affiliation={c.affiliation} - prCount={c.pr_count} - totalAdditions={c.total_additions} - totalDeletions={c.total_deletions} + role={c.role} /> ))} diff --git a/utils/contributors/README.md b/utils/contributors/README.md new file mode 100644 index 0000000..65799f1 --- /dev/null +++ b/utils/contributors/README.md @@ -0,0 +1,112 @@ +# Contributors Data Pipeline + +Scripts to collect and aggregate contributor data from the [laude-institute/harbor](https://github.com/laude-institute/harbor) repository. The output is consumed by the `/contributors` page. + +## Prerequisites + +- Python 3.10+ +- [GitHub CLI (`gh`)](https://cli.github.com/) authenticated with access to the harbor repo (only needed for `refresh`, `refresh-prdata`, `refresh-userdata`) + +## Usage + +Use `ctbcli` to run the pipeline: + +```bash +# Full refresh: collect PR data + user data from GitHub, then regenerate +./utils/contributors/ctbcli refresh + +# PR data only: re-collect PR data from GitHub and regenerate +./utils/contributors/ctbcli refresh-prdata + +# User data only: re-collect user profiles from GitHub and regenerate +./utils/contributors/ctbcli refresh-userdata + +# Regenerate from existing data (no API calls — use after editing verified data) +./utils/contributors/ctbcli generate +``` + +## Directory Structure + +``` +utils/contributors/ +├── ctbcli # CLI entrypoint +├── README.md +├── src/ # Python scripts +│ ├── collect_pr_data.py +│ ├── collect_user_data.py +│ └── generate_contributions.py +└── data/ # Data files + ├── verified_github_users_data.json # Manually curated (source of truth) + ├── raw_pr_data.json # Auto-generated from GitHub API + ├── raw_github_users_data.json # Auto-generated from GitHub API + └── harbor_contribution.json # Final output for the web page +``` + +## How It Works + +### Data flow + +``` +GitHub API ──► raw_pr_data.json ──────────────────────┐ +GitHub API ──► raw_github_users_data.json ──┐ │ + ▼ ▼ + verified_github_users_data.json ──► generate_contributions.py + │ + ▼ + harbor_contribution.json + │ + ▼ + /contributors page +``` + +### Scripts (`src/`) + +| Script | What it does | API calls | +|--------|-------------|-----------| +| `collect_pr_data.py` | Fetches all merged PRs from `laude-institute/harbor`, classifies each by type (`adapter`, `task`, `engineering`, `other`), and writes `raw_pr_data.json` | Yes (slowest) | +| `collect_user_data.py` | Reads unique author handles from `raw_pr_data.json`, fetches GitHub profiles, and writes `raw_github_users_data.json` | Yes | +| `generate_contributions.py` | Merges PR data with user data, ranks contributors, and writes `harbor_contribution.json` | No | + +### Data files (`data/`) + +| File | Source | Editable? | Description | +|------|--------|-----------|-------------| +| `verified_github_users_data.json` | Manual | **Yes** | Curated contributor info with verified names, affiliations, roles, and ranks. Takes precedence over raw GitHub data when a handle matches. | +| `raw_pr_data.json` | `collect_pr_data.py` | No | All merged PRs with author, additions/deletions, title, and type classification | +| `raw_github_users_data.json` | `collect_user_data.py` | No | GitHub profile data (name, email, company) for each PR author. Used as fallback when a handle is not in the verified data. | +| `harbor_contribution.json` | `generate_contributions.py` | No | Final aggregated output consumed by the `/contributors` page | + +### Verified user data fields + +The `verified_github_users_data.json` file supports these fields: + +| Field | Required | Description | +|-------|----------|-------------| +| `github_handle` | Yes | GitHub username | +| `name` | Yes | Display name | +| `affiliation` | Yes | Organization or university | +| `email` | Yes | Contact email | +| `role` | No | Displayed on card (e.g. `"Co-lead"`, `"Adapter Lead"`, `"Advisor"`). Defaults to `"Contributor"` | +| `rank` | No | Sort priority for Harbor Contributors section (higher = listed first). Defaults to `0` | +| `adapter_rank` | No | Sort priority for Adapter Contributors section (higher = listed first). Defaults to `0` | + +### Ranking logic + +- **Harbor Contributors**: sorted by `rank` (desc) → non-adapter PR count (desc) → last name (asc) +- **Adapter Contributors**: sorted by `adapter_rank` (desc) → adapter PR count (desc) → last name (asc) + +## Common Tasks + +**New PRs merged — update the page:** +```bash +./utils/contributors/ctbcli refresh +``` + +**Edited verified user data (name, role, rank, etc.):** +```bash +./utils/contributors/ctbcli generate +``` + +**New contributor needs verified info:** +1. Add an entry to `data/verified_github_users_data.json` +2. Run `./utils/contributors/ctbcli generate` diff --git a/utils/contributors/ctbcli b/utils/contributors/ctbcli new file mode 100755 index 0000000..25bd87f --- /dev/null +++ b/utils/contributors/ctbcli @@ -0,0 +1,55 @@ +#!/usr/bin/env bash +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" +PYTHON="${PYTHON:-python3}" + +run_collect_pr_data() { + echo "==> Collecting PR data..." + "$PYTHON" "$SCRIPT_DIR/src/collect_pr_data.py" +} + +run_collect_user_data() { + echo "==> Collecting user data..." + "$PYTHON" "$SCRIPT_DIR/src/collect_user_data.py" +} + +run_generate() { + echo "==> Generating contributions..." + "$PYTHON" "$SCRIPT_DIR/src/generate_contributions.py" +} + +usage() { + cat < + +Commands: + refresh Collect PR data, user data, and regenerate contributions + refresh-prdata Collect PR data and regenerate contributions + refresh-userdata Collect user data and regenerate contributions + generate Regenerate contributions from existing data (no API calls) +EOF +} + +case "${1:-}" in + refresh) + run_collect_pr_data + run_collect_user_data + run_generate + ;; + refresh-prdata) + run_collect_pr_data + run_generate + ;; + refresh-userdata) + run_collect_user_data + run_generate + ;; + generate) + run_generate + ;; + *) + usage + exit 1 + ;; +esac diff --git a/utils/contributors/data/harbor_contribution.json b/utils/contributors/data/harbor_contribution.json new file mode 100644 index 0000000..eb63425 --- /dev/null +++ b/utils/contributors/data/harbor_contribution.json @@ -0,0 +1,3677 @@ +[ + { + "github_handle": "li-boxuan", + "email": "boxuanli@alumni.cmu.edu", + "name": "Boxuan Li", + "affiliation": "Independent", + "role": "Co-lead", + "rank": 10000000, + "adapter_rank": 0, + "pr_count": 47, + "adapter_pr_count": 0, + "non_adapter_pr_count": 47, + "total_additions": 18670, + "total_deletions": 6305, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/475", + "pr_title": "Revert litellm hack for OpenHands", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/420", + "pr_title": "Fix: Remove duplicate error_msg in OutputLengthExceededError handling", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/364", + "pr_title": "Fix unit test failure in lite_llm.py", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/350", + "pr_title": "Add get model limit utility and fix Terminus-2 error message", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/341", + "pr_title": "Bump OpenHands to 1.0.0 in tests and update gold trajectories & traces", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/313", + "pr_title": "Fix ruff check on fork", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/274", + "pr_title": "Add CI gate for ruff linter on modified files", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/272", + "pr_title": "Do not pass host env variables to Docker environment", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/265", + "pr_title": "Terminus-2: Support optional interleaved thinking", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/237", + "pr_title": "GPU support + example task that requires GPU", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/225", + "pr_title": "Trajectories & traces for OpenHands: handle tool calling", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/184", + "pr_title": "Terminus-2 Trajectory: raw_content & linear_history modes", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/183", + "pr_title": "Export SFT traces from trajectories", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/177", + "pr_title": "Fix error message in Terminus trajectory", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/174", + "pr_title": "Add integration tests for exported traces", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/169", + "pr_title": "OpenHands trajectory fixes: tool call definitions and bookkeeping steps", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/156", + "pr_title": "Terminus-2: Add model_info parameter to register LLM info", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/141", + "pr_title": "Terminus-2: Full trajectories, rollout details, bug fixes and E2E tests", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/132", + "pr_title": "Terminus trajectory: Remove first user message", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/125", + "pr_title": "Terminus 2: prompt token ids and reasoning content", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/122", + "pr_title": "Fix metric discrepancy in openhands golden trajectory", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/118", + "pr_title": "Clean up integration tests + Drop source_call_id for terminus trajectory", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/117", + "pr_title": "Terminus-2: Include erroneous json response in trajectory message field", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/105", + "pr_title": "Fix test.sh in example task", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/95", + "pr_title": "CI: remove redundant test stage", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/93", + "pr_title": "Gemini-CLI to generate trajectory in ATIF", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/84", + "pr_title": "Terminus-2 to return rollout details (completion_token_ids, log_probs)", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/81", + "pr_title": "Terminus-2: Remove token counting hack", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/79", + "pr_title": "Fix token counting in terminus_2 summarisation subagent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/78", + "pr_title": "Mini SWE Agent: use forked version + generate trajectory following ATIF spec", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/76", + "pr_title": "Polish trajectory model field descriptions", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/71", + "pr_title": "Openhands to generate trajectory in ATIF", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/65", + "pr_title": "Add trajectory validator and tests", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/62", + "pr_title": "Handle exceptions on non-critical paths", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/60", + "pr_title": "Terminus-2 Agent: metrics reporting & trajectory generation", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/56", + "pr_title": "[RFC] Agent Trajectory Interchange Format (ATIF) Specification", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/55", + "pr_title": "Fix docker exec deadlock for tasks with large output", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/51", + "pr_title": "Fix ruff violations and add linting to CI", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/50", + "pr_title": "Terminus-2 to pass session_id", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/48", + "pr_title": "Regenerate corrupt uv.lock", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/45", + "pr_title": "Include logprobs in AgentContext", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/37", + "pr_title": "Return cost in AgentResult", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/33", + "pr_title": "Port docker cache clean up logic from terminal-bench", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/32", + "pr_title": "Add token count for OpenHands agent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/31", + "pr_title": "Fix & clean up tests", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/30", + "pr_title": "Minor change to openhands agent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/29", + "pr_title": "Agent refactoring - jinja2 templating, versioning, tests, CI, and more", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "alexgshaw", + "email": "alexgshaw64@gmail.com", + "name": "Alex Shaw", + "affiliation": "Laude Institute", + "role": "Co-lead", + "rank": 10000000, + "adapter_rank": 0, + "pr_count": 25, + "adapter_pr_count": 0, + "non_adapter_pr_count": 25, + "total_additions": 20555, + "total_deletions": 11093, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/911", + "pr_title": "Enable skills in agents.", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/772", + "pr_title": "Add comprehensive trajectory conversion for mini-swe-agent formats", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/603", + "pr_title": "Add Responses API support for Terminus", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/495", + "pr_title": "Claude/add package dashboard lxufb", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/476", + "pr_title": "Improve terminal bench mapper functionality", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/468", + "pr_title": "feat(hooks): add job-level named hook methods for trial lifecycle events", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/394", + "pr_title": "Remove verbose flag and show task counts", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/388", + "pr_title": "Postgres registry", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/362", + "pr_title": "Fix AttributeError when accessing default environment type in CLI", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/361", + "pr_title": "Change -a shorthand in start-env from --agent to --all", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/360", + "pr_title": "Restrict environment variables passed to Oracle container", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/359", + "pr_title": "Add include-standard-metadata option to tasks init", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/327", + "pr_title": "Make internet configurable from task config", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/326", + "pr_title": "Add CLAUDE.md documentation for AI assistants", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/325", + "pr_title": "feat: add support for custom environment implementations via import path", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/318", + "pr_title": "Revert to include env vars in docker.", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/70", + "pr_title": "Alexgshaw/support docker compose", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/52", + "pr_title": "Warn users about Modal Python installation", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/43", + "pr_title": "QOL upgrades from running a billion ICLR experiments", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/24", + "pr_title": "Rename package, strip out db, reformat results and configs, change base environment methods.", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/22", + "pr_title": "Daytona", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/18", + "pr_title": "Alex-temp", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/14", + "pr_title": "Add Claude Code GitHub Workflow", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/9", + "pr_title": "Create cli command for single trial", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/1", + "pr_title": "Working branch", + "pr_type": "other" + } + ] + }, + { + "github_handle": "penfever", + "email": "bf996@nyu.edu", + "name": "Benjamin Feuer", + "affiliation": "Stanford University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 17, + "adapter_pr_count": 0, + "non_adapter_pr_count": 17, + "total_additions": 4050, + "total_deletions": 211, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/527", + "pr_title": "Queue orchestrator", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/526", + "pr_title": "OpenHands Improvements", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/465", + "pr_title": "[FEATURE] Close old log handlers after trial returns", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/339", + "pr_title": "[FEATURE] Improve LiteLLM Handling of vLLM Hosted Models ", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/337", + "pr_title": "[TINY] Increase tmux history limit", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/336", + "pr_title": "[TINY] Warn user if required model_info is left unset", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/276", + "pr_title": "[FEATURE] Make asciinema recording optional", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/235", + "pr_title": "add verifier output and instructions", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/217", + "pr_title": "Extract result during trace exports", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/163", + "pr_title": "Enhance episode conversation extraction logic", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/160", + "pr_title": "BUGFIX: Numeric rather than lexical sorting of episodes", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/147", + "pr_title": "Robust termination of aiohttp events wrapping Daytona containers", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/144", + "pr_title": "Oracle Agent Hardening", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/142", + "pr_title": "Penfever/handle vllm context length errors correctly", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/119", + "pr_title": "guard traces format acquisition", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/42", + "pr_title": "Penfever/all scripts", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/36", + "pr_title": "Penfever/working", + "pr_type": "other" + } + ] + }, + { + "github_handle": "xiaoxiangmoe", + "email": "", + "name": "ZHAO Jin-Xiang", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 11, + "adapter_pr_count": 0, + "non_adapter_pr_count": 11, + "total_additions": 350, + "total_deletions": 162, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/963", + "pr_title": "Add `--agent-env` support to all agents", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/902", + "pr_title": "Lock ruff and ty version", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/870", + "pr_title": "Add `--environment-import-path` to job config", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/804", + "pr_title": "Set pull_policy to build in docker-compose build", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/795", + "pr_title": "Add specific phase timeout multipliers", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/777", + "pr_title": "Wait for the actual container startup in DockerEnvironment.start", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/776", + "pr_title": "Fix the bug that `| tee` in verifier call may hang forever", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/757", + "pr_title": "Allow prompts starting with `-`", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/755", + "pr_title": "add procps to prevent process crashes when claude-code call tree-kill", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/722", + "pr_title": "Use `bach -c` rather than `bash -lc`", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/240", + "pr_title": "Run script directly to respect shebang", + "pr_type": "other" + } + ] + }, + { + "github_handle": "StevenDillmann", + "email": "stevendi@stanford.edu", + "name": "Steven Dillmann", + "affiliation": "Stanford University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 10, + "adapter_pr_count": 2, + "non_adapter_pr_count": 8, + "total_additions": 2601, + "total_deletions": 28, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/638", + "pr_title": "Revise citation section in README.md", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/637", + "pr_title": "Remove version in CITATION.cff", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/566", + "pr_title": "Update CITATION.cff", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/564", + "pr_title": "Update title in citation section in README.md", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/560", + "pr_title": "Fix author formatting in citation", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/556", + "pr_title": "Update citation section in README.md", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/444", + "pr_title": "Make reasoning parameters configurable via kwargs", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/260", + "pr_title": "Add initial CITATION.cff file", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/146", + "pr_title": "[Adapter] Update ReplicationBench to include masked manuscripts of papers", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/92", + "pr_title": "[Adapter] Adding ReplicationBench adapter to Harbor", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "ibercovich", + "email": "ibercovich@gmail.com", + "name": "Ivan Bercovich", + "affiliation": "Independent", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 9, + "adapter_pr_count": 0, + "non_adapter_pr_count": 9, + "total_additions": 678, + "total_deletions": 66, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/435", + "pr_title": "Fix graceful shutdown on SIGTERM", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/319", + "pr_title": "feat(viewer): round rewards to 4 decimal places", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/298", + "pr_title": "made newline a requirement in prompt since small LLMs were failing", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/251", + "pr_title": "feat(mini-swe-agent): pass through OPENAI_API_BASE for custom endpoints", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/148", + "pr_title": "Updated checker and debugger", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/74", + "pr_title": "Update model name in gemini-cli-job.yaml", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/73", + "pr_title": "Replace 'sb' with 'harbor' in README", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/68", + "pr_title": "Update sandbox creation timeout configuration", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/47", + "pr_title": "porting sb tasks check and debug from terminal-bench", + "pr_type": "task" + } + ] + }, + { + "github_handle": "CharlieFRuan", + "email": "charlieruan@berkeley.edu", + "name": "Charlie Ruan", + "affiliation": "UC Berkeley", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 8, + "adapter_pr_count": 0, + "non_adapter_pr_count": 8, + "total_additions": 288, + "total_deletions": 94, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/686", + "pr_title": "[Terminus] Fix `n_episodes` counting when error out", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/653", + "pr_title": "[Terminus] Do not retry on ContextLengthExceededError when enable_summarize=False", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/651", + "pr_title": "[Env] Make sandbox lifecycle timeouts configurable via environment kwargs", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/650", + "pr_title": "[Modal] Add tenacity to modal just like daytona", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/593", + "pr_title": "[LLMs] Remove ParseError as it is not used anywhere", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/592", + "pr_title": "[Trial] Remove EnvironmentBuildTimeoutError since it is not used", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/561", + "pr_title": "[Env] Add EnvironmentConfig.suppress_override_warnings and Terminus kwarg suppress_max_turns_warning", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/524", + "pr_title": "[terminus] Remove _logger and use BaseAgent logger directly", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Ternura143", + "email": "zzx18742002@gmail.com", + "name": "Zixuan Zhu", + "affiliation": "Nanyang Technological University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 1000, + "pr_count": 8, + "adapter_pr_count": 3, + "non_adapter_pr_count": 5, + "total_additions": 358099, + "total_deletions": 293018, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/1009", + "pr_title": "[Ready for Review] Add kimi-cli agent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/998", + "pr_title": "[Ready for Review] Standardize registry.json, add CI check, and fix sync", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/983", + "pr_title": "[Ready for Review] Fix pagination bug in sync_registry_to_supabase", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/973", + "pr_title": "[Ready for Review] Restore 9 deleted dataset entries", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/905", + "pr_title": "[Ready For Review] Fix Claude Code double-counting input tokens", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/857", + "pr_title": "[Ready for Review] Add automated adapter review bot for PR validation", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/797", + "pr_title": "[Ready for Review] Update parity comparison table in adapter readme template", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/358", + "pr_title": "[Ready for Review - Final Fix] Adapter: bfcl", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Slimshilin", + "email": "ls2282@cornell.edu", + "name": "Lin Shi", + "affiliation": "Cornell Tech", + "role": "Adapter Lead", + "rank": 0, + "adapter_rank": 110000, + "pr_count": 7, + "adapter_pr_count": 4, + "non_adapter_pr_count": 3, + "total_additions": 9179, + "total_deletions": 10887, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/580", + "pr_title": "Add parity API instructions for adapter experiments", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/579", + "pr_title": "[Ready to merge] OPENAI_BASE_URL support for codex.", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/516", + "pr_title": "remove aider-polyglot and livecodebench duplicates", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/263", + "pr_title": "Fix EvoEval Adapter forked_repo Link", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/98", + "pr_title": "Adapters readme template", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/83", + "pr_title": "Adapter README template", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/82", + "pr_title": "Fix -t to -p. Polish README", + "pr_type": "other" + } + ] + }, + { + "github_handle": "linhaowei1", + "email": "linhaowei@pku.edu.cn", + "name": "Haowei Lin", + "affiliation": "Peking University", + "role": "Co-lead", + "rank": 0, + "adapter_rank": 100000, + "pr_count": 6, + "adapter_pr_count": 5, + "non_adapter_pr_count": 1, + "total_additions": 6653, + "total_deletions": 47, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/440", + "pr_title": "[Ready for Review] Adapter: Algotune", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/438", + "pr_title": "[BugFix] Fix hello-world registry format", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/424", + "pr_title": "[FIX] Update Parity for Adapter: AutoCodeBench", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/292", + "pr_title": "[fix adapter] Revise the parity results for SLDBench", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/151", + "pr_title": "[adapter] Add SLDBench", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/106", + "pr_title": "Add Autocodebench adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "TheMikeMerrill", + "email": "mikeam1@stanford.edu", + "name": "Mike A. Merrill", + "affiliation": "Stanford University", + "role": "Co-lead", + "rank": 10000000, + "adapter_rank": 0, + "pr_count": 6, + "adapter_pr_count": 0, + "non_adapter_pr_count": 6, + "total_additions": 6136, + "total_deletions": 1352, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/40", + "pr_title": "t2 context improperly queried", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/27", + "pr_title": "Fix token tracking", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/20", + "pr_title": "Mikeam/agents two", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/19", + "pr_title": "Add logging to terminus", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/16", + "pr_title": "Initial terminus2", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/2", + "pr_title": "Add DB implementation", + "pr_type": "other" + } + ] + }, + { + "github_handle": "neginraoof", + "email": "negin_raoof@berkeley.edu", + "name": "Negin Raoof", + "affiliation": "UC Berkeley", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 6, + "adapter_pr_count": 1, + "non_adapter_pr_count": 5, + "total_additions": 5244, + "total_deletions": 302, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/817", + "pr_title": "Add OT-TerminalBench-Dev dataset (100 tasks)", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/279", + "pr_title": "Adding swe-agent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/243", + "pr_title": "Inline swe-agent inference config", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/242", + "pr_title": "Add SWE-agent configuration example", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/49", + "pr_title": "updated terminus 2 summarization fallback", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/44", + "pr_title": "Swebench adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "harshraj172", + "email": "harsh777111raj@gmail.com", + "name": "Harsh Raj", + "affiliation": "Northeastern University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 5, + "adapter_pr_count": 2, + "non_adapter_pr_count": 3, + "total_additions": 8873, + "total_deletions": 241, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/458", + "pr_title": "add codex trajectory.json back", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/115", + "pr_title": "Add swesmith adapter", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/86", + "pr_title": "claude-code atif formatting", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/77", + "pr_title": "Codex ATIF trajectory", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/58", + "pr_title": "Add the `aider-polyglot` adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "chenzizhao", + "email": "czz@cs.cornell.edu", + "name": "Zizhao Chen", + "affiliation": "Cornell Tech", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 4, + "adapter_pr_count": 1, + "non_adapter_pr_count": 3, + "total_additions": 37076, + "total_deletions": 71989, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/518", + "pr_title": "Revise bixbench README with known issue and task details", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/472", + "pr_title": "Update registry with bixbench-cli", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/451", + "pr_title": "[ready for review] bixbench-cli addition", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/154", + "pr_title": "[Ready for review - final fix] Adapter: BixBench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Chesars", + "email": "", + "name": "Cesar Garcia", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 4, + "adapter_pr_count": 1, + "non_adapter_pr_count": 3, + "total_additions": 7, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/989", + "pr_title": "Fix typos in README.md", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/861", + "pr_title": "Fix typo in adapter template README", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/176", + "pr_title": "fix: flaky terminus_2 timeout test", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/175", + "pr_title": "docs: Fix broken link in README.md", + "pr_type": "other" + } + ] + }, + { + "github_handle": "michaelrglass", + "email": "mrglass@us.ibm.com", + "name": "Michael Glass", + "affiliation": "IBM", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 4, + "adapter_pr_count": 0, + "non_adapter_pr_count": 4, + "total_additions": 121, + "total_deletions": 13, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/885", + "pr_title": "View image artifacts in harbor view", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/631", + "pr_title": "Support default values in env var templates", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/489", + "pr_title": "Fix docker environment to treat empty docker_image as no prebuilt image", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/456", + "pr_title": "Stderr was being lost by redirecting to stdout after the tee command", + "pr_type": "other" + } + ] + }, + { + "github_handle": "mieciu", + "email": "przemyslaw.hejman@quesma.com", + "name": "Przemys\u0142aw Hejman", + "affiliation": "Quesma", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 4, + "adapter_pr_count": 1, + "non_adapter_pr_count": 3, + "total_additions": 612, + "total_deletions": 54, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/515", + "pr_title": "Fix openrouter model name ", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/246", + "pr_title": "Support `--env daytona --ek network_block_all=true` in `harbor run`", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/214", + "pr_title": "Fix `--no-delete` in Docker environment", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/170", + "pr_title": "Adding CompileBench dataset/adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "LithiumDA", + "email": "shandal@cs.cmu.edu", + "name": "Shanda Li", + "affiliation": "Carnegie Mellon University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 4, + "adapter_pr_count": 4, + "non_adapter_pr_count": 0, + "total_additions": 1147, + "total_deletions": 15, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/466", + "pr_title": "fix (adapter): registery", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/139", + "pr_title": "[Adapter] fix (codepde): remove tmux & asciinema from Dockerfile", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/102", + "pr_title": "[CodePDE Adapter] fix: linting", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/90", + "pr_title": "[Adapter] Adding CodePDE adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "anishathalye", + "email": "me@anishathalye.com", + "name": "Anish Athalye", + "affiliation": "@joinhandshake", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 3, + "adapter_pr_count": 0, + "non_adapter_pr_count": 3, + "total_additions": 219, + "total_deletions": 9, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/898", + "pr_title": "Fix MCP support for Cline", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/859", + "pr_title": "Add type checking to CI", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/655", + "pr_title": "Add MCP support for OpenHands", + "pr_type": "other" + } + ] + }, + { + "github_handle": "josancamon19", + "email": "", + "name": "Joan Cabezas", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 3, + "adapter_pr_count": 0, + "non_adapter_pr_count": 3, + "total_additions": 1392, + "total_deletions": 79, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/967", + "pr_title": "Add first-class Tinker LLM backend for Terminus-2", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/705", + "pr_title": "feat: add multi-job support to harbor jobs summarize", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/643", + "pr_title": "fix: Gemini CLI ATIF trajectory conversion for harbor view", + "pr_type": "other" + } + ] + }, + { + "github_handle": "james-rl", + "email": "james@runloop.ai", + "name": "James Chainey", + "affiliation": "Runloop", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 3, + "adapter_pr_count": 0, + "non_adapter_pr_count": 3, + "total_additions": 285, + "total_deletions": 119, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/467", + "pr_title": "Prefer prebuilt images when running with runloop env", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/210", + "pr_title": "Added resource config for runloop env", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/189", + "pr_title": "Fixed runloop env", + "pr_type": "other" + } + ] + }, + { + "github_handle": "RishiDesai", + "email": "", + "name": "Rishi Desai", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 3, + "adapter_pr_count": 0, + "non_adapter_pr_count": 3, + "total_additions": 33046, + "total_deletions": 27018, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/512", + "pr_title": "registry for swe-gen-js", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/230", + "pr_title": "Serialize Docker image builds to prevent parallel build race condition", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/200", + "pr_title": "Allow custom BaseLLM backend for Agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "digitsisyph", + "email": "", + "name": "digitsi", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 3, + "adapter_pr_count": 2, + "non_adapter_pr_count": 1, + "total_additions": 7109, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/153", + "pr_title": "Add adapter init command", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/143", + "pr_title": "Add trajectory viewer", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/69", + "pr_title": "Add adapter for evoeval", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Ji-Pengliang", + "email": "", + "name": "Pengliang Ji", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 3, + "adapter_pr_count": 1, + "non_adapter_pr_count": 2, + "total_additions": 2230, + "total_deletions": 3, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/550", + "pr_title": "Add --n-attempts 2 to arc_agi_2 reproduction command", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/401", + "pr_title": "update arc-agi-2 parity test pr", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/220", + "pr_title": "[Ready for Review - fixing] Adapter: ARC-AGI-2 benchmark", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "luxinyu1", + "email": "", + "name": "Solaris", + "affiliation": "Institute of Software, Chinese Academy of Sciences", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 3, + "adapter_pr_count": 0, + "non_adapter_pr_count": 3, + "total_additions": 31, + "total_deletions": 11, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/900", + "pr_title": "Pass through CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING env var to claude code agent", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/506", + "pr_title": "Fix Claude Code trajectory extraction when subagents are used", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/236", + "pr_title": "Add custom API base URL support for claude code agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "AkshayVenkataraman", + "email": "akshayv2k@gmail.com", + "name": "Akshay Venkataraman", + "affiliation": "Leeds Beckett University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 3, + "adapter_pr_count": 0, + "non_adapter_pr_count": 3, + "total_additions": 45, + "total_deletions": 9, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/247", + "pr_title": "initial commit to enable agent setup timeout override", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/226", + "pr_title": "improved workdir parse logic", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/195", + "pr_title": "made tmux viewport size configurable", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "rynewang", + "email": "", + "name": "Ruiyang Wang", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 3, + "adapter_pr_count": 0, + "non_adapter_pr_count": 3, + "total_additions": 1051, + "total_deletions": 238, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/771", + "pr_title": "Fix hello-alpine reward.txt containing pytest output", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/769", + "pr_title": "Add Docker Compose (DinD) support for Daytona environment", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/767", + "pr_title": "Fix hello-mcp example to use streamable-http transport", + "pr_type": "other" + } + ] + }, + { + "github_handle": "pfbyjy", + "email": "", + "name": "Meji A", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 109, + "total_deletions": 23, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/333", + "pr_title": "Update claude_code.py to allow access to all tools", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/75", + "pr_title": "Convert Terminal-Bench docker-compose to Harbor format in mapper", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "arafatkatze", + "email": "arafat.da.khan@gmail.com", + "name": "Ara", + "affiliation": "Cline", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 1210, + "total_deletions": 32, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/1019", + "pr_title": "cline-cli: recover usage from task history", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/585", + "pr_title": "Fix Cline Provider to support new Auth/CLI config", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "jrvb-rl", + "email": "rob@runloop.ai", + "name": "Rob von Behren", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 96, + "total_deletions": 31, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/876", + "pr_title": "Improve Runloop blueprint handling.", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/862", + "pr_title": "Improve error handling and implement correct delete behavior for runloop environment.", + "pr_type": "other" + } + ] + }, + { + "github_handle": "connor-cognition", + "email": "", + "name": "connor-cognition", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 293, + "total_deletions": 8, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/470", + "pr_title": "feat: add secret and volume support to modal environment", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/457", + "pr_title": "chore: pin modal sdk to `1.3.1.dev9`", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "thdxr", + "email": "mail@thdxr.com", + "name": "Dax", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 4, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/316", + "pr_title": "Change opencode command to output JSON format", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/121", + "pr_title": "Enable OPENCODE_FAKE_VCS for OpenCode agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "EtashGuha", + "email": "", + "name": "EtashGuha", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 32570, + "total_deletions": 3336, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/113", + "pr_title": "update train on traces", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/38", + "pr_title": "added triage for together context limit issue", + "pr_type": "other" + } + ] + }, + { + "github_handle": "giansegato", + "email": "", + "name": "gian", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 999, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/212", + "pr_title": "feat: Add GKE/Kubernetes environment support", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/135", + "pr_title": "Add extended thinking mode support for Anthropic models", + "pr_type": "other" + } + ] + }, + { + "github_handle": "HaishuoFang", + "email": "fanghaishuo@gmail.com", + "name": "Haishuo", + "affiliation": "TU Darmstadt", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 2, + "non_adapter_pr_count": 0, + "total_additions": 2966, + "total_deletions": 87, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/434", + "pr_title": "Fix ruff check error for financeagent Adapter", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/267", + "pr_title": "[Ready for Review - final discussion] Adapter: FinanceAgent", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "HiromuHota", + "email": "hiromu.hota@gmail.com", + "name": "Hiromu Hota", + "affiliation": "https://snorkel.ai/", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 4, + "total_deletions": 7, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/131", + "pr_title": "Add content from run-tests.sh correctly during migration", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/130", + "pr_title": "Allow difficulty: unknown for compat w/TB1.0", + "pr_type": "other" + } + ] + }, + { + "github_handle": "DannyGooo", + "email": "Yonghui.Liu@anu.edu.au", + "name": "Yonghui Liu", + "affiliation": "Australian National University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 2, + "non_adapter_pr_count": 0, + "total_additions": 2716, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/452", + "pr_title": "[Ready for Review] Adapter: Spider2 - Experiment with Harbor-supported agents", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/436", + "pr_title": "[Ready for Review] Adapter: Spider2", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "lurf21", + "email": "", + "name": "Ruofan Lu", + "affiliation": "The Chinese University of Hong Kong", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 7, + "total_deletions": 5, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/700", + "pr_title": "fix openhands reasoning_effort", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/284", + "pr_title": "fix: pass env variables when oracle agent executes the command", + "pr_type": "other" + } + ] + }, + { + "github_handle": "RyanMarten", + "email": "", + "name": "Ryan Marten", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 153, + "total_deletions": 174, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/1010", + "pr_title": "Give quality checker agent access to full task directory via tools", + "pr_type": "task" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/971", + "pr_title": "Strip canary markers from instruction text", + "pr_type": "other" + } + ] + }, + { + "github_handle": "jakozaur", + "email": "jacek@quesma.com", + "name": "Jacek Migdal", + "affiliation": "Quesma", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 13564, + "total_deletions": 13120, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/662", + "pr_title": "Add otel-bench benchmark to registry.json", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/661", + "pr_title": "Add binary-audit benchmark to registry.json", + "pr_type": "other" + } + ] + }, + { + "github_handle": "stared", + "email": "pmigdal@gmail.com", + "name": "Piotr Migda\u0142", + "affiliation": "ex: Quantum Flytrap CTO & cofounder", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 285, + "total_deletions": 27, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/367", + "pr_title": "Viewer cost estimate with LiteLLM", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/308", + "pr_title": "Add smart port handling for `harbor view`", + "pr_type": "other" + } + ] + }, + { + "github_handle": "octaviaguo", + "email": "", + "name": "octaviaguo", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 2, + "non_adapter_pr_count": 0, + "total_additions": 3471, + "total_deletions": 153, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/446", + "pr_title": "Update StrongReject adapter with new registry", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/363", + "pr_title": "[Ready for Review] Adapter: StrongReject", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "paraliine", + "email": "", + "name": "Xiaoxuan Peng", + "affiliation": "CQU", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 2, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/216", + "pr_title": "Fix Terminus2 tmux logging path", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/215", + "pr_title": "Fix blocking tmux send-keys execution", + "pr_type": "other" + } + ] + }, + { + "github_handle": "dot-agi", + "email": "ps4534@nyu.edu", + "name": "Pratyush Shukla", + "affiliation": "New York University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 450, + "total_deletions": 21, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/589", + "pr_title": "Fix Docker environment directory nesting and stale container bugs", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/539", + "pr_title": "Fix NVM sourcing failure with strict mode", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "rotemtam", + "email": "", + "name": "Rotem Tamir", + "affiliation": "honeybadge.co", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 220, + "total_deletions": 7, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/262", + "pr_title": "fix: `--agent-import-path` ignored when `-a` not specified", + "pr_type": "engineering" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/259", + "pr_title": "fix: add Alpine Linux support for claude-code agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "tlongwell-block", + "email": "", + "name": "tlongwell-block", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 0, + "non_adapter_pr_count": 2, + "total_additions": 41, + "total_deletions": 15, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/191", + "pr_title": "support additional inference providers for the goose agent to allow benching open models", + "pr_type": "other" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/188", + "pr_title": "enable goose developer and todo extensions in harbor recipe", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "Anjiang-Wei", + "email": "", + "name": "Anjiang Wei", + "affiliation": "Stanford University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 2, + "non_adapter_pr_count": 0, + "total_additions": 13415, + "total_deletions": 10, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/418", + "pr_title": "Remove repository path setup from run_adapter.py to fix ruff error", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/395", + "pr_title": "[Ready for Review] Adapter: SATBench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "ZhengShenghan", + "email": "shenghan.zheng.gr@dartmouth.edu", + "name": "Shenghan Zheng", + "affiliation": "Dartmouth College", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 2, + "adapter_pr_count": 1, + "non_adapter_pr_count": 1, + "total_additions": 22, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/632", + "pr_title": "[FIX] add -max-turn support in claude adapter", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/535", + "pr_title": "[Ready for Review] BUG-FIX: fix gemini-cli skill loading failure", + "pr_type": "other" + } + ] + }, + { + "github_handle": "crystalxyz", + "email": "xz957@cornell.edu", + "name": "Crystal Zhou", + "affiliation": "Cornell University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 1000, + "pr_count": 2, + "adapter_pr_count": 2, + "non_adapter_pr_count": 0, + "total_additions": 2129, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/780", + "pr_title": "[Ready for Review] Update adapter readme template for authors and contributions section", + "pr_type": "adapter" + }, + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/201", + "pr_title": "[Ready for review - Final Review] Adapter: LAB-Bench FigQA", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "1171-jpg", + "email": "", + "name": "140", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 1836, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/403", + "pr_title": "[Ready for Review] Adapter: Ineqmath", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "alexandraabbas", + "email": "", + "name": "Alexandra Abbas", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 1359, + "total_deletions": 1359, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/1020", + "pr_title": "Fix task paths in registry.json for swtbench-verified and swe-lancer-diamond", + "pr_type": "task" + } + ] + }, + { + "github_handle": "ai-jz", + "email": "", + "name": "ai-jz", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 6, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/173", + "pr_title": "feat: Add Claude Code OAuth token support for subscription users", + "pr_type": "other" + } + ] + }, + { + "github_handle": "George-ao", + "email": "", + "name": "Yuyi Ao", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 40, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/949", + "pr_title": "Fix Claude Code trajectory JSONL", + "pr_type": "other" + } + ] + }, + { + "github_handle": "BauerJustin", + "email": "", + "name": "Justin Bauer", + "affiliation": "@snorkel-ai ", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 557, + "total_deletions": 126, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/815", + "pr_title": "Update tasks check to use Claude Agents SDK + ingest rubrics file", + "pr_type": "task" + } + ] + }, + { + "github_handle": "bd317", + "email": "", + "name": "Benedikt", + "affiliation": "@ellamind", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 237, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/915", + "pr_title": "Fix Claude Code thinking blocks lost in ATIF trajectory conversion", + "pr_type": "other" + } + ] + }, + { + "github_handle": "beran-t", + "email": "", + "name": "Berry", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 5, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/627", + "pr_title": "Fix E2B exec() throwing on non-zero exit codes", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Waterpine", + "email": "sbian8@wisc.edu", + "name": "Song Bian", + "affiliation": "University of Wisconsin-Madison", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 25831, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/307", + "pr_title": "[Ready for Review] mmau adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "ekellbuch", + "email": "ekb@stanford.edu", + "name": "Kelly Buchanan", + "affiliation": "Stanford University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 48, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/853", + "pr_title": "Add Ollama configuration example", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "bochencs", + "email": "", + "name": "Bo Chen", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 1916, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/581", + "pr_title": "[Ready for review] Adapter: GAIA", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "kobe0938", + "email": "xiaokunchen0@gmail.com", + "name": "Xiaokun Chen", + "affiliation": "Stanford University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 1761, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/257", + "pr_title": "[Ready for Review - fixing] Adapter: Humanevalfix", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "cliangyu", + "email": "", + "name": "Leon Chen", + "affiliation": "Stanford University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 1197, + "total_deletions": 19, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/26", + "pr_title": "Migrate 11 agents from terminal-bench to sandboxes", + "pr_type": "other" + } + ] + }, + { + "github_handle": "santaboi", + "email": "", + "name": "Jeffrey Yang Fan Chiang", + "affiliation": "University of Maryland College Park", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 1, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/104", + "pr_title": "Fix Terminal Bench 2.0 description typo", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Hangzhi", + "email": "yd223@cornell.edu", + "name": "Yiwei Dai", + "affiliation": "Cornell University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 500, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 1768, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/346", + "pr_title": "[Ready for review -Final Fix] Quixbugs adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Rebabit", + "email": "rd629@cornell.edu", + "name": "Rebecca Deng", + "affiliation": "Cornell Tech", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 1883, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/311", + "pr_title": "[Ready for Review - Final Fix] Adapter: MMMLU", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "dzorlu", + "email": "", + "name": "Deniz", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 6, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/232", + "pr_title": "feat: store all messages", + "pr_type": "other" + } + ] + }, + { + "github_handle": "dines-rl", + "email": "", + "name": "Alexander Dines", + "affiliation": "Run Loop", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 275, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/46", + "pr_title": "Add Runloop Environment", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Dongzhikang", + "email": "zhikang.dong.1@stonybrook.edu", + "name": "Zhikang Dong", + "affiliation": "Stony Brook University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 2140, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/89", + "pr_title": "adapter for Deveval", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "elainelau-hs", + "email": "", + "name": "elainelau-hs", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 35, + "total_deletions": 20, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/1021", + "pr_title": "opencode: register model in opencode config to avoid ProviderModelNotFoundError", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "ifoukarakis", + "email": "", + "name": "Ioannis Foukarakis", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 5, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/323", + "pr_title": "fix: default registry URL reference", + "pr_type": "other" + } + ] + }, + { + "github_handle": "avelanarius", + "email": "piotr@quesma.com", + "name": "Piotr Grabowski", + "affiliation": "Quesma", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 16, + "total_deletions": 16, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/275", + "pr_title": "[Adapter] Update CompileBench adapter, fixing oracle on Daytona", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "KunWuLuan", + "email": "kunwuluan@gmail.com", + "name": "GreenHand", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 4, + "total_deletions": 3, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/658", + "pr_title": "fix(swe_agent): support multiple API key variables from model name", + "pr_type": "other" + } + ] + }, + { + "github_handle": "tyler-griggs", + "email": "", + "name": "Tyler Griggs", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 2, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/21", + "pr_title": "Update .gitignore", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Guangy627", + "email": "", + "name": "Guangy627", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 2, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/485", + "pr_title": "Fix/trajectorydump", + "pr_type": "other" + } + ] + }, + { + "github_handle": "nandatheguntupalli", + "email": "", + "name": "Nanda Guntupalli", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 74, + "total_deletions": 11, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/399", + "pr_title": "Enhance documentation and structure in CLAUDE.md and README.md", + "pr_type": "other" + } + ] + }, + { + "github_handle": "davidheineman", + "email": "davidh@allenai.org", + "name": "David Heineman", + "affiliation": "Allen Institute for AI", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 8656, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/100", + "pr_title": "[Ready for Review] Adapter: SWE-Lancer", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "HOU-SZ", + "email": "", + "name": "Shizheng Hou", + "affiliation": "National University of Singapore", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 257013, + "total_deletions": 251746, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/415", + "pr_title": "[Ready for Review] Adapter: BIRD-Bench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "huangkicn", + "email": "huangkicn@gmail.com", + "name": "Ke Huang", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 218, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/737", + "pr_title": "Add Amazon Bedrock support for Claude Code agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "kanazawa-asyncio", + "email": "", + "name": "Kanaza", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 1208, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/376", + "pr_title": "feat(registry): add Alibaba terminal-bench-pro dataset", + "pr_type": "other" + } + ] + }, + { + "github_handle": "rohitpaulk", + "email": "rohitpaulk@gmail.com", + "name": "Paul Kuruvilla", + "affiliation": "@codecrafters-io", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 23, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/499", + "pr_title": "[Ready for review] Raise RuntimeError for agent setup failures", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Evangelink", + "email": "evangelink@gmail.com", + "name": "Amaury Lev\u00e9", + "affiliation": "@microsoft ", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 285, + "total_deletions": 99, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/525", + "pr_title": "Add support for running harbor on Windows", + "pr_type": "other" + } + ] + }, + { + "github_handle": "AlienKevin", + "email": "", + "name": "Kevin Xiang Li", + "affiliation": "Stanford University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 4572, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/628", + "pr_title": "[Ready for Review] Adapter: MedAgentBench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "likaixin2000", + "email": "likaixin@u.nus.edu", + "name": "Kaixin Li", + "affiliation": "National University of Singapore", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 2, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/513", + "pr_title": "Fix error message formatting for invalid agent names", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "xdotli", + "email": "xiangyi@benchflow.ai", + "name": "Xiangyi Li", + "affiliation": "@benchflow-ai", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 4, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/459", + "pr_title": "fix(claude-code): CLAUDE_CONFIG_DIR giving errors for accessing .claude folder", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "lijrjyan", + "email": "", + "name": "lijrjyan", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 67264, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/414", + "pr_title": "[Ready for Review] Adapter: KUMO", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "EazyReal", + "email": "maxwill@meta.com", + "name": "Maxwill Lin", + "affiliation": "@facebook", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 11, + "total_deletions": 5, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/1039", + "pr_title": "Fix agent install scripts failing when uv env file doesn't exist", + "pr_type": "other" + } + ] + }, + { + "github_handle": "junhongmit", + "email": "junhonghust@gmail.com", + "name": "Junhong Lin", + "affiliation": "Massachusetts Institute of Technology", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 3521, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/97", + "pr_title": "[Adapter] Adding USACO Adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "xianliu", + "email": "lxjsj@fedoraproject.org", + "name": "Xian Liu", + "affiliation": "Meetchances", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 2116, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/402", + "pr_title": "[Ready for Review] Add crustbench adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "liyuyun-lyy", + "email": "", + "name": "liyuyun-lyy", + "affiliation": "Alibaba", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 1, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/168", + "pr_title": "fix: use yolo mode to pass hello world test", + "pr_type": "engineering" + } + ] + }, + { + "github_handle": "orfeas-menis", + "email": "menisorfeas@gmail.com", + "name": "Orfeas Menis Mastromichalakis", + "affiliation": "Instituto de Telecomunica\u00e7\u00f5es", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 887, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/149", + "pr_title": "Adapter for AIME", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "minjie-cohere", + "email": "", + "name": "Minjie", + "affiliation": "Cohere", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 284, + "total_deletions": 12, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/887", + "pr_title": "Fix silent tmux send-keys failure on long commands", + "pr_type": "other" + } + ] + }, + { + "github_handle": "neubig", + "email": "", + "name": "Graham Neubig", + "affiliation": "Carnegie Mellon University / All Hands AI", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 709, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/738", + "pr_title": "Add OpenHands v1 SDK agent adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "robinnewhouse", + "email": "", + "name": "Robin Newhouse", + "affiliation": "Cline", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 0, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/803", + "pr_title": "cline: remove unsupported 'cline instance kill -a' command", + "pr_type": "other" + } + ] + }, + { + "github_handle": "omi-n", + "email": "nabilomi@cs.washington.edu", + "name": "Nabil Omi", + "affiliation": "University of Washington", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 1771, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/99", + "pr_title": "[Adapter] Add mlgym-bench adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "pashpashpash", + "email": "nik@cline.bot", + "name": "pashpashpash", + "affiliation": "vault77.ai", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 178, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/198", + "pr_title": "cline cli integration", + "pr_type": "other" + } + ] + }, + { + "github_handle": "dpedchenko", + "email": "", + "name": "Dmitrii Pedchenko", + "affiliation": "FAIR @ Meta MSL", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 7, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/194", + "pr_title": "Minor change to Modal backend", + "pr_type": "other" + } + ] + }, + { + "github_handle": "rootCircle", + "email": "", + "name": "Lab Rat", + "affiliation": "@uber, @iiitl ", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 40, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/343", + "pr_title": "Fix: normalize `--path .` to absolute to prevent invalid Docker tags", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Riatre", + "email": "", + "name": "Riatre", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 1, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/886", + "pr_title": "Do not escape value of docker exec `-e` arguments", + "pr_type": "other" + } + ] + }, + { + "github_handle": "MarcoRossignoli", + "email": "", + "name": "Marco Rossignoli", + "affiliation": "@microsoft", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 9, + "total_deletions": 2, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/507", + "pr_title": "Support large dataset downloads on Windows", + "pr_type": "other" + } + ] + }, + { + "github_handle": "emrousselle", + "email": "", + "name": "Emmanuel Rousselle", + "affiliation": "Hashicorp", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 2, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/986", + "pr_title": "Add support for Openrouter (OPENROUTER_API_KEY) in OpenCode agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "asadoughi", + "email": "", + "name": "Amir Sadoughi", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 194, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/640", + "pr_title": "Support passing arbitrary env vars", + "pr_type": "other" + } + ] + }, + { + "github_handle": "ssatia", + "email": "", + "name": "Sanyam Satia", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 100, + "total_deletions": 3, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/1022", + "pr_title": "Add reasoning_effort support (--effort flag) to Claude Code agent", + "pr_type": "other" + } + ] + }, + { + "github_handle": "self-supervisor", + "email": "", + "name": "self-supervisor", + "affiliation": "@VmaxAI ", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 6266, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/563", + "pr_title": "Vmax tasks", + "pr_type": "task" + } + ] + }, + { + "github_handle": "neverSettles", + "email": "", + "name": "Chris Settles", + "affiliation": "Operative AI, Inc", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 1748, + "total_deletions": 122, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/549", + "pr_title": "ATIF 1.5->1.6: Support multimodal trajectories", + "pr_type": "other" + } + ] + }, + { + "github_handle": "Michaelsqj", + "email": "shenqijia11@gmail.com", + "name": "Qijia Shen", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 8263, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/577", + "pr_title": "add seta env to registry.json", + "pr_type": "other" + } + ] + }, + { + "github_handle": "killthefullmoon", + "email": "killthefullmoon@gmail.com", + "name": "Hui Shen", + "affiliation": "University of Michigan", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 7849, + "total_deletions": 904, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/432", + "pr_title": "[Ready for Review] Adapter: DS1000", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "ethanlshen", + "email": "ethans03@cs.washington.edu", + "name": "Ethan Shen", + "affiliation": "University of Washington", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 9, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/94", + "pr_title": "Added summarization toggle", + "pr_type": "other" + } + ] + }, + { + "github_handle": "WingchunSiu", + "email": "", + "name": "Michael Siu", + "affiliation": "University of Southern California", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 21, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/652", + "pr_title": "Add llm_call_kwargs to Terminus2 for per-call LLM parameter", + "pr_type": "other" + } + ] + }, + { + "github_handle": "vatsj", + "email": "jacobstavrianos@gmail.com", + "name": "Jacob Stavrianos", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 3, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/481", + "pr_title": "suppress daytona container auto-shutdown", + "pr_type": "other" + } + ] + }, + { + "github_handle": "steadyworksai", + "email": "founders@steadyworks.ai", + "name": "Steadyworks", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 13, + "total_deletions": 13, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/837", + "pr_title": "fix: use line-buffered tee for real-time agent log monitoring", + "pr_type": "other" + } + ] + }, + { + "github_handle": "bstee615", + "email": "benjaminjsteenhoek@gmail.com", + "name": "Benjamin Steenhoek", + "affiliation": "Microsoft", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 43, + "total_deletions": 20, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/269", + "pr_title": "Support Azure OpenAI endpoints for LiteLLM agents", + "pr_type": "other" + } + ] + }, + { + "github_handle": "speed1313", + "email": "sugiura.issa.q29@kyoto-u.jp", + "name": "Issa Sugiura", + "affiliation": "Kyoto University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 26791, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/530", + "pr_title": "[Ready for Review] Adapter: SimpleQA", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "ThomAub", + "email": "github.thomaub@gmail.com", + "name": "Thomas", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 15, + "total_deletions": 12, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/1042", + "pr_title": "Improve Harbor CLI startup time with lazy imports", + "pr_type": "other" + } + ] + }, + { + "github_handle": "tmacie", + "email": "", + "name": "tmacie", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 6, + "total_deletions": 8, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/586", + "pr_title": "Fix modal gpu selection", + "pr_type": "other" + } + ] + }, + { + "github_handle": "aht", + "email": "anh.hai.trinh@gmail.com", + "name": "Hai-Anh Trinh", + "affiliation": "Independent", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 5038, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/256", + "pr_title": "[Ready for Review] Adapter: REASONING GYM ", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "audreycs", + "email": "yuxin.wang.gr@dartmouth.edu", + "name": "Yuxin Wang", + "affiliation": "Dartmouth College", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 2158, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/88", + "pr_title": "[Adapter] Adding Livecodebench adpter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "harvenstar", + "email": "", + "name": "Hudson Xing", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 3859, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/629", + "pr_title": "[Ready for Review] Adapter: DABstep", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "hanxu12", + "email": "hanxu8@illinois.edu", + "name": "Han Xu", + "affiliation": "University of Illinois Urbana-Champaign", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 7030, + "total_deletions": 1, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/380", + "pr_title": "[Ready for Review] Adapter: LawBench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "EstelYang", + "email": "ypyangrui@pku.edu.cn", + "name": "Rui Yang", + "affiliation": "Peking University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 68583, + "total_deletions": 67032, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/351", + "pr_title": "[Ready for Review] Adapter: QCircuitBench", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "MichaelY310", + "email": "yang335@ucsb.edu", + "name": "Michael Yang", + "affiliation": "UC Santa Barbara", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 15684, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/96", + "pr_title": "[Ready For Review] Adding SWTBench Adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "Yiozolm", + "email": "m202310581@xs.ustb.edu.cn", + "name": "Fangzhou Yi", + "affiliation": "University of Science and Technology Beijing", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 10, + "total_deletions": 4, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/464", + "pr_title": "Add support for GLM models", + "pr_type": "other" + } + ] + }, + { + "github_handle": "zjysteven", + "email": "", + "name": "Jingyang Zhang", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 21403, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/846", + "pr_title": "Add TermiGen environments (https://github.com/ucsb-mlsec/terminal-bench-env)", + "pr_type": "other" + } + ] + }, + { + "github_handle": "robertzhidealx", + "email": "robertz@cs.utexas.edu", + "name": "Robert Zhang", + "affiliation": "University of Texas at Austin", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 9252, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/249", + "pr_title": "Adapters: SWE-bench Pro", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "XuandongZhao", + "email": "csxuandongzhao@gmail.com", + "name": "Xuandong Zhao", + "affiliation": "UC Berkeley", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 1723, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/264", + "pr_title": "[Adapter] GPQA-Diamond Adapter", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "richardzhuang0412", + "email": "", + "name": "Richard Zhuang", + "affiliation": "", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 0, + "non_adapter_pr_count": 1, + "total_additions": 91, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/181", + "pr_title": "Added patching fix for openhand when handling together context limit error", + "pr_type": "other" + } + ] + }, + { + "github_handle": "terryyz", + "email": "terryzhuo25@gmail.com", + "name": "Terry Yue Zhuo", + "affiliation": "Monash University", + "role": "Contributor", + "rank": 0, + "adapter_rank": 0, + "pr_count": 1, + "adapter_pr_count": 1, + "non_adapter_pr_count": 0, + "total_additions": 10081, + "total_deletions": 0, + "pr_list": [ + { + "pr_url": "https://github.com/harbor-framework/harbor/pull/330", + "pr_title": "[Ready for Review - fixing] Adapter: BigCodeBench-Hard", + "pr_type": "adapter" + } + ] + }, + { + "github_handle": "ludwigschmidt", + "email": "ludwigschmidt2@gmail.com", + "name": "Ludwig Schmidt", + "affiliation": "Stanford University", + "role": "Advisor", + "rank": -100, + "adapter_rank": 0, + "pr_count": 0, + "adapter_pr_count": 0, + "non_adapter_pr_count": 0, + "total_additions": 0, + "total_deletions": 0, + "pr_list": [] + } +] \ No newline at end of file diff --git a/raw_github_users_data.json b/utils/contributors/data/raw_github_users_data.json similarity index 75% rename from raw_github_users_data.json rename to utils/contributors/data/raw_github_users_data.json index 8359227..0c0eaec 100644 --- a/raw_github_users_data.json +++ b/utils/contributors/data/raw_github_users_data.json @@ -11,12 +11,24 @@ "name": "Akshay Venkataraman", "affiliation": "" }, + { + "github_handle": "AlienKevin", + "email": "", + "name": "Kevin Xiang Li", + "affiliation": "Stanford University" + }, { "github_handle": "Anjiang-Wei", "email": "", "name": "Anjiang Wei", "affiliation": "Stanford University" }, + { + "github_handle": "BauerJustin", + "email": "", + "name": "Justin Bauer", + "affiliation": "@snorkel-ai " + }, { "github_handle": "CharlieFRuan", "email": "", @@ -41,6 +53,12 @@ "name": "Zhikang Dong", "affiliation": "" }, + { + "github_handle": "EazyReal", + "email": "maxwill@meta.com", + "name": "Maxwill Lin", + "affiliation": "@facebook" + }, { "github_handle": "EstelYang", "email": "", @@ -53,12 +71,30 @@ "name": "EtashGuha", "affiliation": "" }, + { + "github_handle": "Evangelink", + "email": "evangelink@gmail.com", + "name": "Amaury Lev\u00e9", + "affiliation": "@microsoft " + }, + { + "github_handle": "George-ao", + "email": "", + "name": "Yuyi Ao", + "affiliation": "" + }, { "github_handle": "Guangy627", "email": "", "name": "Guangy627", "affiliation": "" }, + { + "github_handle": "HOU-SZ", + "email": "", + "name": "Shizheng Hou", + "affiliation": "National University of Singapore" + }, { "github_handle": "HaishuoFang", "email": "fanghaishuo@gmail.com", @@ -119,12 +155,24 @@ "name": "Rebecca Deng", "affiliation": "" }, + { + "github_handle": "Riatre", + "email": "", + "name": "Riatre", + "affiliation": "" + }, { "github_handle": "RishiDesai", "email": "", "name": "Rishi Desai", "affiliation": "" }, + { + "github_handle": "RyanMarten", + "email": "", + "name": "Ryan Marten", + "affiliation": "" + }, { "github_handle": "Slimshilin", "email": "", @@ -149,6 +197,12 @@ "name": "TheMikeMerrill", "affiliation": "" }, + { + "github_handle": "ThomAub", + "email": "github.thomaub@gmail.com", + "name": "Thomas", + "affiliation": "" + }, { "github_handle": "Waterpine", "email": "sbian8@wisc.edu", @@ -191,6 +245,12 @@ "name": "ai-jz", "affiliation": "" }, + { + "github_handle": "alexandraabbas", + "email": "", + "name": "Alexandra Abbas", + "affiliation": "" + }, { "github_handle": "alexgshaw", "email": "alexgshaw64@gmail.com", @@ -203,6 +263,18 @@ "name": "Anish Athalye", "affiliation": "@joinhandshake" }, + { + "github_handle": "arafatkatze", + "email": "arafat.da.khan@gmail.com", + "name": "Ara", + "affiliation": "Cline" + }, + { + "github_handle": "asadoughi", + "email": "", + "name": "Amir Sadoughi", + "affiliation": "" + }, { "github_handle": "audreycs", "email": "", @@ -215,12 +287,24 @@ "name": "Piotr Grabowski", "affiliation": "@QuesmaOrg" }, + { + "github_handle": "bd317", + "email": "", + "name": "Benedikt", + "affiliation": "@ellamind" + }, { "github_handle": "beran-t", "email": "", "name": "Berry", "affiliation": "" }, + { + "github_handle": "bochencs", + "email": "", + "name": "Bo Chen", + "affiliation": "" + }, { "github_handle": "bstee615", "email": "benjaminjsteenhoek@gmail.com", @@ -260,7 +344,7 @@ { "github_handle": "digitsisyph", "email": "", - "name": "Gary?", + "name": "digitsi", "affiliation": "" }, { @@ -287,6 +371,24 @@ "name": "Deniz", "affiliation": "" }, + { + "github_handle": "ekellbuch", + "email": "", + "name": "E. Kelly Buchanan", + "affiliation": "" + }, + { + "github_handle": "elainelau-hs", + "email": "", + "name": "elainelau-hs", + "affiliation": "" + }, + { + "github_handle": "emrousselle", + "email": "", + "name": "Emmanuel Rousselle", + "affiliation": "Hashicorp" + }, { "github_handle": "ethanlshen", "email": "ethans03@cs.washington.edu", @@ -311,6 +413,18 @@ "name": "Harsh Raj", "affiliation": "Khoury College, Northeastern University " }, + { + "github_handle": "harvenstar", + "email": "", + "name": "Hudson Xing", + "affiliation": "" + }, + { + "github_handle": "huangkicn", + "email": "huangkicn@gmail.com", + "name": "Ke Huang", + "affiliation": "" + }, { "github_handle": "ibercovich", "email": "", @@ -341,6 +455,12 @@ "name": "Joan Cabezas", "affiliation": "" }, + { + "github_handle": "jrvb-rl", + "email": "rob@runloop.ai", + "name": "Rob von Behren", + "affiliation": "" + }, { "github_handle": "junhongmit", "email": "junhonghust@gmail.com", @@ -363,7 +483,7 @@ "github_handle": "kobe0938", "email": "xiaokunchen0@gmail.com", "name": "Kobe Chen", - "affiliation": "Stanford U" + "affiliation": "Stanford Univerisity" }, { "github_handle": "li-boxuan", @@ -371,6 +491,12 @@ "name": "Boxuan Li", "affiliation": "Microsoft" }, + { + "github_handle": "lijrjyan", + "email": "", + "name": "lijrjyan", + "affiliation": "" + }, { "github_handle": "likaixin2000", "email": "likaixin@u.nus.edu", @@ -399,7 +525,7 @@ "github_handle": "luxinyu1", "email": "", "name": "Solaris", - "affiliation": "ISCAS" + "affiliation": "Institute of Software, Chinese Academy of Sciences" }, { "github_handle": "michaelrglass", @@ -413,6 +539,12 @@ "name": "Przemys\u0142aw Hejman", "affiliation": "blindroot.com" }, + { + "github_handle": "minjie-cohere", + "email": "", + "name": "Minjie", + "affiliation": "Cohere" + }, { "github_handle": "nandatheguntupalli", "email": "", @@ -425,6 +557,12 @@ "name": "Negin Raoof", "affiliation": "UC Berkeley" }, + { + "github_handle": "neubig", + "email": "", + "name": "Graham Neubig", + "affiliation": "Carnegie Mellon University / All Hands AI" + }, { "github_handle": "neverSettles", "email": "", @@ -440,7 +578,7 @@ { "github_handle": "omi-n", "email": "", - "name": "nabil", + "name": "Nabil Omi", "affiliation": "University of Washington, Microsoft" }, { @@ -485,6 +623,12 @@ "name": "Robert Zhang", "affiliation": "" }, + { + "github_handle": "robinnewhouse", + "email": "", + "name": "Robin Newhouse", + "affiliation": "Cline" + }, { "github_handle": "rohitpaulk", "email": "rohitpaulk@gmail.com", @@ -503,10 +647,16 @@ "name": "Rotem Tamir", "affiliation": "honeybadge.co" }, + { + "github_handle": "rynewang", + "email": "", + "name": "Ruiyang Wang", + "affiliation": "" + }, { "github_handle": "santaboi", "email": "", - "name": "Yang Fan Chiang", + "name": "Jeffrey Yang Fan Chiang", "affiliation": "University of Maryland College Park" }, { @@ -515,12 +665,30 @@ "name": "self-supervisor", "affiliation": "@VmaxAI " }, + { + "github_handle": "speed1313", + "email": "", + "name": "Issa Sugiura", + "affiliation": "Kyoto University" + }, + { + "github_handle": "ssatia", + "email": "", + "name": "Sanyam Satia", + "affiliation": "" + }, { "github_handle": "stared", "email": "pmigdal@gmail.com", "name": "Piotr Migda\u0142", "affiliation": "ex: Quantum Flytrap CTO & cofounder" }, + { + "github_handle": "steadyworksai", + "email": "founders@steadyworks.ai", + "name": "Steadyworks", + "affiliation": "" + }, { "github_handle": "terryyz", "email": "terryzhuo25@gmail.com", @@ -568,5 +736,17 @@ "email": "lxjsj@fedoraproject.org", "name": "Xian Liu", "affiliation": "Meetchances/ex-Bytedance/ex-Redhat" + }, + { + "github_handle": "xiaoxiangmoe", + "email": "", + "name": "ZHAO Jin-Xiang", + "affiliation": "" + }, + { + "github_handle": "zjysteven", + "email": "", + "name": "Jingyang Zhang", + "affiliation": "" } ] \ No newline at end of file diff --git a/raw_pr_data.json b/utils/contributors/data/raw_pr_data.json similarity index 59% rename from raw_pr_data.json rename to utils/contributors/data/raw_pr_data.json index ddb8c91..53ab6d7 100644 --- a/raw_pr_data.json +++ b/utils/contributors/data/raw_pr_data.json @@ -1,7 +1,493 @@ [ + { + "pr_number": 1042, + "pr_url": "https://github.com/harbor-framework/harbor/pull/1042", + "author_github_handle": "ThomAub", + "additions": 15, + "deletions": 12, + "pr_title": "Improve Harbor CLI startup time with lazy imports", + "pr_type": "other" + }, + { + "pr_number": 1039, + "pr_url": "https://github.com/harbor-framework/harbor/pull/1039", + "author_github_handle": "EazyReal", + "additions": 11, + "deletions": 5, + "pr_title": "Fix agent install scripts failing when uv env file doesn't exist", + "pr_type": "other" + }, + { + "pr_number": 1022, + "pr_url": "https://github.com/harbor-framework/harbor/pull/1022", + "author_github_handle": "ssatia", + "additions": 100, + "deletions": 3, + "pr_title": "Add reasoning_effort support (--effort flag) to Claude Code agent", + "pr_type": "other" + }, + { + "pr_number": 1021, + "pr_url": "https://github.com/harbor-framework/harbor/pull/1021", + "author_github_handle": "elainelau-hs", + "additions": 35, + "deletions": 20, + "pr_title": "opencode: register model in opencode config to avoid ProviderModelNotFoundError", + "pr_type": "engineering" + }, + { + "pr_number": 1020, + "pr_url": "https://github.com/harbor-framework/harbor/pull/1020", + "author_github_handle": "alexandraabbas", + "additions": 1359, + "deletions": 1359, + "pr_title": "Fix task paths in registry.json for swtbench-verified and swe-lancer-diamond", + "pr_type": "task" + }, + { + "pr_number": 1019, + "pr_url": "https://github.com/harbor-framework/harbor/pull/1019", + "author_github_handle": "arafatkatze", + "additions": 455, + "deletions": 6, + "pr_title": "cline-cli: recover usage from task history", + "pr_type": "task" + }, + { + "pr_number": 1010, + "pr_url": "https://github.com/harbor-framework/harbor/pull/1010", + "author_github_handle": "RyanMarten", + "additions": 89, + "deletions": 173, + "pr_title": "Give quality checker agent access to full task directory via tools", + "pr_type": "task" + }, + { + "pr_number": 1009, + "pr_url": "https://github.com/harbor-framework/harbor/pull/1009", + "author_github_handle": "Ternura143", + "additions": 815, + "deletions": 0, + "pr_title": "[Ready for Review] Add kimi-cli agent", + "pr_type": "other" + }, + { + "pr_number": 998, + "pr_url": "https://github.com/harbor-framework/harbor/pull/998", + "author_github_handle": "Ternura143", + "additions": 293091, + "deletions": 292997, + "pr_title": "[Ready for Review] Standardize registry.json, add CI check, and fix sync", + "pr_type": "engineering" + }, + { + "pr_number": 989, + "pr_url": "https://github.com/harbor-framework/harbor/pull/989", + "author_github_handle": "Chesars", + "additions": 2, + "deletions": 2, + "pr_title": "Fix typos in README.md", + "pr_type": "other" + }, + { + "pr_number": 986, + "pr_url": "https://github.com/harbor-framework/harbor/pull/986", + "author_github_handle": "emrousselle", + "additions": 2, + "deletions": 0, + "pr_title": "Add support for Openrouter (OPENROUTER_API_KEY) in OpenCode agent", + "pr_type": "other" + }, + { + "pr_number": 983, + "pr_url": "https://github.com/harbor-framework/harbor/pull/983", + "author_github_handle": "Ternura143", + "additions": 35, + "deletions": 16, + "pr_title": "[Ready for Review] Fix pagination bug in sync_registry_to_supabase", + "pr_type": "other" + }, + { + "pr_number": 973, + "pr_url": "https://github.com/harbor-framework/harbor/pull/973", + "author_github_handle": "Ternura143", + "additions": 38529, + "deletions": 0, + "pr_title": "[Ready for Review] Restore 9 deleted dataset entries", + "pr_type": "other" + }, + { + "pr_number": 971, + "pr_url": "https://github.com/harbor-framework/harbor/pull/971", + "author_github_handle": "RyanMarten", + "additions": 64, + "deletions": 1, + "pr_title": "Strip canary markers from instruction text", + "pr_type": "other" + }, + { + "pr_number": 967, + "pr_url": "https://github.com/harbor-framework/harbor/pull/967", + "author_github_handle": "josancamon19", + "additions": 1332, + "deletions": 65, + "pr_title": "Add first-class Tinker LLM backend for Terminus-2", + "pr_type": "other" + }, + { + "pr_number": 963, + "pr_url": "https://github.com/harbor-framework/harbor/pull/963", + "author_github_handle": "xiaoxiangmoe", + "additions": 15, + "deletions": 2, + "pr_title": "Add `--agent-env` support to all agents", + "pr_type": "other" + }, + { + "pr_number": 949, + "pr_url": "https://github.com/harbor-framework/harbor/pull/949", + "author_github_handle": "George-ao", + "additions": 40, + "deletions": 2, + "pr_title": "Fix Claude Code trajectory JSONL", + "pr_type": "other" + }, + { + "pr_number": 915, + "pr_url": "https://github.com/harbor-framework/harbor/pull/915", + "author_github_handle": "bd317", + "additions": 237, + "deletions": 1, + "pr_title": "Fix Claude Code thinking blocks lost in ATIF trajectory conversion", + "pr_type": "other" + }, + { + "pr_number": 911, + "pr_url": "https://github.com/harbor-framework/harbor/pull/911", + "author_github_handle": "alexgshaw", + "additions": 799, + "deletions": 20, + "pr_title": "Enable skills in agents.", + "pr_type": "other" + }, + { + "pr_number": 905, + "pr_url": "https://github.com/harbor-framework/harbor/pull/905", + "author_github_handle": "Ternura143", + "additions": 9, + "deletions": 1, + "pr_title": "[Ready For Review] Fix Claude Code double-counting input tokens", + "pr_type": "other" + }, + { + "pr_number": 902, + "pr_url": "https://github.com/harbor-framework/harbor/pull/902", + "author_github_handle": "xiaoxiangmoe", + "additions": 62, + "deletions": 49, + "pr_title": "Lock ruff and ty version", + "pr_type": "other" + }, + { + "pr_number": 900, + "pr_url": "https://github.com/harbor-framework/harbor/pull/900", + "author_github_handle": "luxinyu1", + "additions": 4, + "deletions": 0, + "pr_title": "Pass through CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING env var to claude code agent", + "pr_type": "other" + }, + { + "pr_number": 898, + "pr_url": "https://github.com/harbor-framework/harbor/pull/898", + "author_github_handle": "anishathalye", + "additions": 17, + "deletions": 7, + "pr_title": "Fix MCP support for Cline", + "pr_type": "other" + }, + { + "pr_number": 887, + "pr_url": "https://github.com/harbor-framework/harbor/pull/887", + "author_github_handle": "minjie-cohere", + "additions": 284, + "deletions": 12, + "pr_title": "Fix silent tmux send-keys failure on long commands", + "pr_type": "other" + }, + { + "pr_number": 886, + "pr_url": "https://github.com/harbor-framework/harbor/pull/886", + "author_github_handle": "Riatre", + "additions": 1, + "deletions": 1, + "pr_title": "Do not escape value of docker exec `-e` arguments", + "pr_type": "other" + }, + { + "pr_number": 885, + "pr_url": "https://github.com/harbor-framework/harbor/pull/885", + "author_github_handle": "michaelrglass", + "additions": 73, + "deletions": 6, + "pr_title": "View image artifacts in harbor view", + "pr_type": "other" + }, + { + "pr_number": 876, + "pr_url": "https://github.com/harbor-framework/harbor/pull/876", + "author_github_handle": "jrvb-rl", + "additions": 26, + "deletions": 8, + "pr_title": "Improve Runloop blueprint handling.", + "pr_type": "other" + }, + { + "pr_number": 870, + "pr_url": "https://github.com/harbor-framework/harbor/pull/870", + "author_github_handle": "xiaoxiangmoe", + "additions": 13, + "deletions": 1, + "pr_title": "Add `--environment-import-path` to job config", + "pr_type": "engineering" + }, + { + "pr_number": 862, + "pr_url": "https://github.com/harbor-framework/harbor/pull/862", + "author_github_handle": "jrvb-rl", + "additions": 70, + "deletions": 23, + "pr_title": "Improve error handling and implement correct delete behavior for runloop environment.", + "pr_type": "other" + }, + { + "pr_number": 861, + "pr_url": "https://github.com/harbor-framework/harbor/pull/861", + "author_github_handle": "Chesars", + "additions": 1, + "deletions": 1, + "pr_title": "Fix typo in adapter template README", + "pr_type": "adapter" + }, + { + "pr_number": 859, + "pr_url": "https://github.com/harbor-framework/harbor/pull/859", + "author_github_handle": "anishathalye", + "additions": 28, + "deletions": 0, + "pr_title": "Add type checking to CI", + "pr_type": "engineering" + }, + { + "pr_number": 857, + "pr_url": "https://github.com/harbor-framework/harbor/pull/857", + "author_github_handle": "Ternura143", + "additions": 968, + "deletions": 0, + "pr_title": "[Ready for Review] Add automated adapter review bot for PR validation", + "pr_type": "adapter" + }, + { + "pr_number": 853, + "pr_url": "https://github.com/harbor-framework/harbor/pull/853", + "author_github_handle": "ekellbuch", + "additions": 48, + "deletions": 0, + "pr_title": "Add Ollama configuration example", + "pr_type": "engineering" + }, + { + "pr_number": 846, + "pr_url": "https://github.com/harbor-framework/harbor/pull/846", + "author_github_handle": "zjysteven", + "additions": 21403, + "deletions": 0, + "pr_title": "Add TermiGen environments (https://github.com/ucsb-mlsec/terminal-bench-env)", + "pr_type": "other" + }, + { + "pr_number": 837, + "pr_url": "https://github.com/harbor-framework/harbor/pull/837", + "author_github_handle": "steadyworksai", + "additions": 13, + "deletions": 13, + "pr_title": "fix: use line-buffered tee for real-time agent log monitoring", + "pr_type": "other" + }, + { + "pr_number": 817, + "pr_url": "https://github.com/harbor-framework/harbor/pull/817", + "author_github_handle": "neginraoof", + "additions": 607, + "deletions": 0, + "pr_title": "Add OT-TerminalBench-Dev dataset (100 tasks)", + "pr_type": "task" + }, + { + "pr_number": 815, + "pr_url": "https://github.com/harbor-framework/harbor/pull/815", + "author_github_handle": "BauerJustin", + "additions": 557, + "deletions": 126, + "pr_title": "Update tasks check to use Claude Agents SDK + ingest rubrics file", + "pr_type": "task" + }, + { + "pr_number": 804, + "pr_url": "https://github.com/harbor-framework/harbor/pull/804", + "author_github_handle": "xiaoxiangmoe", + "additions": 1, + "deletions": 0, + "pr_title": "Set pull_policy to build in docker-compose build", + "pr_type": "engineering" + }, + { + "pr_number": 803, + "pr_url": "https://github.com/harbor-framework/harbor/pull/803", + "author_github_handle": "robinnewhouse", + "additions": 0, + "deletions": 1, + "pr_title": "cline: remove unsupported 'cline instance kill -a' command", + "pr_type": "other" + }, + { + "pr_number": 797, + "pr_url": "https://github.com/harbor-framework/harbor/pull/797", + "author_github_handle": "Ternura143", + "additions": 3, + "deletions": 4, + "pr_title": "[Ready for Review] Update parity comparison table in adapter readme template", + "pr_type": "adapter" + }, + { + "pr_number": 795, + "pr_url": "https://github.com/harbor-framework/harbor/pull/795", + "author_github_handle": "xiaoxiangmoe", + "additions": 142, + "deletions": 17, + "pr_title": "Add specific phase timeout multipliers", + "pr_type": "engineering" + }, + { + "pr_number": 780, + "pr_url": "https://github.com/harbor-framework/harbor/pull/780", + "author_github_handle": "crystalxyz", + "additions": 5, + "deletions": 2, + "pr_title": "[Ready for Review] Update adapter readme template for authors and contributions section", + "pr_type": "adapter" + }, + { + "pr_number": 777, + "pr_url": "https://github.com/harbor-framework/harbor/pull/777", + "author_github_handle": "xiaoxiangmoe", + "additions": 5, + "deletions": 5, + "pr_title": "Wait for the actual container startup in DockerEnvironment.start", + "pr_type": "other" + }, + { + "pr_number": 776, + "pr_url": "https://github.com/harbor-framework/harbor/pull/776", + "author_github_handle": "xiaoxiangmoe", + "additions": 9, + "deletions": 16, + "pr_title": "Fix the bug that `| tee` in verifier call may hang forever", + "pr_type": "other" + }, + { + "pr_number": 772, + "pr_url": "https://github.com/harbor-framework/harbor/pull/772", + "author_github_handle": "alexgshaw", + "additions": 919, + "deletions": 115, + "pr_title": "Add comprehensive trajectory conversion for mini-swe-agent formats", + "pr_type": "engineering" + }, + { + "pr_number": 771, + "pr_url": "https://github.com/harbor-framework/harbor/pull/771", + "author_github_handle": "rynewang", + "additions": 3, + "deletions": 3, + "pr_title": "Fix hello-alpine reward.txt containing pytest output", + "pr_type": "engineering" + }, + { + "pr_number": 769, + "pr_url": "https://github.com/harbor-framework/harbor/pull/769", + "author_github_handle": "rynewang", + "additions": 1045, + "deletions": 232, + "pr_title": "Add Docker Compose (DinD) support for Daytona environment", + "pr_type": "other" + }, + { + "pr_number": 767, + "pr_url": "https://github.com/harbor-framework/harbor/pull/767", + "author_github_handle": "rynewang", + "additions": 3, + "deletions": 3, + "pr_title": "Fix hello-mcp example to use streamable-http transport", + "pr_type": "other" + }, + { + "pr_number": 757, + "pr_url": "https://github.com/harbor-framework/harbor/pull/757", + "author_github_handle": "xiaoxiangmoe", + "additions": 14, + "deletions": 14, + "pr_title": "Allow prompts starting with `-`", + "pr_type": "other" + }, + { + "pr_number": 755, + "pr_url": "https://github.com/harbor-framework/harbor/pull/755", + "author_github_handle": "xiaoxiangmoe", + "additions": 2, + "deletions": 2, + "pr_title": "add procps to prevent process crashes when claude-code call tree-kill", + "pr_type": "other" + }, + { + "pr_number": 738, + "pr_url": "https://github.com/harbor-framework/harbor/pull/738", + "author_github_handle": "neubig", + "additions": 709, + "deletions": 0, + "pr_title": "Add OpenHands v1 SDK agent adapter", + "pr_type": "adapter" + }, + { + "pr_number": 737, + "pr_url": "https://github.com/harbor-framework/harbor/pull/737", + "author_github_handle": "huangkicn", + "additions": 218, + "deletions": 4, + "pr_title": "Add Amazon Bedrock support for Claude Code agent", + "pr_type": "other" + }, + { + "pr_number": 722, + "pr_url": "https://github.com/harbor-framework/harbor/pull/722", + "author_github_handle": "xiaoxiangmoe", + "additions": 57, + "deletions": 33, + "pr_title": "Use `bach -c` rather than `bash -lc`", + "pr_type": "other" + }, + { + "pr_number": 705, + "pr_url": "https://github.com/harbor-framework/harbor/pull/705", + "author_github_handle": "josancamon19", + "additions": 42, + "deletions": 10, + "pr_title": "feat: add multi-job support to harbor jobs summarize", + "pr_type": "other" + }, { "pr_number": 700, - "pr_url": "https://github.com/laude-institute/harbor/pull/700", + "pr_url": "https://github.com/harbor-framework/harbor/pull/700", "author_github_handle": "lurf21", "additions": 1, "deletions": 3, @@ -10,7 +496,7 @@ }, { "pr_number": 686, - "pr_url": "https://github.com/laude-institute/harbor/pull/686", + "pr_url": "https://github.com/harbor-framework/harbor/pull/686", "author_github_handle": "CharlieFRuan", "additions": 5, "deletions": 8, @@ -19,7 +505,7 @@ }, { "pr_number": 662, - "pr_url": "https://github.com/laude-institute/harbor/pull/662", + "pr_url": "https://github.com/harbor-framework/harbor/pull/662", "author_github_handle": "jakozaur", "additions": 6722, "deletions": 6560, @@ -28,7 +514,7 @@ }, { "pr_number": 661, - "pr_url": "https://github.com/laude-institute/harbor/pull/661", + "pr_url": "https://github.com/harbor-framework/harbor/pull/661", "author_github_handle": "jakozaur", "additions": 6842, "deletions": 6560, @@ -37,7 +523,7 @@ }, { "pr_number": 658, - "pr_url": "https://github.com/laude-institute/harbor/pull/658", + "pr_url": "https://github.com/harbor-framework/harbor/pull/658", "author_github_handle": "KunWuLuan", "additions": 4, "deletions": 3, @@ -46,7 +532,7 @@ }, { "pr_number": 655, - "pr_url": "https://github.com/laude-institute/harbor/pull/655", + "pr_url": "https://github.com/harbor-framework/harbor/pull/655", "author_github_handle": "anishathalye", "additions": 174, "deletions": 2, @@ -55,7 +541,7 @@ }, { "pr_number": 653, - "pr_url": "https://github.com/laude-institute/harbor/pull/653", + "pr_url": "https://github.com/harbor-framework/harbor/pull/653", "author_github_handle": "CharlieFRuan", "additions": 125, "deletions": 2, @@ -64,7 +550,7 @@ }, { "pr_number": 652, - "pr_url": "https://github.com/laude-institute/harbor/pull/652", + "pr_url": "https://github.com/harbor-framework/harbor/pull/652", "author_github_handle": "WingchunSiu", "additions": 21, "deletions": 4, @@ -73,7 +559,7 @@ }, { "pr_number": 651, - "pr_url": "https://github.com/laude-institute/harbor/pull/651", + "pr_url": "https://github.com/harbor-framework/harbor/pull/651", "author_github_handle": "CharlieFRuan", "additions": 42, "deletions": 7, @@ -82,7 +568,7 @@ }, { "pr_number": 650, - "pr_url": "https://github.com/laude-institute/harbor/pull/650", + "pr_url": "https://github.com/harbor-framework/harbor/pull/650", "author_github_handle": "CharlieFRuan", "additions": 52, "deletions": 13, @@ -91,16 +577,25 @@ }, { "pr_number": 643, - "pr_url": "https://github.com/laude-institute/harbor/pull/643", + "pr_url": "https://github.com/harbor-framework/harbor/pull/643", "author_github_handle": "josancamon19", "additions": 18, "deletions": 4, "pr_title": "fix: Gemini CLI ATIF trajectory conversion for harbor view", "pr_type": "other" }, + { + "pr_number": 640, + "pr_url": "https://github.com/harbor-framework/harbor/pull/640", + "author_github_handle": "asadoughi", + "additions": 194, + "deletions": 4, + "pr_title": "Support passing arbitrary env vars", + "pr_type": "other" + }, { "pr_number": 638, - "pr_url": "https://github.com/laude-institute/harbor/pull/638", + "pr_url": "https://github.com/harbor-framework/harbor/pull/638", "author_github_handle": "StevenDillmann", "additions": 7, "deletions": 6, @@ -109,16 +604,52 @@ }, { "pr_number": 637, - "pr_url": "https://github.com/laude-institute/harbor/pull/637", + "pr_url": "https://github.com/harbor-framework/harbor/pull/637", "author_github_handle": "StevenDillmann", "additions": 0, "deletions": 1, "pr_title": "Remove version in CITATION.cff", "pr_type": "engineering" }, + { + "pr_number": 632, + "pr_url": "https://github.com/harbor-framework/harbor/pull/632", + "author_github_handle": "ZhengShenghan", + "additions": 10, + "deletions": 0, + "pr_title": "[FIX] add -max-turn support in claude adapter", + "pr_type": "adapter" + }, + { + "pr_number": 631, + "pr_url": "https://github.com/harbor-framework/harbor/pull/631", + "author_github_handle": "michaelrglass", + "additions": 46, + "deletions": 5, + "pr_title": "Support default values in env var templates", + "pr_type": "other" + }, + { + "pr_number": 629, + "pr_url": "https://github.com/harbor-framework/harbor/pull/629", + "author_github_handle": "harvenstar", + "additions": 3859, + "deletions": 0, + "pr_title": "[Ready for Review] Adapter: DABstep", + "pr_type": "adapter" + }, + { + "pr_number": 628, + "pr_url": "https://github.com/harbor-framework/harbor/pull/628", + "author_github_handle": "AlienKevin", + "additions": 4572, + "deletions": 0, + "pr_title": "[Ready for Review] Adapter: MedAgentBench", + "pr_type": "adapter" + }, { "pr_number": 627, - "pr_url": "https://github.com/laude-institute/harbor/pull/627", + "pr_url": "https://github.com/harbor-framework/harbor/pull/627", "author_github_handle": "beran-t", "additions": 5, "deletions": 1, @@ -127,7 +658,7 @@ }, { "pr_number": 603, - "pr_url": "https://github.com/laude-institute/harbor/pull/603", + "pr_url": "https://github.com/harbor-framework/harbor/pull/603", "author_github_handle": "alexgshaw", "additions": 548, "deletions": 35, @@ -136,7 +667,7 @@ }, { "pr_number": 593, - "pr_url": "https://github.com/laude-institute/harbor/pull/593", + "pr_url": "https://github.com/harbor-framework/harbor/pull/593", "author_github_handle": "CharlieFRuan", "additions": 0, "deletions": 6, @@ -145,7 +676,7 @@ }, { "pr_number": 592, - "pr_url": "https://github.com/laude-institute/harbor/pull/592", + "pr_url": "https://github.com/harbor-framework/harbor/pull/592", "author_github_handle": "CharlieFRuan", "additions": 0, "deletions": 4, @@ -154,7 +685,7 @@ }, { "pr_number": 589, - "pr_url": "https://github.com/laude-institute/harbor/pull/589", + "pr_url": "https://github.com/harbor-framework/harbor/pull/589", "author_github_handle": "dot-agi", "additions": 172, "deletions": 3, @@ -163,16 +694,34 @@ }, { "pr_number": 586, - "pr_url": "https://github.com/laude-institute/harbor/pull/586", + "pr_url": "https://github.com/harbor-framework/harbor/pull/586", "author_github_handle": "tmacie", "additions": 6, "deletions": 8, "pr_title": "Fix modal gpu selection", "pr_type": "other" }, + { + "pr_number": 585, + "pr_url": "https://github.com/harbor-framework/harbor/pull/585", + "author_github_handle": "arafatkatze", + "additions": 755, + "deletions": 26, + "pr_title": "Fix Cline Provider to support new Auth/CLI config", + "pr_type": "engineering" + }, + { + "pr_number": 581, + "pr_url": "https://github.com/harbor-framework/harbor/pull/581", + "author_github_handle": "bochencs", + "additions": 1916, + "deletions": 0, + "pr_title": "[Ready for review] Adapter: GAIA", + "pr_type": "adapter" + }, { "pr_number": 580, - "pr_url": "https://github.com/laude-institute/harbor/pull/580", + "pr_url": "https://github.com/harbor-framework/harbor/pull/580", "author_github_handle": "Slimshilin", "additions": 76, "deletions": 0, @@ -181,7 +730,7 @@ }, { "pr_number": 579, - "pr_url": "https://github.com/laude-institute/harbor/pull/579", + "pr_url": "https://github.com/harbor-framework/harbor/pull/579", "author_github_handle": "Slimshilin", "additions": 3, "deletions": 0, @@ -190,7 +739,7 @@ }, { "pr_number": 577, - "pr_url": "https://github.com/laude-institute/harbor/pull/577", + "pr_url": "https://github.com/harbor-framework/harbor/pull/577", "author_github_handle": "Michaelsqj", "additions": 8263, "deletions": 0, @@ -199,7 +748,7 @@ }, { "pr_number": 566, - "pr_url": "https://github.com/laude-institute/harbor/pull/566", + "pr_url": "https://github.com/harbor-framework/harbor/pull/566", "author_github_handle": "StevenDillmann", "additions": 4, "deletions": 11, @@ -208,7 +757,7 @@ }, { "pr_number": 564, - "pr_url": "https://github.com/laude-institute/harbor/pull/564", + "pr_url": "https://github.com/harbor-framework/harbor/pull/564", "author_github_handle": "StevenDillmann", "additions": 3, "deletions": 3, @@ -217,7 +766,7 @@ }, { "pr_number": 563, - "pr_url": "https://github.com/laude-institute/harbor/pull/563", + "pr_url": "https://github.com/harbor-framework/harbor/pull/563", "author_github_handle": "self-supervisor", "additions": 6266, "deletions": 0, @@ -226,7 +775,7 @@ }, { "pr_number": 561, - "pr_url": "https://github.com/laude-institute/harbor/pull/561", + "pr_url": "https://github.com/harbor-framework/harbor/pull/561", "author_github_handle": "CharlieFRuan", "additions": 36, "deletions": 24, @@ -235,7 +784,7 @@ }, { "pr_number": 560, - "pr_url": "https://github.com/laude-institute/harbor/pull/560", + "pr_url": "https://github.com/harbor-framework/harbor/pull/560", "author_github_handle": "StevenDillmann", "additions": 1, "deletions": 1, @@ -244,7 +793,7 @@ }, { "pr_number": 556, - "pr_url": "https://github.com/laude-institute/harbor/pull/556", + "pr_url": "https://github.com/harbor-framework/harbor/pull/556", "author_github_handle": "StevenDillmann", "additions": 11, "deletions": 2, @@ -253,7 +802,7 @@ }, { "pr_number": 550, - "pr_url": "https://github.com/laude-institute/harbor/pull/550", + "pr_url": "https://github.com/harbor-framework/harbor/pull/550", "author_github_handle": "Ji-Pengliang", "additions": 1, "deletions": 1, @@ -262,7 +811,7 @@ }, { "pr_number": 549, - "pr_url": "https://github.com/laude-institute/harbor/pull/549", + "pr_url": "https://github.com/harbor-framework/harbor/pull/549", "author_github_handle": "neverSettles", "additions": 1748, "deletions": 122, @@ -271,7 +820,7 @@ }, { "pr_number": 539, - "pr_url": "https://github.com/laude-institute/harbor/pull/539", + "pr_url": "https://github.com/harbor-framework/harbor/pull/539", "author_github_handle": "dot-agi", "additions": 278, "deletions": 18, @@ -280,25 +829,52 @@ }, { "pr_number": 535, - "pr_url": "https://github.com/laude-institute/harbor/pull/535", + "pr_url": "https://github.com/harbor-framework/harbor/pull/535", "author_github_handle": "ZhengShenghan", "additions": 12, "deletions": 1, "pr_title": "[Ready for Review] BUG-FIX: fix gemini-cli skill loading failure", "pr_type": "other" }, + { + "pr_number": 530, + "pr_url": "https://github.com/harbor-framework/harbor/pull/530", + "author_github_handle": "speed1313", + "additions": 26791, + "deletions": 1, + "pr_title": "[Ready for Review] Adapter: SimpleQA", + "pr_type": "adapter" + }, + { + "pr_number": 527, + "pr_url": "https://github.com/harbor-framework/harbor/pull/527", + "author_github_handle": "penfever", + "additions": 1316, + "deletions": 9, + "pr_title": "Queue orchestrator", + "pr_type": "other" + }, { "pr_number": 526, - "pr_url": "https://github.com/laude-institute/harbor/pull/526", + "pr_url": "https://github.com/harbor-framework/harbor/pull/526", "author_github_handle": "penfever", "additions": 48, "deletions": 23, "pr_title": "OpenHands Improvements", "pr_type": "other" }, + { + "pr_number": 525, + "pr_url": "https://github.com/harbor-framework/harbor/pull/525", + "author_github_handle": "Evangelink", + "additions": 285, + "deletions": 99, + "pr_title": "Add support for running harbor on Windows", + "pr_type": "other" + }, { "pr_number": 524, - "pr_url": "https://github.com/laude-institute/harbor/pull/524", + "pr_url": "https://github.com/harbor-framework/harbor/pull/524", "author_github_handle": "CharlieFRuan", "additions": 28, "deletions": 30, @@ -307,7 +883,7 @@ }, { "pr_number": 518, - "pr_url": "https://github.com/laude-institute/harbor/pull/518", + "pr_url": "https://github.com/harbor-framework/harbor/pull/518", "author_github_handle": "chenzizhao", "additions": 4, "deletions": 2, @@ -316,7 +892,7 @@ }, { "pr_number": 516, - "pr_url": "https://github.com/laude-institute/harbor/pull/516", + "pr_url": "https://github.com/harbor-framework/harbor/pull/516", "author_github_handle": "Slimshilin", "additions": 8899, "deletions": 10863, @@ -325,7 +901,7 @@ }, { "pr_number": 515, - "pr_url": "https://github.com/laude-institute/harbor/pull/515", + "pr_url": "https://github.com/harbor-framework/harbor/pull/515", "author_github_handle": "mieciu", "additions": 5, "deletions": 1, @@ -334,7 +910,7 @@ }, { "pr_number": 513, - "pr_url": "https://github.com/laude-institute/harbor/pull/513", + "pr_url": "https://github.com/harbor-framework/harbor/pull/513", "author_github_handle": "likaixin2000", "additions": 2, "deletions": 2, @@ -343,7 +919,7 @@ }, { "pr_number": 512, - "pr_url": "https://github.com/laude-institute/harbor/pull/512", + "pr_url": "https://github.com/harbor-framework/harbor/pull/512", "author_github_handle": "RishiDesai", "additions": 33022, "deletions": 27015, @@ -352,7 +928,7 @@ }, { "pr_number": 507, - "pr_url": "https://github.com/laude-institute/harbor/pull/507", + "pr_url": "https://github.com/harbor-framework/harbor/pull/507", "author_github_handle": "MarcoRossignoli", "additions": 9, "deletions": 2, @@ -361,7 +937,7 @@ }, { "pr_number": 506, - "pr_url": "https://github.com/laude-institute/harbor/pull/506", + "pr_url": "https://github.com/harbor-framework/harbor/pull/506", "author_github_handle": "luxinyu1", "additions": 6, "deletions": 10, @@ -370,7 +946,7 @@ }, { "pr_number": 499, - "pr_url": "https://github.com/laude-institute/harbor/pull/499", + "pr_url": "https://github.com/harbor-framework/harbor/pull/499", "author_github_handle": "rohitpaulk", "additions": 23, "deletions": 4, @@ -379,7 +955,7 @@ }, { "pr_number": 495, - "pr_url": "https://github.com/laude-institute/harbor/pull/495", + "pr_url": "https://github.com/harbor-framework/harbor/pull/495", "author_github_handle": "alexgshaw", "additions": 6119, "deletions": 4693, @@ -388,7 +964,7 @@ }, { "pr_number": 489, - "pr_url": "https://github.com/laude-institute/harbor/pull/489", + "pr_url": "https://github.com/harbor-framework/harbor/pull/489", "author_github_handle": "michaelrglass", "additions": 1, "deletions": 1, @@ -397,7 +973,7 @@ }, { "pr_number": 485, - "pr_url": "https://github.com/laude-institute/harbor/pull/485", + "pr_url": "https://github.com/harbor-framework/harbor/pull/485", "author_github_handle": "Guangy627", "additions": 2, "deletions": 2, @@ -406,7 +982,7 @@ }, { "pr_number": 481, - "pr_url": "https://github.com/laude-institute/harbor/pull/481", + "pr_url": "https://github.com/harbor-framework/harbor/pull/481", "author_github_handle": "vatsj", "additions": 3, "deletions": 0, @@ -415,7 +991,7 @@ }, { "pr_number": 476, - "pr_url": "https://github.com/laude-institute/harbor/pull/476", + "pr_url": "https://github.com/harbor-framework/harbor/pull/476", "author_github_handle": "alexgshaw", "additions": 857, "deletions": 465, @@ -424,7 +1000,7 @@ }, { "pr_number": 475, - "pr_url": "https://github.com/laude-institute/harbor/pull/475", + "pr_url": "https://github.com/harbor-framework/harbor/pull/475", "author_github_handle": "li-boxuan", "additions": 3, "deletions": 100, @@ -433,7 +1009,7 @@ }, { "pr_number": 472, - "pr_url": "https://github.com/laude-institute/harbor/pull/472", + "pr_url": "https://github.com/harbor-framework/harbor/pull/472", "author_github_handle": "chenzizhao", "additions": 5502, "deletions": 4265, @@ -442,7 +1018,7 @@ }, { "pr_number": 470, - "pr_url": "https://github.com/laude-institute/harbor/pull/470", + "pr_url": "https://github.com/harbor-framework/harbor/pull/470", "author_github_handle": "connor-cognition", "additions": 13, "deletions": 1, @@ -451,7 +1027,7 @@ }, { "pr_number": 468, - "pr_url": "https://github.com/laude-institute/harbor/pull/468", + "pr_url": "https://github.com/harbor-framework/harbor/pull/468", "author_github_handle": "alexgshaw", "additions": 217, "deletions": 72, @@ -460,7 +1036,7 @@ }, { "pr_number": 467, - "pr_url": "https://github.com/laude-institute/harbor/pull/467", + "pr_url": "https://github.com/harbor-framework/harbor/pull/467", "author_github_handle": "james-rl", "additions": 107, "deletions": 46, @@ -469,7 +1045,7 @@ }, { "pr_number": 466, - "pr_url": "https://github.com/laude-institute/harbor/pull/466", + "pr_url": "https://github.com/harbor-framework/harbor/pull/466", "author_github_handle": "LithiumDA", "additions": 1, "deletions": 1, @@ -478,7 +1054,7 @@ }, { "pr_number": 465, - "pr_url": "https://github.com/laude-institute/harbor/pull/465", + "pr_url": "https://github.com/harbor-framework/harbor/pull/465", "author_github_handle": "penfever", "additions": 67, "deletions": 39, @@ -487,7 +1063,7 @@ }, { "pr_number": 464, - "pr_url": "https://github.com/laude-institute/harbor/pull/464", + "pr_url": "https://github.com/harbor-framework/harbor/pull/464", "author_github_handle": "Yiozolm", "additions": 10, "deletions": 4, @@ -496,7 +1072,7 @@ }, { "pr_number": 459, - "pr_url": "https://github.com/laude-institute/harbor/pull/459", + "pr_url": "https://github.com/harbor-framework/harbor/pull/459", "author_github_handle": "xdotli", "additions": 4, "deletions": 1, @@ -505,7 +1081,7 @@ }, { "pr_number": 458, - "pr_url": "https://github.com/laude-institute/harbor/pull/458", + "pr_url": "https://github.com/harbor-framework/harbor/pull/458", "author_github_handle": "harshraj172", "additions": 413, "deletions": 31, @@ -514,7 +1090,7 @@ }, { "pr_number": 457, - "pr_url": "https://github.com/laude-institute/harbor/pull/457", + "pr_url": "https://github.com/harbor-framework/harbor/pull/457", "author_github_handle": "connor-cognition", "additions": 280, "deletions": 7, @@ -523,7 +1099,7 @@ }, { "pr_number": 456, - "pr_url": "https://github.com/laude-institute/harbor/pull/456", + "pr_url": "https://github.com/harbor-framework/harbor/pull/456", "author_github_handle": "michaelrglass", "additions": 1, "deletions": 1, @@ -532,7 +1108,7 @@ }, { "pr_number": 452, - "pr_url": "https://github.com/laude-institute/harbor/pull/452", + "pr_url": "https://github.com/harbor-framework/harbor/pull/452", "author_github_handle": "DannyGooo", "additions": 23, "deletions": 2, @@ -541,7 +1117,7 @@ }, { "pr_number": 451, - "pr_url": "https://github.com/laude-institute/harbor/pull/451", + "pr_url": "https://github.com/harbor-framework/harbor/pull/451", "author_github_handle": "chenzizhao", "additions": 145, "deletions": 28, @@ -550,7 +1126,7 @@ }, { "pr_number": 446, - "pr_url": "https://github.com/laude-institute/harbor/pull/446", + "pr_url": "https://github.com/harbor-framework/harbor/pull/446", "author_github_handle": "octaviaguo", "additions": 162, "deletions": 153, @@ -559,7 +1135,7 @@ }, { "pr_number": 444, - "pr_url": "https://github.com/laude-institute/harbor/pull/444", + "pr_url": "https://github.com/harbor-framework/harbor/pull/444", "author_github_handle": "StevenDillmann", "additions": 36, "deletions": 4, @@ -568,7 +1144,7 @@ }, { "pr_number": 440, - "pr_url": "https://github.com/laude-institute/harbor/pull/440", + "pr_url": "https://github.com/harbor-framework/harbor/pull/440", "author_github_handle": "linhaowei1", "additions": 3207, "deletions": 0, @@ -577,7 +1153,7 @@ }, { "pr_number": 438, - "pr_url": "https://github.com/laude-institute/harbor/pull/438", + "pr_url": "https://github.com/harbor-framework/harbor/pull/438", "author_github_handle": "linhaowei1", "additions": 10, "deletions": 3, @@ -586,16 +1162,25 @@ }, { "pr_number": 436, - "pr_url": "https://github.com/laude-institute/harbor/pull/436", + "pr_url": "https://github.com/harbor-framework/harbor/pull/436", "author_github_handle": "DannyGooo", "additions": 2693, "deletions": 0, "pr_title": "[Ready for Review] Adapter: Spider2", "pr_type": "adapter" }, + { + "pr_number": 435, + "pr_url": "https://github.com/harbor-framework/harbor/pull/435", + "author_github_handle": "ibercovich", + "additions": 7, + "deletions": 0, + "pr_title": "Fix graceful shutdown on SIGTERM", + "pr_type": "other" + }, { "pr_number": 434, - "pr_url": "https://github.com/laude-institute/harbor/pull/434", + "pr_url": "https://github.com/harbor-framework/harbor/pull/434", "author_github_handle": "HaishuoFang", "additions": 172, "deletions": 87, @@ -604,7 +1189,7 @@ }, { "pr_number": 432, - "pr_url": "https://github.com/laude-institute/harbor/pull/432", + "pr_url": "https://github.com/harbor-framework/harbor/pull/432", "author_github_handle": "killthefullmoon", "additions": 7849, "deletions": 904, @@ -613,7 +1198,7 @@ }, { "pr_number": 424, - "pr_url": "https://github.com/laude-institute/harbor/pull/424", + "pr_url": "https://github.com/harbor-framework/harbor/pull/424", "author_github_handle": "linhaowei1", "additions": 14, "deletions": 14, @@ -622,7 +1207,7 @@ }, { "pr_number": 420, - "pr_url": "https://github.com/laude-institute/harbor/pull/420", + "pr_url": "https://github.com/harbor-framework/harbor/pull/420", "author_github_handle": "li-boxuan", "additions": 0, "deletions": 1, @@ -631,16 +1216,34 @@ }, { "pr_number": 418, - "pr_url": "https://github.com/laude-institute/harbor/pull/418", + "pr_url": "https://github.com/harbor-framework/harbor/pull/418", "author_github_handle": "Anjiang-Wei", "additions": 7, "deletions": 9, "pr_title": "Remove repository path setup from run_adapter.py to fix ruff error", "pr_type": "adapter" }, + { + "pr_number": 415, + "pr_url": "https://github.com/harbor-framework/harbor/pull/415", + "author_github_handle": "HOU-SZ", + "additions": 257013, + "deletions": 251746, + "pr_title": "[Ready for Review] Adapter: BIRD-Bench", + "pr_type": "adapter" + }, + { + "pr_number": 414, + "pr_url": "https://github.com/harbor-framework/harbor/pull/414", + "author_github_handle": "lijrjyan", + "additions": 67264, + "deletions": 0, + "pr_title": "[Ready for Review] Adapter: KUMO", + "pr_type": "adapter" + }, { "pr_number": 403, - "pr_url": "https://github.com/laude-institute/harbor/pull/403", + "pr_url": "https://github.com/harbor-framework/harbor/pull/403", "author_github_handle": "1171-jpg", "additions": 1836, "deletions": 0, @@ -649,7 +1252,7 @@ }, { "pr_number": 402, - "pr_url": "https://github.com/laude-institute/harbor/pull/402", + "pr_url": "https://github.com/harbor-framework/harbor/pull/402", "author_github_handle": "xianliu", "additions": 2116, "deletions": 0, @@ -658,7 +1261,7 @@ }, { "pr_number": 401, - "pr_url": "https://github.com/laude-institute/harbor/pull/401", + "pr_url": "https://github.com/harbor-framework/harbor/pull/401", "author_github_handle": "Ji-Pengliang", "additions": 1, "deletions": 1, @@ -667,7 +1270,7 @@ }, { "pr_number": 399, - "pr_url": "https://github.com/laude-institute/harbor/pull/399", + "pr_url": "https://github.com/harbor-framework/harbor/pull/399", "author_github_handle": "nandatheguntupalli", "additions": 74, "deletions": 11, @@ -676,7 +1279,7 @@ }, { "pr_number": 395, - "pr_url": "https://github.com/laude-institute/harbor/pull/395", + "pr_url": "https://github.com/harbor-framework/harbor/pull/395", "author_github_handle": "Anjiang-Wei", "additions": 13408, "deletions": 1, @@ -685,7 +1288,7 @@ }, { "pr_number": 394, - "pr_url": "https://github.com/laude-institute/harbor/pull/394", + "pr_url": "https://github.com/harbor-framework/harbor/pull/394", "author_github_handle": "alexgshaw", "additions": 12, "deletions": 40, @@ -694,7 +1297,7 @@ }, { "pr_number": 388, - "pr_url": "https://github.com/laude-institute/harbor/pull/388", + "pr_url": "https://github.com/harbor-framework/harbor/pull/388", "author_github_handle": "alexgshaw", "additions": 2565, "deletions": 584, @@ -703,7 +1306,7 @@ }, { "pr_number": 380, - "pr_url": "https://github.com/laude-institute/harbor/pull/380", + "pr_url": "https://github.com/harbor-framework/harbor/pull/380", "author_github_handle": "hanxu12", "additions": 7030, "deletions": 1, @@ -712,7 +1315,7 @@ }, { "pr_number": 376, - "pr_url": "https://github.com/laude-institute/harbor/pull/376", + "pr_url": "https://github.com/harbor-framework/harbor/pull/376", "author_github_handle": "kanazawa-asyncio", "additions": 1208, "deletions": 1, @@ -721,7 +1324,7 @@ }, { "pr_number": 367, - "pr_url": "https://github.com/laude-institute/harbor/pull/367", + "pr_url": "https://github.com/harbor-framework/harbor/pull/367", "author_github_handle": "stared", "additions": 104, "deletions": 7, @@ -730,7 +1333,7 @@ }, { "pr_number": 364, - "pr_url": "https://github.com/laude-institute/harbor/pull/364", + "pr_url": "https://github.com/harbor-framework/harbor/pull/364", "author_github_handle": "li-boxuan", "additions": 23, "deletions": 13, @@ -739,7 +1342,7 @@ }, { "pr_number": 363, - "pr_url": "https://github.com/laude-institute/harbor/pull/363", + "pr_url": "https://github.com/harbor-framework/harbor/pull/363", "author_github_handle": "octaviaguo", "additions": 3309, "deletions": 0, @@ -748,7 +1351,7 @@ }, { "pr_number": 362, - "pr_url": "https://github.com/laude-institute/harbor/pull/362", + "pr_url": "https://github.com/harbor-framework/harbor/pull/362", "author_github_handle": "alexgshaw", "additions": 2, "deletions": 6, @@ -757,7 +1360,7 @@ }, { "pr_number": 361, - "pr_url": "https://github.com/laude-institute/harbor/pull/361", + "pr_url": "https://github.com/harbor-framework/harbor/pull/361", "author_github_handle": "alexgshaw", "additions": 1, "deletions": 1, @@ -766,7 +1369,7 @@ }, { "pr_number": 360, - "pr_url": "https://github.com/laude-institute/harbor/pull/360", + "pr_url": "https://github.com/harbor-framework/harbor/pull/360", "author_github_handle": "alexgshaw", "additions": 17, "deletions": 12, @@ -775,7 +1378,7 @@ }, { "pr_number": 359, - "pr_url": "https://github.com/laude-institute/harbor/pull/359", + "pr_url": "https://github.com/harbor-framework/harbor/pull/359", "author_github_handle": "alexgshaw", "additions": 21, "deletions": 1, @@ -784,7 +1387,7 @@ }, { "pr_number": 358, - "pr_url": "https://github.com/laude-institute/harbor/pull/358", + "pr_url": "https://github.com/harbor-framework/harbor/pull/358", "author_github_handle": "Ternura143", "additions": 24649, "deletions": 0, @@ -793,7 +1396,7 @@ }, { "pr_number": 351, - "pr_url": "https://github.com/laude-institute/harbor/pull/351", + "pr_url": "https://github.com/harbor-framework/harbor/pull/351", "author_github_handle": "EstelYang", "additions": 68583, "deletions": 67032, @@ -802,7 +1405,7 @@ }, { "pr_number": 350, - "pr_url": "https://github.com/laude-institute/harbor/pull/350", + "pr_url": "https://github.com/harbor-framework/harbor/pull/350", "author_github_handle": "li-boxuan", "additions": 111, "deletions": 6, @@ -811,7 +1414,7 @@ }, { "pr_number": 346, - "pr_url": "https://github.com/laude-institute/harbor/pull/346", + "pr_url": "https://github.com/harbor-framework/harbor/pull/346", "author_github_handle": "Hangzhi", "additions": 1768, "deletions": 0, @@ -820,7 +1423,7 @@ }, { "pr_number": 343, - "pr_url": "https://github.com/laude-institute/harbor/pull/343", + "pr_url": "https://github.com/harbor-framework/harbor/pull/343", "author_github_handle": "rootCircle", "additions": 40, "deletions": 2, @@ -829,7 +1432,7 @@ }, { "pr_number": 341, - "pr_url": "https://github.com/laude-institute/harbor/pull/341", + "pr_url": "https://github.com/harbor-framework/harbor/pull/341", "author_github_handle": "li-boxuan", "additions": 9, "deletions": 9, @@ -838,7 +1441,7 @@ }, { "pr_number": 339, - "pr_url": "https://github.com/laude-institute/harbor/pull/339", + "pr_url": "https://github.com/harbor-framework/harbor/pull/339", "author_github_handle": "penfever", "additions": 139, "deletions": 9, @@ -847,7 +1450,7 @@ }, { "pr_number": 337, - "pr_url": "https://github.com/laude-institute/harbor/pull/337", + "pr_url": "https://github.com/harbor-framework/harbor/pull/337", "author_github_handle": "penfever", "additions": 9, "deletions": 0, @@ -856,7 +1459,7 @@ }, { "pr_number": 336, - "pr_url": "https://github.com/laude-institute/harbor/pull/336", + "pr_url": "https://github.com/harbor-framework/harbor/pull/336", "author_github_handle": "penfever", "additions": 16, "deletions": 2, @@ -865,7 +1468,7 @@ }, { "pr_number": 333, - "pr_url": "https://github.com/laude-institute/harbor/pull/333", + "pr_url": "https://github.com/harbor-framework/harbor/pull/333", "author_github_handle": "pfbyjy", "additions": 57, "deletions": 19, @@ -874,7 +1477,7 @@ }, { "pr_number": 330, - "pr_url": "https://github.com/laude-institute/harbor/pull/330", + "pr_url": "https://github.com/harbor-framework/harbor/pull/330", "author_github_handle": "terryyz", "additions": 10081, "deletions": 0, @@ -883,7 +1486,7 @@ }, { "pr_number": 327, - "pr_url": "https://github.com/laude-institute/harbor/pull/327", + "pr_url": "https://github.com/harbor-framework/harbor/pull/327", "author_github_handle": "alexgshaw", "additions": 79, "deletions": 34, @@ -892,7 +1495,7 @@ }, { "pr_number": 326, - "pr_url": "https://github.com/laude-institute/harbor/pull/326", + "pr_url": "https://github.com/harbor-framework/harbor/pull/326", "author_github_handle": "alexgshaw", "additions": 286, "deletions": 1, @@ -901,7 +1504,7 @@ }, { "pr_number": 325, - "pr_url": "https://github.com/laude-institute/harbor/pull/325", + "pr_url": "https://github.com/harbor-framework/harbor/pull/325", "author_github_handle": "alexgshaw", "additions": 181, "deletions": 28, @@ -910,7 +1513,7 @@ }, { "pr_number": 323, - "pr_url": "https://github.com/laude-institute/harbor/pull/323", + "pr_url": "https://github.com/harbor-framework/harbor/pull/323", "author_github_handle": "ifoukarakis", "additions": 5, "deletions": 4, @@ -919,7 +1522,7 @@ }, { "pr_number": 319, - "pr_url": "https://github.com/laude-institute/harbor/pull/319", + "pr_url": "https://github.com/harbor-framework/harbor/pull/319", "author_github_handle": "ibercovich", "additions": 9, "deletions": 1, @@ -928,7 +1531,7 @@ }, { "pr_number": 318, - "pr_url": "https://github.com/laude-institute/harbor/pull/318", + "pr_url": "https://github.com/harbor-framework/harbor/pull/318", "author_github_handle": "alexgshaw", "additions": 10, "deletions": 9, @@ -937,7 +1540,7 @@ }, { "pr_number": 316, - "pr_url": "https://github.com/laude-institute/harbor/pull/316", + "pr_url": "https://github.com/harbor-framework/harbor/pull/316", "author_github_handle": "thdxr", "additions": 1, "deletions": 1, @@ -946,7 +1549,7 @@ }, { "pr_number": 313, - "pr_url": "https://github.com/laude-institute/harbor/pull/313", + "pr_url": "https://github.com/harbor-framework/harbor/pull/313", "author_github_handle": "li-boxuan", "additions": 332, "deletions": 232, @@ -955,7 +1558,7 @@ }, { "pr_number": 311, - "pr_url": "https://github.com/laude-institute/harbor/pull/311", + "pr_url": "https://github.com/harbor-framework/harbor/pull/311", "author_github_handle": "Rebabit", "additions": 1883, "deletions": 0, @@ -964,7 +1567,7 @@ }, { "pr_number": 308, - "pr_url": "https://github.com/laude-institute/harbor/pull/308", + "pr_url": "https://github.com/harbor-framework/harbor/pull/308", "author_github_handle": "stared", "additions": 181, "deletions": 20, @@ -973,7 +1576,7 @@ }, { "pr_number": 307, - "pr_url": "https://github.com/laude-institute/harbor/pull/307", + "pr_url": "https://github.com/harbor-framework/harbor/pull/307", "author_github_handle": "Waterpine", "additions": 25831, "deletions": 0, @@ -982,7 +1585,7 @@ }, { "pr_number": 298, - "pr_url": "https://github.com/laude-institute/harbor/pull/298", + "pr_url": "https://github.com/harbor-framework/harbor/pull/298", "author_github_handle": "ibercovich", "additions": 22, "deletions": 22, @@ -991,7 +1594,7 @@ }, { "pr_number": 292, - "pr_url": "https://github.com/laude-institute/harbor/pull/292", + "pr_url": "https://github.com/harbor-framework/harbor/pull/292", "author_github_handle": "linhaowei1", "additions": 29, "deletions": 29, @@ -1000,7 +1603,7 @@ }, { "pr_number": 284, - "pr_url": "https://github.com/laude-institute/harbor/pull/284", + "pr_url": "https://github.com/harbor-framework/harbor/pull/284", "author_github_handle": "lurf21", "additions": 6, "deletions": 2, @@ -1009,7 +1612,7 @@ }, { "pr_number": 279, - "pr_url": "https://github.com/laude-institute/harbor/pull/279", + "pr_url": "https://github.com/harbor-framework/harbor/pull/279", "author_github_handle": "neginraoof", "additions": 485, "deletions": 0, @@ -1018,7 +1621,7 @@ }, { "pr_number": 276, - "pr_url": "https://github.com/laude-institute/harbor/pull/276", + "pr_url": "https://github.com/harbor-framework/harbor/pull/276", "author_github_handle": "penfever", "additions": 45, "deletions": 21, @@ -1027,7 +1630,7 @@ }, { "pr_number": 275, - "pr_url": "https://github.com/laude-institute/harbor/pull/275", + "pr_url": "https://github.com/harbor-framework/harbor/pull/275", "author_github_handle": "avelanarius", "additions": 16, "deletions": 16, @@ -1036,7 +1639,7 @@ }, { "pr_number": 274, - "pr_url": "https://github.com/laude-institute/harbor/pull/274", + "pr_url": "https://github.com/harbor-framework/harbor/pull/274", "author_github_handle": "li-boxuan", "additions": 292, "deletions": 148, @@ -1045,7 +1648,7 @@ }, { "pr_number": 272, - "pr_url": "https://github.com/laude-institute/harbor/pull/272", + "pr_url": "https://github.com/harbor-framework/harbor/pull/272", "author_github_handle": "li-boxuan", "additions": 1, "deletions": 1, @@ -1054,7 +1657,7 @@ }, { "pr_number": 269, - "pr_url": "https://github.com/laude-institute/harbor/pull/269", + "pr_url": "https://github.com/harbor-framework/harbor/pull/269", "author_github_handle": "bstee615", "additions": 43, "deletions": 20, @@ -1063,7 +1666,7 @@ }, { "pr_number": 267, - "pr_url": "https://github.com/laude-institute/harbor/pull/267", + "pr_url": "https://github.com/harbor-framework/harbor/pull/267", "author_github_handle": "HaishuoFang", "additions": 2794, "deletions": 0, @@ -1072,7 +1675,7 @@ }, { "pr_number": 265, - "pr_url": "https://github.com/laude-institute/harbor/pull/265", + "pr_url": "https://github.com/harbor-framework/harbor/pull/265", "author_github_handle": "li-boxuan", "additions": 219, "deletions": 4, @@ -1081,7 +1684,7 @@ }, { "pr_number": 264, - "pr_url": "https://github.com/laude-institute/harbor/pull/264", + "pr_url": "https://github.com/harbor-framework/harbor/pull/264", "author_github_handle": "XuandongZhao", "additions": 1723, "deletions": 0, @@ -1090,7 +1693,7 @@ }, { "pr_number": 263, - "pr_url": "https://github.com/laude-institute/harbor/pull/263", + "pr_url": "https://github.com/harbor-framework/harbor/pull/263", "author_github_handle": "Slimshilin", "additions": 1, "deletions": 1, @@ -1099,7 +1702,7 @@ }, { "pr_number": 262, - "pr_url": "https://github.com/laude-institute/harbor/pull/262", + "pr_url": "https://github.com/harbor-framework/harbor/pull/262", "author_github_handle": "rotemtam", "additions": 123, "deletions": 1, @@ -1108,7 +1711,7 @@ }, { "pr_number": 260, - "pr_url": "https://github.com/laude-institute/harbor/pull/260", + "pr_url": "https://github.com/harbor-framework/harbor/pull/260", "author_github_handle": "StevenDillmann", "additions": 21, "deletions": 0, @@ -1117,7 +1720,7 @@ }, { "pr_number": 259, - "pr_url": "https://github.com/laude-institute/harbor/pull/259", + "pr_url": "https://github.com/harbor-framework/harbor/pull/259", "author_github_handle": "rotemtam", "additions": 97, "deletions": 6, @@ -1126,7 +1729,7 @@ }, { "pr_number": 257, - "pr_url": "https://github.com/laude-institute/harbor/pull/257", + "pr_url": "https://github.com/harbor-framework/harbor/pull/257", "author_github_handle": "kobe0938", "additions": 1761, "deletions": 2, @@ -1135,7 +1738,7 @@ }, { "pr_number": 256, - "pr_url": "https://github.com/laude-institute/harbor/pull/256", + "pr_url": "https://github.com/harbor-framework/harbor/pull/256", "author_github_handle": "aht", "additions": 5038, "deletions": 0, @@ -1144,7 +1747,7 @@ }, { "pr_number": 251, - "pr_url": "https://github.com/laude-institute/harbor/pull/251", + "pr_url": "https://github.com/harbor-framework/harbor/pull/251", "author_github_handle": "ibercovich", "additions": 4, "deletions": 0, @@ -1153,7 +1756,7 @@ }, { "pr_number": 249, - "pr_url": "https://github.com/laude-institute/harbor/pull/249", + "pr_url": "https://github.com/harbor-framework/harbor/pull/249", "author_github_handle": "robertzhidealx", "additions": 9252, "deletions": 0, @@ -1162,7 +1765,7 @@ }, { "pr_number": 247, - "pr_url": "https://github.com/laude-institute/harbor/pull/247", + "pr_url": "https://github.com/harbor-framework/harbor/pull/247", "author_github_handle": "AkshayVenkataraman", "additions": 18, "deletions": 1, @@ -1171,7 +1774,7 @@ }, { "pr_number": 246, - "pr_url": "https://github.com/laude-institute/harbor/pull/246", + "pr_url": "https://github.com/harbor-framework/harbor/pull/246", "author_github_handle": "mieciu", "additions": 8, "deletions": 1, @@ -1180,7 +1783,7 @@ }, { "pr_number": 243, - "pr_url": "https://github.com/laude-institute/harbor/pull/243", + "pr_url": "https://github.com/harbor-framework/harbor/pull/243", "author_github_handle": "neginraoof", "additions": 140, "deletions": 0, @@ -1189,16 +1792,25 @@ }, { "pr_number": 242, - "pr_url": "https://github.com/laude-institute/harbor/pull/242", + "pr_url": "https://github.com/harbor-framework/harbor/pull/242", "author_github_handle": "neginraoof", "additions": 161, "deletions": 56, "pr_title": "Add SWE-agent configuration example", "pr_type": "engineering" }, + { + "pr_number": 240, + "pr_url": "https://github.com/harbor-framework/harbor/pull/240", + "author_github_handle": "xiaoxiangmoe", + "additions": 30, + "deletions": 23, + "pr_title": "Run script directly to respect shebang", + "pr_type": "other" + }, { "pr_number": 237, - "pr_url": "https://github.com/laude-institute/harbor/pull/237", + "pr_url": "https://github.com/harbor-framework/harbor/pull/237", "author_github_handle": "li-boxuan", "additions": 223, "deletions": 2, @@ -1207,7 +1819,7 @@ }, { "pr_number": 236, - "pr_url": "https://github.com/laude-institute/harbor/pull/236", + "pr_url": "https://github.com/harbor-framework/harbor/pull/236", "author_github_handle": "luxinyu1", "additions": 21, "deletions": 1, @@ -1216,7 +1828,7 @@ }, { "pr_number": 235, - "pr_url": "https://github.com/laude-institute/harbor/pull/235", + "pr_url": "https://github.com/harbor-framework/harbor/pull/235", "author_github_handle": "penfever", "additions": 244, "deletions": 3, @@ -1225,7 +1837,7 @@ }, { "pr_number": 232, - "pr_url": "https://github.com/laude-institute/harbor/pull/232", + "pr_url": "https://github.com/harbor-framework/harbor/pull/232", "author_github_handle": "dzorlu", "additions": 6, "deletions": 0, @@ -1234,7 +1846,7 @@ }, { "pr_number": 230, - "pr_url": "https://github.com/laude-institute/harbor/pull/230", + "pr_url": "https://github.com/harbor-framework/harbor/pull/230", "author_github_handle": "RishiDesai", "additions": 12, "deletions": 2, @@ -1243,7 +1855,7 @@ }, { "pr_number": 226, - "pr_url": "https://github.com/laude-institute/harbor/pull/226", + "pr_url": "https://github.com/harbor-framework/harbor/pull/226", "author_github_handle": "AkshayVenkataraman", "additions": 9, "deletions": 6, @@ -1252,7 +1864,7 @@ }, { "pr_number": 225, - "pr_url": "https://github.com/laude-institute/harbor/pull/225", + "pr_url": "https://github.com/harbor-framework/harbor/pull/225", "author_github_handle": "li-boxuan", "additions": 1731, "deletions": 478, @@ -1261,7 +1873,7 @@ }, { "pr_number": 220, - "pr_url": "https://github.com/laude-institute/harbor/pull/220", + "pr_url": "https://github.com/harbor-framework/harbor/pull/220", "author_github_handle": "Ji-Pengliang", "additions": 2228, "deletions": 1, @@ -1270,7 +1882,7 @@ }, { "pr_number": 217, - "pr_url": "https://github.com/laude-institute/harbor/pull/217", + "pr_url": "https://github.com/harbor-framework/harbor/pull/217", "author_github_handle": "penfever", "additions": 226, "deletions": 42, @@ -1279,7 +1891,7 @@ }, { "pr_number": 216, - "pr_url": "https://github.com/laude-institute/harbor/pull/216", + "pr_url": "https://github.com/harbor-framework/harbor/pull/216", "author_github_handle": "paraliine", "additions": 1, "deletions": 1, @@ -1288,7 +1900,7 @@ }, { "pr_number": 215, - "pr_url": "https://github.com/laude-institute/harbor/pull/215", + "pr_url": "https://github.com/harbor-framework/harbor/pull/215", "author_github_handle": "paraliine", "additions": 1, "deletions": 1, @@ -1297,7 +1909,7 @@ }, { "pr_number": 214, - "pr_url": "https://github.com/laude-institute/harbor/pull/214", + "pr_url": "https://github.com/harbor-framework/harbor/pull/214", "author_github_handle": "mieciu", "additions": 119, "deletions": 52, @@ -1306,7 +1918,7 @@ }, { "pr_number": 212, - "pr_url": "https://github.com/laude-institute/harbor/pull/212", + "pr_url": "https://github.com/harbor-framework/harbor/pull/212", "author_github_handle": "giansegato", "additions": 976, "deletions": 0, @@ -1315,7 +1927,7 @@ }, { "pr_number": 210, - "pr_url": "https://github.com/laude-institute/harbor/pull/210", + "pr_url": "https://github.com/harbor-framework/harbor/pull/210", "author_github_handle": "james-rl", "additions": 28, "deletions": 14, @@ -1324,7 +1936,7 @@ }, { "pr_number": 201, - "pr_url": "https://github.com/laude-institute/harbor/pull/201", + "pr_url": "https://github.com/harbor-framework/harbor/pull/201", "author_github_handle": "crystalxyz", "additions": 2124, "deletions": 0, @@ -1333,7 +1945,7 @@ }, { "pr_number": 200, - "pr_url": "https://github.com/laude-institute/harbor/pull/200", + "pr_url": "https://github.com/harbor-framework/harbor/pull/200", "author_github_handle": "RishiDesai", "additions": 12, "deletions": 1, @@ -1342,7 +1954,7 @@ }, { "pr_number": 198, - "pr_url": "https://github.com/laude-institute/harbor/pull/198", + "pr_url": "https://github.com/harbor-framework/harbor/pull/198", "author_github_handle": "pashpashpash", "additions": 178, "deletions": 0, @@ -1351,7 +1963,7 @@ }, { "pr_number": 195, - "pr_url": "https://github.com/laude-institute/harbor/pull/195", + "pr_url": "https://github.com/harbor-framework/harbor/pull/195", "author_github_handle": "AkshayVenkataraman", "additions": 18, "deletions": 2, @@ -1360,7 +1972,7 @@ }, { "pr_number": 194, - "pr_url": "https://github.com/laude-institute/harbor/pull/194", + "pr_url": "https://github.com/harbor-framework/harbor/pull/194", "author_github_handle": "dpedchenko", "additions": 7, "deletions": 4, @@ -1369,7 +1981,7 @@ }, { "pr_number": 191, - "pr_url": "https://github.com/laude-institute/harbor/pull/191", + "pr_url": "https://github.com/harbor-framework/harbor/pull/191", "author_github_handle": "tlongwell-block", "additions": 30, "deletions": 14, @@ -1378,7 +1990,7 @@ }, { "pr_number": 189, - "pr_url": "https://github.com/laude-institute/harbor/pull/189", + "pr_url": "https://github.com/harbor-framework/harbor/pull/189", "author_github_handle": "james-rl", "additions": 150, "deletions": 59, @@ -1387,7 +1999,7 @@ }, { "pr_number": 188, - "pr_url": "https://github.com/laude-institute/harbor/pull/188", + "pr_url": "https://github.com/harbor-framework/harbor/pull/188", "author_github_handle": "tlongwell-block", "additions": 11, "deletions": 1, @@ -1396,7 +2008,7 @@ }, { "pr_number": 184, - "pr_url": "https://github.com/laude-institute/harbor/pull/184", + "pr_url": "https://github.com/harbor-framework/harbor/pull/184", "author_github_handle": "li-boxuan", "additions": 676, "deletions": 72, @@ -1405,7 +2017,7 @@ }, { "pr_number": 183, - "pr_url": "https://github.com/laude-institute/harbor/pull/183", + "pr_url": "https://github.com/harbor-framework/harbor/pull/183", "author_github_handle": "li-boxuan", "additions": 1007, "deletions": 244, @@ -1414,7 +2026,7 @@ }, { "pr_number": 181, - "pr_url": "https://github.com/laude-institute/harbor/pull/181", + "pr_url": "https://github.com/harbor-framework/harbor/pull/181", "author_github_handle": "richardzhuang0412", "additions": 91, "deletions": 0, @@ -1423,7 +2035,7 @@ }, { "pr_number": 177, - "pr_url": "https://github.com/laude-institute/harbor/pull/177", + "pr_url": "https://github.com/harbor-framework/harbor/pull/177", "author_github_handle": "li-boxuan", "additions": 2, "deletions": 2, @@ -1432,7 +2044,7 @@ }, { "pr_number": 176, - "pr_url": "https://github.com/laude-institute/harbor/pull/176", + "pr_url": "https://github.com/harbor-framework/harbor/pull/176", "author_github_handle": "Chesars", "additions": 3, "deletions": 0, @@ -1441,7 +2053,7 @@ }, { "pr_number": 175, - "pr_url": "https://github.com/laude-institute/harbor/pull/175", + "pr_url": "https://github.com/harbor-framework/harbor/pull/175", "author_github_handle": "Chesars", "additions": 1, "deletions": 1, @@ -1450,7 +2062,7 @@ }, { "pr_number": 174, - "pr_url": "https://github.com/laude-institute/harbor/pull/174", + "pr_url": "https://github.com/harbor-framework/harbor/pull/174", "author_github_handle": "li-boxuan", "additions": 728, "deletions": 1, @@ -1459,7 +2071,7 @@ }, { "pr_number": 173, - "pr_url": "https://github.com/laude-institute/harbor/pull/173", + "pr_url": "https://github.com/harbor-framework/harbor/pull/173", "author_github_handle": "ai-jz", "additions": 6, "deletions": 1, @@ -1468,7 +2080,7 @@ }, { "pr_number": 170, - "pr_url": "https://github.com/laude-institute/harbor/pull/170", + "pr_url": "https://github.com/harbor-framework/harbor/pull/170", "author_github_handle": "mieciu", "additions": 480, "deletions": 0, @@ -1477,7 +2089,7 @@ }, { "pr_number": 169, - "pr_url": "https://github.com/laude-institute/harbor/pull/169", + "pr_url": "https://github.com/harbor-framework/harbor/pull/169", "author_github_handle": "li-boxuan", "additions": 254, "deletions": 19, @@ -1486,7 +2098,7 @@ }, { "pr_number": 168, - "pr_url": "https://github.com/laude-institute/harbor/pull/168", + "pr_url": "https://github.com/harbor-framework/harbor/pull/168", "author_github_handle": "liyuyun-lyy", "additions": 1, "deletions": 1, @@ -1495,7 +2107,7 @@ }, { "pr_number": 163, - "pr_url": "https://github.com/laude-institute/harbor/pull/163", + "pr_url": "https://github.com/harbor-framework/harbor/pull/163", "author_github_handle": "penfever", "additions": 34, "deletions": 9, @@ -1504,7 +2116,7 @@ }, { "pr_number": 160, - "pr_url": "https://github.com/laude-institute/harbor/pull/160", + "pr_url": "https://github.com/harbor-framework/harbor/pull/160", "author_github_handle": "penfever", "additions": 12, "deletions": 4, @@ -1513,7 +2125,7 @@ }, { "pr_number": 156, - "pr_url": "https://github.com/laude-institute/harbor/pull/156", + "pr_url": "https://github.com/harbor-framework/harbor/pull/156", "author_github_handle": "li-boxuan", "additions": 113, "deletions": 19, @@ -1522,7 +2134,7 @@ }, { "pr_number": 154, - "pr_url": "https://github.com/laude-institute/harbor/pull/154", + "pr_url": "https://github.com/harbor-framework/harbor/pull/154", "author_github_handle": "chenzizhao", "additions": 31425, "deletions": 67694, @@ -1531,7 +2143,7 @@ }, { "pr_number": 153, - "pr_url": "https://github.com/laude-institute/harbor/pull/153", + "pr_url": "https://github.com/harbor-framework/harbor/pull/153", "author_github_handle": "digitsisyph", "additions": 1299, "deletions": 1, @@ -1540,7 +2152,7 @@ }, { "pr_number": 151, - "pr_url": "https://github.com/laude-institute/harbor/pull/151", + "pr_url": "https://github.com/harbor-framework/harbor/pull/151", "author_github_handle": "linhaowei1", "additions": 1440, "deletions": 1, @@ -1549,7 +2161,7 @@ }, { "pr_number": 149, - "pr_url": "https://github.com/laude-institute/harbor/pull/149", + "pr_url": "https://github.com/harbor-framework/harbor/pull/149", "author_github_handle": "orfeas-menis", "additions": 887, "deletions": 0, @@ -1558,7 +2170,7 @@ }, { "pr_number": 148, - "pr_url": "https://github.com/laude-institute/harbor/pull/148", + "pr_url": "https://github.com/harbor-framework/harbor/pull/148", "author_github_handle": "ibercovich", "additions": 355, "deletions": 31, @@ -1567,7 +2179,7 @@ }, { "pr_number": 147, - "pr_url": "https://github.com/laude-institute/harbor/pull/147", + "pr_url": "https://github.com/harbor-framework/harbor/pull/147", "author_github_handle": "penfever", "additions": 25, "deletions": 19, @@ -1576,7 +2188,7 @@ }, { "pr_number": 146, - "pr_url": "https://github.com/laude-institute/harbor/pull/146", + "pr_url": "https://github.com/harbor-framework/harbor/pull/146", "author_github_handle": "StevenDillmann", "additions": 547, "deletions": 0, @@ -1585,7 +2197,7 @@ }, { "pr_number": 144, - "pr_url": "https://github.com/laude-institute/harbor/pull/144", + "pr_url": "https://github.com/harbor-framework/harbor/pull/144", "author_github_handle": "penfever", "additions": 20, "deletions": 18, @@ -1594,7 +2206,7 @@ }, { "pr_number": 143, - "pr_url": "https://github.com/laude-institute/harbor/pull/143", + "pr_url": "https://github.com/harbor-framework/harbor/pull/143", "author_github_handle": "digitsisyph", "additions": 4096, "deletions": 0, @@ -1603,7 +2215,7 @@ }, { "pr_number": 142, - "pr_url": "https://github.com/laude-institute/harbor/pull/142", + "pr_url": "https://github.com/harbor-framework/harbor/pull/142", "author_github_handle": "penfever", "additions": 54, "deletions": 4, @@ -1612,7 +2224,7 @@ }, { "pr_number": 141, - "pr_url": "https://github.com/laude-institute/harbor/pull/141", + "pr_url": "https://github.com/harbor-framework/harbor/pull/141", "author_github_handle": "li-boxuan", "additions": 1619, "deletions": 1782, @@ -1621,7 +2233,7 @@ }, { "pr_number": 139, - "pr_url": "https://github.com/laude-institute/harbor/pull/139", + "pr_url": "https://github.com/harbor-framework/harbor/pull/139", "author_github_handle": "LithiumDA", "additions": 1, "deletions": 3, @@ -1630,7 +2242,7 @@ }, { "pr_number": 135, - "pr_url": "https://github.com/laude-institute/harbor/pull/135", + "pr_url": "https://github.com/harbor-framework/harbor/pull/135", "author_github_handle": "giansegato", "additions": 23, "deletions": 0, @@ -1639,7 +2251,7 @@ }, { "pr_number": 132, - "pr_url": "https://github.com/laude-institute/harbor/pull/132", + "pr_url": "https://github.com/harbor-framework/harbor/pull/132", "author_github_handle": "li-boxuan", "additions": 17, "deletions": 46, @@ -1648,7 +2260,7 @@ }, { "pr_number": 131, - "pr_url": "https://github.com/laude-institute/harbor/pull/131", + "pr_url": "https://github.com/harbor-framework/harbor/pull/131", "author_github_handle": "HiromuHota", "additions": 3, "deletions": 7, @@ -1657,7 +2269,7 @@ }, { "pr_number": 130, - "pr_url": "https://github.com/laude-institute/harbor/pull/130", + "pr_url": "https://github.com/harbor-framework/harbor/pull/130", "author_github_handle": "HiromuHota", "additions": 1, "deletions": 0, @@ -1666,7 +2278,7 @@ }, { "pr_number": 125, - "pr_url": "https://github.com/laude-institute/harbor/pull/125", + "pr_url": "https://github.com/harbor-framework/harbor/pull/125", "author_github_handle": "li-boxuan", "additions": 105, "deletions": 74, @@ -1675,7 +2287,7 @@ }, { "pr_number": 122, - "pr_url": "https://github.com/laude-institute/harbor/pull/122", + "pr_url": "https://github.com/harbor-framework/harbor/pull/122", "author_github_handle": "li-boxuan", "additions": 10, "deletions": 32, @@ -1684,7 +2296,7 @@ }, { "pr_number": 121, - "pr_url": "https://github.com/laude-institute/harbor/pull/121", + "pr_url": "https://github.com/harbor-framework/harbor/pull/121", "author_github_handle": "thdxr", "additions": 3, "deletions": 0, @@ -1693,7 +2305,7 @@ }, { "pr_number": 119, - "pr_url": "https://github.com/laude-institute/harbor/pull/119", + "pr_url": "https://github.com/harbor-framework/harbor/pull/119", "author_github_handle": "penfever", "additions": 8, "deletions": 4, @@ -1702,7 +2314,7 @@ }, { "pr_number": 118, - "pr_url": "https://github.com/laude-institute/harbor/pull/118", + "pr_url": "https://github.com/harbor-framework/harbor/pull/118", "author_github_handle": "li-boxuan", "additions": 206, "deletions": 314, @@ -1711,7 +2323,7 @@ }, { "pr_number": 117, - "pr_url": "https://github.com/laude-institute/harbor/pull/117", + "pr_url": "https://github.com/harbor-framework/harbor/pull/117", "author_github_handle": "li-boxuan", "additions": 486, "deletions": 1, @@ -1720,7 +2332,7 @@ }, { "pr_number": 115, - "pr_url": "https://github.com/laude-institute/harbor/pull/115", + "pr_url": "https://github.com/harbor-framework/harbor/pull/115", "author_github_handle": "harshraj172", "additions": 4301, "deletions": 0, @@ -1729,7 +2341,7 @@ }, { "pr_number": 113, - "pr_url": "https://github.com/laude-institute/harbor/pull/113", + "pr_url": "https://github.com/harbor-framework/harbor/pull/113", "author_github_handle": "EtashGuha", "additions": 32565, "deletions": 3335, @@ -1738,7 +2350,7 @@ }, { "pr_number": 106, - "pr_url": "https://github.com/laude-institute/harbor/pull/106", + "pr_url": "https://github.com/harbor-framework/harbor/pull/106", "author_github_handle": "linhaowei1", "additions": 1953, "deletions": 0, @@ -1747,7 +2359,7 @@ }, { "pr_number": 105, - "pr_url": "https://github.com/laude-institute/harbor/pull/105", + "pr_url": "https://github.com/harbor-framework/harbor/pull/105", "author_github_handle": "li-boxuan", "additions": 1, "deletions": 1, @@ -1756,7 +2368,7 @@ }, { "pr_number": 104, - "pr_url": "https://github.com/laude-institute/harbor/pull/104", + "pr_url": "https://github.com/harbor-framework/harbor/pull/104", "author_github_handle": "santaboi", "additions": 1, "deletions": 1, @@ -1765,7 +2377,7 @@ }, { "pr_number": 102, - "pr_url": "https://github.com/laude-institute/harbor/pull/102", + "pr_url": "https://github.com/harbor-framework/harbor/pull/102", "author_github_handle": "LithiumDA", "additions": 9, "deletions": 11, @@ -1774,7 +2386,7 @@ }, { "pr_number": 100, - "pr_url": "https://github.com/laude-institute/harbor/pull/100", + "pr_url": "https://github.com/harbor-framework/harbor/pull/100", "author_github_handle": "davidheineman", "additions": 8656, "deletions": 0, @@ -1783,7 +2395,7 @@ }, { "pr_number": 99, - "pr_url": "https://github.com/laude-institute/harbor/pull/99", + "pr_url": "https://github.com/harbor-framework/harbor/pull/99", "author_github_handle": "omi-n", "additions": 1771, "deletions": 1, @@ -1792,7 +2404,7 @@ }, { "pr_number": 98, - "pr_url": "https://github.com/laude-institute/harbor/pull/98", + "pr_url": "https://github.com/harbor-framework/harbor/pull/98", "author_github_handle": "Slimshilin", "additions": 18, "deletions": 4, @@ -1801,7 +2413,7 @@ }, { "pr_number": 97, - "pr_url": "https://github.com/laude-institute/harbor/pull/97", + "pr_url": "https://github.com/harbor-framework/harbor/pull/97", "author_github_handle": "junhongmit", "additions": 3521, "deletions": 0, @@ -1810,7 +2422,7 @@ }, { "pr_number": 96, - "pr_url": "https://github.com/laude-institute/harbor/pull/96", + "pr_url": "https://github.com/harbor-framework/harbor/pull/96", "author_github_handle": "MichaelY310", "additions": 15684, "deletions": 0, @@ -1819,7 +2431,7 @@ }, { "pr_number": 95, - "pr_url": "https://github.com/laude-institute/harbor/pull/95", + "pr_url": "https://github.com/harbor-framework/harbor/pull/95", "author_github_handle": "li-boxuan", "additions": 0, "deletions": 6, @@ -1828,7 +2440,7 @@ }, { "pr_number": 94, - "pr_url": "https://github.com/laude-institute/harbor/pull/94", + "pr_url": "https://github.com/harbor-framework/harbor/pull/94", "author_github_handle": "ethanlshen", "additions": 9, "deletions": 1, @@ -1837,7 +2449,7 @@ }, { "pr_number": 93, - "pr_url": "https://github.com/laude-institute/harbor/pull/93", + "pr_url": "https://github.com/harbor-framework/harbor/pull/93", "author_github_handle": "li-boxuan", "additions": 235, "deletions": 8, @@ -1846,7 +2458,7 @@ }, { "pr_number": 92, - "pr_url": "https://github.com/laude-institute/harbor/pull/92", + "pr_url": "https://github.com/harbor-framework/harbor/pull/92", "author_github_handle": "StevenDillmann", "additions": 1971, "deletions": 0, @@ -1855,7 +2467,7 @@ }, { "pr_number": 90, - "pr_url": "https://github.com/laude-institute/harbor/pull/90", + "pr_url": "https://github.com/harbor-framework/harbor/pull/90", "author_github_handle": "LithiumDA", "additions": 1136, "deletions": 0, @@ -1864,7 +2476,7 @@ }, { "pr_number": 89, - "pr_url": "https://github.com/laude-institute/harbor/pull/89", + "pr_url": "https://github.com/harbor-framework/harbor/pull/89", "author_github_handle": "Dongzhikang", "additions": 2140, "deletions": 2, @@ -1873,7 +2485,7 @@ }, { "pr_number": 88, - "pr_url": "https://github.com/laude-institute/harbor/pull/88", + "pr_url": "https://github.com/harbor-framework/harbor/pull/88", "author_github_handle": "audreycs", "additions": 2158, "deletions": 0, @@ -1882,7 +2494,7 @@ }, { "pr_number": 86, - "pr_url": "https://github.com/laude-institute/harbor/pull/86", + "pr_url": "https://github.com/harbor-framework/harbor/pull/86", "author_github_handle": "harshraj172", "additions": 679, "deletions": 31, @@ -1891,7 +2503,7 @@ }, { "pr_number": 84, - "pr_url": "https://github.com/laude-institute/harbor/pull/84", + "pr_url": "https://github.com/harbor-framework/harbor/pull/84", "author_github_handle": "li-boxuan", "additions": 1093, "deletions": 609, @@ -1900,7 +2512,7 @@ }, { "pr_number": 83, - "pr_url": "https://github.com/laude-institute/harbor/pull/83", + "pr_url": "https://github.com/harbor-framework/harbor/pull/83", "author_github_handle": "Slimshilin", "additions": 178, "deletions": 0, @@ -1909,7 +2521,7 @@ }, { "pr_number": 82, - "pr_url": "https://github.com/laude-institute/harbor/pull/82", + "pr_url": "https://github.com/harbor-framework/harbor/pull/82", "author_github_handle": "Slimshilin", "additions": 4, "deletions": 19, @@ -1918,7 +2530,7 @@ }, { "pr_number": 81, - "pr_url": "https://github.com/laude-institute/harbor/pull/81", + "pr_url": "https://github.com/harbor-framework/harbor/pull/81", "author_github_handle": "li-boxuan", "additions": 42, "deletions": 46, @@ -1927,7 +2539,7 @@ }, { "pr_number": 79, - "pr_url": "https://github.com/laude-institute/harbor/pull/79", + "pr_url": "https://github.com/harbor-framework/harbor/pull/79", "author_github_handle": "li-boxuan", "additions": 6, "deletions": 1, @@ -1936,7 +2548,7 @@ }, { "pr_number": 78, - "pr_url": "https://github.com/laude-institute/harbor/pull/78", + "pr_url": "https://github.com/harbor-framework/harbor/pull/78", "author_github_handle": "li-boxuan", "additions": 303, "deletions": 13, @@ -1945,7 +2557,7 @@ }, { "pr_number": 77, - "pr_url": "https://github.com/laude-institute/harbor/pull/77", + "pr_url": "https://github.com/harbor-framework/harbor/pull/77", "author_github_handle": "harshraj172", "additions": 428, "deletions": 19, @@ -1954,7 +2566,7 @@ }, { "pr_number": 76, - "pr_url": "https://github.com/laude-institute/harbor/pull/76", + "pr_url": "https://github.com/harbor-framework/harbor/pull/76", "author_github_handle": "li-boxuan", "additions": 20, "deletions": 11, @@ -1963,7 +2575,7 @@ }, { "pr_number": 75, - "pr_url": "https://github.com/laude-institute/harbor/pull/75", + "pr_url": "https://github.com/harbor-framework/harbor/pull/75", "author_github_handle": "pfbyjy", "additions": 52, "deletions": 4, @@ -1972,7 +2584,7 @@ }, { "pr_number": 74, - "pr_url": "https://github.com/laude-institute/harbor/pull/74", + "pr_url": "https://github.com/harbor-framework/harbor/pull/74", "author_github_handle": "ibercovich", "additions": 2, "deletions": 2, @@ -1981,7 +2593,7 @@ }, { "pr_number": 73, - "pr_url": "https://github.com/laude-institute/harbor/pull/73", + "pr_url": "https://github.com/harbor-framework/harbor/pull/73", "author_github_handle": "ibercovich", "additions": 7, "deletions": 7, @@ -1990,7 +2602,7 @@ }, { "pr_number": 71, - "pr_url": "https://github.com/laude-institute/harbor/pull/71", + "pr_url": "https://github.com/harbor-framework/harbor/pull/71", "author_github_handle": "li-boxuan", "additions": 787, "deletions": 25, @@ -1999,7 +2611,7 @@ }, { "pr_number": 70, - "pr_url": "https://github.com/laude-institute/harbor/pull/70", + "pr_url": "https://github.com/harbor-framework/harbor/pull/70", "author_github_handle": "alexgshaw", "additions": 2810, "deletions": 1516, @@ -2008,7 +2620,7 @@ }, { "pr_number": 69, - "pr_url": "https://github.com/laude-institute/harbor/pull/69", + "pr_url": "https://github.com/harbor-framework/harbor/pull/69", "author_github_handle": "digitsisyph", "additions": 1714, "deletions": 1, @@ -2017,7 +2629,7 @@ }, { "pr_number": 68, - "pr_url": "https://github.com/laude-institute/harbor/pull/68", + "pr_url": "https://github.com/harbor-framework/harbor/pull/68", "author_github_handle": "ibercovich", "additions": 3, "deletions": 1, @@ -2026,7 +2638,7 @@ }, { "pr_number": 65, - "pr_url": "https://github.com/laude-institute/harbor/pull/65", + "pr_url": "https://github.com/harbor-framework/harbor/pull/65", "author_github_handle": "li-boxuan", "additions": 915, "deletions": 4, @@ -2035,7 +2647,7 @@ }, { "pr_number": 62, - "pr_url": "https://github.com/laude-institute/harbor/pull/62", + "pr_url": "https://github.com/harbor-framework/harbor/pull/62", "author_github_handle": "li-boxuan", "additions": 19, "deletions": 5, @@ -2044,7 +2656,7 @@ }, { "pr_number": 60, - "pr_url": "https://github.com/laude-institute/harbor/pull/60", + "pr_url": "https://github.com/harbor-framework/harbor/pull/60", "author_github_handle": "li-boxuan", "additions": 3134, "deletions": 553, @@ -2053,7 +2665,7 @@ }, { "pr_number": 58, - "pr_url": "https://github.com/laude-institute/harbor/pull/58", + "pr_url": "https://github.com/harbor-framework/harbor/pull/58", "author_github_handle": "harshraj172", "additions": 3052, "deletions": 160, @@ -2062,7 +2674,7 @@ }, { "pr_number": 56, - "pr_url": "https://github.com/laude-institute/harbor/pull/56", + "pr_url": "https://github.com/harbor-framework/harbor/pull/56", "author_github_handle": "li-boxuan", "additions": 1176, "deletions": 0, @@ -2071,7 +2683,7 @@ }, { "pr_number": 55, - "pr_url": "https://github.com/laude-institute/harbor/pull/55", + "pr_url": "https://github.com/harbor-framework/harbor/pull/55", "author_github_handle": "li-boxuan", "additions": 12, "deletions": 8, @@ -2080,7 +2692,7 @@ }, { "pr_number": 52, - "pr_url": "https://github.com/laude-institute/harbor/pull/52", + "pr_url": "https://github.com/harbor-framework/harbor/pull/52", "author_github_handle": "alexgshaw", "additions": 4, "deletions": 0, @@ -2089,7 +2701,7 @@ }, { "pr_number": 51, - "pr_url": "https://github.com/laude-institute/harbor/pull/51", + "pr_url": "https://github.com/harbor-framework/harbor/pull/51", "author_github_handle": "li-boxuan", "additions": 15, "deletions": 17, @@ -2098,7 +2710,7 @@ }, { "pr_number": 50, - "pr_url": "https://github.com/laude-institute/harbor/pull/50", + "pr_url": "https://github.com/harbor-framework/harbor/pull/50", "author_github_handle": "li-boxuan", "additions": 210, "deletions": 0, @@ -2107,7 +2719,7 @@ }, { "pr_number": 49, - "pr_url": "https://github.com/laude-institute/harbor/pull/49", + "pr_url": "https://github.com/harbor-framework/harbor/pull/49", "author_github_handle": "neginraoof", "additions": 99, "deletions": 55, @@ -2116,7 +2728,7 @@ }, { "pr_number": 48, - "pr_url": "https://github.com/laude-institute/harbor/pull/48", + "pr_url": "https://github.com/harbor-framework/harbor/pull/48", "author_github_handle": "li-boxuan", "additions": 616, "deletions": 988, @@ -2125,7 +2737,7 @@ }, { "pr_number": 47, - "pr_url": "https://github.com/laude-institute/harbor/pull/47", + "pr_url": "https://github.com/harbor-framework/harbor/pull/47", "author_github_handle": "ibercovich", "additions": 269, "deletions": 2, @@ -2134,7 +2746,7 @@ }, { "pr_number": 46, - "pr_url": "https://github.com/laude-institute/harbor/pull/46", + "pr_url": "https://github.com/harbor-framework/harbor/pull/46", "author_github_handle": "dines-rl", "additions": 275, "deletions": 1, @@ -2143,7 +2755,7 @@ }, { "pr_number": 45, - "pr_url": "https://github.com/laude-institute/harbor/pull/45", + "pr_url": "https://github.com/harbor-framework/harbor/pull/45", "author_github_handle": "li-boxuan", "additions": 373, "deletions": 27, @@ -2152,7 +2764,7 @@ }, { "pr_number": 44, - "pr_url": "https://github.com/laude-institute/harbor/pull/44", + "pr_url": "https://github.com/harbor-framework/harbor/pull/44", "author_github_handle": "neginraoof", "additions": 3752, "deletions": 191, @@ -2161,7 +2773,7 @@ }, { "pr_number": 43, - "pr_url": "https://github.com/laude-institute/harbor/pull/43", + "pr_url": "https://github.com/harbor-framework/harbor/pull/43", "author_github_handle": "alexgshaw", "additions": 1939, "deletions": 864, @@ -2170,7 +2782,7 @@ }, { "pr_number": 42, - "pr_url": "https://github.com/laude-institute/harbor/pull/42", + "pr_url": "https://github.com/harbor-framework/harbor/pull/42", "author_github_handle": "penfever", "additions": 1586, "deletions": 4, @@ -2179,7 +2791,7 @@ }, { "pr_number": 40, - "pr_url": "https://github.com/laude-institute/harbor/pull/40", + "pr_url": "https://github.com/harbor-framework/harbor/pull/40", "author_github_handle": "TheMikeMerrill", "additions": 13, "deletions": 6, @@ -2188,7 +2800,7 @@ }, { "pr_number": 38, - "pr_url": "https://github.com/laude-institute/harbor/pull/38", + "pr_url": "https://github.com/harbor-framework/harbor/pull/38", "author_github_handle": "EtashGuha", "additions": 5, "deletions": 1, @@ -2197,7 +2809,7 @@ }, { "pr_number": 37, - "pr_url": "https://github.com/laude-institute/harbor/pull/37", + "pr_url": "https://github.com/harbor-framework/harbor/pull/37", "author_github_handle": "li-boxuan", "additions": 9, "deletions": 4, @@ -2206,7 +2818,7 @@ }, { "pr_number": 36, - "pr_url": "https://github.com/laude-institute/harbor/pull/36", + "pr_url": "https://github.com/harbor-framework/harbor/pull/36", "author_github_handle": "penfever", "additions": 201, "deletions": 1, @@ -2215,7 +2827,7 @@ }, { "pr_number": 33, - "pr_url": "https://github.com/laude-institute/harbor/pull/33", + "pr_url": "https://github.com/harbor-framework/harbor/pull/33", "author_github_handle": "li-boxuan", "additions": 25, "deletions": 1, @@ -2224,7 +2836,7 @@ }, { "pr_number": 32, - "pr_url": "https://github.com/laude-institute/harbor/pull/32", + "pr_url": "https://github.com/harbor-framework/harbor/pull/32", "author_github_handle": "li-boxuan", "additions": 32, "deletions": 0, @@ -2233,7 +2845,7 @@ }, { "pr_number": 31, - "pr_url": "https://github.com/laude-institute/harbor/pull/31", + "pr_url": "https://github.com/harbor-framework/harbor/pull/31", "author_github_handle": "li-boxuan", "additions": 57, "deletions": 198, @@ -2242,7 +2854,7 @@ }, { "pr_number": 30, - "pr_url": "https://github.com/laude-institute/harbor/pull/30", + "pr_url": "https://github.com/harbor-framework/harbor/pull/30", "author_github_handle": "li-boxuan", "additions": 2, "deletions": 3, @@ -2251,7 +2863,7 @@ }, { "pr_number": 29, - "pr_url": "https://github.com/laude-institute/harbor/pull/29", + "pr_url": "https://github.com/harbor-framework/harbor/pull/29", "author_github_handle": "li-boxuan", "additions": 1421, "deletions": 177, @@ -2260,7 +2872,7 @@ }, { "pr_number": 27, - "pr_url": "https://github.com/laude-institute/harbor/pull/27", + "pr_url": "https://github.com/harbor-framework/harbor/pull/27", "author_github_handle": "TheMikeMerrill", "additions": 20, "deletions": 11, @@ -2269,7 +2881,7 @@ }, { "pr_number": 26, - "pr_url": "https://github.com/laude-institute/harbor/pull/26", + "pr_url": "https://github.com/harbor-framework/harbor/pull/26", "author_github_handle": "cliangyu", "additions": 1197, "deletions": 19, @@ -2278,7 +2890,7 @@ }, { "pr_number": 24, - "pr_url": "https://github.com/laude-institute/harbor/pull/24", + "pr_url": "https://github.com/harbor-framework/harbor/pull/24", "author_github_handle": "alexgshaw", "additions": 1380, "deletions": 2335, @@ -2287,7 +2899,7 @@ }, { "pr_number": 22, - "pr_url": "https://github.com/laude-institute/harbor/pull/22", + "pr_url": "https://github.com/harbor-framework/harbor/pull/22", "author_github_handle": "alexgshaw", "additions": 612, "deletions": 151, @@ -2296,7 +2908,7 @@ }, { "pr_number": 21, - "pr_url": "https://github.com/laude-institute/harbor/pull/21", + "pr_url": "https://github.com/harbor-framework/harbor/pull/21", "author_github_handle": "tyler-griggs", "additions": 2, "deletions": 1, @@ -2305,7 +2917,7 @@ }, { "pr_number": 20, - "pr_url": "https://github.com/laude-institute/harbor/pull/20", + "pr_url": "https://github.com/harbor-framework/harbor/pull/20", "author_github_handle": "TheMikeMerrill", "additions": 204, "deletions": 71, @@ -2314,7 +2926,7 @@ }, { "pr_number": 19, - "pr_url": "https://github.com/laude-institute/harbor/pull/19", + "pr_url": "https://github.com/harbor-framework/harbor/pull/19", "author_github_handle": "TheMikeMerrill", "additions": 1409, "deletions": 906, @@ -2323,7 +2935,7 @@ }, { "pr_number": 18, - "pr_url": "https://github.com/laude-institute/harbor/pull/18", + "pr_url": "https://github.com/harbor-framework/harbor/pull/18", "author_github_handle": "alexgshaw", "additions": 223, "deletions": 55, @@ -2332,7 +2944,7 @@ }, { "pr_number": 16, - "pr_url": "https://github.com/laude-institute/harbor/pull/16", + "pr_url": "https://github.com/harbor-framework/harbor/pull/16", "author_github_handle": "TheMikeMerrill", "additions": 3453, "deletions": 281, @@ -2341,7 +2953,7 @@ }, { "pr_number": 14, - "pr_url": "https://github.com/laude-institute/harbor/pull/14", + "pr_url": "https://github.com/harbor-framework/harbor/pull/14", "author_github_handle": "alexgshaw", "additions": 142, "deletions": 0, @@ -2350,7 +2962,7 @@ }, { "pr_number": 9, - "pr_url": "https://github.com/laude-institute/harbor/pull/9", + "pr_url": "https://github.com/harbor-framework/harbor/pull/9", "author_github_handle": "alexgshaw", "additions": 294, "deletions": 0, @@ -2359,7 +2971,7 @@ }, { "pr_number": 2, - "pr_url": "https://github.com/laude-institute/harbor/pull/2", + "pr_url": "https://github.com/harbor-framework/harbor/pull/2", "author_github_handle": "TheMikeMerrill", "additions": 1037, "deletions": 77, @@ -2368,7 +2980,7 @@ }, { "pr_number": 1, - "pr_url": "https://github.com/laude-institute/harbor/pull/1", + "pr_url": "https://github.com/harbor-framework/harbor/pull/1", "author_github_handle": "alexgshaw", "additions": 518, "deletions": 56, diff --git a/utils/contributors/data/verified_github_users_data.json b/utils/contributors/data/verified_github_users_data.json new file mode 100644 index 0000000..7d0e890 --- /dev/null +++ b/utils/contributors/data/verified_github_users_data.json @@ -0,0 +1,311 @@ +[ + { + "github_handle": "li-boxuan", + "name": "Boxuan Li", + "affiliation": "Independent", + "email": "boxuanli@alumni.cmu.edu", + "rank": 10000000, + "role": "Co-lead" + }, + { + "github_handle": "alexgshaw", + "name": "Alex Shaw", + "affiliation": "Laude Institute", + "email": "alexgshaw64@gmail.com", + "rank": 10000000, + "role": "Co-lead" + }, + { + "github_handle": "penfever", + "name": "Benjamin Feuer", + "affiliation": "Stanford University", + "email": "bf996@nyu.edu" + }, + { + "github_handle": "StevenDillmann", + "name": "Steven Dillmann", + "affiliation": "Stanford University", + "email": "stevendi@stanford.edu" + }, + { + "github_handle": "CharlieFRuan", + "name": "Charlie Ruan", + "affiliation": "UC Berkeley", + "email": "charlieruan@berkeley.edu" + }, + { + "github_handle": "ibercovich", + "name": "Ivan Bercovich", + "affiliation": "Independent", + "email": "ibercovich@gmail.com" + }, + { + "github_handle": "Slimshilin", + "name": "Lin Shi", + "affiliation": "Cornell Tech", + "email": "ls2282@cornell.edu", + "adapter_rank": 110000, + "role": "Adapter Lead" + }, + { + "github_handle": "linhaowei1", + "name": "Haowei Lin", + "affiliation": "Peking University", + "email": "linhaowei@pku.edu.cn", + "adapter_rank": 100000, + "role": "Co-lead" + }, + { + "github_handle": "TheMikeMerrill", + "name": "Mike A. Merrill", + "affiliation": "Stanford University", + "email": "mikeam1@stanford.edu", + "rank": 10000000, + "role": "Co-lead" + }, + { + "github_handle": "harshraj172", + "name": "Harsh Raj", + "affiliation": "Northeastern University", + "email": "harsh777111raj@gmail.com" + }, + { + "github_handle": "neginraoof", + "name": "Negin Raoof", + "affiliation": "UC Berkeley", + "email": "negin_raoof@berkeley.edu" + }, + { + "github_handle": "chenzizhao", + "name": "Zizhao Chen", + "affiliation": "Cornell Tech", + "email": "czz@cs.cornell.edu" + }, + { + "github_handle": "mieciu", + "name": "Przemys\u0142aw Hejman", + "affiliation": "Quesma", + "email": "przemyslaw.hejman@quesma.com" + }, + { + "github_handle": "LithiumDA", + "name": "Shanda Li", + "affiliation": "Carnegie Mellon University", + "email": "shandal@cs.cmu.edu" + }, + { + "github_handle": "james-rl", + "name": "James Chainey", + "affiliation": "Runloop", + "email": "james@runloop.ai" + }, + { + "github_handle": "AkshayVenkataraman", + "name": "Akshay Venkataraman", + "affiliation": "Leeds Beckett University", + "email": "akshayv2k@gmail.com" + }, + { + "github_handle": "jakozaur", + "name": "Jacek Migdal", + "affiliation": "Quesma", + "email": "jacek@quesma.com" + }, + { + "github_handle": "dot-agi", + "name": "Pratyush Shukla", + "affiliation": "New York University", + "email": "ps4534@nyu.edu" + }, + { + "github_handle": "michaelrglass", + "name": "Michael Glass", + "affiliation": "IBM", + "email": "mrglass@us.ibm.com" + }, + { + "github_handle": "DannyGooo", + "name": "Yonghui Liu", + "affiliation": "Australian National University", + "email": "Yonghui.Liu@anu.edu.au" + }, + { + "github_handle": "ZhengShenghan", + "name": "Shenghan Zheng", + "affiliation": "Dartmouth College", + "email": "shenghan.zheng.gr@dartmouth.edu" + }, + { + "github_handle": "likaixin2000", + "name": "Kaixin Li", + "affiliation": "National University of Singapore", + "email": "likaixin@u.nus.edu" + }, + { + "github_handle": "killthefullmoon", + "name": "Hui Shen", + "affiliation": "University of Michigan", + "email": "killthefullmoon@gmail.com" + }, + { + "github_handle": "xianliu", + "name": "Xian Liu", + "affiliation": "Meetchances", + "email": "lxjsj@fedoraproject.org" + }, + { + "github_handle": "hanxu12", + "name": "Han Xu", + "affiliation": "University of Illinois Urbana-Champaign", + "email": "hanxu8@illinois.edu" + }, + { + "github_handle": "Ternura143", + "name": "Zixuan Zhu", + "affiliation": "Nanyang Technological University", + "email": "zzx18742002@gmail.com", + "adapter_rank": 1000 + }, + { + "github_handle": "EstelYang", + "name": "Rui Yang", + "affiliation": "Peking University", + "email": "ypyangrui@pku.edu.cn" + }, + { + "github_handle": "Hangzhi", + "name": "Yiwei Dai", + "affiliation": "Cornell University", + "email": "yd223@cornell.edu", + "adapter_rank": 500 + }, + { + "github_handle": "terryyz", + "name": "Terry Yue Zhuo", + "affiliation": "Monash University", + "email": "terryzhuo25@gmail.com" + }, + { + "github_handle": "Rebabit", + "name": "Rebecca Deng", + "affiliation": "Cornell Tech", + "email": "rd629@cornell.edu" + }, + { + "github_handle": "Waterpine", + "name": "Song Bian", + "affiliation": "University of Wisconsin-Madison", + "email": "sbian8@wisc.edu" + }, + { + "github_handle": "avelanarius", + "name": "Piotr Grabowski", + "affiliation": "Quesma", + "email": "piotr@quesma.com" + }, + { + "github_handle": "bstee615", + "name": "Benjamin Steenhoek", + "affiliation": "Microsoft", + "email": "benjaminjsteenhoek@gmail.com" + }, + { + "github_handle": "XuandongZhao", + "name": "Xuandong Zhao", + "affiliation": "UC Berkeley", + "email": "csxuandongzhao@gmail.com" + }, + { + "github_handle": "kobe0938", + "name": "Xiaokun Chen", + "affiliation": "Stanford University", + "email": "xiaokunchen0@gmail.com" + }, + { + "github_handle": "aht", + "name": "Hai-Anh Trinh", + "affiliation": "Independent", + "email": "anh.hai.trinh@gmail.com" + }, + { + "github_handle": "robertzhidealx", + "name": "Robert Zhang", + "affiliation": "University of Texas at Austin", + "email": "robertz@cs.utexas.edu" + }, + { + "github_handle": "crystalxyz", + "name": "Crystal Zhou", + "affiliation": "Cornell University", + "email": "xz957@cornell.edu", + "adapter_rank": 1000 + }, + { + "github_handle": "orfeas-menis", + "name": "Orfeas Menis Mastromichalakis", + "affiliation": "Instituto de Telecomunica\u00e7\u00f5es", + "email": "menisorfeas@gmail.com" + }, + { + "github_handle": "davidheineman", + "name": "David Heineman", + "affiliation": "Allen Institute for AI", + "email": "davidh@allenai.org" + }, + { + "github_handle": "omi-n", + "name": "Nabil Omi", + "affiliation": "University of Washington", + "email": "nabilomi@cs.washington.edu" + }, + { + "github_handle": "junhongmit", + "name": "Junhong Lin", + "affiliation": "Massachusetts Institute of Technology", + "email": "junhonghust@gmail.com" + }, + { + "github_handle": "MichaelY310", + "name": "Michael Yang", + "affiliation": "UC Santa Barbara", + "email": "yang335@ucsb.edu" + }, + { + "github_handle": "ethanlshen", + "name": "Ethan Shen", + "affiliation": "University of Washington", + "email": "ethans03@cs.washington.edu" + }, + { + "github_handle": "Dongzhikang", + "name": "Zhikang Dong", + "affiliation": "Stony Brook University", + "email": "zhikang.dong.1@stonybrook.edu" + }, + { + "github_handle": "audreycs", + "name": "Yuxin Wang", + "affiliation": "Dartmouth College", + "email": "yuxin.wang.gr@dartmouth.edu" + }, + { + "github_handle": "ekellbuch", + "name": "Kelly Buchanan", + "affiliation": "Stanford University", + "email": "ekb@stanford.edu" + }, + { + "github_handle": "speed1313", + "name": "Issa Sugiura", + "affiliation": "Kyoto University", + "email": "sugiura.issa.q29@kyoto-u.jp" + }, + { + "github_handle": "ludwigschmidt", + "name": "Ludwig Schmidt", + "affiliation": "Stanford University", + "email": "ludwigschmidt2@gmail.com", + "role": "Advisor", + "rank": -100 + } +] \ No newline at end of file diff --git a/collect_pr_data.py b/utils/contributors/src/collect_pr_data.py similarity index 95% rename from collect_pr_data.py rename to utils/contributors/src/collect_pr_data.py index fa6ceba..342ade6 100644 --- a/collect_pr_data.py +++ b/utils/contributors/src/collect_pr_data.py @@ -6,10 +6,11 @@ """ import json +import os import subprocess import sys - +DATA_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__)), "..", "data") REPO = "laude-institute/harbor" PER_PAGE = 100 @@ -107,7 +108,7 @@ def main(): # Sort by PR number descending pr_data.sort(key=lambda x: x["pr_number"], reverse=True) - output_path = "raw_pr_data.json" + output_path = os.path.join(DATA_DIR, "raw_pr_data.json") with open(output_path, "w") as f: json.dump(pr_data, f, indent=2) diff --git a/collect_user_data.py b/utils/contributors/src/collect_user_data.py similarity index 86% rename from collect_user_data.py rename to utils/contributors/src/collect_user_data.py index 42e3d04..5e9ea3e 100644 --- a/collect_user_data.py +++ b/utils/contributors/src/collect_user_data.py @@ -9,9 +9,12 @@ """ import json +import os import subprocess import sys +DATA_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__)), "..", "data") + def get_user_info(handle: str) -> dict: """Fetch GitHub user profile.""" @@ -24,7 +27,7 @@ def get_user_info(handle: str) -> dict: def main(): - with open("raw_pr_data.json") as f: + with open(os.path.join(DATA_DIR, "raw_pr_data.json")) as f: pr_data = json.load(f) # Collect unique author handles @@ -43,7 +46,7 @@ def main(): "affiliation": info.get("company") or "", }) - output_path = "raw_github_users_data.json" + output_path = os.path.join(DATA_DIR, "raw_github_users_data.json") with open(output_path, "w") as f: json.dump(users, f, indent=2) diff --git a/utils/contributors/src/generate_contributions.py b/utils/contributors/src/generate_contributions.py new file mode 100644 index 0000000..78d67ad --- /dev/null +++ b/utils/contributors/src/generate_contributions.py @@ -0,0 +1,123 @@ +#!/usr/bin/env python3 +"""Generate harbor_contribution.json by merging PR data and user data. + +Reads raw_pr_data.json and raw_github_users_data.json, groups by author, +ranks by PR count (ties broken by last name), and outputs harbor_contribution.json. + +Output format per contributor: +{ + "github_handle": str, + "email": str, + "name": str, + "affiliation": str, + "pr_count": int, + "total_additions": int, + "total_deletions": int, + "pr_list": [ + {"pr_url": str, "pr_title": str, "pr_type": str} + ] +} +""" + +import json +import os + +DATA_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__)), "..", "data") + + +def main(): + with open(os.path.join(DATA_DIR, "raw_pr_data.json")) as f: + pr_data = json.load(f) + + with open(os.path.join(DATA_DIR, "raw_github_users_data.json")) as f: + raw_user_data = json.load(f) + + with open(os.path.join(DATA_DIR, "verified_github_users_data.json")) as f: + verified_user_data = json.load(f) + + # Build user lookup: verified data takes precedence over raw GitHub data + user_map = {u["github_handle"]: u for u in raw_user_data} + for u in verified_user_data: + user_map[u["github_handle"]] = u + + # Group PRs by author + contributors: dict[str, dict] = {} + + for pr in pr_data: + handle = pr["author_github_handle"] + + if handle not in contributors: + user_info = user_map.get(handle, {}) + contributors[handle] = { + "github_handle": handle, + "email": user_info.get("email", ""), + "name": user_info.get("name", handle), + "affiliation": user_info.get("affiliation", ""), + "role": user_info.get("role", "Contributor"), + "rank": user_info.get("rank", 0), + "adapter_rank": user_info.get("adapter_rank", 0), + "pr_count": 0, + "adapter_pr_count": 0, + "non_adapter_pr_count": 0, + "total_additions": 0, + "total_deletions": 0, + "pr_list": [], + } + + c = contributors[handle] + c["pr_count"] += 1 + if pr["pr_type"] == "adapter": + c["adapter_pr_count"] += 1 + else: + c["non_adapter_pr_count"] += 1 + c["total_additions"] += pr["additions"] + c["total_deletions"] += pr["deletions"] + c["pr_list"].append({ + "pr_url": pr["pr_url"], + "pr_title": pr["pr_title"], + "pr_type": pr["pr_type"], + }) + + # Insert verified users who have no PRs (e.g. advisors) + for u in verified_user_data: + handle = u["github_handle"] + if handle not in contributors: + contributors[handle] = { + "github_handle": handle, + "email": u.get("email", ""), + "name": u.get("name", handle), + "affiliation": u.get("affiliation", ""), + "role": u.get("role", "Contributor"), + "rank": u.get("rank", 0), + "adapter_rank": u.get("adapter_rank", 0), + "pr_count": 0, + "adapter_pr_count": 0, + "non_adapter_pr_count": 0, + "total_additions": 0, + "total_deletions": 0, + "pr_list": [], + } + + def last_name(c: dict) -> str: + """Extract last name (last whitespace-separated token) for tiebreaking.""" + parts = c["name"].strip().split() + return parts[-1].lower() if parts else c["github_handle"].lower() + + # Rank by PR count (descending), then by last name (ascending) for ties + ranked = sorted(contributors.values(), key=lambda x: (-x["pr_count"], last_name(x))) + + output_path = os.path.join(DATA_DIR, "harbor_contribution.json") + with open(output_path, "w") as f: + json.dump(ranked, f, indent=2) + + print(f"Wrote {len(ranked)} contributors to {output_path}") + + # Print summary + print("\nTop 10 contributors by PR count:") + for i, c in enumerate(ranked[:10]): + print(f" {i + 1}. {c['name']} (@{c['github_handle']}) - " + f"{c['pr_count']} PRs, +{c['total_additions']}/-{c['total_deletions']}") + + +if __name__ == "__main__": + main()