What we learned from other tools, and what we built

In October 2026 we surveyed the tools, data sources, and research around open source onboarding and Google Summer of Code, read the strongest projects' source code, and turned the findings into features. This page keeps the useful part: where ideas came from, why we adopted or rejected them, and which commands they became. No code was copied; licenses are noted where an idea came from a specific project.

Data sources

Source What we use it for Notes
summerofcode.withgoogle.com public JSON Program timeline, accepted organizations The same endpoints the official site's own front end calls. Only completed projects are exposed in the archive.
GSoC Organizations archive Multi-year history, slot counts, past project titles A hand-updated snapshot that lags announcements by days to weeks and drops mentor names and per-project tags, so we treat the official site as primary.
GitHub REST API Repositories, issues, timelines, trees, commits, pull request files, code search One recursive tree call returns a whole repository; an issue's timeline reveals the pull request that closed it.

Ideas we adopted

Ideas we rejected

Findings by stream, checked

Each stream's report was long; these are the facts that shaped decisions, with the ones re-checked directly by the maintainer session marked "re-checked". On 2026-10-21 the maintainer session also re-read the source files behind eight project rows in the table below; their Status cells name the file and what it showed.

GSoC tools and data. The official site's own JSON covers programs, organizations and an archive of completed projects with mentor names, code URLs and tags (re-checked: 1,191 completed projects for 2025). The community archive mirrors it by hand with a lag of days to weeks and without mentors. Of 183 GSoC 2026 ideas pages, 168 fetched; a heading-plus-label parser extracts clean blocks from about a third (re-checked live on MDAnalysis, KDE, CNCF, PSF, Dart, OpenStreetMap). 75 pages mention AI tools. Re-checked in full on 2026-10-21 by running ideas on all 183 organizations with the current parser: 15 pages are unreachable to scripts, 124 read as labelled or heading blocks, 20 as umbrella indexes (17 of them followed to member pages), 5 as issue trackers, and 19 stay unstructured (JavaScript applications, Confluence and Discourse pages, Google Docs written as prose). 143 organizations yield at least one idea, 1,605 ideas in all, 833 of them with enough labels to be marked high confidence, and 34 pages state an AI rule the detector recognises. The run found four parser gaps that the earlier one-third figure hid, all fixed: pages that omit the closing head tag or never close a navigation block were read as empty (JabRef, Catrobat and others), reStructuredText and setext underlined headings were dropped (Synfig), titles marked up as styled divs instead of heading tags were invisible (LLVM), and label names outside the vocabulary such as "Skills required/preferred" or "Confirmed Mentor" were ignored. Two more followed: a getting-started page with one stray label in its prose stopped being an index, so an index is now a page whose blocks carry no high-confidence labels, and a page whose links lead to no ideas falls back to its own prose blocks (JabRef describes ten ideas that way). Before those fixes the same run gave 129 organizations with ideas and 1,475 ideas. Three organizations read fewer ideas than before (DBpedia, MalariaGEN, and GNU Octave, whose project list sits behind a site-relative wiki link the parser does not resolve); resolving relative links was tried and reverted because it flooded umbrella indexes with navigation links. No GSoC-specific command-line tool, bot, MCP server or Agent Skill exists on GitHub: searches for "gsoc mcp", "summer of code mcp server" and "gsoc skill" on 2026-10-21 return only this project and one unrelated application repository (re-checked).

Beginner-issue finders. Every shipping finder is a cron-fed label crawl with no availability check; several are dead or pivoted (goodfirstissues.com, contribute.dev, Quine, gfibot.io). Claims in large organizations are bot commands with expiry (@zulipbot claim, /assign, .take, pandas /take with a seven-day release). GitHub's advanced issue search treats repeated qualifiers as AND (re-checked: repeated org: returns 0, (org:a OR org:b) returns 120). 48 organization repositories use 38 spellings of "good first issue" plus difficulty, effort and size ladders. Re-checked on 2026-10-21 on the most-starred repository of each of the 153 organizations with a GitHub owner: 149 could be read, 114 carry a label that names beginners, 94 carry one the tool already knew. "good first issue" sits on 83 repositories and "help wanted" on 79, then "easy" (11), "good-first-issue" (7), and a long tail of one-offs such as "good_for_beginners", "newbie-friendly", "first contrib", "difficulty: starter" and "good first issue (taken)". Two changes followed: issues --repo falls back to any label that names beginners when none of the known spellings exist, and a reservation word inside a longer label (that "(taken)" suffix) counts as a claim.

Repository health. author_association is evaluated at query time, so a merged author becomes CONTRIBUTOR and "first-time contributors merged" was zero by construction (re-checked on sympy: 23 CONTRIBUTOR plus 8 MEMBER among merged, zero first-timers). Time to first human response explains most of a pull request's lifetime; stars reduce acceptance odds. CLA and DCO requirements are detectable from check names (cla/google, EasyCLA, DCO) and commit trailers. ecosyste.ms offers a generous zero-token data source but no response-time data.

Codebase onboarding. No existing tool addresses "I picked a repository, now what?"; packers dump everything and generated wikis draw public complaints from maintainers. One recursive tree call, one timeline call and one pull-request-files call are enough to find what a fix touched (re-checked on matplotlib: five of six similar closed issues had a traceable fix pull request, all touching tests). Full paths beat trees for avoiding invented files.

MCP and Agent Skills. The server spoke the current protocol but used none of it: no annotations or titles, every response sent twice through a wrapped output schema, errors as result JSON. Clients skip confirmation for read-only tools. Local stdio servers are distributed as plugins; the skill format allows license, compatibility and metadata fields. Untrusted text should be cleaned of hidden Unicode and structurally separated from server output. (All re-checked over stdio after the changes: 22 tools with titles and annotations, four prompts, four resources, errors flagged.)

Onboarding science. Prior engagement is what organizations score; about one proposal in twenty succeeds (1,142 of 23,371 in 2026, from Google's own announcement). The five studies cited below were re-opened on 2026-10-21: the titles match, the Tan, Zhou and Sun paper does study 48,402 good first issues, and the Turzo, Sultana and Bosu paper does cover 1,155 GitHub projects and five Gerrit projects (both figures read from the PDFs). First patches land when they are small bug fixes with tests and the author answers review promptly. "Unclear how to start" and "no response" are the top newcomer barriers. Community contact belongs before claiming an issue, which is now the order of the journey. Weekly notes with no streak mechanics match what organizations ask for.

Other tools we checked

To check that nothing comparable was missed, on 2026-10-21 we ran about forty GitHub repository searches (gsoc, google summer of code, good first issue, open source onboarding, issue recommender, codebase onboarding, mcp server open source contribution, and similar), eight code searches over file contents (SKILL.md and AGENTS.md files that mention GSoC or good first issues, and MCP servers that call the official site), and a third pass for code that does what this project does: calls to the official archive API, timeline readers that look for linked pull requests, claim-phrase detectors, first-timer merge rates, and branch-rule readers. Every result with at least twenty stars and a push in the last two years was read (README, license, last push), 188 repositories in all, then scanned by file tree for skills, servers, and crawlers that the README did not advertise. The closest ones were read in source. Nothing found combines GSoC data, availability checks, and an assistant skill. The ones that mattered:

Everything else was looked at once (README, license, last push), with this verdict:

Repository Stars, license, last push Verdict
gsoc-cn/gsoc-cn 964, none, 2024-09 Chinese-language GSoC guide; reference only
idontknowjs/gsoc-web-projects 453, none, 2025-03 A hand-kept list of web organizations, made because the official site's technology filter misses projects; orgs --tech answers that from the official data
Codesee-io/oss-port and opensourcehub 65 and 23, MIT, 2023 and 2024 Contributor and maintainer matching site that moved and then stalled
version0chiro/Find-Me-Issues 140, MIT, 2024-10 Web label search; no availability data
apsinghdev/opensox, opensource-together 395 and 109; AGPL-3.0 and no license file; 2026-10 Hosted project finders by criteria, one with model-based recommendations; no availability data
divar-ir/ai-doc-gen, 403errors/repomind, cyanheads/repo-map 768, 291, 64; MIT, MIT, Apache-2.0; 2026 Generated documentation, chat with a repository, and per-file model notes: the generated-prose family rejected above
everestmz/llmcat 24, none, 2025-03 Repository outlines for prompts, like repomix
josix/awesome-claude-md 614, none, 2026-06 Examples of how projects brief assistants; this repository's AGENTS.md follows the same idea
aoci-spec/aoci-code 1,673, no license file, 2026-10 A Git-versioned codebase map written by the agent and served by a local MCP server; needs a checkout and is maintainer-side
danielroe/carpenter 76, MIT, 2026-10 Model-driven issue triage for Nuxt; maintainer-side
piyushpatelcodes/gssocFAQ-Bot 110, MIT, 2025-12 Discord FAQ bot for GirlScript Summer of Code; program-side
rishabh-bansal/GitStart, udit-001/Collaboration-For-Beginners 500 and 235, MIT, 2026-09 A practice pull request repository and a beginner guide; tutorials, not tooling
Gentleman-Skills, Skill_Seekers, ccpm 659, 15,193, 8,414; MIT; 2026 Skill collections and converters: distribution channels, not competitors
esoc2026, lumiis2/opportunity-tracker 730 and 113; none and MIT; 2026 Adjacent programs and calendars; pointers for people not selected
scalacenter/GoogleSummerOfCode, nrnb/GoogleSummerOfCode, Cloud-CV/GSoC-Ideas, NISYSLAB/Emory-BMI-GSoC 78, 167, 131, 113 Organization-side ideas kept as a README, as GitHub issues, as a Jekyll site, and as a repository with a decade of history; the first two layouts are read by ideas
jupyterhub/outreachy (archived), outreachy/creative-works-and-scripts 33 and 93 Organization-side Outreachy material
Mubelotix/SimRepo, gorse-io/gitrec 437 and 474; no license file and WTFPL; 2026-10 Star-based charts and recommendations; popularity ranking rejected above
lstsavr/repocare 99, MIT, 2026-09 Local-first 100-point maintenance report for maintainers

Evidence worth reading

Projects and sources examined

Checked on 2026-10-20 and 2026-10-21 by reading source, documentation, issues, or live endpoints. "Status" records what could and could not be verified. Ideas only; no code was reused.

Project or source License What it is What we took Status
summerofcode.withgoogle.com API Google terms The official site's own JSON: programs, organizations, archive of completed projects with mentors Timeline, organizations, mentors Verified live; 1,191 completed projects in the 2025 archive
nishantwrp/gsoc-organizations GPL-3.0 Community archive site and JSON API Multi-year history and slot counts (JSON only) Verified: hand-updated snapshot, days to weeks behind announcements, no mentor names; re-checked 2026-10-21: data arrives as hand-made commits (for example "projects announced for 2026" on 2026-05-14)
github/github-mcp-server MIT GitHub's official MCP server Content sanitising by default, tool annotations, compact results Verified from source; re-checked 2026-10-21 in pkg/sanitize/sanitize.go (Sanitize, FilterInvisibleCharacters, FilterHTMLTags, FilterCodeFenceMetadata)
modelcontextprotocol/servers MIT (transitioning to Apache-2.0) Reference servers Annotation constants, structured_output=False for text results, ToolError with hints Verified from source; re-checked 2026-10-21 in the fetch server (read_only_hint=True, structured_output=False, and subscriptions=False because its tool list never changes)
agentskills.io specification Apache-2.0 / CC-BY-4.0 Agent Skills format Frontmatter fields, .agents/skills convention Verified; re-checked 2026-10-21: the specification page names license, compatibility, metadata and allowed-tools
Aider-AI/aider Apache-2.0 Repository map for an editing assistant Identifier weighting, special files first, token budgets Verified from aider/repomap.py; re-checked 2026-10-21 (mentioned identifiers weigh ten times more, descriptive names of eight characters or longer get a boost, one personalisation score per file); not adopted as a dependency
OpenAutoCoder/Agentless MIT Issue localisation without agents Full paths, at most a few, never a nested tree Verified from source and the follow-up survey; re-checked 2026-10-21: the file-level prompt in agentless/fl/FL.py says "Please only provide the full path and return at most 5 files"
microsoft/codetour MIT Guided code tours in VS Code Reading plan pinned to a commit; orient --codetour writes a tour file Verified; re-checked 2026-10-21 against .tours/intro.tour (schema https://aka.ms/codetour-schema, steps with file, line and description)
yamadashy/repomix, coderamp-labs/gitingest MIT Repository packers Rejected: whole-repository dumps Verified; re-checked 2026-10-21: the repomix README says it packs the entire repository into a single file
DeepWiki (deepwiki-open) MIT (open version) Generated wikis Citation discipline; rejected generated prose Verified, including maintainer complaints on the OpenWrt and Scala forums (both threads re-opened 2026-10-21)
idosal/git-mcp, upstash/context7 Apache-2.0, MIT Documentation retrieval servers Fallback chains, cache hints; rejected unbounded fallbacks Verified from source; re-checked 2026-10-21 in Context7's packages/mcp/src/index.ts (resolve-library-id before query-docs, cacheHints, argument aliases so renamed parameters keep working)
ossf/scorecard Apache-2.0 Security and maintenance checks Reasons with counts; the Maintained rule Verified; public API covers only scanned repositories; re-checked 2026-10-21 in checks/evaluation/maintained.go (90-day look-back, one activity per week)
CHAOSS metrics CC-BY Community health definitions Time to first response, acceptance ratio, absence factor Verified; re-checked 2026-10-21: the website answers scripts with HTTP 403; the time metrics live in chaoss/wg-common under focus-areas/time and the 2021 release table in chaoss/website defines Time to First Response as the time between an activity needing attention and its first response
ecosyste.ms AGPL-3.0 (services) Open data about repositories, issues, commits Token-free committer counts in repo: newcomers who landed one commit, and the bus factor (pull request #33) Verified; adopted
codetriage/codetriage MIT One issue a day by email The digest in next Verified; re-checked 2026-10-21: the README promises one issue a day by email, and valid_for_user? in app/models/issue.rb skips issues with a pull request attached when the subscriber asks
deepsourcelabs/good-first-issue, up-for-grabs.net, forgoodfirstissue MIT, NOASSERTION, GitHub Label crawlers Confirmed none checks availability Verified from source; re-checked 2026-10-21: up-for-grabs keeps one YAML file per project under _data/projects/ with the project's own label and no availability data
osslab-pku/gfi-bot GPL-3.0 Research recommender (RecGFI) Feature ideas from the paper only Verified on 2026-10-21: 57 stars, last push 2026-04
rabbive/contrib-scout MIT Repository contribution report skill with scripts Abandoned-fix caveat Read in source on 2026-10-21 (SKILL.md, pr_census.py, issue_inventory.py)
drkrillo/good-first-issues Apache-2.0 Crawled CSV of good first issues with an MCP server Nothing; snapshot data cannot see claims Read in source on 2026-10-21 (app/mcp_server.py, README)
kpj2006/GSoC-Info-Assistant none stated AOSSIE's rules-only GSoC assistant skill Stricter organization rules govern Read in source on 2026-10-21
Outreachy GPL-3.0 (site) Internship applicant process Recorded contributions, two-project cap Verified from docs and models; re-checked 2026-10-21 in home/models.py (ProjectSkill with experience choices and a required, preferred or optional flag; Contribution)
cncf/mentoring Apache-2.0 GSoC and LFX ideas in one template Idea template vocabulary Verified; re-checked 2026-10-21: .github/ISSUE_TEMPLATE/lfx-program-proposal.yml asks for Technologies, Required/Desirable Skills, Mentors, Upstream Issue URL and Application Prerequisites
OWASP/Nest MIT Organization-side contributor platform Assignment-before-PR enforcement exists; availability checks matter Verified from source; re-checked 2026-10-21: .github/workflows/check-contribution.yaml checks commit sign-off, commit signature, issue assignee and issue reference, and closes pull requests that fail the last two
GSoC proposal archives (SammanSarkar/GSoC_archive_2025 and others) MIT (repositories) Accepted proposals as PDFs Section census only; never bundled (personal data); ideas links matching folders in five archives, including the year-sorted COPS-IITBHU archive found by the census below Verified; 43 PDFs read
Smaller label crawlers (cutenode/good-first-issue, EddieHubCommunity/good-first-issue-finder, arshadkazmi42/first-issues, ohbarye/goofi, yankeexe/good-first-issues, youzi-forge/good-first-issue-autoUpdate) MIT and similar Command-line and web label searches Rolling date windows to beat the 1,000-result cap; showing license and code of conduct next to each issue Verified from GitHub search on 2026-10-21; none checks availability
Sourcegraph Cody Apache-2.0 (snapshot) Context engine Nothing Verified on 2026-10-21: the code now lives in the archived sourcegraph/cody-public-snapshot; the product is retired; its retrievers under vscode/src/completions/context/retrievers/ rank editor history by Jaccard similarity for autocompletion, nothing for onboarding
ossrank.com n/a Ranking site Nothing Offline on 2026-10-21 (connections refused on every attempt). Its Wayback snapshots of 2025-06-17 and 2025-07-31 were read first hand: the project list ranks by commit count and contributor count only, with no measure of how newcomers fare; popularity-style rankings are the model we reject
grep.app API n/a Code search Nothing Bot-gated on 2026-10-21: HTTP 429 with a Vercel Security Checkpoint page on both the API and the site, with and without full browser headers and a referer; GitHub code search served as the substitute
r/GSoC n/a Community forum Confirms the recurring beginner questions ("easiest organizations to apply to?", "what should I do if not selected?") that the realism and post-decision guidance answer The default feed is readable, the top and search feeds are rate-limited, and a third-party archive (pullpush.io) returns six older posts; advice came mainly from blogs, mailing lists, and organization retrospectives. Hacker News (Algolia API, 2026-10-21) adds 384 stories, mostly about organizations being accepted or rejected rather than contributor questions. The GSoC discussion Google Group has no feed (HTTP 404) but its HTML page lists topics: announcements (contributors and organizations announced, info talks), and the recurring questions (proposal limits, what the proposal ranking means, eligibility for beginners, how to prepare before the organization list) that the journey phases and program answer. The Arctic Shift archive of Reddit (checked 2026-10-21) holds only five r/GSoC posts since 2025, all low-traffic: proposal PDFs, a rejection, an interview call, a mentor request, and first-year preparation; no snapshot of the top page exists in the Wayback Machine (availability API and index both empty)

Guide contents · Sources and limitations

Source: docs/research.md on GitHub. Corrections are welcome.