explaingit

coderamp-labs/gitingest

Analysis updated 2026-06-24

14,650PythonAudience · vibe coderComplexity · 2/5Setup · easy

TLDR

Turns any Git repo into a single LLM-friendly text dump with file tree, stats, and token counts, via website, browser extension, CLI, or Python package.

Mindmap

mindmap
  root((gitingest))
    Inputs
      Git URL
      Local directory
      GitHub token
      Subdirectory path
    Outputs
      Single text digest
      File tree
      Token count
      Summary stats
    Use Cases
      Feed repo to LLM
      Audit a codebase fast
      Bundle docs for prompts
      Self host a digest server
    Tech Stack
      Python
      CLI
      Docker
      Browser extension
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Paste a whole GitHub repo into Claude or ChatGPT by running gitingest on the URL first

USE CASE 2

Generate a digest of a private repo using a GitHub token for AI code review

USE CASE 3

Self host the digest service with Docker so internal repos never leave the network

USE CASE 4

Use the Python ingest function inside a notebook to feed code context to an LLM pipeline

What is it built with?

PythonCLIDockerPyPI

How does it compare?

coderamp-labs/gitingestshangtongzhang/reinforcement-learning-an-introductioncomfy-org/comfyui-manager
Stars14,65014,64614,634
LanguagePythonPythonPython
Setup difficultyeasymoderatemoderate
Complexity2/54/52/5
Audiencevibe coderresearchervibe coder

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Needs Python 3.8+ and, for private repos, a GitHub Personal Access Token in GITHUB_TOKEN.

In plain English

Gitingest is a tool for turning a Git repository into a single text file that is easy to paste into a large language model prompt. The basic idea is to take all the readable code and structure of a repo and pack it into one tidy dump, with statistics and a tree view, so an AI assistant has the full context. A neat trick the project advertises: you can replace hub with ingest in any GitHub URL (so github.com becomes gitingest.com) and get the digest for that repository from the hosted website. It comes in several forms. There is the hosted site at gitingest.com, browser extensions for Chrome, Firefox, and Microsoft Edge, a command line program, and a Python package. The README lists the main features as easy code context from either a Git URL or a local directory, an output format chosen to suit LLM prompts, and statistics about file and directory structure, the size of the extract, and the total token count. It requires Python 3.8 or newer, and a GitHub Personal Access Token is needed for private repositories. You can install gitingest from PyPI with pip, or with pipx if you prefer an isolated install. There is an optional server install for self hosting. The command line tool is called gitingest, and basic use is gitingest followed by a local path or a GitHub URL. It writes the digest to digest.txt by default. You can point it at a specific subdirectory, pass a token for private repos via a flag or the GITHUB_TOKEN environment variable, include git submodules, and include files normally ignored by .gitignore. The output destination can be changed with the --output flag, including writing to standard output for piping into other tools. In Python code, you import an ingest function from the gitingest package and call it on a path or URL. It returns three things: a summary, a tree, and the content. There is also an asynchronous version called ingest_async for use inside async code or Jupyter notebooks, where you can await it directly. Both forms accept a token argument for private repositories and an option to include submodules. The README also points to a separate self host section using Docker and to the open source browser extension repo at lcandy2/gitingest-extension for issues and feature requests.

Copy-paste prompts

Prompt 1
Use gitingest to dump a GitHub repo into a single text file and pipe it into a Claude API call
Prompt 2
Write a Python script that calls gitingest.ingest_async on a list of repos and saves each digest to disk
Prompt 3
Show me how to gitingest only the src/ subfolder of a private repo using a GITHUB_TOKEN env var
Prompt 4
Self host gitingest with Docker behind nginx so my team can hit it at digest.internal
Prompt 5
Compare the gitingest CLI output to a manual concatenation and explain what tokens it strips

Frequently asked questions

What is gitingest?

Turns any Git repo into a single LLM-friendly text dump with file tree, stats, and token counts, via website, browser extension, CLI, or Python package.

What language is gitingest written in?

Mainly Python. The stack also includes Python, CLI, Docker.

How hard is gitingest to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is gitingest for?

Mainly vibe coder.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.