Observed since 20 Oct, 22:05 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Use OpenAI's Code Interpreter to edit and commit code across your entire git repo (even non-python repos)!
AgentGrunt packs up the following: a codebase you specify, a specially prepared git binary that runs well in Code Interpreter's environment, and some prompts and code exploration tools into a single file that you can load into Code Interpreter.
Upload the archive, paste in a two sentence prompt, wait a bit, and then sit back and relax while GPT4.5* writes, edit, and commits your code for you. Once GPT has finished making your changes, press d from the hotkey menu and ChatGPT will send you a file you can use to apply the commits GPT made (with all their metadata!) directly into your copy of the repo.
git into Code Interpreter and configures it for code explorationOnce you have those in place, run:
pip install agentgrunt
If all goes well running agentgrunt --help will output something like this:
Usage: agentgrunt [OPTIONS] COMMAND [ARGS]...
Options:
--help Show this message and exit.
Commands:
bundle Bundle up a local or remote git repo
custom-instructions Copy ChatGPT custom instructions to the clipboard
To start editing a repo with agentgrunt use agentgrunt's bundle command:
agentgrunt bundle <path-to-your-repo>
It will do some work and then print out some instructions. When the process has completed you'll have a new file called <your-repo-name>.tar.gz in your current folder.
Now do the following:
agentgrunt prints out to the clipboard (or just say y when prompted if on macOS)<your-repo-name>.tar.gz file AgentGrunt generatedYou'll see ChatGPT start to do some work, and after a few moments you'll be greeted with a message saying "Code Interpreter is now running AgentGrunt!" followed by a hotkey menu similar to the below:
c ) continue
d ) download changes as patch
dr) download entire repo
m ) show diff of last change
r ) refresh/reload agentgrunt
w ) work autonomously until complete
? ) show this hotkey list
Now just ask Code Interpreter to make some changes to your repo, and hit d when you're finished to download the changes it made to your local copy of the repo!
When you want to download the changes you've made to your local copy of the repo, hit d and Code Interpreter will send you a .patch file that you can apply to your copy of the git repo using the (somewhat esoteric) git am command:
git am <path-to-patch-file>
When you ask AgentGrunt to generate a bundle it first downloads a single-file version of the git binary from 1bin.org (an older project of mine to make easy to deploy single file binaries of common utilities). Then it clones the repo you point it at into a temporary location location (to avoid bundling up any files that aren't part of the repo, eg node_modules folders), copies the git binary and some prompts teaching Code Interpreter how to use AgentGrunt's tools into a temp folder and then builds a tarball out of the whole collection.
The python package contains a gpt_tools folder that gets copied into each bundle AgentGrunt generates. gpt_tools includes a prompt for Code Interpreter in the README_ai.md file, as well as some python functions that are useful for code exploration that Code Interpreter can load and call directly (see code_exploration.py).
This arrangement allows the prompt the user has to paste into ChatGPT to be short and simple. Code Interpreter itself can then extract the longer prompt from README_ai and bootstrap itself from there.
git and the tools from code_exploration.py functions are available. If this happens, hit r or ask it to re-read "it's" readme file to refresh its memory.c (continue) to have it finish what it was doingr to refresh the prompt, or explicitly direct it to make a commit and then send a patch.This is still early and more of a proof of concept than anything else. That said, even in it's current form it's often genuinely useful! Allowing Code Interpreter to read files and archives in this way also opens the door for lots of interesting applications. AgentGrunt only uses one prompt, but it's easy to imagine more complex tools like this that include a catalogue of prompts that "daisy-chain" from each other, am very curious to see what other things people build in this vein!
Hattip to @NickADobos' and his "AI zip bomb" thread for the inspiration!
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.1.5 | 10 Sept 2023 | 5 |
This describes our collected data; it is not a security assessment.
Observed since 20 Oct, 22:05 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:806be5eb9477f9497c8e12f46cf9dfa427d8476d1983c16c12ea9da02edaee07