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.3.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

codegpt-0.1.3-py3-none-any.whl (20.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: codegpt-0.1.3.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.3.tar.gz
Algorithm Hash digest
SHA256 fc3b8073b84c1db6b2b90cd41b49dfd7cdb98dcef44c319eaea5bcaa06b17193
MD5 5a932b869941b612081ae8ef70160196
BLAKE2b-256 93a9623e18ca5351def74ff9de5117f5f0b541a06fc655d5e9f96648f20a2577

See more details on using hashes here.

File details

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

File metadata

  • Download URL: codegpt-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 20.7 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1499a42cdb5b90b7642d204a0b74ddb4b4f26168ca66c4960a362e10836c844f
MD5 43e11d717148708823be408d71f5cb95
BLAKE2b-256 039cf8d848e1d46c388af94e67f099c41cdb3ae9a085e50bb10b6bc5ede7e030

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