Releases: AntonOsika/gpt-engineer
Significant strides for open codegen innovation – v0.2.0 is live 🚀
Headline Changes
- Much increased modularity: clear division of core and application specific code, fewer disk read and writes
- Improved naming of files, classes and functions
- Much better test coverage @ATheorell
- Poetry instead of setuptools as build system @captivus
- New benchmarking architecture, designed to be easy to hook into for general codegen agents @AntonOsika
- Tons of bug fixes on the go
What's Changed
- Fix: Issue 786 - gpt-engineer doesn't respect the COLLECT_LEARNINGS_OPT_OUT=true env variable by @captivus in #806
- Fix broken link by @oxmc in #808
- Add tests for AI class by @TheoMcCabe in #805
- Increase chat to files coverage by @TheoMcCabe in #813
- Update ai.py by @mfeyx in #817
- Refactor ai.py. Split token usage into its own class by @TheoMcCabe in #820
- Selfheal by @pbharrin in #727
- Contribution points 2 by @TheoMcCabe in #832
- Contribution points 1 by @TheoMcCabe in #831
- restricting langchain version to <=0.0.312 by @ATheorell in #833
- Vector Store initial implementation by @TheoMcCabe in #830
- Add no occurrences warning on edit files by @cfytrok in #838
- Refactor by @ATheorell in #840
- Refactor by @ATheorell in #846
- Refactor by @ATheorell in #847
- Refactor by @ATheorell in #848
- Refactor by @ATheorell in #849
- readding documentation and deleting the duplicate files added by improve by @ATheorell in #850
- adding advanced options to cli by @ATheorell in #851
- Refactor by @ATheorell in #852
- Refactor by @ATheorell in #854
- Create citation.cff by @trigaten in #843
- Refactor by @ATheorell in #857
- Fix tokenizer by @TheoMcCabe in #856
- Refactor by @ATheorell in #858
- Refactor by @ATheorell in #862
- Removed self-heal test since not working well with cache by @ATheorell in #865
- Refactor by @ATheorell in #867
- Refactor by @ATheorell in #870
- Fix leftover ai.fuser() call on self_heal by @scodeman in #873
- Rename code -> files by @AntonOsika in #875
- Add standardised benchmarking capabilities, changes to lean_agent by @AntonOsika in #878
- Refactor additions by @ErikBjare in #882
- Misc minor nits by @ErikBjare in #885
- build: added cloc Makefile target to easily count loc by @ErikBjare in #883
- feat: added new gpte command for better ux by @RukshanJS in #889
- Create GOVERNANCE.md by @ATheorell in #888
- Naming suggestions by @ATheorell in #887
- ci: pipx install poetry, and use setup-python cache support for poetry by @ErikBjare in #891
- The big refactor PR by @captivus in #886
New Contributors
- @oxmc made their first contribution in #808
- @mfeyx made their first contribution in #817
- @cfytrok made their first contribution in #838
- @trigaten made their first contribution in #843
- @scodeman made their first contribution in #873
- @RukshanJS made their first contribution in #889
Full Changelog: v0.1.0...v.0.2.0
v0.1.0 🚀
A lot has happened! With this release, gpt-engineer takes a big leap to become a useful tool for improving existing code bases, writing improvements into the existing files.
The enhanced --improve feature opens up for future exciting mechanisms for iterative code improvement!
The coming weeks will most likely be a fun and rewarding time to contribute taking everything forward 🚀
Headline Changes
- --improve flag makes gpt-engineer do changes in existing codebase @UmerHA
- All code is written written in current working directory (not workspace directory) @UmerHA
- Refactor into core and cli component for better reusability/maintainability @captivus
In Detail
- Simplify prompting by @AntonOsika in #676
- tkinter install documentation entry by @ATheorell in #675
- add support for anthropic, azure, aleph alpha, ai21, togetherai, cohere, replicate, huggingface inference endpoints, etc. by @krrishdholakia in #660
- Revert "add support for anthropic, azure, aleph alpha, ai21, togetherai, cohere, replicate, huggingface inference endpoints, etc. " by @AntonOsika in #685
- Standardise file names path by @AntonOsika in #684
- updated issue template style and added default label triage by @ATheorell in #678
- token count correction according to #645 by @ATheorell in #681
- Evals for Create New Code mode by @pbharrin in #686
- Agent Protocol Support by @pbharrin in #693
- added instructions for how to use improve code mode by @pbharrin in #694
- Handle undefined additional_information in agent protocol api implementation by @ATheorell in #697
- Zero temperature code gen evals + reporting by @ATheorell in #699
- disabling ruff from pre-commit, since it contradicts black (see #699, #700) by @ATheorell in #702
- Print total api costs by @lukaspetersson in #706
- file_selector path as input path by @lukaspetersson in #704
- More clear readme instructions by @lukaspetersson in #714
- Stop clarifying per default, to make runs faster, put it behind --steps clarify flag by @AntonOsika in #717
- Moretests by @pbharrin in #719
- Add project_metadata as .gpteng and relocate files by @RareMojo in #720
- Fix -i flag after metadata was introduced by @AntonOsika in #723
- New clarification prompt by @lukaspetersson in #715
- Fixing a Link in the Docs by @surfingdoggo in #724
- Print which directory gpt-engineer is using by @fabhed in #726
- adding codeowners file for sending appropriate notifications upon changes by @ATheorell in #732
- Add some sweet star history by @umarmnaq in #731
- Lite mode - run without pre prompts for execution by @lukaspetersson in #733
- gpt-engineer self improvement fixes: Default to using existing file list file by @AntonOsika in #734
- Assert bugfix, respec cleanup by @AntonOsika in #735
- Adding RareMojo to CODEOWNERS by @ATheorell in #736
- Remove experimental TDD step configs by @AntonOsika in #737
- Load env variable handling & Project preprompt enhancement by @saschalalala in #740
- Handle rate limit error with backoff by @lukaspetersson in #741
- Adding official agent protocol test to ci + github badge by @ATheorell in #698
- allows the agent interface to be run on any port by @pbharrin in #743
- Allow adding folders to "improve code in" list by @AntonOsika in #739
- Update Dockerfile by @woutervanranst in #753
- Added new sandbox configs to sweep.yaml by @kevinlu1248 in #748
- Preprompts tests and docs by @saschalalala in #760
- Fixing TypeError in file_selector.py by @Ruijian-Zha in #756
- Add W&B tracing user guide by @ash0ts in #752
- Issue 718 refactor by @captivus in #766
- Removing agent-protocol from main branch - needs major rework by @ATheorell in #767
- Fix: Crashes after entering additional questions by @pralad-p in #769
- Fix preprompt path by @AntonOsika in #772
- Bugfix/broken module references by @TheoMcCabe in #775
- Bugfix - CLI - Resolves error "ModuleNotFoundError: No module named 'gpt_engineer.cli'" by @captivus in #778
- Adding tests for refactored CLI by @captivus in #779
- Project path is now workspace by @UmerHA in #749
- "Improve" now edits existing code base by @UmerHA in #721
- fixed broken ref to Runpod template setup by @vatogato in #792
- encoding before measuring byte length + extra try clause by @ATheorell in #796
- Updating terms of use for data collection by @ATheorell in #797
- bug: Unicode decode error by @TheoMcCabe in #801
- Release0.1.0 by @ATheorell in #803
New Contributors
- @krrishdholakia made their first contribution in #660
- @lukaspetersson made their first contribution in #706
- @RareMojo made their first contribution in #720
- @surfingdoggo made their first contribution in #724
- @fabhed made their first contribution in #726
- @umarmnaq made their first contribution in #731
- @saschalalala made their first contribution in #740
- @woutervanranst made their first contribution in #753
- @Ruijian-Zha made their first contribution in #756
- @ash0ts made their first contribution in #752
- @captivus made their first contribution in #766
- @pralad-p made their first contribution in #769
- @vatogato made their first contribution in #792
Full Changelog: v0.0.9...v0.1.0
v0.0.9 is live 🚀
Great work, everyone working on this release.
I'm personally excited after having used gpt-engineer to improve gpt-engineer itself 👶
(see my tweet for how it looked)
We're looking to improve the UX further. Check recent issues labeled for how you can contribute!
What's New
- 👨💻 Add possibility to improve existing codebases by @leomariga @pbharrin
- 🧠 Support for open source models, added instructions to docs by @ErikBjare in #639
- 🔧 .env setup for OpenAI API key by @OriAshkenazi
- 🏅 Evals for improve existing code by @pbharrin
In Detail
- Fixed spelling error on README.md by @salomonj11 in #577
- Update TERMS_OF_USE.md by @egecandrsn in #575
- Minor fixes to documentation for Windows users by @Oxymoron290 in #556
- Docker And Docker-Compose Support by @ayoubfletcher in #538
- Remove poetry by @AntonOsika in #587
- Refactor files for docker by @AntonOsika in #588
- .env setup for OpenAI API key by @OriAshkenazi in #499
- Fix missing OPENAI_API_KEY by @pbharrin in #592
- Rebase of @leomariga's Existing Project by @pbharrin in #578
- Add possibility to improve existing codebases by @leomariga in #465
- Removed unused code in steps.py by @pbharrin in #597
- Configure Sweep by @sweep-ai in #603
- refactor for clarity by @talkingtoaj in #585
- removed file dictionary, and use full path for files in existing code… by @pbharrin in #600
- Updated sweep.yaml for pre-commit by @kevinlu1248 in #622
- Add numpy-style docstrings to functions by @sweep-ai in #615
- Automate Issue and PR Management using GitHub Actions by @sweep-ai in #605
- Docker Update by @FancyKat in #612
- Fixed Incorrect Github codespaces link by @gssakash in #624
- Add benchmark Results for commit 8358b60 with GPT3.5-default by @alvaromat in #625
- Add support for Azure OpenAI Service by @niklasfink in #640
- feat: added support for open source models, added instructions to docs by @ErikBjare in #639
- fix: fix bad merge in #639 by @ErikBjare in #644
- Evals for improve existing code by @pbharrin in #638
- Merge pull request #1 from AntonOsika/main by @Ax2L in #646
- Update readme and docs by @AntonOsika in #647
- Improve flow for -i flag by @AntonOsika in #652
- First boostrap commit 🚀 Improving usage of typehints. by @AntonOsika in #653
- Simplify which folders are used by @AntonOsika in #659
- Issue templates by @ATheorell in #661
- Revert "Simplify which folders are used" by @AntonOsika in #668
- Bump the release version in pyproject.toml by @sweep-ai in #666
- Revert "Bump the release version in pyproject.toml" by @AntonOsika in #672
New Contributors
- @salomonj11 made their first contribution in #577
- @egecandrsn made their first contribution in #575
- @Oxymoron290 made their first contribution in #556
- @ayoubfletcher made their first contribution in #538
- @OriAshkenazi made their first contribution in #499
- @pbharrin made their first contribution in #592
- @talkingtoaj made their first contribution in #585
- @kevinlu1248 made their first contribution in #622
- @FancyKat made their first contribution in #612
- @gssakash made their first contribution in #624
- @alvaromat made their first contribution in #625
- @niklasfink made their first contribution in #640
- @ErikBjare made their first contribution in #639
- @Ax2L made their first contribution in #646
- @ATheorell made their first contribution in #661
Full Changelog: v0.0.8...v0.0.9
v0.0.8 is live 🚀
Tons of updates this release. Keep the good job up all contributors.
Notwortyh contributions
- Remove
delete_existing
option; Introduce archive by @azrv in #409 - Simplify archiving process by @AntonOsika in #469
- Add benchmark report by @artmoskvin in #463
- Langchain integration by @UmerHA in #512
- Feature/docsv1 by @amjadraza in #554
What's Changed
- Resolve Dependency Conflicts for Google Colab by @sweep-ai in #392
- update pyptoject and revert suppress KeyboardInterrupt by @k1lgor in #376
- Use 'good first issue' label in issues URL by @SiboVG in #386
- Clarify missing files error message. by @leomariga in #384
- Update README.md by @dverzolla in #323
- Add CodeQL workflow by @jorgectf in #422
- changed feedback collection from opt-out to opt-in by @Gamekiller48 in #423
- Add benchmark report by @artmoskvin in #463
- refactor(makefile): ♻️ remove repetitive command by @k1lgor in #451
- remove a duplicate phrase from the prompt by @MrF0o in #446
- Remove
delete_existing
option; Introduce archive by @azrv in #409 - Simplify archiving process by @AntonOsika in #469
- codespell: workflow, config + 1 single uno only typo fixed! by @yarikoptic in #426
- Python 3.8 support + Cleaning up some issues in extracting files out of the prompts by @Nitaym in #355
- Added windows commands in readme by @ashishawasthi in #378
- Added documentation in makefile by @shubham-attri in #348
- Hotfix pre commit config by @patillacode in #470
- Add flow to ask for consent to share learnings by @AntonOsika in #471
- Implemented logging token usage (solves #322) by @UmerHA in #438
- Fix examples project path in main by @SiboVG in #408
- fix spelling by @rezernieks in #500
- Readme and Windows Usage update by @PeterPCW in #406
- Update codespell.yml by @AntonOsika in #523
- Langchain integration by @UmerHA in #512
- Update README.md by @elsatch in #561
- Update philosophy by @AntonOsika in #568
- Feature/docsv1 by @amjadraza in #554
New Contributors
- @sweep-ai made their first contribution in #392
- @SiboVG made their first contribution in #386
- @leomariga made their first contribution in #384
- @dverzolla made their first contribution in #323
- @jorgectf made their first contribution in #422
- @Gamekiller48 made their first contribution in #423
- @artmoskvin made their first contribution in #463
- @MrF0o made their first contribution in #446
- @azrv made their first contribution in #409
- @yarikoptic made their first contribution in #426
- @Nitaym made their first contribution in #355
- @ashishawasthi made their first contribution in #378
- @shubham-attri made their first contribution in #348
- @UmerHA made their first contribution in #438
- @rezernieks made their first contribution in #500
- @PeterPCW made their first contribution in #406
- @elsatch made their first contribution in #561
- @amjadraza made their first contribution in #554
Full Changelog: v0.0.7...v0.0.8
v0.0.7 is live 🚀
What's Changed
- edit on some typing by @abdoafage in #341
- Extend tests for DB class by @Snoup97 in #128
- Refactoring and suggestions by @k1lgor in #334
- refactor: Refactor loop for improved efficiency and readability by @kbshal in #286
- fix typos by @Snoup97 in #359
- First step in making gpt-engineer learn. Rename main_prompt -> prompt by @AntonOsika in #381
- Allow model string to be changed (Fixes #328) by @Explosion-Scratch in #329
- Make sure benchmark runs and be more strict about collecting feedback by @AntonOsika in #397
New Contributors
- @abdoafage made their first contribution in #341
- @k1lgor made their first contribution in #334
- @kbshal made their first contribution in #286
- @Explosion-Scratch made their first contribution in #329
Full Changelog: v0.0.6...v0.0.7
v0.0.6 is live 🚀
Minor release for PYPI config.
Full Changelog: v0.0.5...v0.0.6
Special shoutout to:
- davejcameron for well tested contributions to file parsing. Keep the good work up.
- patillacode for ensuring we have a smooth process and merge PRs quickly and efficiently
- carlthome for pushing and not compromising with best practices across the repository, levelling all of us up.
And to all the other new and old contributors. Let's continue making this great. 🏃
v0.0.5 is live 🚀
What's Changed
- Dont require to be in the same folder as the repo to run, v0.0.5 by @AntonOsika in #320
Full Changelog: v0.0.4...v0.0.5
v0.0.4 is live 🚀
Special shoutout this release to:
- @davejcameron for well tested contributions to file parsing. Keep the good work up.
- @patillacode for ensuring we have a smooth process and merge PRs quickly and efficiently
- @carlthome for pushing and not compromising with best practices across the repository, levelling all of us up.
And to all the other new and old contributors. Let's continue making this great. 🏃
Fresh benchmark results for this release, big improvements
What's Changed
- fix(bug): toml misconfiguration by @gblikas in #189
- Refactored by Sourcery AI by @LopeKinz in #188
- Fix for += by @LopeKinz in #199
- tweak make file for running the app by @patillacode in #203
- Fix square bracket file name issue by @davejcameron in #173
- add workflow to execute unit tests by @Snoup97 in #118
- Improved CONTRIBUTING.md by @Harshad112 in #208
- Add mypy by @rdesparbes in #224
- Add pytest pre commit hook by @patillacode in #210
- Additional filename handling by @davejcameron in #221
- enabled compatiblilty with python versions <3.9 fixes #253 by @SlamChillz in #254
- Handle newlines between filename by @davejcameron in #250
- Add pull request and issue templates by @aroramrinaal in #222
- v0.0.4 benchmark, stricter typing, smaller fixes and new README by @AntonOsika in #268
New Contributors
- @gblikas made their first contribution in #189
- @LopeKinz made their first contribution in #188
- @davejcameron made their first contribution in #173
- @Harshad112 made their first contribution in #208
- @rdesparbes made their first contribution in #224
- @SlamChillz made their first contribution in #254
- @aroramrinaal made their first contribution in #222
Full Changelog: v0.0.3...v0.0.4
v0.0.3 is live 🚀
What's new
Improved performance 📈
- TDD workflow: generates the tests, then the code
- Self-reflection + prompts that are even Chain of Thought:ier
Smooth developer flow 🍦
- Configurable steps in the generation process to quickly iterate
- Standard CI on autoformatting, pre-commit hooks, tests – and releasing to pip! (just
pip install gpt-engineer
)
Feedback loops 💨
- Spins up the project immediately when done
- Fully autonomous mode to allow for...
Benchmarks 🤼♀️
- Automatically solves a suite of benchmarks
- Lets us track progress
In detail
- A few doc tweaks by @patillacode in #157
- Add --verbose option for logging request/response <Carl Thomé>
- kwargs -> temperature <Carl Thomé>
- Fix the errors with parsing
Full Changelog: v0.0.2...v0.0.3
v0.0.2 is live 🚀
Great job on this release everyone. GPT Engineer has gotten much better throughout the week.
What's Changed
- Update README.md by @mrowan137 in #27
- Minor clean up by @patillacode in #52
- add multi-language support for file read by @JackLeeHal in #23
- Revert model to gpt-3.5-turbo when gpt-4 is not available. by @jnichols0 in #40
- Make gpt-engineer pip installable/runnable by @Jeadie in #60
- Fix README after the changes from #60 by @patillacode in #76
- Fix: Ensure Directory Exists Before File Write Operation in db.py by @Ryan526 in #89
- Pre commit setup by @patillacode in #61
- Add steps for unit_tests and specification by @FOLLGAD in #100
- Fix an exception for GPT response with lang=sh by @jjzhuo in #105
- added .idea folder of jetbrains IDEs to gitignore by @Snoup97 in #111
- Minor formatting fixes in Readme; fix main python command by @vreyespue in #97
- improve execution step by @AntonOsika in #123
- fixed the DB import in the pytest file by @Snoup97 in #116
- Makefile by @patillacode in #80
- SECURITY: change execute_entrypoint conditions by @NoCLin in #145
- Improved chat parsing with no AI logic by @goncalomoita in #120
- Directory creation & project directory by @EnzoMartin in #140
- make pre commit pass in the whole codebase by @patillacode in #149
- Added CODE_OF_CONDUCT.md to the .github directory by @jebarpg in #147
- fix docstring #150 by @NoCLin in #152
New Contributors
- @mrowan137 made their first contribution in #27
- @patillacode made their first contribution in #52
- @JackLeeHal made their first contribution in #23
- @jnichols0 made their first contribution in #40
- @Jeadie made their first contribution in #60
- @Ryan526 made their first contribution in #89
- @FOLLGAD made their first contribution in #100
- @jjzhuo made their first contribution in #105
- @Snoup97 made their first contribution in #111
- @vreyespue made their first contribution in #97
- @AntonOsika made their first contribution in #123
- @NoCLin made their first contribution in #145
- @goncalomoita made their first contribution in #120
- @EnzoMartin made their first contribution in #140
- @jebarpg made their first contribution in #147
Full Changelog: https://github.com/AntonOsika/gpt-engineer/commits/v0.0.2