Commit Graph

128 Commits (33dd2eb9197cd7ceccceff9d957c8f09b4d18b54)

Author SHA1 Message Date
Reinier van der Leer 33dd2eb919
dx(backend): Fix `pre-commit` `isort` step ()
- Set `tool.isort.profile = "black"`
- Explicitly pass the first-party package name in the `isort` jobs in the `pre-commit` config
2024-11-19 19:51:20 -06:00
Aarushi a5734a57d5
fix(platform): Remove settings endpoint ()
remove settings endpoint
2024-11-19 23:39:40 +00:00
Zamil Majdy 274419d393
fix(backend): Improve typing for blocks StepThroughItemsBlock, CountdownTimerBlock, AddToListBlock, AddToDictionaryBlock () 2024-11-19 20:53:34 +00:00
dependabot[bot] 84076ebee1
build(deps-dev): bump the development-dependencies group in /autogpt_platform/backend with 2 updates ()
build(deps-dev): bump the development-dependencies group

Bumps the development-dependencies group in /autogpt_platform/backend with 2 updates: [ruff](https://github.com/astral-sh/ruff) and [pyright](https://github.com/RobertCraigie/pyright-python).


Updates `ruff` from 0.7.3 to 0.7.4
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](https://github.com/astral-sh/ruff/compare/0.7.3...0.7.4)

Updates `pyright` from 1.1.388 to 1.1.389
- [Release notes](https://github.com/RobertCraigie/pyright-python/releases)
- [Commits](https://github.com/RobertCraigie/pyright-python/compare/v1.1.388...v1.1.389)

---
updated-dependencies:
- dependency-name: ruff
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: pyright
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-19 13:28:34 +00:00
Aarushi 8fccf2eed3
fix(platform/builder): Add heartbeat mechanism ()
* add heartbeat mechanism

* formatting data

* import List

* another import fix

* wip

* formatting adn linting
2024-11-18 16:33:15 +00:00
Toran Bruce Richards 29cff1bb4e
feat(blocks): Add Open Router integration with a large selection of new models ()
* feat: Add Open Router integration credentials

- Added support for Open Router integration credentials in the Supabase integration credentials store.
- Updated the LLM provider field to include "open_router" as a valid provider option.
- Added Open Router API key field to the backend settings.
- Updated the profile page to display the Open Router integration credentials.
- Updated the credentials input and provider components to include Open Router as a provider option.
- Updated the autogpt-server-api types to include "open_router" as a provider name.
- Updated the LLM provider schema to include "open_router" as a valid provider name.

- Added GEMINI_FLASH_1_5_8B as the first Open Router LLM

* Add type ignore to new llm prompt to match the rest of them.

* Update LlmModel with a selection of new OpenRouter models

* format
2024-11-18 14:03:50 +00:00
Zamil Majdy 6fa4b8cb11
fix(backend): Add the lower cap of the user credits to zero ()
fix(backend): Add lower cap of the user credits to zero
2024-11-18 13:12:42 +00:00
Zamil Majdy f36d95aaa8
fix(backend): Avoid falling back to default user unless ENABLED_AUTH is set to False () 2024-11-18 13:01:21 +00:00
Reinier van der Leer e840106949
fix(backend): Resolve Pydantic warning about missing `secrets_dir` ()
- Remove `secrets_dir` and other references to `get_secrets_path()`
- Remove unused `get_config_path()`

Follow-up to , which removed the `secrets` dir but not the references to it.
2024-11-18 12:41:18 +00:00
Reinier van der Leer 6c109adf0b
Merge branch 'master' into dev 2024-11-18 12:32:24 +00:00
Reinier van der Leer bff0dc3d82
chore(platform): Bump version to v0.3.1 2024-11-18 12:11:07 +01:00
Reinier van der Leer 918538147c
fix(backend): Add migrations to fix credentials inputs with invalid provider "llm" ()
In , the "llm" credentials provider was replaced. There are still entries with `"provider": "llm"` in the system though, and those break if not migrated.

- SQL migration to fix the obvious ones where we know the provider from `credentials.id`
- Non-SQL migration to fix the rest
2024-11-16 01:07:05 +01:00
Reinier van der Leer 1e8a272ac6
fix(backend): Add migrations to fix credentials inputs with invalid provider "llm" (vol. 5)
Five times the charm
2024-11-16 00:41:56 +01:00
Reinier van der Leer 1c6890486f
fix(backend): Add migrations to fix credentials inputs with invalid provider "llm" (vol. 4)
Another attempt at unbreaking this raw Prisma query
2024-11-16 00:17:43 +01:00
Reinier van der Leer 29688758c4
fix(backend): Add migrations to fix credentials inputs with invalid provider "llm" (vol. 3)
Fix User table reference in raw SQL queryin non-Prisma migration
2024-11-15 20:56:04 +01:00
Reinier van der Leer 2a66295a92
fix(backend): Add migrations to fix credentials inputs with invalid provider "llm" (vol. 2)
Fix breaking SQL double-casting issue in the SQL migration
2024-11-15 20:32:24 +01:00
Reinier van der Leer 4db8e746d7
fix(backend): Add migrations to fix credentials inputs with invalid provider "llm"()
In , the "llm" credentials provider was replaced. There are still entries with 	"provider": "llm"	 in the system though, and those break if not migrated.

- SQL migration to fix the obvious ones where we know the provider from `credentials.id`
- Non-SQL migration to fix the rest
2024-11-15 20:18:02 +01:00
Reinier van der Leer 0551bec096
Merge branch 'master' into dev 2024-11-15 15:17:45 +01:00
Reinier van der Leer 9a4ff9023d
bump version to v0.3.0 2024-11-15 11:54:42 +01:00
Zamil Majdy 8987fdd48c
feat(backend): Enable json parsing with typing & conversion () 2024-11-15 17:28:59 +07:00
Zamil Majdy 6a1cea4c4e
fix(backend): Add execution persistence for execution scheduler service ()
* fix(backend): Add execution persistence for execution scheduler service

* scheduler REST API cleanup

* Fix to binary

* Adapt UI with new API

* Remove schedule.py

* Remove unused class

* Fix linting
2024-11-15 11:17:37 +01:00
Reinier van der Leer f9633ffb71
Revert "fix(platform): Remove migrate and encrypt function" ()
Reverts c707ee9 ()

The problem analysis that led to  contained some errors, so the migration removed in the PR doesn't seem to have been the cause of the problem we were hunting. Also, this migration is an essential part of the security improvement that we made 2 weeks ago.
2024-11-14 23:34:30 +00:00
Abhimanyu Yadav dd0081ab35
feat(platform) : scheduling agent runner ()
* add: ui for scheduling agent

* adding requests and type for schedule endpoints

* feat : monitor schdules on monitor page

* add: Complete monitor page

* fix filter on monitor page

* fix linting

* PR nits

* Added Docker Compose env var

---------

Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
Co-authored-by: Swifty <craigswift13@gmail.com>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-11-14 16:18:56 +01:00
Abhimanyu Yadav bbbdb5665b
feat(platform): Add api generator functions and endpoints ()
* add: api generator functions and endpoints

* Rebase onto dev, refactor API manager location, remove suspended key revoke, and update API code for Prisma compatibility

* add: key_manager

* reversing changes og poetry.lock

* add: changing hash mexhansim in API Manager

* add: changing hash mexhansim in API Manager

* fixing some simple bugs

* fix linting and adding better error handling

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-11-14 14:33:27 +00:00
Toran Bruce Richards e628a25533
feat(blocks): Add `AIImageGeneratorBlock` ()
* feat(block): Add AIImageGeneratorBlock

This commit adds the AIImageGeneratorBlock class to the backend. The AIImageGeneratorBlock is responsible for generating images using various AI models through a unified interface.

* Remove unsupported inputs and add more styles

* Update autogpt_platform/backend/backend/blocks/ai_image_generator_block.py

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>

* run format

* Add test mock

* mock client run

* Refactor AIImageGeneratorBlock to use a separate function for running the client

* Update Credential description

* Rename ModelProvider to ImageGenModel

* Add missing block run function

* fix mock

* .

* Refactor AIImageGeneratorBlock to move run_client function inside class

* Fix broken reference to run client and tidy code.

* Refactor AIImageGeneratorBlock to improve code structure and error handling

* Move client into run client instantiation function.

* Refactor AIImageGeneratorBlock to handle output as FileOutput and improve error handling

* run format

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-11-14 12:28:24 +00:00
vishesh10 639242ac68
Add provision for other languages in Youtube Video Block ()
Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-11-14 09:20:46 +00:00
Aarushi c707ee9cb6
fix(platform): Remove migrate and encrypt function ()
remove migrate and encrypt function
2024-11-13 23:09:26 +00:00
Toran Bruce Richards aafc101224
tweak(backend): Update all block costs ()
* Add support for default credentials to unreal block

* Refactor block cost configuration and add new blocks

This commit refactors the block cost configuration file and adds support for new blocks. The changes include:
- Importing the `AIMusicGeneratorBlock`, `JinaEmbeddingBlock`, and `UnrealTextToSpeechBlock` classes
- Updating the `BLOCK_COSTS` dictionary to include costs for the new blocks

These changes enable the usage of the newly introduced blocks.
2024-11-13 16:05:32 +00:00
Reinier van der Leer aaa0b79f08
fix(frontend): Unbreak credentials input on single-provider blocks ()
- Resolves 

- fix(frontend): Fix type mismatch of `CredentialsField` schema between frontend and backend
   - Fix usages of `credentialsSchema.credentials_provider`

- refactor(backend): Create `CredentialsFieldSchemaExtra` model in backend so it can be mirrored directly in frontend
   - Add check to enforce multi-provider `CredentialsField` always has `discriminator`

- dx: Add type checking shortcut `yarn type-check` / `npm run type-check` for frontend
2024-11-13 13:48:15 +00:00
Krzysztof Czerwinski e907ffda6e
feat(platform): Simplify Credentials UX ()
- Change `provider` of default credentials to actual provider names (e.g. `anthropic`), remove `llm` provider
- Add `discriminator` and `discriminator_mapping` to `CredentialsField` that allows to filter credentials input to only allow  providers for matching models in `useCredentials` hook (thanks @ntindle for the idea!); e.g. user chooses `GPT4_TURBO` so then only OpenAI credentials are allowed
- Choose credentials automatically and hide credentials input on the node completely if there's only one possible option
- Move `getValue` and `parseKeys` to utils
- Add `ANTHROPIC`, `GROQ` and `OLLAMA` to providers in frontend `types.ts`
- Add `hidden` field to credentials that is used for default system keys to hide them in user profile
- Now `provider` field in `CredentialsField` can accept multiple providers as a list

-----------------
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-11-12 16:55:48 +01:00
Zamil Majdy ef7e50403e
refactor(backend): Centralize Block Cost into a Single File () 2024-11-12 14:09:59 +00:00
Zamil Majdy 1e872406ca
feat(platform): Introduced Agent Execution Block () 2024-11-12 13:03:15 +07:00
dependabot[bot] 4a163e5b54
build(deps-dev): bump the development-dependencies group in /autogpt_platform/backend with 3 updates ()
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-11-11 17:31:13 -06:00
dependabot[bot] 603fec3467
build(deps): bump the production-dependencies group in /autogpt_platform/backend with 2 updates ()
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-11-11 22:21:44 +00:00
Nicholas Tindle 3c0dea0017
[Snyk] Security upgrade python from 3.11-slim-buster to 3.11.10-slim-bookworm ()
fix: autogpt_platform/backend/Dockerfile to reduce vulnerabilities

The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-DEBIAN10-GNUTLS28-6159414
- https://snyk.io/vuln/SNYK-DEBIAN10-NCURSES-1655739
- https://snyk.io/vuln/SNYK-DEBIAN10-NCURSES-1655739
- https://snyk.io/vuln/SNYK-DEBIAN10-NCURSES-5421196
- https://snyk.io/vuln/SNYK-DEBIAN10-NCURSES-5421196

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-11-11 20:33:39 +00:00
Toran Bruce Richards 1f0cbc6500
feat(block): Add AI Music Generator Block with Meta Music Gen ()
* feat(platform): Add AIMusicGeneratorBlock for music generation

* refactor(platform): Refactor AIMusicGeneratorBlock for improved error handling and logging

* refactor(ui): Refactor ContentRenderer to support audio rendering

* format

* Frontend format and lint
2024-11-11 09:36:39 -08:00
Aarushi e6e47373ac
feat(blocks/jina): Add default credentials for Jina ()
add jina defaults
2024-11-10 17:18:53 +00:00
Aarushi 359ae8307a
feat(backend): Add API key DB table ()
* add api key db tables

* remove uniqueness constraint on prefix

* add postfix
2024-11-08 17:48:37 +00:00
Aarushi f719c7e70e
feat(blocks): Pinecone blocks ()
* update pinecone

* update blocks

* fix linting

* update test

* update requests

* mock funciton
2024-11-08 17:13:55 +00:00
Aarushi 47759f6951
refactor(backend): Remove config.default.json ()
remove config default josn

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-11-07 21:20:15 -06:00
jackfromeast bcaf3241da
fix (backend): Patching the SSRF vulnerability in Github/Web Search/Request related blocks () 2024-11-08 00:29:18 +00:00
Aarushi c25d03e945
fix(searchtheweb): Fix the Jina Search Block ()
* update jina search web block

* update to false
2024-11-07 17:26:17 -06:00
Zamil Majdy 91edf08540
feat(backend): Improve pyro reliability by adding connection timeout, retry, cleanup, and dynamic connection thread size () 2024-11-07 11:34:32 +07:00
Zamil Majdy 86c544177e
refactor(backend): Introduced Graph Input & Output Schema, Merge GraphMeta & Graph, Remove subgraph functionality () 2024-11-07 09:30:51 +07:00
Zamil Majdy af9ea5bc31
fix(frontend): Broken UI caused by lack of error propagation on Run () 2024-11-07 08:49:32 +07:00
dependabot[bot] 4259ad686e
build(deps): bump the production-dependencies group across 1 directory with 11 updates ()
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-11-05 17:32:15 -06:00
dependabot[bot] f17c20ed91
build(deps): manual fix!! bump replicate from 0.34.1 to 1.0.3 in /autogpt_platform/backend ()
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-11-05 14:34:37 -06:00
SwiftyOS c19703150a fix(gitignore): Allow file extensions after .ign. or .ignore. 2024-11-05 16:09:19 +01:00
SwiftyOS 3e7d0e7f1b feat(backend): update .gitignore to include ignore / ign file extension 2024-11-05 16:07:13 +01:00
Zamil Majdy 45fe26b58d
feat(platform): Toast Graph Creation Error ()
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-11-05 03:23:41 +00:00