gpt-repo
v0.0.7
Published
A powerful CLI tool that leverages OpenAI's GPT models to operate on code repositories.
Downloads
195
Maintainers
Readme
GPT-Repo - 🛠️ CLI Codebase Explainer & Coding Agent
GPT-Repo is a powerful CLI tool written in TypeScript that leverages OpenAI's GPT models to:
- ✨ Summarize Large Codebases: Overcome context-window limitations by summarizing files, then summaries of files, and summaries of summaries, into one comprehensive report.
- 🤖 Automate Code Modifications: Acts as an agent that can modify source files, create/delete files, execute shell commands, and perform tasks akin to a software engineer.
NOTE: This project is in a very early stage.
Table of Contents
Features
- Codebase Summarization: Generate hierarchical summaries of large codebases to get insights that exceed the GPT model's context window.
- Automated Coding Agent: Perform code modifications, file operations, and execute shell commands through an intelligent agent.
- Customizable Prompts: Use Handlebars templates for prompt customization.
Prerequisites
- Node.js: Version >=16.0.0 (v23.0.0 recommended via nvmrc)
- npm: Version >=6.0.0
- pnpm: Installed globally (
npm install -g pnpm
) - OpenAI API Key: Required for GPT model access.
CLI
Install the package globally with npm
or your package manager of choice:
npm i -g gpt-repo
This provides the two commands gpt-repo-summarise
and gpt-repo-auto
.
Developing
Clone the repository and install dependencies:
git clone https://github.com/f3rno64/gpt-repo.git
cd gpt-repo
pnpm install
Setup
First, export your OpenAI API Key as an environment variable, or provide it in a .env
file:
export OPENAI_API_KEY=your_openai_api_key
echo 'OPENAI_API_KEY=your_openai_api_key' >> .env
Then, build the project with pnpm build
.
Usage
Summarizing Codebases
To summarize a codebase, navigate to your project directory and run:
cd /path/to/your/project
gpt-repo-summarise src package.json README.md
This will generate a comprehensive summary of the specified files and directories.
Running the Agent
To run the coding agent, execute:
cd /path/to/your/project
gpt-repo-auto src package.json README.md
The agent will perform tasks based on the provided files and directories.
Examples
Summarize a Single File:
gpt-repo-summarise src/index.ts
Run Agent on Multiple Directories:
gpt-repo-auto src tests
Contributing
Contributions are welcome! Please open an issue or submit a pull request.
- Fork the repository.
- Create a new branch: git checkout -b feature/your-feature-name.
- Commit your changes: git commit -m 'Add some feature'.
- Push to the branch: git push origin feature/your-feature-name.
- Open a pull request.
License
This project is licensed under the MIT License - see the LICENSE.md file for details.