Skip to main content

Sweep software chores

Project description

Bug Reports & Feature Requests ⟶  Code Changes

Landing Page Docs PyPI

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.

Demo

🌠 Features

  • Automatic interactive bug fixes & feature development
  • PR auto self-review + comment handling (effectively Reflexion)
  • Address developer comments after PR is created using PR replies & code comments
  • Code snippets embedding-based semantic & popularity search (🔍 Rebuilding our Search Engine in a Day)
  • Chain-of-Thought retrieval using GPT Functions
  • 🎊 New: Sweep Chat, a local interface for Sweep (see below)

🚀 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
  • Gradio for Sweep Chat

🗺️ Roadmap

We're currently working on responding to linters and external search. For more, see 🗺️ Roadmap.

⭐ Star History

Star History Chart

Consider starring us if you're using Sweep so more people hear about us!


Contributors

Thank you for your contribution!

and, of course, Sweep!

Project details


Release history Release notifications | RSS feed

This version

0.2.9

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sweepai-0.2.9.tar.gz (64.1 kB view details)

Uploaded Source

Built Distribution

sweepai-0.2.9-py3-none-any.whl (73.6 kB view details)

Uploaded Python 3

File details

Details for the file sweepai-0.2.9.tar.gz.

File metadata

  • Download URL: sweepai-0.2.9.tar.gz
  • Upload date:
  • Size: 64.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for sweepai-0.2.9.tar.gz
Algorithm Hash digest
SHA256 329c2cdb64a9d5d30ec2adc70b8791f6e921c13f7f87fa4157d657fae223c211
MD5 eb13b7f1270d628e1fdbded1509f789d
BLAKE2b-256 653e27adf88c3a9bbeee7590afe7e6070ff808475f010be1d5114beb4213f3a5

See more details on using hashes here.

File details

Details for the file sweepai-0.2.9-py3-none-any.whl.

File metadata

  • Download URL: sweepai-0.2.9-py3-none-any.whl
  • Upload date:
  • Size: 73.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for sweepai-0.2.9-py3-none-any.whl
Algorithm Hash digest
SHA256 9bcabc00430cd7ed6aa6fcec0ffe09fd6c05356336b5f8bdf94e25d5f6e742c2
MD5 1f4ecdc59857d707131eaab3de537615
BLAKE2b-256 a4ce83dcc21334bd4c328e4dbca9a9ca5ab2d25d4d0d1a29ad3d469b024bfcd0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page