Skip to main content
Glama

Odds are, most of what you want to build is already open source. Tell your AI agent what you're making, and it finds it: which repos to use as they are, which to adapt, and what's left for you to write. Every repo it names is real, licensed for your use or flagged, and checked live.

It searches GitHub, GitLab and Codeberg. Works with Claude Code, Codex, Copilot, Cursor, Gemini CLI, Cline, Devin, Open WebUI and any other MCP client, or as an Agent Skill.

Its companion, Where My Hug At?, does the same for Hugging Face models.

Contents

Related MCP server: skyzhao1223/wheel-hub

Try it

Add it to your agent (Claude Code here; every other option below):

claude mcp add --scope user git-for-me -- npx -y git-for-me

Then ask:

Git for me: a CLI that pulls the tables out of PDF invoices into a spreadsheet.

Your agent asks the few things it can't guess, splits the job into parts, and comes back with a report like the one below, every repo in it looked up moments before. It works for anything made of code:

Git for me: typo-tolerant search for the recipes on my Next.js site. Git for me: a nightly job that backs up Postgres to S3 and tells Slack if it fails. Git for me: a browser extension that saves recipes without the life story.

How it works

1. Four questions first

Ask for "a library that reads PDFs" and you get whatever is popular: in the wrong language, under a license you can't ship, or abandoned years ago. So before anything is named, four details come first. Your agent fills in what the conversation or your codebase already says, and asks you the rest:

What it asks

What that decides

Stack

What will it be written in?TypeScript on Node, Python 3.12, Rust

Which repos work as libraries, and which only beside your code

Platform

Where will it run?a web app, a CLI, a server, a phone app

What fits at all

License

What may the result be used for?commercial, open source, personal

Which licenses are allowed

Upkeep

How much code are you willing to own?needs to stay maintained, happy to own a fork

A maintained dependency, or a fork you keep up

"Not sure yet" is a fine answer: the picks then cover the range.

2. Split the job

The agent breaks the need into parts, each with an input and an output (a PDF → its tables, tables → a spreadsheet). A part not worth a dependency (glue, configuration, logic only your project has, a few lines) is marked WRITE: a dependency for ten lines is a cost, not a feature.

3. Search for each part

What an agent remembers of open source is as old as its training, and misses the long tail. So nothing is picked from memory. For every other part, the agent writes a search (a topic, the stack's language, a few keywords, the job in a few words), and it runs on three forges:

Way

What it finds

Where

Most starred in the topic

What's proven

GitHub, GitLab, Codeberg

Rising in the topic

New repos gaining stars, including ones newer than the agent's training

GitHub

Names and descriptions holding each keyword

Tools that aren't tagged with the topic

GitHub, GitLab, Codeberg

README text

The long tail, by what the README says, like a web search

GitHub

The ways take turns in the results, so a niche tool isn't buried under whatever is most starred. Archived repos are left out everywhere, and so are forks on GitHub and Codeberg. A stack that can use more than one language (TypeScript can use JavaScript) searches them all.

4. Decide each part from what turned up

Verdict

Meaning

USE

A repo the search found does this job as it is: depend on it, or run it beside your code.

ADAPT

One comes close: fork it or copy the part you need, license permitting.

BUILD

Nothing it found does the job: build it, reading the closest repos first.

WRITE

Not worth a dependency: write the code.

The agent judges the results by what they say: description, stars, recent activity, license, language. It may add a repo it knows that the search missed, but that pick ranks after the search's, and the report marks it from memory.

5. Check every pick

Every pick is looked up on its forge, live. Any that don't exist are dropped, and the agent goes back to the search for others. The rest are flagged for what would bite later, and that report is what you see. It also lists what the search found that wasn't picked, so nothing it turned up is hidden. A BUILD part whose search found repos says to check them before building one.

Under the hood it's an MCP server with three tools: git_for_me for the method (steps 1, 2 and 4), git_for_me_search for step 3, and git_for_me_verify for step 5.

Flags

Flag

When

UNCHECKED

Its forge didn't answer (down, rate-limited). The repo is kept, and asked again next time.

ARCHIVED

Read-only: every fix is yours.

NO_LICENSE

No license: all rights reserved, so its code may not be reused.

OWN_TERMS

A license its forge can't identify: read it.

UNKNOWN_LICENSE

On Codeberg, which names no licenses: it has a license file, so read it.

COPYLEFT

GPL, AGPL and kin: shipping it with your code can bind your code to its license.

WEAK_COPYLEFT

LGPL, MPL and kin: changes to it must be shared, but using it unchanged usually doesn't bind your code.

STALE

No pushes in two years.

LITTLE_USED

Under 50 stars.

FORK

A fork: check whether the original is the better pick.

MIRROR

A mirror: pick the original it copies.

Example: PDF invoices

The prompt above, from a live run on 2026-10-14 for Python 3.12 on a laptop, closed source, kept maintained (abridged):

_Searched and checked live just now: 6 named, 0 not there and dropped._

## USE  ·  Read the tables
**Repo: jsvine/pdfplumber**
Python · license MIT · 10.8k stars · pushed 2 months ago · found: most starred in table-extraction, name or description has tables
Also: camelot-dev/camelot
The search also found, not picked:
- pymupdf/PyMuPDF (10.9k stars): found as most starred in table-extraction

## USE  ·  Read scanned invoices
**Repo: ocrmypdf/OCRmyPDF**
Python · license MPL-2.0 · 35.0k stars · pushed 3 days ago · found: readme text, name or description has ocr, most starred in ocr
Watch out: weak copyleft: changes to it must be shared under its license, but using it unchanged usually doesn't bind your code.
Also: PaddlePaddle/PaddleOCR

## USE  ·  Write the spreadsheet
**Repo: jmcnamara/XlsxWriter**
Python · license BSD-2-Clause · 4.0k stars · pushed 2 months ago · found: name or description has xlsx, most starred in xlsx
Also: pyexcel/pyexcel

## WRITE  ·  Run it from the command line
No repo: write this one.

## WRITE  ·  Tidy the invoice tables
No repo: write this one.

Three of the five parts already existed, all turned up by the search, and the agent left out PyMuPDF because its AGPL would bind closed-source code. What's left to write is the glue and the logic only these invoices have.

Install

Needs Node 22.18 or later. USAGE.md has step-by-step setup and links for 20+ agents: Claude Code and Desktop, Codex, Copilot (CLI and VS Code), Cursor, Windsurf, Devin, Cline, Gemini CLI, Goose, OpenCode, Zed, Junie, Kiro, Amp, Warp, Continue, LM Studio, Hermes, Mistral Vibe and Open WebUI. The quick routes:

Claude Code, Codex, Copilot CLI, as a plugin: the tools, plus a skill that knows when to reach for them. One marketplace serves all three.

/plugin marketplace add bikemeardsley/git-for-me          # Claude Code
/plugin install git-for-me@git-for-me

codex plugin marketplace add bikemeardsley/git-for-me      # Codex
codex plugin add git-for-me@git-for-me

copilot plugin marketplace add bikemeardsley/git-for-me    # Copilot CLI
copilot plugin install git-for-me@git-for-me

Any other MCP client: a stdio server in the client's config. Most call the key mcpServers (USAGE.md has the exceptions).

{ "mcpServers": { "git-for-me": { "command": "npx", "args": ["-y", "git-for-me"] } } }

Gemini CLI, as an extension: gemini extensions install https://github.com/bikemeardsley/git-for-me

As an Agent Skill, for agents that read SKILL.md: npx skills add bikemeardsley/git-for-me.

GITHUB_TOKEN (optional, and worth setting). Without one, GitHub allows 10 searches a minute, which covers about two parts of a job; with one, 30. A fine-grained token with no permissions is enough. Pass it as GITHUB_TOKEN (how, per agent); the Claude Code plugin asks for it and keeps it in secure storage. It goes to GitHub alone: GitLab and Codeberg need none. Without a token, a private GitHub repo looks missing, because GitHub answers 404 for both.

What leaves your machine

The search the agent writes for each part (a topic, a language, keywords, a few words about the job) and the repos it picks, as GETs to api.github.com, gitlab.com/api and codeberg.org/api, plus your token, to GitHub alone, if you set one. The token never appears in a report. The need as you wrote it, the method and the report stay between you and your agent.

Starting it with npx (as the MCP server, or the skill's shell fallback) downloads the git-for-me package from the npm registry, registry.npmjs.org. Nothing is sent there but the request for the package.

Limits

  • The search finds what the forges' own searches can: topics, names, descriptions, and on GitHub README text. A repo with none of those words can still be missed.

  • "Rising" is GitHub's alone: the topic's most starred repos created in the last half year, since GitHub has no trending API, and GitLab and Codeberg can't filter by creation date.

  • GitLab's keyword search runs in any language (filtered by one, it times out on common words), and its results show no language until a pick is checked.

  • License flags read each forge's license detection, not the license text. Codeberg detects none, so a repo there is flagged to read its license file, or as unlicensed if it has none.

  • Only GitHub, GitLab.com and Codeberg are searched. Self-hosted GitLab and Gitea servers aren't, and Bitbucket can't be: it has no public search.

Security

Report a vulnerability privately through GitHub Security Advisories, not a public issue. SECURITY.md lists what it touches: GETs to the three forges, and nothing on your machine.

Development

npm install          # also builds build/, which is what npx runs
node src/server.ts   # the server, straight from source
npm test             # offline: the forges are mocked, and the server is driven over stdio and HTTP
npm run check        # types

From a clone, add it to your agent with claude mcp add --scope user git-for-me -- node /path/to/git-for-me/src/server.ts. npm install builds JavaScript into build/ because Node won't strip types from a package inside node_modules, which is where npx puts it.

License

MIT. Not affiliated with the Git project, GitHub, GitLab or Codeberg.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables AI assistants to scout GitHub for existing open-source projects, libraries, and frameworks before building from scratch, offering tools for stack suggestions, repository searches, and detailed repo evaluation.
    3
    1
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP server + CLI that makes AI coding agents search GitHub for existing open-source solutions before implementing a feature, scoring each repo 0-100 with an adopt / adapt / inspect / avoid verdict.
    13 npm
    5
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables AI coding agents to discover, evaluate, and select the best existing open-source implementations by assessing license compatibility, extracting only the needed symbols and dependencies, and producing integration or adaptation plans.
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to discover open-source libraries worth reusing through multi-signal repository ranking and to search real code with sub-50ms local regex/semantic queries federated to live GitHub, grep.app, and package-registry backends. It exposes seven tools over stdio—repo search, code search, repo profile/tree, file and docs fetching, and a usage guide—with structured filters, typed pre-execution errors, and a byte-identical CLI twin.
    MIT