Help Wanted:用 Gemma 4 尋找第一個開源議題
Help Wanted: Finding a First Open Source Issue with Gemma 4
Help Wanted 是一款以 Gemma 4 為匹配引擎的 Python 命令列工具,按貢獻者的興趣、經驗、語言及可用時間,推薦合適的開源專案和議題。工具透過 GitHub MCP server 搜尋公開資料,並只推薦仍開放、未分配及近期更新的議題。使用 Ollama 本機推理可讓個人資料和模型輸入保留在用戶裝置;選用 Ollama cloud 則會把模型輸入傳送至該服務。
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine.
What I Built
Open-source issue trackers are full of “help wanted” signs, but a newcomer still has to work out which project welcomes them, which issue is available, and where to begin. Help Wanted is a Python command-line tool built to make that first step less intimidating.
A Contributor’s interests, experience, languages, and available time become a Contributor Profile. The tool checks public GitHub activity for a Skill Assessment, finds Candidate Projects, and searches for issues that fit. Each Recommendation is designed to explain why this issue fits, what the Contributor could learn, and what to do first in their native language.
For Ghost in the Machine, we interpreted the theme as making overlooked opportunities visible: the open issues waiting in repositories, and the potential contributors who might never find them.
Demo
The main branch has an offline end-to-end test that runs the matching pipeline with scripted model and GitHub responses.
Live demo: [Add video or walkthrough link after recording one.] A full run with a live Gemma model and GitHub connection has been verified. The questionnaire code has been merged, and its CLI integration and documentation have been reconciled.
Code
The source is available under the MIT license: Help Wanted on GitHub.
To try the integration branch, install Python 3.13, uv, and Ollama, then run:
git clone https://github.com/SamuelSaylor/Hack-Day-2026.git
cd Hack-Day-2026
uv python install 3.13
uv run --python 3.13 help-wanted
The README covers model choices, GitHub sign-in, and current limitations.
How We Built It
Gemma 4 is the matching engine. Through Ollama, it turns profile answers into search terms, assesses experience against public GitHub evidence, plans repository searches, ranks Candidate Projects, selects fitting issues, and writes the explanations and first steps. The default model setting is gemma4:e4b; setup can select another local size or an Ollama cloud model.
A fixed LangGraph pipeline moves through setup, questionnaire, Skill Assessment, project discovery, issue search, and Recommendations. GitHub data comes through the GitHub MCP server. Python applies the firm rules before Gemma ranks issues: an issue must be open, unassigned, recently updated, and excluded from closing-reference pull request links. If too few issues qualify, Help Wanted reports the shortfall instead of loosening those rules.
Pydantic validates each stage’s saved output, so a later run can reuse completed work. Typer and Rich provide the terminal interface. The integration branch includes offline tests; the live model and GitHub flow still needs verification.
Why Does Open Innovation Matter?
This tool is meant to help someone enter open source, so its own workings should be open to inspection. Contributors can read the search rules, see why an issue was eligible, change the prompts or model size, and run Gemma locally through Ollama. Local inference can keep profile answers and model inputs on the Contributor’s machine; GitHub searches still require an internet connection. Choosing Ollama cloud instead sends model inputs to that service.
An open-weight model and open-source framework made Gemma part of the actual decision process without tying Help Wanted to one closed model API. The code, tests, and setup guide are also available for others to adapt for their own communities.
The Spirit of It
The moment we’re building toward is simple: someone who has never opened a pull request sees an issue and thinks, “I could start here.” The Recommendation should give them enough context to take that first step themselves.
Prize Categories
- Best Use of Gemma — Gemma 4 drives the assessment, search planning, ranking, and Recommendation writing.
- Open Source Education - Help more people learn about and join open source.
- Best Overall - The strongest project of the day, from any track
Team:
- Fredy Mata - fmata17
- Nathan Davies - ndedu10
- Samuel Saylor - samuelsaylor
- Simon Teague - simonteague6
來源:DEV Community · dev.to