Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

We built RepoBuddy at Hacktoberfest Hack Day: Graphify + Gemma 4 tell you where to start in any repo

说明与用途

RepoBuddy通过生成代码知识图并使用Graphify和Gemma 4回答“从哪里开始?”来加速新人入门,提供精确文件路径。

问题

New contributors struggle to locate entry points in unfamiliar GitHub repositories.

结果

RepoBuddy reduces the first hour of repo exploration by providing a graph‑based answer to “Where do I start?” with accurate file paths, leveraging Graphify for graph construction and Gemma 4 for natural‑language responses.

工作流

  • Clone the repo shallowly with git clone --depth 1 via FastAPI server.
  • Generate a code‑only graph.json with graphify extract . --code-only and cluster report with graphify cluster-only.
  • For each question run graphify query "<question>" to retrieve a relevant subgraph.
  • Send the subgraph and report to Gemma 4 with a prompt that restricts answers to the graph and real file paths.
  • Return the model’s answer to the user.

证据

Paste a GitHub repo URL and ask "Where do I start?" RepoBuddy maps the repo into a code knowledge graph with Graphify, then has Gemma 4 answer from that graph.

来源

Clone. The FastAPI server shallow-clones the repo (git clone --depth 1).

来源

Map. graphify extract . --code-only builds graph.json with tree-sitter (no API cost), and graphify cluster-only adds a GRAPH_REPORT.md and an interactive graph.html.

来源

Ask. For each question, graphify query "<question>" returns just the relevant subgraph. That subgraph plus the report go to Gemma 4 with one rule: answer only from the graph and always name file paths.

来源

Concurrent maps share one build. Two people pasting the same repo used to race git clone, so we keep one asyncio.Task per repo and asyncio.shield it for every caller.

来源

Model fallback. Gemma 4 runs on Ollama Cloud (gemma4:31b) by default. If you opt into the Gemini API instead and it fails, RepoBuddy falls back to Ollama, and when both fail the error names both causes, so a missing key is obvious.

来源

  • 记录日期: 2026-10-17T09:41:18.101Z