Skip to main content

A CLI tool for refactoring Python code using OpenAI's text-davinci-003 model

Project description

Codegpt

A tool for using GPT just a little quicker. A nearly truly automated footgun. Learn how to revert with git before trying please.

Posting about progress here:

Twitter Follow

Getting Started

pip install codegpt

And set your openapi API key as an environment variable like they recommend: In their docs here

Windows users can also use setx like:

$ setx OPENAI_SECRET_KEY=<YOUR_API_KEY>

from an admin console.

Be careful! But let's go.

Now with 10% less footgun!

Try this new command to see how it works:

codegpt todo do app.py

It'll prompt you for what needs done, and give you an option to edit the todo list before we attempt to refactor it.

The rest

The fun stuff is in the unsafe command.

Find a file you hate (Back it up! Don't do it live!) and give it a shot.

codegpt unsafe edit .\helper.py "Break this up into smaller functions where you can. Add google style docstrings. Feel free to rewrite any code doesn't make sense."

You'll see something like:

This prompt is 254 tokens, are you sure you want to continue?
The most GPT-3 can return in response is 3843. [y/N]: y

(and after a short wait...)

Explanation: The code has been refactored into smaller functions to improve readability, and Google style docstrings have been added.

Other things to try:

  • codegpt unsafe edit - Try it with anything. Markdown blog posts, js, yaml, python, whatever.
  • codegpt unsafe varnames - Changes variable names (and supposed to only be variable names...) to be readable
  • codegpt unsafe comment - Automatically add comments to a file.

Propose endpoints as issues, I've got a few ideas:

  • Explain file
  • Write tests for file
  • Generate SQL query from table spec files
  • Generate new file
  • Generate documentation from a file

Just remember this is paid - 2 cents per 1k tokens is a lot when you're working on files with a few hundred lines.

And remember to break up what you're working on - Results will be better with less moving parts and things to do.

Project details


Download files

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

Source Distribution

codegpt-0.1.1.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

codegpt-0.1.1-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

Details for the file codegpt-0.1.1.tar.gz.

File metadata

  • Download URL: codegpt-0.1.1.tar.gz
  • Upload date:
  • Size: 19.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.10.6 Windows/10

File hashes

Hashes for codegpt-0.1.1.tar.gz
Algorithm Hash digest
SHA256 277a74783a87808b91c8bed3b503960829bfad3e8f7e45a750e7d7ac7834c116
MD5 b2d8fe3477830cf432d059c155d31072
BLAKE2b-256 4099ec0d6243e488517c79586b4e4304233e4b831ab3d30df23a2e87cacd8320

See more details on using hashes here.

File details

Details for the file codegpt-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: codegpt-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 20.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.10.6 Windows/10

File hashes

Hashes for codegpt-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 90cc0b50068c3308faef1422dbcb947723f713cc73d2afa280e474aab52c03bb
MD5 9db1eebb42a71c7f0dcbac17098d9185
BLAKE2b-256 2d21ba133cab58a58b1a3b4b13fcbe31b6d50c2d33882bc3fb69c44be4f6d1c6

See more details on using hashes here.

Supported by

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