"It's like AutoGPT got a brew install
", made possible by Kurtosis.
Assuming you have Kurtosis installed, first start AutoGPT (replacing YOUR_API_KEY_HERE
with your API key):
kurtosis run github.com/kurtosis-tech/autogpt-package --enclave autogpt '{"OPENAI_API_KEY": "YOUR_API_KEY_HERE"}'
Then start interacting with AutoGPT:
kurtosis service shell autogpt autogpt --exec "python -m autogpt"
If kurtosis service shell autogpt autogpt --exec "python -m autogpt"
breaks for you then you might be on an older version of Kurtosis. Please use instead:
( echo "python -m autogpt" && cat ) | kurtosis service shell autogpt autogpt
We use the Redis
memory backend by default.
Follow along the official guide here
To pass any other configuration listed here; pass the argument like you pass the OPENAI_API_KEY
kurtosis run github.com/kurtosis-tech/autogpt-package --enclave autogpt '{"OPENAI_API_KEY": "YOUR_API_KEY_HERE", "RESTRICT_TO_WORKSPACE": "False"}'
Note - This package spins up AutoGPT using the Redis
backend by default. To use the local backend instead set MEMORY_BACKEND
to local
in args
. For pinecone
and you will need to get API keys for it and pass it. Weaviate
& Milvus
are supported both locally & remotely.
To run with an instance of Weaviate inside Docker run this using
kurtosis run github.com/kurtosis-tech/autogpt-package --enclave autogpt '{"OPENAI_API_KEY": "YOUR_API_KEY_HERE", "MEMORY_BACKEND": "weaviate"}'
To get Milvus running inside Docker with the required dependencies use
kurtosis run github.com/kurtosis-tech/autogpt-package --enclave autogpt '{"OPENAI_API_KEY": "YOUR_API_KEY_HERE", "MEMORY_BACKEND": "milvus"}'
Kurtosis supports the ALLOWLISTED_PLUGINS
configuration flag that AutoGPT
ships with. For example, to run the AutoGPTTwitter
plugin do the following:
kurtosis run github.com/kurtosis-tech/autogpt-package --enclave autogpt '{"OPENAI_API_KEY": "YOUR_API_KEY_HERE", "ALLOWLISTED_PLUGINS": "AutoGPTTwitter"}'
To get multiple plugins running at the same time; separate them with comma without spaces like:
kurtosis run github.com/kurtosis-tech/autogpt-package --enclave autogpt '{"OPENAI_API_KEY": "YOUR_API_KEY_HERE", "ALLOWLISTED_PLUGINS": "AutoGPTTwitter,AutoGPTEmailPlugin"}'
Under the hood, Kurtosis will download and install the package for you! As of now the following plugins are supported:
- AutoGPTTwitter
- AutoGPTEmailPlugin
- AutoGPTSceneXPlugin
- AutoGPTBingSearch
- AutoGPTNewsSearch
- AutoGPTWikipediaSearch
- AutoGPTApiTools
- AutoGPTRandomValues
- AutoGPTSpacePlugin
- AutoGPTBaiduSearch
- AutoGPTBluesky
- AutoGPTAlpacaTraderPlugin
- AutoGPTUserInput
- BingAI
- AutoGPTCryptoPlugin
- AutoGPTDiscord
- AutoGPTDollyPlugin
- AutoGPTGoogleAnalyticsPlugin
- AutoGPT_IFTTT
- AutoGPT_Zapier
- AutoGPT_YouTube
- AutoGPTPMPlugin
- AutoGPTWolframAlpha
- AutoGPTTodoistPlugin
- AutoGPTMessagesPlugin
- AutoGPTWebInteraction
- AutoGPTNotion
- SystemInformationPlugin
To add support for more plugins simply create an issue or create a PR adding an entry to plugins.star
. Sometimes the code is better updated than the README with what's supported.
Kurtosis has an extension available on VSCode that allows you to develop Kurtosis Starlark more efficiently. While develeoping this package locally run using -
kurtosis run . --enclave autogpt '{"OPENAI_API_KEY": "YOUR_API_KEY_HERE", "MEMORY_BACKEND": "weaviate"}'
This would upload the local package and run it instead of pulling it from GitHub.
Let us know in our Discord or on Twitter @KurtosisTech!
Feel free to create an issue on GitHub if you have any bugs or feature requets.