This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend
What I Built
I have a cousin. He has been telling me he wants to contribute to open source for about a year. Every month or two he sends me a screenshot of a repo and asks "is this a good one to start with?" I say yes. He opens it, scrolls for twenty minutes, closes the tab. The screenshot never turns into a PR.
I used to tell him "just pick a good first issue." That advice is useless. Good first issues live in repos with four hundred files and eighty open issues each. You still have to pick. He had already been doing that for a year.
So I built OSS Buddy. You point it at any GitHub repo and a local Gemma 3 model tells you three things in forty-five seconds:
- What the project actually does, in two plain sentences
- Up to three
good first issuetickets ranked easiest to hardest, with time estimates - Which specific directory to start reading
Nothing leaves his laptop. No account, no API key, no credit card. He downloads Gemma once, forgets about it, the tool works forever.
Demo
One command, forty-five seconds, zero cloud calls. Terminal recording against kiwix/kiwix-android.
Code
ibrahim-iqbal
/
oss-buddy
local gemma 3 reads any github repo and picks weekend-sized good-first-issues for you. nothing leaves your machine.
oss buddy
point it at a github repo. a local gemma 3 model reads the readme, the
top-level file tree, and the open good first issue tickets, then
tells you:
- what the project does, in plain words
- up to three issues that look weekend-sized, ranked easiest to hardest
- where in the repo to start reading
nothing leaves your machine. your github token stays local. the model runs on your laptop via ollama.
why
a friend of mine kept opening huge oss repos, scrolling for twenty minutes, closing the tab. he wanted to contribute. he did not know where to start. every guide said "pick a good first issue" and every repo had dozens.
this reads the repo for him and says "here, pick one of these three start reading here."
install
needs python 3.9+, the github cli, and ollama.
# ollama (macos)
brew install ollama
brew services start ollama…~150 lines of stdlib Python. No pip install. MIT.
How I Built It
Open-source AI used:
- Gemma 3 (4B) — Google's open-weight model, running on my laptop
- Ollama — open-source runtime for the model
- GitHub CLI (
gh) for repo data
Pipeline (lazy on purpose):
gh api (readme + top-level tree + good-first-issues)
│
▼
one tuned prompt
│
▼
POST localhost:11434 (ollama)
│
▼
gemma 3 4b
│
▼
stream the answer to the terminal
Three HTTP calls to GitHub, one HTTP call to a server running on my own laptop. That is the whole pipeline. The Python file is small enough to read in one sitting.
The prompt went through three real iterations in the git history. The first version produced great summaries but ended every answer with "Would you like me to delve deeper?" — chatty, off-brand. The second version started paraphrasing issue titles instead of quoting them, which was worse than useless because then you couldn't grep for the issue on GitHub. The third version pins Gemma: "Quote the issue number and the EXACT title from the data below. Do not paraphrase or invent." That one shipped.
Why Does Open Innovation Matter?
He does not need to sign up for anything before he can start contributing to open source. He already has GitHub, git, and a dozen tabs open. A new contributor does not need another sign-up flow before the one he actually came for. Open-source AI removes that friction entirely — he downloads the model once, forgets about it, and the tool just works.
The second thing matters more. His GitHub token and the repos he explores never leave his laptop. Some of those repos are private — half-built side projects, work stuff. A closed API would have meant sending every README and every issue title to a third party's servers. With Gemma running locally that whole class of problem does not exist.
The third thing is practical. It runs on a plane. It runs in a cafe with slow wifi. It runs inside offices that block third-party API calls. It costs zero rupees forever. For someone taking their first step into open source every friction point is a chance to quit — the open stack removes a few of them.
And the whole chain is readable. 150 lines of Python. An open-weight model with public weights. A runtime with public source. If my cousin wants to see what the LLM did with his repo, he can trace it from his terminal all the way down to the weights. That is the open-source story — not just the model, the whole stack.
My Agent Session
Skipping DevRelay sessions on this one. The story is in the git log instead:
-
31b5e08initial scaffold: fetch readme + good-first-issues via gh -
4a8dbb5wire up ollama + first prompt that asks for 3 ranked issues -
ede3d7ftighten prompt (no outro, quote exact issue titles) -
b430d72add demo gif + vhs tape
Four commits, one Saturday night.
Prize Categories
Best Use of Gemma — Gemma 3 (4B) via Ollama is the only model used. The entire pipeline depends on it. No fallback, no closed-model path, no "bring your own API key." Just Gemma, local, free.


Top comments (0)