rajagurunath / sweep

Sweep is an AI junior developer

Home Page:https://sweep.dev

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Spend time reviewing code generated by AI, not writing it.

🌐 Website   β€’   πŸ“š Docs   β€’   πŸ“’ Discord

Sweep allows you to create and review GitHub issues with ease. Simply describe any issue and Sweep will do the rest. It will plan out what needs to be done, what changes to make, and write the changes to a PR.

Supported languages: Python, Javascript/Typescript, Rust, Go, Java/C#, C++ and anything else GPT-4 supports


✨ Demo

For the best experience, install Sweep to one of your repos and see the magic happen.

sweep.mp4

πŸš€ Getting Started

πŸ–₯️ Sweep Chat

Sweep Chat allows you to interact with Sweep locally and will sync with GitHub. You can plan out your changes with Sweep, and then Sweep can create a pull request for you.

  1. Install Sweep GitHub app to desired repos

  2. Run pip install sweepai && sweep. Note that you need python 3.10 or greater.

  3. This should spin up a GitHub auth flow in your browser. Copy-paste the πŸ”΅ blue 8-digit code from your terminal into the page. Then wait a few seconds and it should spin up Sweep Chat. You should only need to do the auth once.

  4. Pick a repo from the dropdown at the top (the Github app must be installed on this repo). Then start chatting with Sweep Chat. Relevant searched files will show up on the right. Sweep Chat can make PRs if you ask it to create a PR.

πŸ’‘ You can force dark mode by going to http://127.0.0.1:7861/?__theme=dark.

From Source

If you want the nightly build and or if the latest build has issues.

  1. git clone https://github.com/sweepai/sweep && poetry install
  2. python sweepai/app/cli.py. Note that you need python 3.10 or greater.

✨ Sweep Github App

Setting up Sweep is as simple as adding the GitHub bot to a repo, then creating an issue for the bot to address.

  1. Add the Sweep GitHub app to desired repos
  2. Create new issue in repo, like "Sweep: Write tests"
  3. "πŸ‘€" means it is taking a look, and it will generate the desired code
  4. "πŸš€" means the bot has finished its job and created a PR

🀝 Contributing

Contributions are welcome and greatly appreciated! For detailed guidelines on how to contribute, please see the CONTRIBUTING.md file. In essence, you'll need to fork the repository, create a new branch for your feature or bug fix, commit your changes, and open a pull request. For more detailed docs, see πŸš€ Quickstart.


πŸ“˜ Story

We were frustrated by small tickets, like simple bug fixes, annoying refactors, and small features, each task requiring us to open our IDE to fix simple bugs. So, we decided to leverage the capabilities of ChatGPT to address this directly in GitHub.

Unlike existing AI solutions, this can solve entire tickets and can be parallelized: developers can spin up 10 tickets and Sweep will address them all at once.

πŸ“š The Stack

  • GPT-4 32k 0613 (default) / Claude v1.3 100k
  • ActiveLoop DeepLake for Vector DB with MiniLM L12 as our embeddings model
  • Modal Labs for infra + deployment

🌠 Features

  • Automatic feature development
  • PR auto self-review + comment handling (effectively Reflexion)
  • Address developer comments after PR is created
  • Code snippets embedding-based search
  • Chain-of-Thought retrieval using GPT Functions

πŸ—ΊοΈ Roadmap

We're currently working on responding to linters and external search. For more, see πŸ—ΊοΈ Roadmap.


Contributors

Thank you for your contribution!

and, of course, Sweep!

About

Sweep is an AI junior developer

https://sweep.dev

License:Other


Languages

Language:Python 59.2%Language:Jupyter Notebook 29.8%Language:TypeScript 10.9%Language:Shell 0.1%Language:Ruby 0.0%