Skip to content

An open-source AI that understands your codebase, plans changes, and creates pull requests automatically.

Notifications You must be signed in to change notification settings

BharathxD/pullsmith

Repository files navigation

Pullsmith

Pullsmith is an AI-powered coding assistant that automates code changes and pull request creation. Describe a task in plain English, and Pullsmith will analyze your codebase, plan the implementation, write the code, and open a PR.

Demo

pullsmith_compressed

Watch the full demo

Tech Stack

  • Next.js – React framework for web applications
  • LangGraph – Framework for building stateful, multi-actor applications with LLMs
  • Vercel AI SDK – an open-source library for building AI-powered user interfaces
  • Better Auth – Authentication for Next.js
  • Tailwind CSS – Utility-first CSS framework
  • Drizzle ORM – TypeScript ORM
  • PostgreSQL – SQL database
  • Redis – In-memory data store
  • Qdrant - Vector database

Getting Started

Prerequisites

1. Clone the repository

git clone https://github.com/your-username/pullsmith.git
cd pullsmith

2. Create a GitHub App

To use Pullsmith locally, you need to create a GitHub App with the following permissions:

  • Repository permissions:
    • Contents: Read & write
    • Pull requests: Read & write

After creating the app, generate a private key and get the App ID, Client ID, Client Secret and Private Key. These values will be used in your .env file.

3. Set up environment variables

Copy the .env.example file to a new file named .env and add your environment variables.

cp .env.example .env

4. Install dependencies

pnpm install

5. Run the development server

To start the local development servers for the database and other services, run:

docker-compose up -d

Once the Docker containers are running, start the Next.js development server:

pnpm dev

The application will be available at http://localhost:3000.

Usage

  1. Navigate to http://localhost:3000
  2. Log in with your GitHub account
  3. Select a repository
  4. Describe the changes you want to make
  5. Pullsmith will create a pull request with the changes

Contributing

Contributions are welcome! Please open an issue or submit a pull request.

About

An open-source AI that understands your codebase, plans changes, and creates pull requests automatically.

Resources

Stars

Watchers

Forks