Powered by Gemini Pro · GitHub API

Stop staring at unfamiliar code.

Paste a GitHub issue URL. Get the exact files to change, why they matter, and a working code diff — in under 30 seconds.

Try:
Free to use.No account needed to try.Works on any public repo.

What it does

The context senior devs have. Now available to everyone.

Reads the issue, not just the title

The AI parses the full issue body, linked PRs, and labels to understand what actually needs to change — not just what the reporter typed.

Tells you exactly which files to touch

No more grepping through 400 files. A ranked list of the specific files relevant to the fix, with a reason for each one.

A roadmap you can actually follow

Step-by-step plan with before/after code diffs. Copy it, adapt it, open your PR. The hard part is already done.

Difficulty score before you commit

Know if an issue is a 30-minute fix or a 2-day project before you clone the repo. Easy, Medium, Hard — with reasoning.


How it works

Four steps. No fluff.

01

Paste the issue URL

Any public GitHub issue. No repo cloning, no setup, no config.

02

AI reads the codebase

Gemini Pro scans the issue, the file tree, and the relevant source files to build context.

03

Get your roadmap

Difficulty score, relevant files, step-by-step plan, and a working code diff — all in one page.

04

Open your PR

Follow the steps, apply the diff, push. Your first open source contribution, done.


Sample output

This is what you get. Not a summary — a diff.

Files to change
src/utils/validateInput.ts+7 −1
src/components/Form.tsx+3 −0
tests/validate.test.ts+12 −0
Roadmap
Add length check to validateInput()
Update Form.tsx to surface the new error
Add unit tests for edge cases
validateInput.ts
--- a/src/utils/validateInput.ts
+++ b/src/utils/validateInput.ts
@@ -12,7 +12,14 @@
export function validateInput(value: string) {
if (!value) return false;
- return value.length > 0;
++ const trimmed = value.trim();
++ if (trimmed.length === 0) return false;
++ if (trimmed.length > 255) {
++ throw new Error("Input exceeds max length");
++ }
++ return true;
}

Under the hood

Built on real tools. No smoke and mirrors.

GitHub API

Issue body · file tree · source files

Gemini Pro

Multi-step chain-of-thought analysis

Your roadmap

Files · steps · working diff

Next.js 15Node / ExpressTypeScriptPostgreSQLGoogle Gemini ProOctokitPassport.jsFramer Motion

The problem

Open source is hard to break into — and it shouldn't be.

You find an issue tagged “good first issue.” You open the repo. There are 600 files, zero comments, and no obvious starting point. You spend 3 hours just trying to understand the codebase before writing a single line.

Most people close the tab. CodeLens gives you the context that senior contributors built over months — in seconds.

Time to understand an issue

4–8 hours< 2 min

First-time contributors who give up

~70%much less

PRs merged on first attempt

rarelyway more often

FAQ

Common questions.

Anything else? Open an issue on GitHub or reach out directly.


Your first PR is closer than you think.

Paste any GitHub issue and see what CodeLens gives you. No account required.

Free tier · 10 analyses/month · No credit card