Releases: Significant-Gravitas/AutoGPT
AutoGPT Platform v0.3.3
UI/UX Improvements 💻
- fix(frontend): Allow importing agent file with empty description by @Pwuts in #8670
- fix(backend): Improve input typing for blocks
StepThroughItemsBlock
,CountdownTimerBlock
,AddToListBlock
,AddToDictionaryBlock
by @majdyz in #8713 - feat(frontend): Show Agent Output on Monitor page by @kcze in #8501
- feat(platform): Updates to Runner Output UI by @Bentlybro in #8717
Technical Improvements ⚙️
- refactor(platform): Remove settings endpoint by @aarushik93 in #8715
- fix(frontend): Fix duplicate API calls on Monitor Page by @majdyz in #8727
- fix(block): Renamed
model_version
input to prevent conflicts with Pydantic naming by @Swiftyos in #8729 - test(frontend): Add simple auth tests by @ntindle in #8709
DX improvements 👷🏼
- dx(backend): Fix
pre-commit
isort
step by @Pwuts in #8726 - docs(platform): update docs for security ssrf by @ntindle in #8675
- docs: replace docker-compose with docker compose by @simoneb in #8502
New Contributors 🎉
How to Get This Update 📥
To update to this version, use:
git pull origin agpt-platform-beta-v0.3.3
Or download it directly from the Releases page.
Feedback and Issues 📝
If you encounter any issues or have suggestions, please join our Discord and let us know!
Full Changelog: autogpt-platform-beta-v0.3.2...autogpt-platform-beta-v0.3.3
autogpt-platform-beta-v0.3.2
🚀 What's New in v0.3.2?
🌟 New Features
- feat(backend): Enable JSON parsing with typing & conversion (#8578) by @majdyz
- feat(blocks): Add Open Router integration with a large selection of new models (#8653) by @Torantulino
🛠 Fixes & Improvements
- fix(backend): Add migrations to fix credentials inputs (#8674) by @Pwuts
- fix(backend): Resolve Pydantic warning about missing
secrets_dir
(#8692) by @Pwuts - fix(backend): Define
executionmanager
hostname for local docker-mode (#8681) by @majdyz - fix(frontend): Typing in the
NodeKeyValueInput
field no longer unfocuses the field (#8680) by @majdyz - fix(frontend): Avoid displaying overly long description text for blocks (#8688) by @majdyz
- fix(platform/builder): Add heartbeat mechanism (#8665) by @aarushik93
- fix(backend): Add a lower cap of zero for user credits (#8682) by @majdyz
- fix(backend): Avoid falling back to default user unless
ENABLED_AUTH
is set toFalse
(#8691) by @majdyz
📚 Documentation Updates
- tweak(docs): Update block file path in documentation (#8662) by @Torantulino
🛠 Build & Refactor
- refactor(frontend): Updated buttons for editing agents in Monitor (#8687) by @kcze
- build(frontend): Optimize Docker build time and image size (#8695) by @Pwuts
🔗 Full Changelog: Compare v0.3.1...v0.3.2
AutoGPT Platform v0.3.1
v0.3.1 is a patched re-release of v0.3.0.
Highlights ✨
-
Agent Execution Block 🤖
The Agent Execution Block has been introduced, allowing users to use agents as blocks within other agents. This powerful new feature makes it possible to build modular complex agents. -
Scheduling Agent Runner ⏰
Users can now schedule agents to run at specific times using the new scheduling functionality in the UI. Monitor and manage your scheduled agents easily from the dedicated monitor page.
New Blocks and Enhancements 🧩
-
AI Image Generator Block 🖼️
The AI Image Generator Block has been added, providing a unified interface for generating images using various AI models. Users can now easily generate images within their workflows. -
AI Music Generator Block 🎵
Introducing the AI Music Generator Block, powered by Meta Music Gen. Users can now generate music directly within the AutoGPT platform, opening up exciting possibilities for audio-based workflows. -
YouTube Video Block Enhancements 🌍
The YouTube Video Block now supports additional languages, expanding its capabilities for a broader range of users and use cases.
UI/UX Improvements 💻
-
Centered Initial Canvas 🎨
The initial canvas in the UI is now centered, providing a more visually appealing and user-friendly experience. -
Client-side Validation 🚦
Client-side validation has been implemented for the Agent Executor Block, ensuring a smoother and more reliable user experience. -
Credentials Input Enhancements 🔒
The credentials input UI has been enhanced to provide a more intuitive and streamlined experience. Double titles have been removed, and credentials are now automatically selected when there is only one option available. -
Authentication Checks 🔐
Authentication checks have been added to ensure that only authorized users can perform certain actions within the platform. -
Improved Error Transparency
⚠️
Communication of errors in the front end has been improved, to help users understand and resolve issues with their graphs.
Bug Fixes and Optimizations 🐛
-
Input Field Updates 📝
Fixed an issue where newly typed text in input fields would vanish on scroll, providing a more stable editing experience. -
Block Cost Configuration 💰
The block cost configuration has been refactored and centralized into a single file, making it easier to manage and update costs for various blocks. -
Dependency Updates 📦
Several dependencies have been updated to their latest versions, enhancing security, performance, and compatibility. -
Error Handling and Logging 💡
Improved error handling and logging mechanisms have been implemented across various components, facilitating better debugging and troubleshooting.
Miscellaneous Changes 🌟
- The project's version has been bumped to v0.3.1.
- Default credentials are now mapped to actual provider names (e.g.,
anthropic
) for better clarity. - Hidden credentials have been introduced for default system keys, ensuring they are not visible in the user profile.
📥 How to Get This Update
To update to this version, use:
git pull origin agpt-platform-beta-v0.3.1
Or download it directly from the Releases page.
📝 Feedback and Issues
If you encounter any issues or have suggestions, please join our Discord and let us know!
Full Changelist
- feat(block): Add AI Music Generator Block with Meta Music Gen by @Torantulino in #8532
- build(deps): bump peter-evans/repository-dispatch from 2 to 3 by @dependabot in #8609
- [Snyk] Security upgrade python from 3.11-slim-buster to 3.11.10-slim-bookworm by @ntindle in #8619
- build(deps): bump supabase from 2.9.1 to 2.10.0 in /autogpt_platform/autogpt_libs in the production-dependencies group by @dependabot in #8617
- build(deps-dev): bump ruff from 0.7.2 to 0.7.3 in /autogpt_platform/autogpt_libs in the development-dependencies group by @dependabot in #8618
- build(deps-dev): bump the development-dependencies group in /autogpt_platform/market with 2 updates by @dependabot in #8612
- build(deps): bump the production-dependencies group in /autogpt_platform/backend with 2 updates by @dependabot in #8610
- build(deps-dev): bump the development-dependencies group in /autogpt_platform/frontend with 12 updates by @dependabot in #8615
- build(deps): bump the production-dependencies group in /autogpt_platform/frontend with 8 updates by @dependabot in #8614
- build(deps-dev): bump the development-dependencies group in /autogpt_platform/backend with 3 updates by @dependabot in #8611
- [Snyk] Security upgrade urllib3 from 2.0.7 to 2.2.2 by @ntindle in #8620
- build(deps): bump cookie from 0.7.0 to 1.0.1 in /autogpt_platform/frontend by @dependabot in #8616
- [Snyk] Security upgrade zipp from 3.15.0 to 3.19.1 by @ntindle in #8622
- fix: show error toast on Run failure when inputs or credentials are i… by @Abhi1992002 in #8391
- feat(platform): Introduced Agent Execution Block by @majdyz in #8533
- refactor(backend): Centralize Block Cost into a Single File by @majdyz in #8623
- feat(platform): Simplify Credentials UX by @kcze in #8524
- fix(frontend): Unbreak credentials input on single-provider blocks by @Pwuts in #8636
- tweak(backend): Update all block costs by @Torantulino in #8639
- Adding Google Analytics to docs site by @kbarnard10 in #8640
- fix(frontend): Fix client-side validation for Agent Executor Block by @majdyz in #8643
- fix(classic): update docs for security deprecation by @ntindle in #8632
- fix(frontend): Remove double title on credentials input by @Pwuts in #8638
- Create SECURITY.md by @ntindle in #8645
- fix(platform): Remove migrate and encrypt function by @aarushik93 in #8646
- fix(frontend): Fix input-field update on empty & default value by @majdyz in #8647
- feat(frontend): Center initial canvas by @majdyz in #8644
- Add provision for other languages in Youtube Video Block by @vishesh10 in #8630
- tweak(frontend): Add jina and unreal to hidden credentials list in frontend by @Torantulino in #8642
- feat(frontend): check auth before allowing actions to run by @ntindle in #8633
- feat(blocks): Add
AIImageGeneratorBlock
by @Torantulino in #8525 - feat(platform): Add api generator functions and endpoints by @Abhi1992002 in #8597
- feat(platform) : scheduling agent runner by @Abhi1992002 in #8634
- Feat(Builder/tutorial): Updates to fix tutorial by @Bentlybro in #8655
- Revert "fix(platform): Remove migrate and encrypt function" by @Pwuts in #8654
- ci: fix classic ci by @ntindle in #8338
- fix(frontend): Newly typed text in Input fields vanishes on scroll by @majdyz in #8657
- fix(backend): Add execution persistence for execution scheduler service by @majdyz in #8649
- fix(backend): Add migrations to fix credentials inputs with invalid provider "llm" by @Pwuts in #8674
Full Changelog: autogpt-platform-beta-v0.2.2...autogpt-platform-beta-v0.3.1
autogpt-platform-beta-v0.2.2
What's Changed 🚀
DX Improvements
🛠️ Fix pre-commit configuration #8584 by @Pwuts
🧹 Clean up PR template #8541 by @Pwuts
New Features
🔍 Pinecone blocks added #8535 by @aarushik93
🔐 API key database table introduced #8593 by @aarushik93
⚙️ Default credentials for Jina blocks #8603 by @aarushik93
Build Enhancements
🐛 Add launch.json for VSCode debugging #8496 by @ntindle
Full Changelog: Compare v0.2.1...v0.2.2
autogpt-platform-beta-v0.2.1
🚀 What's Changed
- feat(pre-commit): Detect secrets #8507 by @Swiftyos
- docs(platform): Update frontend instructions #8514 by @Swiftyos
- chore(platform): Tidy up repo structure #8521 by @Swiftyos
- feat(platform): Reseal revid #8523 by @aarushik93
- refactor(platform/rest): Update REST API to use standard FastAPI structure #8519 by @Swiftyos
- build(deps): Bump actions/checkout from 2 to 4 #8553 by @dependabot
- build(deps): Bump uuid in frontend #8552 by @dependabot
- build(deps): Update production dependencies across 1 directory with 7 updates #8556 by @dependabot
- build(deps): Bump date-fns in frontend #8550 by @dependabot
- build(deps-dev): Update development dependencies in frontend #8548 by @dependabot
- build(deps-dev): Update development dependencies in backend #8543 by @dependabot
- build(deps): Bump sentry-sdk in market #8544 by @dependabot
- build(deps-dev): Bump storybook in frontend #8551 by @dependabot
- feat(platform): Toast Graph Creation Error #8536 by @majdyz
- Update: docker-compose.platform.yml #8560 by @aarushik93
- fix(frontend): Fix connection value clash #8559 by @majdyz
- feat(backend): Reduce local mode services #8562 by @majdyz
- [Snyk] Security upgrade to python 3.11.10-slim-bookworm #8557 by @ntindle
- build(deps): Manual fix - bump replicate #8476 by @dependabot
- fix(platform): Add local enc key #8568 by @aarushik93
- feat: Bump elliptic to 6.6.0 #8570 by @ntindle
- fix: Update cookie handling #8571 by @ntindle
- fix(frontend): Fix broken UI on Run #8575 by @majdyz
- refactor(backend): Merge GraphMeta & Graph, remove subgraph functionality #8526 by @majdyz
- feat(build-page): Make content unselectable except flowEditor #8534 by @Abhi1992002
- Update: codeql.yml #8500 by @ntindle
- fix(searchtheweb): Fix the Jina Search Block #8583 by @aarushik93
- ci(platform): Update pipelines to run from infra repo #8595 by @aarushik93
🎉 New Contributors
- @jackfromeast made their first contribution in #8531
Full Changelog: compare v0.2.0...v0.2.1
agpt-platform-beta-v0.2.0
What's Changed
Infrastructure & Security
- Updated Secrets Management: Implemented a new approach to secrets handling, including secret rotation and resealing, to enhance security (#8505, #8506).
- Infrastructure Update: Improved environment configuration with updated variable names (#8447) and fixed production workload identity pool (#8456).
Feature Enhancements
- Blocks System: Added support for Pinecone and Jina blocks to improve modularity (#8401).
- Platform Improvements: Added default secrets (#8452) and removed dotenv for a streamlined configuration process (#8459).
Dependency Updates
- Frontend: Updated
react-day-picker
to9.2.0
(#8442) and several other development dependencies. - Backend: Bumped versions for
websockets
(#8477),sentry-sdk
(#8475),psutil
(#8473),tenacity
(#8472), and other libraries to improve stability and performance. - CI & Build Tools: Updated several GitHub Actions and build dependencies, including
setup-python
,setup-helm
,create-pull-request
, and others for better CI/CD performance and compatibility.
Fixes & Optimizations
- Backend Optimization: Refined the
RedisEventQueue
to use Pub/Sub and optimized FastAPI event handling to prevent blocking (#8387, #8429). - Frontend Security: Addressed an object pollution issue for better security (#8499).
Documentation
- Improved Navigation: Updated documentation navigation to enhance platform usability (#8448).
New Contributors
Thanks to our new contributor!
Full Changelog: View all changes
agpt-platform-beta-v0.1.1
What's Changed
- feat(backend): Add credit for Jina/Search & LLM blocks by @majdyz in #8361
- ci: Enforce
dev
as base branch for development by @Pwuts in #8369 - Update README.md by @kushal34712 in #8319
- refactor(backend): Make block fields consistently use SchemaField by @majdyz in #8360
- fix(dockercompose): Fix db manager connection by @aarushik93 in #8377
- fix: update types reference by @emmanuel-ferdman in #8366
- fix spelling mistake by @aarushik93 in #8380
- fix(platform/infra): Fix liveness probe by @aarushik93 in #8382
- feat(blocks): fix output divider bar being in the wrong place by @Bentlybro in #8385
- ci: create dependabot config by @ntindle in #8372
- fix(platform/dockercompose): Put removed services back in by @aarushik93 in #8386
- refactor(backend): Move credentials storage to prisma user by @ntindle in #8283
- feat(platform/ci) Set up deploys from dev by @aarushik93 in #8355
- feat(platform): Added latest claude version by @aarushik93 in #8397
- fix(frontend): Fix broken terms of use link by @Torantulino in #8279
- feat(backend): Track LLM token usage + LLM blocks cleanup by @majdyz in #8367
- fix(backend): Fix DatabaseManager usage by calling it on-demand by @majdyz in #8404
- fix(platform): Enable auth on local-backend mode by default by @majdyz in #8405
- feat(platform/ci): Run migrations in ci for dev by @aarushik93 in #8395
- feat(platform/infra): Create prod service account and pool by @aarushik93 in #8383
- feat(platform/ci) Add workflow for deploying to production by @aarushik93 in #8384
- feat(platform/ci): Add prod migrations by @aarushik93 in #8396
- fix(platform): Fix containerized connection issues with DB Manager by @aarushik93 in #8412
- fix(backend): Reverse pyro config refactor by @majdyz in #8410
- fix(platform/infra): Fix spelling error by @aarushik93 in #8416
- Implement custom save shortcut in SaveControl component by @Abhi1992002 in #8407
- Merge login and signin by @Abhi1992002 in #8389
- feat(frontend): Improve added block positioning logic to handle collisions and dynamic dimensions size by @Abhi1992002 in #8406
- fix(platform): Expose DB Manager Port by @aarushik93 in #8424
- fix(market): Handle empty agents response by @Abhi1992002 in #8393
- fix(market): Fix DB URL not being read or upgrade correctly by @aarushik93 in #8428
- fix(backend): Fix error pin output not being propagated into the next nodes by @majdyz in #8408
- docs(pr_template): Add reminder for config and infra changes by @aarushik93 in #8430
New Contributors
- @kushal34712 made their first contribution in #8319
- @emmanuel-ferdman made their first contribution in #8366
- @Abhi1992002 made their first contribution in #8407
Full Changelog: agpt-platform-beta-v0.1.0...agpt-platform-beta-v0.1.1
agpt-platform-beta-v0.1.0
🚀 Release agpt-platform-beta-v0.1.0
Date: October 21, 2024
🔥 What's New?
-
New Features
- Copy and Paste Blocks: Added the ability to copy and paste blocks between different flows, improving user efficiency (#8346).
- Shared DB Connection: Introduced a shared DB connection for executors, optimizing resource management (#8340).
- Credential Management: Listed and revoked credentials in the user profile for easier account management (#8207).
- Configmap Usage: Introduced usage of configmap for enhanced builder configuration management (#8343).
- Updated Block UI: Improved the block UI for a better user interface experience (#8260). -
Enhancements
- Behave Variable: Added behave as a variable for enhanced flexibility in Platform/Frontend (#8365).
- Health Router: Included a health router for improved monitoring in Platform (#8362).
- Backend Health Check: Updated backend server health check endpoint for better reliability (#8351).
- Node Workers Optimization: Reduced the number of node workers to optimize database connections (#8331).
- Health Endpoint: Added a health endpoint to enhance security in Platform/Backend (#8341).- Sealed Secrets: Implemented sealed secrets to improve security around sensitive data (#8342).
-
🐛 Bug Fixes
- Market URL Resealing: Resolved the issue with market URL resealing (#8363).
- Agent Pagination and Search: Fixed pagination and search errors for agents (#8336).
- Sealed Secret Names: Fixed sealed secret names to ensure proper handling (#8350).
- Input Styling: Fixed styling inconsistencies in input elements for a more consistent user experience (#8337).
- Dynamic Pin Links: Fixed connection clash on dynamic pin links with the same keys (#8252).
- Secret Value Leakage: Prevented marketplace from leaking secret values (#8281).
- Secret Value Deletion: Updated deletion process for secret values to ensure proper handling (#8284).
- OAuth Credential Validation: Ensured the validity of OAuth credentials during graph execution (#8191).
-
🧱 New Blocks
- Block Documentation: Added comprehensive documentation for all available blocks, improving clarity and usability (#8289).
🎉 Thanks to Our Contributors!
A special shoutout to all the amazing contributors who made this release possible:
- 👏 All contributors involved in the mentioned pull requests
📥 How to Get This Update
To update to this version, use:
git pull origin agpt-platform-beta-v0.1.0
Or download it directly from the Releases page.
📝 Feedback and Issues
If you encounter any issues or have suggestions, please join our Discord and let us know!
AutoGPT v0.5.1
New Features ✨
-
New OpenAI Models 🤖
gpt-4-turbo
is now supported and set as the defaultSMART_LLM
model.- Default
FAST_LLM
changed fromgpt-3.5-turbo-16k
togpt-3.5-turbo
. - Default
EMBEDDING_MODEL
changed fromtext-embedding-ada-002
totext-embedding-3-small
. - Added support for
gpt-4-0125-preview
andgpt-4-turbo
models.
-
Agent Protocol Server Enhancements 🌐
- Made API server port configurable via
AP_SERVER_PORT
environment variable. - Added documentation for configuring the API port.
- Implemented task cost tracking and logging in the
AgentProtocolServer
.
- Made API server port configurable via
-
CLI Usability Improvements 💻
- Added a check to ensure the specified API server port is available before running.
- Improved handling of invalid or empty tasks provided by the user.
- Display information on whether code execution is enabled or not on CLI startup.
-
Web Browsing Enhancements 🌐
- Added browser extensions to handle cookie walls and ads when using Selenium.
- Added
extract_information
function to extract pieces of information from webpage content based on a list of topics of interest. Theread_webpage
command now supportstopics_of_interest
andget_raw_content
parameters to leverage this capability.
-
Telemetry & Error Tracking 📊
- Integrated Sentry for telemetry and error tracking.
- Added configuration flow and opt-in prompt for enabling telemetry.
- Distinguish between
production
anddev
environments based on VCS state. - Capture exceptions for LLM parsing errors and command failures.
-
File Storage Abstraction 📂
- Fully abstracted file storage access with the
FileStorage
class. - Renamed
FileWorkspace
toFileStorage
and updated associated classes and methods. - Updated
AgentManager
andAgentProtocolServer
to use the newFileStorage
system.
- Fully abstracted file storage access with the
-
History Compression 📜
- Implemented history compression to reduce token usage and increase longevity when using models with limited context windows.
Fixes 🔧
-
JSON Parsing Robustness
- Implemented
json_loads
for more tolerant JSON parsing of llm responses. - Updated
extract_dict_from_response
to handle bothjson and
JSON blocks in responses. - Fixed boolean value decoding issues in
extract_dict_from_response
.
- Implemented
-
Error Handling
- Added error handling for loading non-existing agents.
- Fixed handling of
action_history
related exceptions in CLI and Server modes. - Implemented self-correction mechanism for invalid LLM responses by appending error messages to the prompt.
-
Artifact & File Handling
- Fixed handling of artifact modifications by setting
agent_created
attribute instead of registering a new Artifact. - Fixed
read_file
command in GCS and S3 workspaces.
- Fixed handling of artifact modifications by setting
-
Dependency Updates & Security Fixes
- Updated
aiohttp
andfastapi
dependencies to mitigate vulnerabilities. - Fixed Content-Type Header ReDoS vulnerabilities in
python-multipart
.
- Updated
-
TTY Mode Enhancements
- Fixed
finish
command behavior in TTY mode. - Agent now properly raises
AgentTerminated
exception to exit the loop.
- Fixed
-
Miscellaneous Fixes
- Fixed
summarize_text
andQueryLanguageModel
abilities to handle OpenAI API changes. - Improved representation of optional command parameters in prompts.
- Fixed GCS workspace binary file upload.
- Moved
auto-gpt-plugin-template
to regular dependencies to fix missing module error.
- Fixed
Chores & Refactoring 🧹
- Updated
agbenchmark
andautogpt-forge
dependencies across the project. - Upgraded OpenAI library to v1 and refactored code to accommodate API changes.
- Improved logging by capturing errors raised during action execution.
- Cleaned up unused imports and fixed linting issues across the codebase.
- Sped up
test_gcs_file_workspace
by changing the fixture scope.
Pull Requests
Note: most of the changes mentioned above were made through direct commits. See also the full changelog.
- [Documentation Update] Updating Using and Creating Abilities to use Action Annotations by @himsmittal in #6653
- AGBenchmark: Codebase clean-up by @Pwuts in #6650
- fix: cast port to int by @orarbel in #6643
- Add documentation on how to use Agent Protocol in .env.template by @ntindle in #6569
- feat(benchmark): JungleGym WebArena by @Pwuts in #6691
- fix No modules named 'forge.sdk.abilities' and 'forge.sdk' #6537 #5810 by @kfern in #6571
- feat(agent/web): Add browser extensions to deal with cookie walls and ads by @Pwuts in #6778
- fix(forge): no module named 'sdk' by @MKdir98 in #6822
- Adding support to allow for sending a message with the enter key by @zedatrix in #6378
- Fixed revising constraints and best practices by @ThunderDrag in #6777
- Set subprocess.PIPE on stdin and stderr and just let pytest run the currentt file when running main() by @aorwall in #5868
- Update execute_code.py by @ehtec in #6903
- fix(agent/execute_code): Disable code execution commands when Docker is unavailable by @kcze in #6888
- OPEN-133: Fix trying to load non-existing agent by @kcze in #6938
- Fixing support for AzureOpenAI by @edwardsp in #6927
- OPEN-165: Improvement - check for duplicate command by @kcze in #6937
- chore: Change
agbenchmark
to directory dependency inautogpt
andforge
by @Pwuts in #6946 - Create Security Policy by @joycebrum in #6900
- feat(agent): Abstract file storage access by @kcze in #6931
- fix(autogpt): Fix GCS and S3 root path issue by @kcze in #7010
- feat(autogpt/forge): Send exception details in agent protocol endpoints by @kcze in #7005
- fix(agent): Handle
action_history
-related exceptions gracefully by @kcze in #6990 - fix(autogpt/cli): Loop until non-empty task is provided by the user by @kcze in #6995
- docs: Redirect AutoGPT users from Forge tutorial with warning by @ntindle in #7014
- docs: replace
polyfill.io
by @SukkaW in #6952 - feat(autogpt/cli): Check if port is available before running server by @kcze in #6996
- feat(autogpt/cli): Display info if code execution is enabled by @kcze in #6997
- feat(agent): Implement more tolerant
json_loads
function by @kcze in #7016 - ci(agent): Matrix CI tests across Linux, macOS and Windows by @Pwuts in #7029
- feat(agent): Handle OpenAI API key exceptions gracefully by @kcze in #6992
- test(agent): Fix VCRpy request filter for cross-platform use by @Pwuts in #7040
- ci(agent): Add macOS ARM64 to AutoGPT Python CI matrix by @Pwuts in #7041
- security(agent): Replace unsafe
pyyaml
loader withSafeLoader
by @matheudev in #7035 - fix(agent): Fix check when loading an existing agent by @kcze in #7026
- fix(agent, forge): Conform
web_search.py
toduckduckgo_search
v5 by @kcze in #7045 - fix(agent, forge): Conform web_search.py to duckduckgo_search v5 by @kcze in #7046
- fix(agent): Make
save_state
behave like save as by @kcze in #7025 - refactor(agent): Refactor & improve
create_chat_completion
by @Pwuts in #7082
New Contributors
- @himsmittal made their first contribution in #6653
- @orarbel made their first contribution in #6643
- @kfern made their first contribution in #6571
- @MKdir98 made their first contribution in #6822
- @zedatrix made their first contribution in #6378
- @ThunderDrag made their first contribution in #6777
- @ehtec made their first contribution in #6903
- @edwardsp made their first contribution in #6927
- @joycebr...
AutoGPT v0.5.0
First some important notes w.r.t. using the application:
run.sh
has been renamed toautogpt.sh
- The project has been restructured. The AutoGPT Agent is now located in
autogpts/autogpt
. - The application no longer uses a single workspace for all tasks. Instead, every task that you run the agent on creates a new workspace folder. See the usage guide for more information.
New features ✨
- Agent Protocol 🔌
Our agent now works with the Agent Protocol, a REST API that allows creating tasks and executing the agent's step-by-step process. This allows integration with other applications, and we also use it to connect to the agent through the UI. - UI 💻
With the aforementioned Agent Protocol integration comes the benefit of using our own open-source Agent UI. Easily create, use, and chat with multiple agents from one interface.
When starting the application through the project's new CLI, it runs with the new frontend by default, with benchmarking capabilities. Runningautogpt.sh serve
in the subproject folder (autogpts/autogpt
) will also serve the new frontend, but without benchmarking functionality.
Running the application the "old-fashioned" way, with the terminal interface (let's call it TTY mode), is still possible withautogpt.sh run
. - Resuming agents 🔄️
In TTY mode, the application will now save the agent's state when quitting, and allows resuming where you left off at a later time! - GCS and S3 workspace backends 📦
To further support running the application as part of a larger system, Google Cloud Storage and S3 workspace backends were added. Configuration options for this can be found in.env.template
. - Documentation Rewrite 📖
The documentation has been restructured and mostly rewritten to clarify and simplify the instructions, and also to accommodate the other subprojects that are now in the repo. - New Project CLI 🔧
The project has a new CLI to provide easier usage of all of the components that are now in the repo: different agents, frontend and benchmark. More info can be found here. - Docker dev build 🐳
In addition to the regular Docker release images (latest
,v0.5.0
in this case), we now also publish alatest-dev
image that always contains the latest working build frommaster
. This allows you to try out the latest bleeding edge version, but be aware that these builds may contain bugs!
Architecture changes & improvements 👷🏼
-
PromptStrategy
To make it easier to harness the power of LLMs and use them to fulfil tasks within the application, we adopted thePromptStrategy
class fromautogpt.core
(AKA re-arch) to encapsulate prompt generation and response parsing throughout the application. -
Config modularization
To reduce the complexity of the application's config structure, parts of the monolithicConfig
have been moved into smaller, tightly scoped config objects. Also, the logic for building the configuration from environment variables was decentralized to make it all a lot more maintainable.
This is mostly made possible by theautogpt.core.configuration
module, which was also expanded with a few new features for it. Most notably, the newfrom_env
attribute on theUserConfigurable
field decorator and corresponding logic inSystemConfiguration.from_env()
and related functions. -
Monorepo
As mentioned, the repo has been restructured to accommodate the AutoGPT Agent, Forge, AGBenchmark and the new Frontend.- AutoGPT Agent has been moved to
autogpts/autogpt
- Forge now lives in
autogpts/forge
, and the project's new CLI makes it easy to create new Forge-based agents. - AGBenchmark ->
benchmark
- Frontend ->
frontend
See also the README.
- AutoGPT Agent has been moved to
Pull Requests
Note: most of the changes mentioned above were made through direct commits. See also the full changelog.
- Sync release into master by @lc0rp in #5118
- Add files via upload by @ntindle in #5130
- Fix speak mode with elevenlabs falling into error by @dannaward in #5127
- Agent loop v2: Planning & Task Management (part 2) by @Pwuts in #5077
- fix(docker): add gcc installation in order to build psutil by @alexsoyes in #5059
- Fix elevenLabs config error by @dannaward in #5131
- Update init.py to support image_gen commands by @dmoham1476 in #5137
- Fixed stream elements speech function by @NeonN3mesis in #5146
- Restructure Repo by @merwanehamadi in #5160
- Refactor/remove abstract singleton as voice base parent by @collijk in #4931
- Add support for args to
execute_python_file
by @MauroDruwel in #3972 - read me update for monorepo by @SilenNaihin in #5199
- Change agbenchmark folder by @merwanehamadi in #5203
- Integrate benchmark and autogpt by @merwanehamadi in #5208
- Migrate AutoGPT agent to poetry by @Pwuts in #5219
- Adding Space After Colon in Console Input Prompt by @WilliamEspegren in #5211
- AutoGPT: use config and LLM provider from
core
by @Pwuts in #5286 - Rename Auto-GPT to AutoGPT by @merwanehamadi in #5301
- AutoGPT: Move all the Agent's prompt generation code into a PromptStrategy by @Pwuts in #5363
- Fixed stacking prompt instructions by @NeonN3mesis in #5520
- AutoGPT: Implement Agent Protocol by @Pwuts in #5612
- Fix typo in exceptions.py by @eltociear in #5813
- docs: fix typos in markdown files by @shresthasurav in #5871
- feat: Add support for new models and features from OpenAI's November 6 update by @Pwuts in #6147
- Improve the accuracy of the extract_dict_from_response method's JSON extraction. by @HawkClaws in #5458
- Allow port numbers to be used in local host names. e.g. localhost:8888. by @aaron13100 in #5318
- Streamline documentation for getting started by @Pwuts in #6335
- Fix docker build. Changing agbenchmark dependency as git reference instead of folder reference. by @warnyul in #6274
- refactor(agent/config): Modularize
Config
and revive Azure support by @Pwuts in #6497 - feat(agent/workspace): Add GCS and S3 FileWorkspace providers by @Pwuts in #6485
- Add dependencies required to use PostgreSQL by @ntindle in #6558
- Updating
duckduckgo-search
version to v4.0.0 to unbreakweb_search
command by @zedatrix in#6557d820239
New Contributors 🧙🏼
- @dannaward made their first contribution in #5127
- @alexsoyes made their first contribution in #5059
- @dmoham1476 made their first contribution in #5137
- @MauroDruwel made their first contribution in #3972
- @WilliamEspegren made their first contribution in #5211
- @shresthasurav made their first contribution in #5871
- @HawkClaws made their first contribution in #5458
- @aaron13100 made their first contribution in #5318
- @warnyul made their first contribution in #6274
- @zedatrix made their first contribution in
#6557d820239