Compare commits

..

1207 Commits

Author SHA1 Message Date
Bentlybro
7cfc0a0c4f update blocks.md 2025-01-13 11:05:15 +00:00
Bently
c869fd0119 Update block docs for: slant3d/slicing.md 2025-01-13 10:24:59 +00:00
Bently
097348e2ba Update block docs for: slant3d/order.md 2025-01-13 10:24:57 +00:00
Bently
2f97724ba5 Update block docs for: slant3d/filament.md 2025-01-13 10:24:54 +00:00
Bently
805a988e21 Update block docs for: slant3d/base.md 2025-01-13 10:24:51 +00:00
Bently
6166e31942 Update block docs for: nvidia/deepfake.md 2025-01-13 10:24:48 +00:00
Bently
fa56b68071 Update block docs for: jina/search.md 2025-01-13 10:24:46 +00:00
Bently
4207dc2bcf Update block docs for: jina/fact_checker.md 2025-01-13 10:24:44 +00:00
Bently
73d032a937 Update block docs for: jina/embeddings.md 2025-01-13 10:24:42 +00:00
Bently
2011322511 Update block docs for: jina/chunking.md 2025-01-13 10:24:40 +00:00
Bently
09e1a4081f Update block docs for: hubspot/engagement.md 2025-01-13 10:24:39 +00:00
Bently
3831aa99e7 Update block docs for: hubspot/contact.md 2025-01-13 10:24:36 +00:00
Bently
f15633833c Update block docs for: hubspot/company.md 2025-01-13 10:24:29 +00:00
Bently
2352c50433 Update block docs for: helpers/http.md 2025-01-13 10:24:27 +00:00
Bently
00add5738f Update block docs for: google/sheets.md 2025-01-13 10:24:24 +00:00
Bently
00b163b0a5 Update block docs for: google/gmail.md 2025-01-13 10:24:23 +00:00
Bently
3c23fd5b1a Update block docs for: github/triggers.md 2025-01-13 10:24:21 +00:00
Bently
7c719d6835 Update block docs for: github/repo.md 2025-01-13 10:24:20 +00:00
Bently
0b0c810861 Update block docs for: github/pull_requests.md 2025-01-13 10:24:18 +00:00
Bently
1c1dda57e8 Update block docs for: github/issues.md 2025-01-13 10:24:17 +00:00
Bently
20e93f32ff Update block docs for: fal/ai_video_generator.md 2025-01-13 10:24:10 +00:00
Bently
8fc00dfe02 Update block docs for: exa/similar.md 2025-01-13 10:24:02 +00:00
Bently
185d103371 Update block docs for: exa/search.md 2025-01-13 10:23:59 +00:00
Bently
dfc024acc3 Update block docs for: exa/contents.md 2025-01-13 10:23:58 +00:00
Bently
791ab5d671 Update block docs for: compass/triggers.md 2025-01-13 10:23:57 +00:00
Bently
6dc88e3f21 Update block docs for: youtube.md 2025-01-13 10:23:55 +00:00
Bently
d3f5718cac Update block docs for: time_blocks.md 2025-01-13 10:23:51 +00:00
Bently
aef7b5db7d Update block docs for: text.md 2025-01-13 10:23:50 +00:00
Bently
df071ca5a5 Update block docs for: talking_head.md 2025-01-13 10:23:49 +00:00
Bently
2b192a0d20 Update block docs for: search.md 2025-01-13 10:23:48 +00:00
Bently
9572415b74 Update block docs for: sampling.md 2025-01-13 10:23:46 +00:00
Bently
ad1bf2f27f Update block docs for: rss.md 2025-01-13 10:23:45 +00:00
Bently
67991f7c6d Update block docs for: replicate_flux_advanced.md 2025-01-13 10:23:44 +00:00
Bently
c2aad7d2d9 Update block docs for: reddit.md 2025-01-13 10:23:43 +00:00
Bently
504a0a1250 Update block docs for: pinecone.md 2025-01-13 10:23:42 +00:00
Bently
69ae276bb8 Update block docs for: medium.md 2025-01-13 10:23:40 +00:00
Bently
66f2e2a77b Update block docs for: maths.md 2025-01-13 10:23:39 +00:00
Bently
c463d1022b Update block docs for: llm.md 2025-01-13 10:23:38 +00:00
Bently
88dc0bbe0b Update block docs for: iteration.md 2025-01-13 10:23:37 +00:00
Bently
5ea176e457 Update block docs for: ideogram.md 2025-01-13 10:23:35 +00:00
Bently
134163aa88 Update block docs for: http.md 2025-01-13 10:23:34 +00:00
Bently
ff494bee93 Update block docs for: google_maps.md 2025-01-13 10:23:33 +00:00
Bently
f02e2fd8bb Update block docs for: discord.md 2025-01-13 10:23:32 +00:00
Bently
2012213af5 Update block docs for: csv.md 2025-01-13 10:23:31 +00:00
Bently
94f4702f6b Update block docs for: code_executor.md 2025-01-13 10:23:29 +00:00
Bently
abf05d6407 Update block docs for: branching.md 2025-01-13 10:23:28 +00:00
Bently
58a8b0ddeb Update block docs for: basic.md 2025-01-13 10:23:27 +00:00
Bently
6a4a8f5a46 Update block docs for: ai_music_generator.md 2025-01-13 10:23:26 +00:00
Bentlybro
240ad756aa rm files 2025-01-13 10:10:59 +00:00
Bently
6c62a6a558 Update block docs for: slant3d/base.md 2025-01-13 10:06:26 +00:00
Bently
d36ac1471c Update block docs for: nvidia/deepfake.md 2025-01-13 10:06:25 +00:00
Bently
a2b34739c9 Update block docs for: jina/search.md 2025-01-13 10:06:24 +00:00
Bently
7d4775e3b7 Update block docs for: jina/fact_checker.md 2025-01-13 10:06:23 +00:00
Bently
d133b474a8 Update block docs for: jina/embeddings.md 2025-01-13 10:06:21 +00:00
Bently
14ef675784 Update block docs for: jina/chunking.md 2025-01-13 10:06:19 +00:00
Bently
2c9baa6966 Update block docs for: hubspot/engagement.md 2025-01-13 10:06:18 +00:00
Bently
43ca817a85 Update block docs for: hubspot/contact.md 2025-01-13 10:06:17 +00:00
Bently
5cf97dd296 Update block docs for: hubspot/company.md 2025-01-13 10:06:15 +00:00
Bently
c577758b4a Update block docs for: helpers/http.md 2025-01-13 10:06:14 +00:00
Bently
ed9d0b85b4 Update block docs for: google/sheets.md 2025-01-13 10:06:13 +00:00
Bently
cfb92dd4f9 Update block docs for: google/gmail.md 2025-01-13 10:06:12 +00:00
Bently
b892c2b272 Update block docs for: github/triggers.md 2025-01-13 10:06:10 +00:00
Bently
d4679bbae8 Update block docs for: github/repo.md 2025-01-13 10:06:09 +00:00
Bently
34954d8df3 Update block docs for: github/pull_requests.md 2025-01-13 10:06:08 +00:00
Bently
780c893c91 Update block docs for: github/issues.md 2025-01-13 10:06:07 +00:00
Bently
a113fdb134 Update block docs for: fal/ai_video_generator.md 2025-01-13 10:06:05 +00:00
Bently
b73cb9fc98 Update block docs for: exa/similar.md 2025-01-13 10:06:04 +00:00
Bently
223e3de073 Update block docs for: exa/search.md 2025-01-13 10:06:03 +00:00
Bently
abfbdd0934 Update block docs for: exa/helpers.md 2025-01-13 10:06:01 +00:00
Bently
d8e38b505c Update block docs for: exa/contents.md 2025-01-13 10:06:00 +00:00
Bently
4ebc34da62 Update block docs for: compass/triggers.md 2025-01-13 10:05:59 +00:00
Bently
056c539bde Update block docs for: youtube.md 2025-01-13 10:05:57 +00:00
Bently
7e2e8843c0 Update block docs for: time_blocks.md 2025-01-13 10:05:55 +00:00
Bently
a8cde7c3c5 Update block docs for: text_to_speech_block.md 2025-01-13 10:05:53 +00:00
Bently
64e59c5324 Update block docs for: text.md 2025-01-13 10:05:52 +00:00
Bently
0da1461a79 Update block docs for: talking_head.md 2025-01-13 10:05:51 +00:00
Bently
192ff65bbf Update block docs for: search.md 2025-01-13 10:05:50 +00:00
Bently
388003ff2d Update block docs for: sampling.md 2025-01-13 10:05:49 +00:00
Bently
1081b15c91 Update block docs for: rss.md 2025-01-13 10:05:48 +00:00
Bently
0e17f5757b Update block docs for: replicate_flux_advanced.md 2025-01-13 10:05:47 +00:00
Bently
80de45c610 Update block docs for: reddit.md 2025-01-13 10:05:45 +00:00
Bently
bd237c5b52 Update block docs for: pinecone.md 2025-01-13 10:05:44 +00:00
Bently
6f8f7ac716 Update block docs for: medium.md 2025-01-13 10:05:43 +00:00
Bently
cca71f99b9 Update block docs for: maths.md 2025-01-13 10:05:42 +00:00
Bently
e54a999ff4 Update block docs for: llm.md 2025-01-13 10:05:40 +00:00
Bently
36360b3ade Update block docs for: iteration.md 2025-01-13 10:05:39 +00:00
Bently
a1607a3b21 Update block docs for: ideogram.md 2025-01-13 10:05:38 +00:00
Bently
8804417c72 Update block docs for: http.md 2025-01-13 10:05:37 +00:00
Bently
6aeec36a3c Update block docs for: google_maps.md 2025-01-13 10:05:36 +00:00
Bently
6d09a46652 Update block docs for: email_block.md 2025-01-13 10:05:34 +00:00
Bently
be4b2b1ba1 Update block docs for: discord.md 2025-01-13 10:05:33 +00:00
Bently
d2d6346f59 Update block docs for: decoder_block.md 2025-01-13 10:05:32 +00:00
Bently
d83984bf38 Update block docs for: csv.md 2025-01-13 10:05:31 +00:00
Bently
146bf8e692 Update block docs for: count_words_and_char_block.md 2025-01-13 10:05:29 +00:00
Bently
015e7d2b10 Update block docs for: code_extraction_block.md 2025-01-13 10:05:28 +00:00
Bently
dac7e4aa57 Update block docs for: code_executor.md 2025-01-13 10:05:27 +00:00
Bently
1764cf9837 Update block docs for: branching.md 2025-01-13 10:05:26 +00:00
Bently
fbd1e26524 Update block docs for: 45e78db5-03e9-447f-9395-308d712f5f08.md 2025-01-13 10:05:25 +00:00
Bently
fb10bacfda Update block docs for: basic.md 2025-01-13 10:05:23 +00:00
Bently
f6a12828f0 Update block docs for: ai_shortform_video_block.md 2025-01-13 10:05:22 +00:00
Bently
fba186e5e1 Update block docs for: ai_music_generator.md 2025-01-13 10:05:21 +00:00
Bently
91b88b840e Update block docs for: ai_image_generator_block.md 2025-01-13 10:05:19 +00:00
Bentlybro
f6b00f07ce rm 2025-01-12 12:42:45 +00:00
Bently
a4bd7c9b58 Update block docs for: google_maps.md 2025-01-12 12:41:05 +00:00
Bently
bc643492e8 Update block docs for: email_block.md 2025-01-12 12:41:04 +00:00
Bently
ba64e05803 Update block docs for: discord.md 2025-01-12 12:41:03 +00:00
Bently
01c0284fd2 Update block docs for: text_decoder.md 2025-01-12 12:41:02 +00:00
Bently
a08a7bd1e1 Update block docs for: read_csv.md 2025-01-12 12:41:00 +00:00
Bently
25bab0eaa5 Update block docs for: word_character_count_block.md 2025-01-12 12:40:59 +00:00
Bently
bb646e865e Update block docs for: code_extraction_block.md 2025-01-12 12:40:57 +00:00
Bently
dc777ce89a Update block docs for: code_executor.md 2025-01-12 12:40:56 +00:00
Bently
a3955385ec Update block docs for: condition_block.md 2025-01-12 12:40:55 +00:00
Bently
88b03563f5 Update block docs for: block_installation.md 2025-01-12 12:40:54 +00:00
Bently
f57f6fc1c0 Update block docs for: basic.md 2025-01-12 12:40:53 +00:00
Bently
2f7ad767c2 Update block docs for: ai_shortform_video_block.md 2025-01-12 12:40:52 +00:00
Bently
e3e4bc8c96 Update block docs for: ai_music_generator.md 2025-01-12 12:40:51 +00:00
Bently
d3cb3c73d1 Update block docs for: ai_image_generator_block.md 2025-01-12 12:40:50 +00:00
Bently
cc75eea402 Update block docs for: agent.md 2025-01-12 12:40:49 +00:00
Bentlybro
40961cb9f1 rm 2025-01-12 12:23:46 +00:00
Bently
13be1a03b7 Update block docs for: youtube.md 2025-01-12 11:53:52 +00:00
Bently
757381c889 Update block docs for: time_blocks.md 2025-01-12 11:53:50 +00:00
Bently
154f0a2b83 Update block docs for: unreal_text_to_speech.md 2025-01-12 11:53:49 +00:00
Bently
bf91cc507f Update block docs for: text.md 2025-01-12 11:53:48 +00:00
Bently
940fef027a Update block docs for: talking_avatar_video.md 2025-01-12 11:53:47 +00:00
Bently
d1b51ad09b Update block docs for: search.md 2025-01-12 11:53:46 +00:00
Bently
4cb0bbe67e Update block docs for: sampling.md 2025-01-12 11:53:45 +00:00
Bently
ebbb7b07cf Update block docs for: rss.md 2025-01-12 11:53:44 +00:00
Bently
db3d86bce6 Update block docs for: replicate_flux_advanced.md 2025-01-12 11:53:43 +00:00
Bently
f1f6f87b25 Update block docs for: reddit.md 2025-01-12 11:53:42 +00:00
Bently
0d5ab20f14 Update block docs for: pinecone.md 2025-01-12 11:53:41 +00:00
Bently
4017c5be70 Update block docs for: medium.md 2025-01-12 11:53:40 +00:00
Bently
b7cc83854a Update block docs for: maths.md 2025-01-12 11:53:39 +00:00
Bently
0599083e0e Update block docs for: llm.md 2025-01-12 11:53:38 +00:00
Bently
9e36144b40 Update block docs for: step_through_items.md 2025-01-12 11:53:36 +00:00
Bently
ce3c86cb1d Update block docs for: ideogram.md 2025-01-12 11:53:35 +00:00
Bently
e33263c9fc Update block docs for: http.md 2025-01-12 11:53:34 +00:00
Bently
04f0f64fbb Update block docs for: google_maps.md 2025-01-12 11:53:33 +00:00
Bently
755a7b620d Update block docs for: email_block.md 2025-01-12 11:53:32 +00:00
Bently
d54c9d4e7e Update block docs for: discord.md 2025-01-12 11:53:31 +00:00
Bently
852af17294 Update block docs for: text_decoder.md 2025-01-12 11:53:29 +00:00
Bently
8889d029d4 Update block docs for: read_csv.md 2025-01-12 11:53:28 +00:00
Bently
e93c7dc89e Update block docs for: word_character_count_block.md 2025-01-12 11:53:27 +00:00
Bently
7791281b90 Update block docs for: code_extraction_block.md 2025-01-12 11:53:26 +00:00
Bently
cc9ff9e2bb Update block docs for: code_executor.md 2025-01-12 11:53:25 +00:00
Bently
6b82b9e73b Update block docs for: condition_block.md 2025-01-12 11:53:24 +00:00
Bently
61bfbeeb01 Update block docs for: block_installation.md 2025-01-12 11:53:23 +00:00
Bently
9518ff4f02 Update block docs for: basic.md 2025-01-12 11:53:21 +00:00
Bently
49490e899e Update block docs for: ai_shortform_video_block.md 2025-01-12 11:53:20 +00:00
Bently
d19866bdf5 Update block docs for: ai_music_generator.md 2025-01-12 11:53:19 +00:00
Bently
b6c946ac4f Update block docs for: ai_image_generator_block.md 2025-01-12 11:53:18 +00:00
Bently
d6f5dcd717 Update block docs for: agent.md 2025-01-12 11:53:17 +00:00
Bently
99779f52b2 Update block docs for:
blocks_init.md
2025-01-12 11:53:15 +00:00
Bently
d4e5a48163 Update block docs for: code_execution_block.md 2025-01-12 11:07:29 +00:00
Bentlybro
a40bb6f6d6 rm file 2025-01-12 11:07:08 +00:00
Bently
a393f8bf9f Update block docs for: code_executor.md 2025-01-12 11:05:08 +00:00
Bentlybro
d56931f4cb rm files 2025-01-10 13:30:37 +00:00
Bently
03691329be Update block docs for: text_to_speech_block.md 2025-01-10 12:55:02 +00:00
Bently
9813012c12 Update block docs for: text.md 2025-01-10 12:55:01 +00:00
Bently
8f74e58ecc Update block docs for: talking_head.md 2025-01-10 12:55:00 +00:00
Bently
b1f5413dab Update block docs for: search.md 2025-01-10 12:54:59 +00:00
Bently
cc41b2f4ab Update block docs for: sampling.md 2025-01-10 12:54:58 +00:00
Bently
f45b4cc243 Update block docs for: rss.md 2025-01-10 12:54:56 +00:00
Bently
ed2e5e813d Update block docs for: replicate_flux_advanced.md 2025-01-10 12:54:55 +00:00
Bently
ab33d079e2 Update block docs for: reddit.md 2025-01-10 12:54:54 +00:00
Bently
a24c869a44 Update block docs for: pinecone.md 2025-01-10 12:54:52 +00:00
Bently
d6b1cf64ed Update block docs for: medium.md 2025-01-10 12:54:51 +00:00
Bently
e9982ba9bd Update block docs for: maths.md 2025-01-10 12:54:50 +00:00
Bently
58c1e050f2 Update block docs for: llm.md 2025-01-10 12:54:49 +00:00
Bently
f125bb658c Update block docs for: iteration.md 2025-01-10 12:54:48 +00:00
Bently
ba9c91d0b7 Update block docs for: ideogram.md 2025-01-10 12:54:46 +00:00
Bently
e6254f0e83 Update block docs for: http.md 2025-01-10 12:54:45 +00:00
Bently
3c8cf8bd1e Update block docs for: google_maps.md 2025-01-10 12:54:44 +00:00
Bently
79f3888d61 Update block docs for: email_block.md 2025-01-10 12:54:43 +00:00
Bently
ace5d34cc6 Update block docs for: discord.md 2025-01-10 12:54:42 +00:00
Bently
100ab90f44 Update block docs for: decoder_block.md 2025-01-10 12:54:40 +00:00
Bently
a0ad796432 Update block docs for: csv.md 2025-01-10 12:54:39 +00:00
Bently
0cc625ca15 Update block docs for: count_words_and_char_block.md 2025-01-10 12:54:38 +00:00
Bently
a43b329132 Update block docs for: code_extraction_block.md 2025-01-10 12:54:37 +00:00
Bently
beeadd16f1 Update block docs for: code_executor.md 2025-01-10 12:54:36 +00:00
Bently
b2d5b9efb4 Update block docs for: branching.md 2025-01-10 12:54:35 +00:00
Bently
c77f32b23f Update block docs for: block.md 2025-01-10 12:54:33 +00:00
Bently
b92223cf7b Update block docs for: basic.md 2025-01-10 12:54:32 +00:00
Bently
0d47b0ce38 Update block docs for: ai_shortform_video_block.md 2025-01-10 12:54:31 +00:00
Bently
c0409ba0b1 Update block docs for: ai_music_generator.md 2025-01-10 12:54:29 +00:00
Bently
41c8504bdc Update block docs for: ai_image_generator_block.md 2025-01-10 12:54:28 +00:00
Bently
c4d38e4ff3 Update block docs for: agent.md 2025-01-10 12:54:27 +00:00
Bently
b10a275676 Update block docs for: __init__.md 2025-01-10 12:54:26 +00:00
Bentlybro
8baabb0379 remove files 2025-01-10 12:47:54 +00:00
Bently
8bf977958a Update block docs for: pinecone.md 2025-01-10 11:10:33 +00:00
Bently
c73da1f79c Update block docs for: count_words_and_char_block.md 2025-01-10 11:10:29 +00:00
Bently
3c3c1ce90a Update block docs for: code_extraction_block.md 2025-01-10 11:10:27 +00:00
Bently
e9a198f5da Update block docs for: code_executor.md 2025-01-10 11:10:26 +00:00
Bently
706bf0578e Update block docs for: block.md 2025-01-10 11:10:25 +00:00
Bently
610b613367 Update block docs for: ai_music_generator.md 2025-01-10 11:10:22 +00:00
Bently
5f4a411b15 Update block docs for: ai_image_generator_block.md 2025-01-10 11:10:21 +00:00
Bently
7b004f07e7 Update block docs for: agent.md 2025-01-10 11:10:20 +00:00
Bently
c16d2f94a6 Update block docs for: __init__.md 2025-01-10 11:10:19 +00:00
Zamil Majdy
9d1bc25ffa hotfix(backend): Increase statement timeout for the double brace migration (#9245)
### Changes 🏗️


https://github.com/Significant-Gravitas/AutoGPT/actions/runs/12696734339/job/35391431786

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2025-01-09 21:59:22 +00:00
Zamil Majdy
3a3ee994c2 hotfix(backend): Increase statement timeout for the double brace migration (#9244)
### Changes 🏗️


https://github.com/Significant-Gravitas/AutoGPT/actions/runs/12696734339/job/35391431786

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2025-01-09 19:44:37 +00:00
Aarushi
0d44f5be13 feat(backend/blocks/nvidia): Provide Nvidia by default (#9235)
We want to allow users to use Nvidia without their own keys

### Changes 🏗️

Added nvidia api key to credentials store.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [x] `.env.example` is updated or already compatible with my changes

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2025-01-09 18:12:05 +00:00
Zamil Majdy
1670579a61 fix(block): Remove Python.format & Jinja templating format backward compatibility (#9229)
Python format uses `{Variable}` as the variable placeholder, while Jinja
uses `{{Variable}}` as its default.
Jinja is used as the main templating engine on the system, but the
Python format version is still maintained for backward compatibility.

However, the backward compatibility support can cause a side effect
while passing JSON string value into the block that uses it:
https://github.com/Significant-Gravitas/AutoGPT/issues/9194

### Changes 🏗️

* Use `{{Variable}}` place holder format and removed `{Variable}`
support in these blocks:
 - '363ae599-353e-4804-937e-b2ee3cef3da4', -- AgentOutputBlock
 - 'db7d8f02-2f44-4c55-ab7a-eae0941f0c30', -- FillTextTemplateBlock
 - '1f292d4a-41a4-4977-9684-7c8d560b9f91', -- AITextGeneratorBlock
- 'ed55ac19-356e-4243-a6cb-bc599e9b716f' --
AIStructuredResponseGeneratorBlock
* Add Jinja templating support on `AITextGeneratorBlock` &
`AIStructuredResponseGeneratorBlock`
* Migrated the existing database content to prevent breaking changes.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2025-01-09 16:29:16 +00:00
Bently
a1889e6212 docs(Ollama): Update Ollama docs (#9234)
The Ollama docs where very out of date and needed updating so I have
updated them and added some screenshots so its easier to follow.

I have also added a new Ollama model to the platform, "llama3.2" as that
is what i based the tutorial off and its name is easy to find in the
list of models

I also added a new folder in the "imgs" dir to store the Ollama related
photo just to keep things tidy
2025-01-09 15:19:37 +00:00
Abhimanyu Yadav
9c702516fd feat(platform): fix carousel on store page (#9230)
- resolves #8973 

Adding smooth scrolling and solving some weird interaction on carousal

### Changes

- Update `CarouselPrevious`, `CarouselPrevious` and add
`CarouselIndicator` in `carousel.tsx`
- Add `CarouselPrevious`, `CarouselPrevious` and `CarouselIndicator`
support in `FeaturedSection.tsx`

### Demo 


https://github.com/user-attachments/assets/ba9a22fa-ddf2-469f-ba8a-aee1a7fc5f78
2025-01-09 13:48:53 +00:00
Aarushi
32c908ae13 fix(backend): Add default credentials for Fal, Exa, E2B (#9233)
We want to provide certain providers by default on our platform. These
three were not added previously, so fixing that.

### Changes 🏗️

If api keys for Fal Exa or E2B exist in environment variables, load them
by default as credentials that are usable by our users.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [x] `.env.example` is updated or already compatible with my changes

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2025-01-09 13:47:54 +00:00
Abhimanyu Yadav
b4a0100c22 feat(platform): Add Twitter integration (#8754)
- Resolves #8326  

Create a Twitter integration with some small frontend changes.

### Changes
1. Add Twitter OAuth 2.0 with PKCE support for authentication.
2. Add a way to multi-select from a list of enums by creating a
multi-select on the frontend.
3. Add blocks for Twitter integration.
4. `_types.py` for repetitive enums and input types.
5. `_builders.py` for creating parameters without repeating the same
logic.
6. `_serializer.py` to serialize the Tweepy enums into dictionaries so
they can travel easily from Pyro5.
7. `_mappers.py` to map the frontend values to the correct request
values.

> I have added a new multi-select feature because my list contains many
items, and selecting all of them makes the block cluttered. This new
block displays only the first two items and then show something like "2
more" . It works only for list of enums.


### Blocks

Block Name | What It Does | Error Reason | Manual Testing
-- | -- | -- | --
`TwitterBookmarkTweetBlock` | Bookmark a tweet on Twitter | No error | 
`TwitterGetBookmarkedTweetsBlock` | Get all your bookmarked tweets from
Twitter | No error | 
`TwitterRemoveBookmarkTweetBlock` | Remove a bookmark for a tweet on
Twitter | No error | 
`TwitterHideReplyBlock` | Hides a reply of one of your tweets | No error
| 
`TwitterUnhideReplyBlock` | Unhides a reply to a tweet | No error | 
`TwitterLikeTweetBlock` | Likes a tweet | No error | 
`TwitterGetLikingUsersBlock` | Gets information about users who liked
one of your tweets | No error | 
`TwitterGetLikedTweetsBlock` | Gets information about tweets liked by
you | No error | 
`TwitterUnlikeTweetBlock` | Unlikes a tweet that was previously liked |
No error | 
`TwitterPostTweetBlock` | Create a tweet on Twitter with the option to
include one additional element such as media, quote, or deep link. | No
error | 
`TwitterDeleteTweetBlock` | Deletes a tweet on Twitter using Twitter ID
| No error | 
`TwitterSearchRecentTweetsBlock` | Searches all public Tweets in Twitter
history | No error | 
`TwitterGetQuoteTweetsBlock` | Gets quote tweets for a specified tweet
ID | No error | 
`TwitterRetweetBlock` | Retweets a tweet on Twitter | No error | 
`TwitterRemoveRetweetBlock` | Removes a retweet on Twitter | No error |

`TwitterGetRetweetersBlock` | Gets information about who has retweeted a
tweet | No error | 
`TwitterGetUserMentionsBlock` | Returns Tweets where a single user is
mentioned, just put that user ID | No error | 
`TwitterGetHomeTimelineBlock` | Returns a collection of the most recent
Tweets and Retweets posted by you and users you follow | No error | 
`TwitterGetUserTweetsBlock` | Returns Tweets composed by a single user,
specified by the requested user ID | No error | 
`TwitterGetTweetBlock` | Returns information about a single Tweet
specified by the requested ID | No error | 
`TwitterGetTweetsBlock` | Returns information about multiple Tweets
specified by the requested IDs | No error | 
`TwitterUnblockUserBlock` | Unblock a specific user on Twitter | No
error | 
`TwitterGetBlockedUsersBlock` | Get a list of users who are blocked by
the authenticating user | No error | 
`TwitterBlockUserBlock` | Block a specific user on Twitter | No error |

`TwitterUnfollowUserBlock` | Allows a user to unfollow another user
specified by target user ID | No error | 
`TwitterFollowUserBlock` | Allows a user to follow another user
specified by target user ID | No error | 
`TwitterGetFollowersBlock` | Retrieves a list of followers for a
specified Twitter user ID | Need Enterprise level access | 
`TwitterGetFollowingBlock` | Retrieves a list of users that a specified
Twitter user ID is following | Need Enterprise level access | 
`TwitterUnmuteUserBlock` | Allows a user to unmute another user
specified by target user ID | No error | 
`TwitterGetMutedUsersBlock` | Returns a list of users who are muted by
the authenticating user | No error | 
`TwitterMuteUserBlock` | Allows a user to mute another user specified by
target user ID | No error | 
`TwitterGetUserBlock` | Gets information about a single Twitter user
specified by ID or username | No error | 
`TwitterGetUsersBlock` | Gets information about multiple Twitter users
specified by IDs or usernames | No error | 
`TwitterSearchSpacesBlock` | Returns live or scheduled Spaces matching
specified search terms [for a week only] | No error | 
`TwitterGetSpacesBlock` | Gets information about multiple Twitter Spaces
specified by Space IDs or creator user IDs | No error | 
`TwitterGetSpaceByIdBlock` | Gets information about a single Twitter
Space specified by Space ID | No error | 
`TwitterGetSpaceBuyersBlock` | Gets list of users who purchased a ticket
to the requested Space | I do not have a monetized account for this | 
`TwitterGetSpaceTweetsBlock` | Gets list of Tweets shared in the
requested Space | No error | 
`TwitterUnfollowListBlock` | Unfollows a Twitter list for the
authenticated user | No error | 
`TwitterFollowListBlock` | Follows a Twitter list for the authenticated
user | No error | 
`TwitterListGetFollowersBlock` | Gets followers of a specified Twitter
list | Enterprise level access | 
`TwitterGetFollowedListsBlock` | Gets lists followed by a specified
Twitter user | Enterprise level access | 
`TwitterGetListBlock` | Gets information about a Twitter List specified
by ID | No error | 
`TwitterGetOwnedListsBlock` | Gets all Lists owned by the specified user
| No error | 
`TwitterRemoveListMemberBlock` | Removes a member from a Twitter List
that the authenticated user owns | No error | 
`TwitterAddListMemberBlock` | Adds a member to a Twitter List that the
authenticated user owns | No error | 
`TwitterGetListMembersBlock` | Gets the members of a specified Twitter
List | No error | 
`TwitterGetListMembershipsBlock` | Gets all Lists that a specified user
is a member of | No error | 
`TwitterGetListTweetsBlock` | Gets tweets from a specified Twitter list
| No error | 
`TwitterDeleteListBlock` | Deletes a Twitter List owned by the
authenticated user | No error | 
`TwitterUpdateListBlock` | Updates a Twitter List owned by the
authenticated user | No error | 
`TwitterCreateListBlock` | Creates a Twitter List owned by the
authenticated user | No error | 
`TwitterUnpinListBlock` | Enables the authenticated user to unpin a
List. | No error | 
`TwitterPinListBlock` | Enables the authenticated user to pin a List. |
No error | 
`TwitterGetPinnedListsBlock` | Returns the Lists pinned by the
authenticated user. | No error | 
`TwitterGetDMEventsBlock` | Gets a list of Direct Message events for the
authenticated user | Need Enterprise level access | 
`TwitterSendDirectMessageBlock` | Sends a direct message to a Twitter
user | Need Enterprise level access | 
`TwitterCreateDMConversationBlock` | Creates a new group direct message
| Need Enterprise level access | 

### Need to add more stuff
1. A normal input to select date and time.
2. Some more enterprise-level blocks, especially webhook triggers.

Supported triggers 


Event Name | Description
-- | --
Posts (by user) | User creates a new post.
Post deletes (by user) | User deletes an existing post.
@mentions (of user) | User is mentioned in a post.
Replies (to or from user) | User replies to a post or receives a reply
from another user.
Retweets (by user or of user) | User retweets a post or someone retweets
the user's post.
Quote Tweets (by user or of user) | User quote tweets a post or someone
quote tweets the user's post.
Retweets of Quoted Tweets (by user or of user) | Retweets of quote
tweets by the user or of the user.
Likes (by user or of user) | User likes a post or someone likes the
user's post.
Follows (by user or of user) | User follows another user or another user
follows the user.
Unfollows (by user) | User unfollows another user.
Blocks (by user) | User blocks another user.
Unblocks (by user) | User unblocks a previously blocked user.
Mutes (by user) | User mutes another user.
Unmutes (by user) | User unmutes a previously muted user.
Direct Messages sent (by user) | User sends direct messages to other
users.
Direct Messages received (by user) | User receives direct messages from
other users.
Typing indicators (to user) | Indicators showing when someone is typing
a message to the user.
Read receipts (to user) | Indicators showing when the user has read a
message.
Subscription revokes (by user) | User revokes a subscription to a
service or content.

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Nicholas Tindle <nicktindle@outlook.com>
2025-01-08 19:47:00 +00:00
Bently
e4d8502729 fix(blocks): improve handling of plain text in send web request block (#9219)
### Changes 🏗️
This is to improve how we deal with plain text in the send web request
block.

-	Plain text stays as plain text (regardless of JSON toggle)
-	Valid JSON with JSON toggle enabled sends as JSON
-	JSON-like data with JSON toggle disabled sends as form data
2025-01-08 12:18:42 +00:00
Abhimanyu Yadav
43a79d063f feat(platform) : Add api key generation frontend (#9212)
Allow users to create API keys for the AutoGPT platform. The backend is
already set up, and here I’ve added the frontend for it.

### Changes
1. Fix the `response-model` of the API keys endpoints.  
2. Add a new page `/store/api_keys`.  
3. Add an `APIKeySection` component to create, delete, and view all your
API keys.

<img width="1512" alt="Screenshot 2025-01-07 at 3 59 25 PM"
src="https://github.com/user-attachments/assets/ea4e9d35-eb92-4e10-a4fb-1fc51dfe11bb"
/>
2025-01-08 11:13:08 +00:00
Abhimanyu Yadav
7ec9830b02 fix(platform): Add custom fonts and update layout styles (#9195)
- resolve #9187 
### Changes 🏗️

Add support for `Inter`, `Poppins`, `Geist-Mono`, `Geist-Neue`, and
`Neue` in `layout.tsx` and `tailwind.config.ts`.

<img width="844" alt="Screenshot 2025-01-06 at 10 59 35 AM"
src="https://github.com/user-attachments/assets/5e93e8a3-cda1-4d01-ba5d-7027a8c1dea7"
/>

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2025-01-08 09:44:35 +00:00
Aarushi
b558ccae0b feat(blocks/nvidia): Add Nvidia deepfake detection block (#9213)
Adding a block to allow users to detect deepfakes in their workflows. 
This block takes in an image as input and returns the probability of it
being a deepfake as well as the bounding boxes around the image.

### Changes 🏗️

- Added NvidiaDeepfakeDetectBlock
- Added the ability to upload images on the frontend
- Added the ability to render base64 encoded images on the frontend
<img width="1001" alt="Screenshot 2025-01-07 at 2 16 42 PM"
src="https://github.com/user-attachments/assets/c3d090f3-3981-4235-a66b-f8e2a3920a4d"
/>

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2025-01-07 22:41:28 +00:00
Nicholas Tindle
4115f65223 Fix Provider name enum being used instead of value (#9216)
<!-- Clearly explain the need for these changes: -->

Webhooks are broken

### Changes 🏗️
Swaps the way we fill webhooks into strings
<!-- Concisely describe all of the changes made in this pull request:
-->

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [x] Manually test creating a webhook with Github and Compass
2025-01-07 20:18:43 +00:00
dependabot[bot]
7defba8d24 chore(frontend/deps-dev): bump the development-dependencies group in /autogpt_platform/frontend with 4 updates (#9207)
Bumps the development-dependencies group in /autogpt_platform/frontend
with 4 updates:
[@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node),
[chromatic](https://github.com/chromaui/chromatic-cli),
[concurrently](https://github.com/open-cli-tools/concurrently) and
[eslint-plugin-storybook](https://github.com/storybookjs/eslint-plugin-storybook).

Updates `@types/node` from 22.10.2 to 22.10.5
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node">compare
view</a></li>
</ul>
</details>
<br />

Updates `chromatic` from 11.20.2 to 11.22.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/chromaui/chromatic-cli/releases">chromatic's
releases</a>.</em></p>
<blockquote>
<h2>v11.22.0</h2>
<h4>🚀 Enhancement</h4>
<ul>
<li>Bail on preview file changes <a
href="https://redirect.github.com/chromaui/chromatic-cli/pull/1133">#1133</a>
(<a href="https://github.com/codykaup"><code>@​codykaup</code></a>)</li>
</ul>
<h4>Authors: 1</h4>
<ul>
<li>Cody Kaup (<a
href="https://github.com/codykaup"><code>@​codykaup</code></a>)</li>
</ul>
<h2>v11.21.0</h2>
<h4>🚀 Enhancement</h4>
<ul>
<li>Set <code>storybookUrl</code> action output on rebuild early exit <a
href="https://redirect.github.com/chromaui/chromatic-cli/pull/1134">#1134</a>
(<a href="https://github.com/jmhobbs"><code>@​jmhobbs</code></a>)</li>
<li>Upload coverage reports to codecov <a
href="https://redirect.github.com/chromaui/chromatic-cli/pull/1132">#1132</a>
(<a
href="https://github.com/paulelliott"><code>@​paulelliott</code></a>)</li>
</ul>
<h4>Authors: 2</h4>
<ul>
<li>John Hobbs (<a
href="https://github.com/jmhobbs"><code>@​jmhobbs</code></a>)</li>
<li>Paul Elliott (<a
href="https://github.com/paulelliott"><code>@​paulelliott</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/chromaui/chromatic-cli/blob/main/CHANGELOG.md">chromatic's
changelog</a>.</em></p>
<blockquote>
<h1>v11.22.0 (Fri Jan 03 2025)</h1>
<h4>🚀 Enhancement</h4>
<ul>
<li>Bail on preview file changes <a
href="https://redirect.github.com/chromaui/chromatic-cli/pull/1133">#1133</a>
(<a href="https://github.com/codykaup"><code>@​codykaup</code></a>)</li>
</ul>
<h4>Authors: 1</h4>
<ul>
<li>Cody Kaup (<a
href="https://github.com/codykaup"><code>@​codykaup</code></a>)</li>
</ul>
<hr />
<h1>v11.21.0 (Fri Jan 03 2025)</h1>
<h4>🚀 Enhancement</h4>
<ul>
<li>Set <code>storybookUrl</code> action output on rebuild early exit <a
href="https://redirect.github.com/chromaui/chromatic-cli/pull/1134">#1134</a>
(<a href="https://github.com/jmhobbs"><code>@​jmhobbs</code></a>)</li>
<li>Upload coverage reports to codecov <a
href="https://redirect.github.com/chromaui/chromatic-cli/pull/1132">#1132</a>
(<a
href="https://github.com/paulelliott"><code>@​paulelliott</code></a>)</li>
</ul>
<h4>Authors: 2</h4>
<ul>
<li>John Hobbs (<a
href="https://github.com/jmhobbs"><code>@​jmhobbs</code></a>)</li>
<li>Paul Elliott (<a
href="https://github.com/paulelliott"><code>@​paulelliott</code></a>)</li>
</ul>
<hr />
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="8f27f8b046"><code>8f27f8b</code></a>
Bump version to: 11.22.0 [skip ci]</li>
<li><a
href="0c209609f3"><code>0c20960</code></a>
Update CHANGELOG.md [skip ci]</li>
<li><a
href="43a9b94828"><code>43a9b94</code></a>
Merge pull request <a
href="https://redirect.github.com/chromaui/chromatic-cli/issues/1133">#1133</a>
from chromaui/cody/cap-2599-turbosnap-exit-on-storyb...</li>
<li><a
href="730a7aa0d3"><code>730a7aa</code></a>
Bump version to: 11.21.0 [skip ci]</li>
<li><a
href="0afebf6ad9"><code>0afebf6</code></a>
Update CHANGELOG.md [skip ci]</li>
<li><a
href="f729a2a4ee"><code>f729a2a</code></a>
Merge pull request <a
href="https://redirect.github.com/chromaui/chromatic-cli/issues/1134">#1134</a>
from chromaui/jmhobbs/cap-2317-chromauiaction-skippi...</li>
<li><a
href="05bcf30274"><code>05bcf30</code></a>
Set storybookUrl action output on rebuild abort</li>
<li><a
href="300222ff7f"><code>300222f</code></a>
Bail on preview file changes</li>
<li><a
href="9dbaef7d89"><code>9dbaef7</code></a>
Merge pull request <a
href="https://redirect.github.com/chromaui/chromatic-cli/issues/1132">#1132</a>
from chromaui/paulelliott/set-up-codecov</li>
<li><a
href="851574b606"><code>851574b</code></a>
Run lint-and-test workflow on pushes to main</li>
<li>Additional commits viewable in <a
href="https://github.com/chromaui/chromatic-cli/compare/v11.20.2...v11.22.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `concurrently` from 9.1.1 to 9.1.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/open-cli-tools/concurrently/releases">concurrently's
releases</a>.</em></p>
<blockquote>
<h2>v9.1.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Add ability to have custom logger by <a
href="https://github.com/mwood23"><code>@​mwood23</code></a> in <a
href="https://redirect.github.com/open-cli-tools/concurrently/pull/522">open-cli-tools/concurrently#522</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/mwood23"><code>@​mwood23</code></a> made
their first contribution in <a
href="https://redirect.github.com/open-cli-tools/concurrently/pull/522">open-cli-tools/concurrently#522</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/open-cli-tools/concurrently/compare/v9.1.1...v9.1.2">https://github.com/open-cli-tools/concurrently/compare/v9.1.1...v9.1.2</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="7f3efb201b"><code>7f3efb2</code></a>
9.1.2</li>
<li><a
href="36eccae46c"><code>36eccae</code></a>
Add ability to have custom logger (<a
href="https://redirect.github.com/open-cli-tools/concurrently/issues/522">#522</a>)</li>
<li>See full diff in <a
href="https://github.com/open-cli-tools/concurrently/compare/v9.1.1...v9.1.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `eslint-plugin-storybook` from 0.11.1 to 0.11.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/eslint-plugin-storybook/releases">eslint-plugin-storybook's
releases</a>.</em></p>
<blockquote>
<h2>v0.11.2</h2>
<h4>🐛 Bug Fix</h4>
<ul>
<li>fix(peer-deps): update eslint version range to <code>&gt;=8</code>
<a
href="https://redirect.github.com/storybookjs/eslint-plugin-storybook/pull/186">#186</a>
(<a href="https://github.com/zacowan"><code>@​zacowan</code></a> <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h4>Authors: 2</h4>
<ul>
<li>Yann Braga (<a
href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
<li>Zachary Cowan (<a
href="https://github.com/zacowan"><code>@​zacowan</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/eslint-plugin-storybook/blob/main/CHANGELOG.md">eslint-plugin-storybook's
changelog</a>.</em></p>
<blockquote>
<h1>v0.11.2 (Thu Jan 02 2025)</h1>
<h4>🐛 Bug Fix</h4>
<ul>
<li>fix(peer-deps): update eslint version range to <code>&gt;=8</code>
<a
href="https://redirect.github.com/storybookjs/eslint-plugin-storybook/pull/186">#186</a>
(<a href="https://github.com/zacowan"><code>@​zacowan</code></a> <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h4>Authors: 2</h4>
<ul>
<li>Yann Braga (<a
href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
<li>Zachary Cowan (<a
href="https://github.com/zacowan"><code>@​zacowan</code></a>)</li>
</ul>
<hr />
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d8acf1fbc4"><code>d8acf1f</code></a>
Bump version to: 0.11.2 [skip ci]</li>
<li><a
href="6ff93f31ac"><code>6ff93f3</code></a>
Update CHANGELOG.md [skip ci]</li>
<li><a
href="633e59828f"><code>633e598</code></a>
Merge pull request <a
href="https://redirect.github.com/storybookjs/eslint-plugin-storybook/issues/186">#186</a>
from zacowan/zacowan-patch-1</li>
<li><a
href="9351188fc3"><code>9351188</code></a>
docs: add compatibility table</li>
<li><a
href="6906363c56"><code>6906363</code></a>
fix(deps): use accurate eslint peer</li>
<li>See full diff in <a
href="https://github.com/storybookjs/eslint-plugin-storybook/compare/v0.11.1...v0.11.2">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-07 18:42:51 +00:00
dependabot[bot]
f5afdcc650 chore(frontend/deps): bump the production-dependencies group across 1 directory with 11 updates (#9214)
Bumps the production-dependencies group with 11 updates in the
/autogpt_platform/frontend directory:

| Package | From | To |
| --- | --- | --- |
| [@hookform/resolvers](https://github.com/react-hook-form/resolvers) |
`3.9.1` | `3.10.0` |
|
[@next/third-parties](https://github.com/vercel/next.js/tree/HEAD/packages/third-parties)
| `15.1.0` | `15.1.3` |
| [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) |
`8.45.1` | `8.48.0` |
| [framer-motion](https://github.com/motiondivision/motion) | `11.15.0`
| `11.16.0` |
|
[lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)
| `0.468.0` | `0.469.0` |
| [react-day-picker](https://github.com/gpbl/react-day-picker) | `9.4.4`
| `9.5.0` |
| [react-hook-form](https://github.com/react-hook-form/react-hook-form)
| `7.54.1` | `7.54.2` |
| [react-markdown](https://github.com/remarkjs/react-markdown) | `9.0.1`
| `9.0.3` |
| [react-modal](https://github.com/reactjs/react-modal) | `3.16.1` |
`3.16.3` |
| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `2.5.5`
| `2.6.0` |
| [uuid](https://github.com/uuidjs/uuid) | `11.0.3` | `11.0.4` |


Updates `@hookform/resolvers` from 3.9.1 to 3.10.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/react-hook-form/resolvers/releases"><code>@​hookform/resolvers</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v3.10.0</h2>
<h1><a
href="https://github.com/react-hook-form/resolvers/compare/v3.9.1...v3.10.0">3.10.0</a>
(2025-01-06)</h1>
<h3>Features</h3>
<ul>
<li>update to effect 3.10 (<a
href="https://redirect.github.com/react-hook-form/resolvers/issues/729">#729</a>)
(<a
href="10aca41229">10aca41</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="10aca41229"><code>10aca41</code></a>
feat: update to effect 3.10 (<a
href="https://redirect.github.com/react-hook-form/resolvers/issues/729">#729</a>)</li>
<li><a
href="e523dde4d9"><code>e523dde</code></a>
chore: update to effet 3.10 (<a
href="https://redirect.github.com/react-hook-form/resolvers/issues/720">#720</a>)</li>
<li>See full diff in <a
href="https://github.com/react-hook-form/resolvers/compare/v3.9.1...v3.10.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `@next/third-parties` from 15.1.0 to 15.1.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vercel/next.js/releases"><code>@​next/third-parties</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v15.1.3</h2>
<blockquote>
<p>[!NOTE]<br />
This release is backporting bug fixes. It does <strong>not</strong>
include all pending features/changes on canary.</p>
</blockquote>
<h3>Core Changes</h3>
<ul>
<li>Retry manifest file loading only in dev mode: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73900">#73900</a></li>
<li>Use shared worker for lint &amp; typecheck steps: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/74154">#74154</a></li>
</ul>
<h3>Credits</h3>
<p>Huge thanks to <a
href="https://github.com/unstubbable"><code>@​unstubbable</code></a> and
<a href="https://github.com/ztanner"><code>@​ztanner</code></a> for
helping!</p>
<h2>v15.1.2</h2>
<blockquote>
<p>[!NOTE]<br />
This release is backporting bug fixes. It does <strong>not</strong>
include all pending features/changes on canary.</p>
</blockquote>
<h3>Core Changes</h3>
<ul>
<li>Update React from 7283a213-20241206 to 65e06cb7-20241218: <a
href="https://redirect.github.com/vercel/next.js/pull/74117">vercel/next.js#74117</a></li>
</ul>
<h3>Credits</h3>
<p>Huge thanks to <a
href="https://github.com/ztanner"><code>@​ztanner</code></a> for
helping!</p>
<h2>v15.1.1</h2>
<blockquote>
<p>[!NOTE]<br />
This release is backporting bug fixes. It does <strong>not</strong>
include all pending features/changes on canary.</p>
</blockquote>
<h3>Core Changes</h3>
<ul>
<li>fix(turbo): sassOptions silenceDeprecations was not overwritten with
user options: <a
href="https://redirect.github.com/vercel/next.js/pull/73937">vercel/next.js#73937</a></li>
<li>refactor collectAppPageSegments: <a
href="https://redirect.github.com/vercel/next.js/pull/73908">vercel/next.js#73908</a></li>
</ul>
<h3>Credits</h3>
<p>Huge thanks to <a
href="https://github.com/devjiwonchoi"><code>@​devjiwonchoi</code></a>
and <a href="https://github.com/ztanner"><code>@​ztanner</code></a> for
helping!</p>
<h2>v15.1.1-canary.26</h2>
<h3>Core Changes</h3>
<ul>
<li>Upgrade React from <code>518d06d2-20241219</code> to
<code>3b009b4c-20250102</code>: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/74492">#74492</a></li>
<li>fix: add node internals stack frames to ignored list: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73698">#73698</a></li>
<li>chore: break calls to forEach into for loops: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/74523">#74523</a></li>
<li>[DevOverlay] Add error message: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/74541">#74541</a></li>
<li>[DevOverlay] Add error type label: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/74543">#74543</a></li>
<li>feat: connect error rating buttons to telemetry API: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/74496">#74496</a></li>
<li>[metadata] Move metadata rendering adjacent to page component: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/74262">#74262</a></li>
<li>Delete set-cache-busting-search-param.test.ts: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/74561">#74561</a></li>
<li>fix: enhance a11y, prevent double firing in error rating: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/74563">#74563</a></li>
<li>fix: add aria-hidden to error overlay voting icons: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/74568">#74568</a></li>
</ul>
<h3>Misc Changes</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4cbaaa118d"><code>4cbaaa1</code></a>
v15.1.3</li>
<li><a
href="df392a1b97"><code>df392a1</code></a>
v15.1.2</li>
<li><a
href="4384c6834a"><code>4384c68</code></a>
v15.1.1</li>
<li>See full diff in <a
href="https://github.com/vercel/next.js/commits/v15.1.3/packages/third-parties">compare
view</a></li>
</ul>
</details>
<br />

Updates `@sentry/nextjs` from 8.45.1 to 8.48.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/getsentry/sentry-javascript/releases"><code>@​sentry/nextjs</code>'s
releases</a>.</em></p>
<blockquote>
<h2>8.48.0</h2>
<h3>Deprecations</h3>
<ul>
<li>
<p><strong>feat(v8/core): Deprecate <code>getDomElement</code> method
(<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14799">#14799</a>)</strong></p>
<p>Deprecates <code>getDomElement</code>. There is no replacement.</p>
</li>
</ul>
<h3>Other changes</h3>
<ul>
<li>fix(nestjs/v8): Use correct main/module path in package.json (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14791">#14791</a>)</li>
<li>fix(v8/core): Use consistent <code>continueTrace</code>
implementation in core (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14819">#14819</a>)</li>
<li>fix(v8/node): Correctly resolve debug IDs for ANR events with custom
appRoot (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14823">#14823</a>)</li>
<li>fix(v8/node): Ensure <code>NODE_OPTIONS</code> is not passed to
worker threads (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14825">#14825</a>)</li>
<li>fix(v8/angular): Fall back to element <code>tagName</code> when name
is not provided to <code>TraceDirective</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14828">#14828</a>)</li>
<li>fix(aws-lambda): Remove version suffix from lambda layer (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14843">#14843</a>)</li>
<li>fix(v8/node): Ensure express requests are properly handled (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14851">#14851</a>)</li>
<li>feat(v8/node): Add <code>openTelemetrySpanProcessors</code> option
(<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14853">#14853</a>)</li>
<li>fix(v8/react): Use <code>Set</code> as the <code>allRoutes</code>
container. (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14878">#14878</a>)
(<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14884">#14884</a>)</li>
<li>fix(v8/react): Improve handling of routes nested under
path=&quot;/&quot; (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14897">#14897</a>)</li>
<li>feat(v8/core): Add <code>normalizedRequest</code> to
<code>samplingContext</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14903">#14903</a>)</li>
<li>fix(v8/feedback): Avoid lazy loading code for
<code>syncFeedbackIntegration</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14918">#14918</a>)</li>
</ul>
<p>Work in this release was contributed by <a
href="https://github.com/arturovt"><code>@​arturovt</code></a>. Thank
you for your contribution!</p>
<h2>Bundle size 📦</h2>
<table>
<thead>
<tr>
<th>Path</th>
<th>Size</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>@​sentry/browser</code></td>
<td>23.29 KB</td>
</tr>
<tr>
<td><code>@​sentry/browser</code> - with treeshaking flags</td>
<td>21.96 KB</td>
</tr>
<tr>
<td><code>@​sentry/browser</code> (incl. Tracing)</td>
<td>35.85 KB</td>
</tr>
<tr>
<td><code>@​sentry/browser</code> (incl. Tracing, Replay)</td>
<td>73.09 KB</td>
</tr>
<tr>
<td><code>@​sentry/browser</code> (incl. Tracing, Replay) - with
treeshaking flags</td>
<td>63.48 KB</td>
</tr>
<tr>
<td><code>@​sentry/browser</code> (incl. Tracing, Replay with
Canvas)</td>
<td>77.4 KB</td>
</tr>
<tr>
<td><code>@​sentry/browser</code> (incl. Tracing, Replay, Feedback)</td>
<td>89.34 KB</td>
</tr>
<tr>
<td><code>@​sentry/browser</code> (incl. Feedback)</td>
<td>39.5 KB</td>
</tr>
<tr>
<td><code>@​sentry/browser</code> (incl. sendFeedback)</td>
<td>27.89 KB</td>
</tr>
<tr>
<td><code>@​sentry/browser</code> (incl. FeedbackAsync)</td>
<td>32.69 KB</td>
</tr>
<tr>
<td><code>@​sentry/react</code></td>
<td>25.96 KB</td>
</tr>
<tr>
<td><code>@​sentry/react</code> (incl. Tracing)</td>
<td>38.66 KB</td>
</tr>
<tr>
<td><code>@​sentry/vue</code></td>
<td>27.56 KB</td>
</tr>
<tr>
<td><code>@​sentry/vue</code> (incl. Tracing)</td>
<td>37.69 KB</td>
</tr>
<tr>
<td><code>@​sentry/svelte</code></td>
<td>23.45 KB</td>
</tr>
<tr>
<td>CDN Bundle</td>
<td>24.49 KB</td>
</tr>
<tr>
<td>CDN Bundle (incl. Tracing)</td>
<td>37.56 KB</td>
</tr>
<tr>
<td>CDN Bundle (incl. Tracing, Replay)</td>
<td>72.75 KB</td>
</tr>
<tr>
<td>CDN Bundle (incl. Tracing, Replay, Feedback)</td>
<td>78.11 KB</td>
</tr>
<tr>
<td>CDN Bundle - uncompressed</td>
<td>71.93 KB</td>
</tr>
<tr>
<td>CDN Bundle (incl. Tracing) - uncompressed</td>
<td>111.42 KB</td>
</tr>
<tr>
<td>CDN Bundle (incl. Tracing, Replay) - uncompressed</td>
<td>225.5 KB</td>
</tr>
</tbody>
</table>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/getsentry/sentry-javascript/blob/8.48.0/CHANGELOG.md"><code>@​sentry/nextjs</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>8.48.0</h2>
<h3>Deprecations</h3>
<ul>
<li>
<p><strong>feat(v8/core): Deprecate <code>getDomElement</code> method
(<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14799">#14799</a>)</strong></p>
<p>Deprecates <code>getDomElement</code>. There is no replacement.</p>
</li>
</ul>
<h3>Other changes</h3>
<ul>
<li>fix(nestjs/v8): Use correct main/module path in package.json (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14791">#14791</a>)</li>
<li>fix(v8/core): Use consistent <code>continueTrace</code>
implementation in core (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14819">#14819</a>)</li>
<li>fix(v8/node): Correctly resolve debug IDs for ANR events with custom
appRoot (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14823">#14823</a>)</li>
<li>fix(v8/node): Ensure <code>NODE_OPTIONS</code> is not passed to
worker threads (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14825">#14825</a>)</li>
<li>fix(v8/angular): Fall back to element <code>tagName</code> when name
is not provided to <code>TraceDirective</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14828">#14828</a>)</li>
<li>fix(aws-lambda): Remove version suffix from lambda layer (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14843">#14843</a>)</li>
<li>fix(v8/node): Ensure express requests are properly handled (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14851">#14851</a>)</li>
<li>feat(v8/node): Add <code>openTelemetrySpanProcessors</code> option
(<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14853">#14853</a>)</li>
<li>fix(v8/react): Use <code>Set</code> as the <code>allRoutes</code>
container. (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14878">#14878</a>)
(<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14884">#14884</a>)</li>
<li>fix(v8/react): Improve handling of routes nested under
path=&quot;/&quot; (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14897">#14897</a>)</li>
<li>feat(v8/core): Add <code>normalizedRequest</code> to
<code>samplingContext</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14903">#14903</a>)</li>
<li>fix(v8/feedback): Avoid lazy loading code for
<code>syncFeedbackIntegration</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14918">#14918</a>)</li>
</ul>
<p>Work in this release was contributed by <a
href="https://github.com/arturovt"><code>@​arturovt</code></a>. Thank
you for your contribution!</p>
<h2>8.47.0</h2>
<ul>
<li>feat(v8/core): Add <code>updateSpanName</code> helper function (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14736">#14736</a>)</li>
<li>feat(v8/node): Do not overwrite prisma <code>db.system</code> in
newer Prisma versions (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14772">#14772</a>)</li>
<li>feat(v8/node/deps): Bump <code>@​prisma/instrumentation</code> from
5.19.1 to 5.22.0 (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14755">#14755</a>)</li>
<li>feat(v8/replay): Mask srcdoc iframe contents per default (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14779">#14779</a>)</li>
<li>ref(v8/nextjs): Fix typo in source maps deletion warning (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14776">#14776</a>)</li>
</ul>
<p>Work in this release was contributed by <a
href="https://github.com/aloisklink"><code>@​aloisklink</code></a> and
<a href="https://github.com/benjick"><code>@​benjick</code></a>. Thank
you for your contributions!</p>
<h2>8.46.0</h2>
<ul>
<li>feat: Allow capture of more than 1 ANR event [v8] (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14713">#14713</a>)</li>
<li>feat(node): Detect Railway release name [v8] (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14714">#14714</a>)</li>
<li>fix: Normalise ANR debug image file paths if appRoot was supplied
[v8] (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14709">#14709</a>)</li>
<li>fix(nuxt): Remove build config from tsconfig (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14737">#14737</a>)</li>
</ul>
<p>Work in this release was contributed by <a
href="https://github.com/conor-ob"><code>@​conor-ob</code></a>. Thank
you for your contribution!</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="405ceb4a4d"><code>405ceb4</code></a>
release: 8.48.0</li>
<li><a
href="8e2ed6f82a"><code>8e2ed6f</code></a>
meta(changelog): Update changelog for 8.48.0 (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14919">#14919</a>)</li>
<li><a
href="8b03e0b421"><code>8b03e0b</code></a>
fix(v8/feedback): Avoid lazy loading code for
<code>syncFeedbackIntegration</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14918">#14918</a>)</li>
<li><a
href="77cabfbc33"><code>77cabfb</code></a>
fix(v8/react): Use <code>Set</code> as the <code>allRoutes</code>
container. (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14878">#14878</a>)
(<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14884">#14884</a>)</li>
<li><a
href="6fa3797ddb"><code>6fa3797</code></a>
feat(v8/core): Add <code>normalizedRequest</code> to
<code>samplingContext</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14903">#14903</a>)</li>
<li><a
href="845b7aa2e0"><code>845b7aa</code></a>
fix(v8/react): Improve handling of routes nested under
path=&quot;/&quot; (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14897">#14897</a>)</li>
<li><a
href="dbd3296580"><code>dbd3296</code></a>
feat(v8/node): Add <code>openTelemetrySpanProcessors</code> option (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14853">#14853</a>)</li>
<li><a
href="960dd9be89"><code>960dd9b</code></a>
fix(v8/node): Ensure express requests are properly handled (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14851">#14851</a>)</li>
<li><a
href="576a1ad0f2"><code>576a1ad</code></a>
fix(v8/core): Use consistent <code>continueTrace</code> implementation
in core (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14819">#14819</a>)</li>
<li><a
href="75ca8b9c5a"><code>75ca8b9</code></a>
meta(changelog): Update changelog for 8.48.0 (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14844">#14844</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/getsentry/sentry-javascript/compare/8.45.1...8.48.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `framer-motion` from 11.15.0 to 11.16.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/motiondivision/motion/blob/main/CHANGELOG.md">framer-motion's
changelog</a>.</em></p>
<blockquote>
<h2>[11.16.0] 2024-01-06</h2>
<h3>Added</h3>
<ul>
<li>Added <code>view()</code> alpha to early access.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="0d6f15819d"><code>0d6f158</code></a>
v11.16.0</li>
<li><a
href="60b365926c"><code>60b3659</code></a>
Updating changelog</li>
<li><a
href="d22113827f"><code>d221138</code></a>
Feature/view function (<a
href="https://redirect.github.com/motiondivision/motion/issues/2970">#2970</a>)</li>
<li><a
href="8ca78c00b6"><code>8ca78c0</code></a>
Updating readmes</li>
<li><a
href="ecd97f7dce"><code>ecd97f7</code></a>
Updating readme</li>
<li>See full diff in <a
href="https://github.com/motiondivision/motion/compare/v11.15.0...v11.16.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `lucide-react` from 0.468.0 to 0.469.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/lucide-icons/lucide/releases">lucide-react's
releases</a>.</em></p>
<blockquote>
<h2>New icons 0.469.0</h2>
<h2>Modified Icons 🔨</h2>
<ul>
<li><code>snowflake</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2610">#2610</a>)
by <a
href="https://github.com/karsa-mistmere"><code>@​karsa-mistmere</code></a></li>
<li><code>sun-snow</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2610">#2610</a>)
by <a
href="https://github.com/karsa-mistmere"><code>@​karsa-mistmere</code></a></li>
<li><code>thermometer-snowflake</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2610">#2610</a>)
by <a
href="https://github.com/karsa-mistmere"><code>@​karsa-mistmere</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="970fc3d4be"><code>970fc3d</code></a>
fix(lucide-react): support React 19 (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2666">#2666</a>)</li>
<li>See full diff in <a
href="https://github.com/lucide-icons/lucide/commits/0.469.0/packages/lucide-react">compare
view</a></li>
</ul>
</details>
<br />

Updates `react-day-picker` from 9.4.4 to 9.5.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gpbl/react-day-picker/releases">react-day-picker's
releases</a>.</em></p>
<blockquote>
<h2>v9.5.0</h2>
<p>This release adds full support for the <a
href="https://daypicker.dev/docs/localization#persian-calendar">Persian
calendar</a> and a new <code>numerals</code> prop to <a
href="https://daypicker.dev/docs/translation#numeral-systems">set the
numbering system</a>.</p>
<h3>Breaking Change: Dropdown Formatters</h3>
<p>The <code>formatMonthDropdown</code> and
<code>formatYearDropdown</code> now receive a <code>Date</code> (instead
of a <code>number</code>) as first argument.</p>
<pre lang="diff"><code>&lt;DayPicker formatters={{ 
- formatMonthDropdown: (month) =&gt; format(new Date(month),
&quot;mmmm&quot;) }}
+ formatMonthDropdown: (date) =&gt; format(date, &quot;mmmm&quot;) }}
/&gt;
- formatYearDropdown: (year) =&gt; format(new Date(year),
&quot;yyyy&quot;) }}
+ formatYearDropdown: (date) =&gt; format(date, &quot;yyyy&quot;) }}
/&gt;
/&gt;
</code></pre>
<h3>Persian Calendar</h3>
<p>Persian Calendar get fulls support in DayPicker and replaces the
previous &quot;Jalali Calendar&quot;.</p>
<p>If you were using DayPicker from
<code>react-day-picker/jalali</code>, change your imports to
<code>react-day-picker/persian</code>:</p>
<pre lang="diff"><code>- import { DayPicker } from
`react-day-picker/jalali`;
+ import { DayPicker } from  `react-day-picker/persian`;
</code></pre>
<p>See the <a
href="https://daypicker.dev/docs/localization#persian-calendar">Persian
calendar</a> documentation for more details about using Persian calendar
in DayPicker.</p>
<h2>What's Changed</h2>
<ul>
<li>feat: add Persian calendar support by <a
href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2645">gpbl/react-day-picker#2645</a></li>
<li>feat: add new <code>numerals</code> prop by <a
href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2647">gpbl/react-day-picker#2647</a></li>
<li>feat: add <code>today</code>, <code>newDate</code>,
<code>timeZone</code> to the <code>DateLib</code> class by <a
href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2642">gpbl/react-day-picker#2642</a></li>
<li>feat: remove <code>startMonth</code>/<code>endMonth</code>
constraints when caption layout is <code>dropdown-months</code> by <a
href="https://github.com/rodgobbi"><code>@​rodgobbi</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2648">gpbl/react-day-picker#2648</a></li>
<li>build: add <code>date-fns-jalali</code> to the package dependencies
by <a href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2640">gpbl/react-day-picker#2640</a></li>
<li>fix(breaking): dropdown formatters to use <code>dateLib</code>
format by <a href="https://github.com/gpbl"><code>@​gpbl</code></a> in
<a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2644">gpbl/react-day-picker#2644</a></li>
<li>fix(jalali): incorrect Jalali month names when using dropdown
layouts by <a href="https://github.com/gpbl"><code>@​gpbl</code></a> in
<a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2645">gpbl/react-day-picker#2645</a></li>
<li>fix(chore): always use <code>Date</code> constructor from
<code>dateLib</code> by <a
href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2636">gpbl/react-day-picker#2636</a></li>
<li>fix(chore): use <code>dateLib</code> for getting days/months/years
from a <code>Date</code> by <a
href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2643">gpbl/react-day-picker#2643</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/gpbl/react-day-picker/compare/v9.4.4...v9.5.0">https://github.com/gpbl/react-day-picker/compare/v9.4.4...v9.5.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="a06052e71b"><code>a06052e</code></a>
fix(website): Persian test</li>
<li><a
href="aa0cacb04e"><code>aa0cacb</code></a>
fix(website): Persian formatted</li>
<li><a
href="e65d776f51"><code>e65d776</code></a>
website: update docs for Persian calendar</li>
<li><a
href="15280b7b81"><code>15280b7</code></a>
chore(persian): use <code>arabext</code> numerals as default</li>
<li><a
href="56c7acbaf1"><code>56c7acb</code></a>
chore: update tests after <a
href="https://redirect.github.com/gpbl/react-day-picker/issues/2648">#2648</a>
(<a
href="https://redirect.github.com/gpbl/react-day-picker/issues/2650">#2650</a>)</li>
<li><a
href="bcd5215000"><code>bcd5215</code></a>
feat: remove <code>startMonth</code> and <code>endMonth</code> default
constraints when `dropdown-m...</li>
<li><a
href="1026b2ca28"><code>1026b2c</code></a>
website: playground updates</li>
<li><a
href="d09e2acdc1"><code>d09e2ac</code></a>
feat: add new <code>numerals</code> prop (<a
href="https://redirect.github.com/gpbl/react-day-picker/issues/2647">#2647</a>)</li>
<li><a
href="8a67562252"><code>8a67562</code></a>
website: fix type in ShadowDomWrapper</li>
<li><a
href="5fabec63a4"><code>5fabec6</code></a>
build(website): disable typedoc watch</li>
<li>Additional commits viewable in <a
href="https://github.com/gpbl/react-day-picker/compare/v9.4.4...v9.5.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `react-hook-form` from 7.54.1 to 7.54.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/react-hook-form/react-hook-form/releases">react-hook-form's
releases</a>.</em></p>
<blockquote>
<h2>Version 7.54.2</h2>
<p>⚛️ fix <a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12478">#12478</a>
issue should unregister input with controller (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12480">#12480</a>)
 close <a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12443">#12443</a>
track disabled fields and only omit data on submit (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12491">#12491</a>)
⚛️ upgrade e2e automation app to react 19 (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12482">#12482</a>)
🧪 test(useWatch): destructure setValue from useForm</p>
<p>Thanks very much, <a
href="https://github.com/marcalexiei"><code>@​marcalexiei</code></a> for
your contribution to the documentation!</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="ba87b7809e"><code>ba87b78</code></a>
7.54.2</li>
<li><a
href="c3d1756733"><code>c3d1756</code></a>
 close <a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12443">#12443</a>
track disabled fields and only omit data on submit (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12491">#12491</a>)</li>
<li><a
href="5a961592fe"><code>5a96159</code></a>
⚛️ upgrade e2e automation app to react 19 (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12482">#12482</a>)</li>
<li><a
href="4ea65b372e"><code>4ea65b3</code></a>
⚛️ fix <a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12478">#12478</a>
issue should unregister input with controller (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12480">#12480</a>)</li>
<li><a
href="f37465d135"><code>f37465d</code></a>
❤️ thank you very much Workleap for sponsoring the project!</li>
<li><a
href="506fa04d44"><code>506fa04</code></a>
🧪 test(useWatch): destructure setValue from useForm</li>
<li>See full diff in <a
href="https://github.com/react-hook-form/react-hook-form/compare/v7.54.1...v7.54.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `react-markdown` from 9.0.1 to 9.0.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/remarkjs/react-markdown/releases">react-markdown's
releases</a>.</em></p>
<blockquote>
<h2>9.0.3</h2>
<p>(same as 9.0.2 but now with d.ts files)</p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/remarkjs/react-markdown/compare/9.0.2...9.0.3">https://github.com/remarkjs/react-markdown/compare/9.0.2...9.0.3</a></p>
<h2>9.0.2</h2>
<h4>Types</h4>
<ul>
<li>b151a90 Fix types for React 19
by <a
href="https://github.com/remcohaszing"><code>@​remcohaszing</code></a>
in <a
href="https://redirect.github.com/remarkjs/react-markdown/pull/879">remarkjs/react-markdown#879</a></li>
<li>6962af7 Add declaration maps</li>
<li>aa5933b Refactor to use <code>@import</code> to import types
by <a
href="https://github.com/remcohaszing"><code>@​remcohaszing</code></a>
in <a
href="https://redirect.github.com/remarkjs/react-markdown/pull/836">remarkjs/react-markdown#836</a></li>
</ul>
<h4>Miscellaneous</h4>
<ul>
<li>9eb589e Fix typo in changelog
by <a
href="https://github.com/NicholasWilsonDEV"><code>@​NicholasWilsonDEV</code></a>
in <a
href="https://redirect.github.com/remarkjs/react-markdown/pull/874">remarkjs/react-markdown#874</a></li>
<li>515bf19 Fix typo
by <a href="https://github.com/deep-lyra"><code>@​deep-lyra</code></a>
in <a
href="https://redirect.github.com/remarkjs/react-markdown/pull/868">remarkjs/react-markdown#868</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/remarkjs/react-markdown/compare/9.0.1...9.0.2">https://github.com/remarkjs/react-markdown/compare/9.0.1...9.0.2</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="aed001070a"><code>aed0010</code></a>
9.0.3</li>
<li><a
href="40c097eb6f"><code>40c097e</code></a>
9.0.2</li>
<li><a
href="2c6ffe8f93"><code>2c6ffe8</code></a>
Refactor <code>.gitignore</code></li>
<li><a
href="b664ac4459"><code>b664ac4</code></a>
Update Actions</li>
<li><a
href="e68655127b"><code>e686551</code></a>
Update dev-dependencies</li>
<li><a
href="b151a9028f"><code>b151a90</code></a>
Fix types for React 19</li>
<li><a
href="27d3949b31"><code>27d3949</code></a>
Separate all typedefs into their own JSDoc blocks (<a
href="https://redirect.github.com/remarkjs/react-markdown/issues/878">#878</a>)</li>
<li><a
href="9eb589e828"><code>9eb589e</code></a>
Fix typo in changelog</li>
<li><a
href="515bf190a0"><code>515bf19</code></a>
Fix typo</li>
<li><a
href="a7ca8edfd6"><code>a7ca8ed</code></a>
Refactor <code>.editorconfig</code></li>
<li>Additional commits viewable in <a
href="https://github.com/remarkjs/react-markdown/compare/9.0.1...9.0.3">compare
view</a></li>
</ul>
</details>
<br />

Updates `react-modal` from 3.16.1 to 3.16.3
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/reactjs/react-modal/blob/master/CHANGELOG.md">react-modal's
changelog</a>.</em></p>
<blockquote>
<h2>3.16.3 - Tue, 17 Dec 2024 10:38:34 UTC</h2>
<ul>
<li><a
href="https://github.com/reactjs/react-modal/commit/a5c0cf4">a5c0cf4</a>
removing restriction on node engines.</li>
</ul>
<h2>3.16.2 - Tue, 17 Dec 2024 09:11:34 UTC</h2>
<ul>
<li><a
href="https://github.com/reactjs/react-modal/commit/b91c724">b91c724</a>
updade react and react-dom peer dependencies.</li>
<li><a
href="https://github.com/reactjs/react-modal/commit/a275399">a275399</a>
simplify PR template.</li>
<li><a
href="https://github.com/reactjs/react-modal/commit/588f26b">588f26b</a>
contributing requirements now just need a corresponding issue... on
GitHub board</li>
<li><a
href="https://github.com/reactjs/react-modal/commit/449398d">449398d</a>
remove discussion note from readme.</li>
<li><a
href="https://github.com/reactjs/react-modal/commit/e4841d6">e4841d6</a>
chore: update shouldCloseOnOverlayClick doc</li>
<li><a
href="https://github.com/reactjs/react-modal/commit/6724a04">6724a04</a>
Fix tests</li>
<li><a
href="https://github.com/reactjs/react-modal/commit/7c1d947">7c1d947</a>
Fix badge</li>
<li><a
href="https://github.com/reactjs/react-modal/commit/96a81be">96a81be</a>
Comment the ellipsis in code blocks in docs/index.md</li>
<li><a
href="https://github.com/reactjs/react-modal/commit/aff8b91">aff8b91</a>
[added] add nodejs version restriction to package.json</li>
<li><a
href="https://github.com/reactjs/react-modal/commit/321966e">321966e</a>
[changed] change Miscellaneous related nodejs version text</li>
<li><a
href="https://github.com/reactjs/react-modal/commit/8dc2347">8dc2347</a>
[added] add Miscellaneous section to the contributions.md file</li>
<li><a
href="https://github.com/reactjs/react-modal/commit/f9bc6a0">f9bc6a0</a>
[fixed] strict matching for tabbable nodes</li>
<li><a
href="https://github.com/reactjs/react-modal/commit/e7c4a63">e7c4a63</a>
downgrade node version on github action.</li>
<li><a
href="https://github.com/reactjs/react-modal/commit/1a8f562">1a8f562</a>
running tests on github actions</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="7a2a63c91c"><code>7a2a63c</code></a>
Release v3.16.3.</li>
<li><a
href="a5c0cf414d"><code>a5c0cf4</code></a>
removing restriction on node engines.</li>
<li><a
href="8f683027f8"><code>8f68302</code></a>
Release v3.16.2.</li>
<li><a
href="b91c7245b7"><code>b91c724</code></a>
updade react and react-dom peer dependencies.</li>
<li><a
href="a275399059"><code>a275399</code></a>
simplify PR template.</li>
<li><a
href="588f26b060"><code>588f26b</code></a>
contributing requirements now just need a corresponding issue...</li>
<li><a
href="449398da1e"><code>449398d</code></a>
remove discussion note from readme.</li>
<li><a
href="e4841d66d1"><code>e4841d6</code></a>
chore: update shouldCloseOnOverlayClick doc</li>
<li><a
href="6724a049c1"><code>6724a04</code></a>
Fix tests</li>
<li><a
href="7c1d947226"><code>7c1d947</code></a>
Fix badge</li>
<li>Additional commits viewable in <a
href="https://github.com/reactjs/react-modal/compare/v3.16.1...v3.16.3">compare
view</a></li>
</ul>
</details>
<br />

Updates `tailwind-merge` from 2.5.5 to 2.6.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dcastil/tailwind-merge/releases">tailwind-merge's
releases</a>.</em></p>
<blockquote>
<h2>v2.6.0</h2>
<h3>New Features</h3>
<ul>
<li>Export ConfigExtension type from package by <a
href="https://github.com/dcastil"><code>@​dcastil</code></a> in <a
href="https://redirect.github.com/dcastil/tailwind-merge/pull/505">dcastil/tailwind-merge#505</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/dcastil/tailwind-merge/compare/v2.5.5...v2.6.0">https://github.com/dcastil/tailwind-merge/compare/v2.5.5...v2.6.0</a></p>
<p>Thanks to <a
href="https://github.com/brandonmcconnell"><code>@​brandonmcconnell</code></a>,
<a href="https://github.com/manavm1990"><code>@​manavm1990</code></a>,
<a href="https://github.com/langy"><code>@​langy</code></a>, <a
href="https://github.com/jamesreaco"><code>@​jamesreaco</code></a>, <a
href="https://github.com/roboflow"><code>@​roboflow</code></a>, <a
href="https://github.com/syntaxfm"><code>@​syntaxfm</code></a>, <a
href="https://github.com/getsentry"><code>@​getsentry</code></a>, <a
href="https://github.com/codecov"><code>@​codecov</code></a>, <a
href="https://github.com/sourcegraph"><code>@​sourcegraph</code></a>, a
private sponsor and more via <a
href="https://github.com/thnxdev"><code>@​thnxdev</code></a> for
sponsoring tailwind-merge! ❤️</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="1a92c358e0"><code>1a92c35</code></a>
v2.6.0</li>
<li><a
href="64803754e7"><code>6480375</code></a>
add changelog for v2.6.0</li>
<li><a
href="7bb2dc0e02"><code>7bb2dc0</code></a>
Merge pull request <a
href="https://redirect.github.com/dcastil/tailwind-merge/issues/509">#509</a>
from dcastil/renovate/rollup-plugin-node-resolve-16.x</li>
<li><a
href="19eb0a1476"><code>19eb0a1</code></a>
chore(deps): update dependency <code>@​rollup/plugin-node-resolve</code>
to v16</li>
<li><a
href="d6f10146e3"><code>d6f1014</code></a>
Merge pull request <a
href="https://redirect.github.com/dcastil/tailwind-merge/issues/508">#508</a>
from dcastil/renovate/codspeed-vitest-plugin-4.x</li>
<li><a
href="d039e296dd"><code>d039e29</code></a>
chore(deps): update dependency <code>@​codspeed/vitest-plugin</code> to
v4</li>
<li><a
href="4aac490b6f"><code>4aac490</code></a>
Merge pull request <a
href="https://redirect.github.com/dcastil/tailwind-merge/issues/507">#507</a>
from dcastil/renovate/migrate-config</li>
<li><a
href="433e53208a"><code>433e532</code></a>
chore(config): migrate config .github/renovate.json</li>
<li><a
href="31da3f22d7"><code>31da3f2</code></a>
fix unsupported import assertion</li>
<li><a
href="34078eee52"><code>34078ee</code></a>
Merge pull request <a
href="https://redirect.github.com/dcastil/tailwind-merge/issues/506">#506</a>
from dcastil/other/upgrade-github-workflows-to-node-22</li>
<li>Additional commits viewable in <a
href="https://github.com/dcastil/tailwind-merge/compare/v2.5.5...v2.6.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `uuid` from 11.0.3 to 11.0.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/uuidjs/uuid/releases">uuid's
releases</a>.</em></p>
<blockquote>
<h2>v11.0.4</h2>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v11.0.3...v11.0.4">11.0.4</a>
(2025-01-05)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>docs:</strong> insure -&gt; ensure (<a
href="https://redirect.github.com/uuidjs/uuid/issues/843">#843</a>) (<a
href="d2a61e154d">d2a61e1</a>)</li>
<li>exclude tests from published package (<a
href="https://redirect.github.com/uuidjs/uuid/issues/840">#840</a>) (<a
href="f992ff4780">f992ff4</a>)</li>
<li>Test for invalid byte array sizes and ranges in <code>v1()</code>,
<code>v4()</code>, and <code>v7()</code> (<a
href="https://redirect.github.com/uuidjs/uuid/issues/845">#845</a>) (<a
href="e0ee90051e">e0ee900</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md">uuid's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v11.0.3...v11.0.4">11.0.4</a>
(2025-01-05)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>docs:</strong> insure -&gt; ensure (<a
href="https://redirect.github.com/uuidjs/uuid/issues/843">#843</a>) (<a
href="d2a61e154d">d2a61e1</a>)</li>
<li>exclude tests from published package (<a
href="https://redirect.github.com/uuidjs/uuid/issues/840">#840</a>) (<a
href="f992ff4780">f992ff4</a>)</li>
<li>Test for invalid byte array sizes and ranges in <code>v1()</code>,
<code>v4()</code>, and <code>v7()</code> (<a
href="https://redirect.github.com/uuidjs/uuid/issues/845">#845</a>) (<a
href="e0ee90051e">e0ee900</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="050cd5b9df"><code>050cd5b</code></a>
chore(main): release 11.0.4 (<a
href="https://redirect.github.com/uuidjs/uuid/issues/842">#842</a>)</li>
<li><a
href="e0ee90051e"><code>e0ee900</code></a>
fix: Test for invalid byte array sizes and ranges in <code>v1()</code>,
<code>v4()</code>, and `v7(...</li>
<li><a
href="6e83b3ae83"><code>6e83b3a</code></a>
chore: update deps (<a
href="https://redirect.github.com/uuidjs/uuid/issues/848">#848</a>)</li>
<li><a
href="5f58b43aa4"><code>5f58b43</code></a>
docs: Ensure link to getrandomvalues-not-supported is maintained (<a
href="https://redirect.github.com/uuidjs/uuid/issues/844">#844</a>)</li>
<li><a
href="d2a61e154d"><code>d2a61e1</code></a>
fix(docs): insure -&gt; ensure (<a
href="https://redirect.github.com/uuidjs/uuid/issues/843">#843</a>)</li>
<li><a
href="f992ff4780"><code>f992ff4</code></a>
fix: exclude tests from published package (<a
href="https://redirect.github.com/uuidjs/uuid/issues/840">#840</a>)</li>
<li><a
href="59df7092c7"><code>59df709</code></a>
docs: add notes on platform support (<a
href="https://redirect.github.com/uuidjs/uuid/issues/838">#838</a>)</li>
<li>See full diff in <a
href="https://github.com/uuidjs/uuid/compare/v11.0.3...v11.0.4">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-07 18:42:25 +00:00
Swifty
0b9c0c9f12 refactor(marketplace): Delete Old marketplace code (#9164)
Needs to be coordinated with Infra PR
https://github.com/Significant-Gravitas/AutoGPT_cloud_infrastructure/pull/20

DO NOT MERGE WITHOUT SYNCING BOTH CHANGES

### Changes 🏗️

- Delete marketplace
2025-01-07 10:02:21 +00:00
dependabot[bot]
7e80401083 chore(libs/deps-dev): bump ruff from 0.8.3 to 0.8.6 in /autogpt_platform/autogpt_libs in the development-dependencies group across 1 directory (#9202)
Bumps the development-dependencies group with 1 update in the
/autogpt_platform/autogpt_libs directory:
[ruff](https://github.com/astral-sh/ruff).

Updates `ruff` from 0.8.3 to 0.8.6
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.8.6</h2>
<h2>Release Notes</h2>
<h3>Preview features</h3>
<ul>
<li>[<code>format</code>]: Preserve multiline implicit concatenated
strings in docstring positions (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15126">#15126</a>)</li>
<li>[<code>ruff</code>] Add rule to detect empty literal in deque call
(<code>RUF025</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15104">#15104</a>)</li>
<li>[<code>ruff</code>] Avoid reporting when <code>ndigits</code> is
possibly negative (<code>RUF057</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15234">#15234</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>flake8-todos</code>] remove issue code length restriction
(<code>TD003</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15175">#15175</a>)</li>
<li>[<code>pyflakes</code>] Ignore errors in <code>@no_type_check</code>
string annotations (<code>F722</code>, <code>F821</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15215">#15215</a>)</li>
</ul>
<h3>CLI</h3>
<ul>
<li>Show errors for attempted fixes only when passed
<code>--verbose</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15237">#15237</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>[<code>ruff</code>] Avoid syntax error when removing int over
multiple lines (<code>RUF046</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15230">#15230</a>)</li>
<li>[<code>pyupgrade</code>] Revert &quot;Add all PEP-585 names to
<code>UP006</code> rule&quot; (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15250">#15250</a>)</li>
</ul>
<h2>Contributors</h2>
<ul>
<li><a
href="https://github.com/AlexWaygood"><code>@​AlexWaygood</code></a></li>
<li><a
href="https://github.com/InSyncWithFoo"><code>@​InSyncWithFoo</code></a></li>
<li><a href="https://github.com/Lee-W"><code>@​Lee-W</code></a></li>
<li><a
href="https://github.com/MichaReiser"><code>@​MichaReiser</code></a></li>
<li><a
href="https://github.com/augustelalande"><code>@​augustelalande</code></a></li>
<li><a
href="https://github.com/charliermarsh"><code>@​charliermarsh</code></a></li>
<li><a
href="https://github.com/dcreager"><code>@​dcreager</code></a></li>
<li><a href="https://github.com/dylwil3"><code>@​dylwil3</code></a></li>
<li><a
href="https://github.com/mdbernard"><code>@​mdbernard</code></a></li>
<li><a href="https://github.com/sharkdp"><code>@​sharkdp</code></a></li>
<li><a
href="https://github.com/w0nder1ng"><code>@​w0nder1ng</code></a></li>
</ul>
<h2>Install ruff 0.8.6</h2>
<h3>Install prebuilt binaries via shell script</h3>
<pre lang="sh"><code>curl --proto '=https' --tlsv1.2 -LsSf
https://github.com/astral-sh/ruff/releases/download/0.8.6/ruff-installer.sh
| sh
</code></pre>
<h3>Install prebuilt binaries via powershell script</h3>
<pre lang="sh"><code>powershell -ExecutionPolicy ByPass -c &quot;irm
https://github.com/astral-sh/ruff/releases/download/0.8.6/ruff-installer.ps1
| iex&quot;
</code></pre>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.8.6</h2>
<h3>Preview features</h3>
<ul>
<li>[<code>format</code>]: Preserve multiline implicit concatenated
strings in docstring positions (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15126">#15126</a>)</li>
<li>[<code>ruff</code>] Add rule to detect empty literal in deque call
(<code>RUF025</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15104">#15104</a>)</li>
<li>[<code>ruff</code>] Avoid reporting when <code>ndigits</code> is
possibly negative (<code>RUF057</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15234">#15234</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>flake8-todos</code>] remove issue code length restriction
(<code>TD003</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15175">#15175</a>)</li>
<li>[<code>pyflakes</code>] Ignore errors in <code>@no_type_check</code>
string annotations (<code>F722</code>, <code>F821</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15215">#15215</a>)</li>
</ul>
<h3>CLI</h3>
<ul>
<li>Show errors for attempted fixes only when passed
<code>--verbose</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15237">#15237</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>[<code>ruff</code>] Avoid syntax error when removing int over
multiple lines (<code>RUF046</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15230">#15230</a>)</li>
<li>[<code>pyupgrade</code>] Revert &quot;Add all PEP-585 names to
<code>UP006</code> rule&quot; (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15250">#15250</a>)</li>
</ul>
<h2>0.8.5</h2>
<h3>Preview features</h3>
<ul>
<li>[<code>airflow</code>] Extend names moved from core to provider
(<code>AIR303</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15145">#15145</a>,
<a
href="https://redirect.github.com/astral-sh/ruff/pull/15159">#15159</a>,
<a
href="https://redirect.github.com/astral-sh/ruff/pull/15196">#15196</a>,
<a
href="https://redirect.github.com/astral-sh/ruff/pull/15216">#15216</a>)</li>
<li>[<code>airflow</code>] Extend rule to check class attributes,
methods, arguments (<code>AIR302</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15054">#15054</a>,
<a
href="https://redirect.github.com/astral-sh/ruff/pull/15083">#15083</a>)</li>
<li>[<code>fastapi</code>] Update <code>FAST002</code> to check
keyword-only arguments (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15119">#15119</a>)</li>
<li>[<code>flake8-type-checking</code>] Disable <code>TC006</code> and
<code>TC007</code> in stub files (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15179">#15179</a>)</li>
<li>[<code>pylint</code>] Detect nested methods correctly
(<code>PLW1641</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15032">#15032</a>)</li>
<li>[<code>ruff</code>] Detect more strict-integer expressions
(<code>RUF046</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14833">#14833</a>)</li>
<li>[<code>ruff</code>] Implement <code>falsy-dict-get-fallback</code>
(<code>RUF056</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15160">#15160</a>)</li>
<li>[<code>ruff</code>] Implement <code>unnecessary-round</code>
(<code>RUF057</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14828">#14828</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>Visit PEP 764 inline <code>TypedDict</code> keys as
non-type-expressions (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15073">#15073</a>)</li>
<li>[<code>flake8-comprehensions</code>] Skip <code>C416</code> if
comprehension contains unpacking (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14909">#14909</a>)</li>
<li>[<code>flake8-pie</code>] Allow <code>cast(SomeType, ...)</code>
(<code>PIE796</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15141">#15141</a>)</li>
<li>[<code>flake8-simplify</code>] More precise inference for
dictionaries (<code>SIM300</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15164">#15164</a>)</li>
<li>[<code>flake8-use-pathlib</code>] Catch redundant joins in
<code>PTH201</code> and avoid syntax errors (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15177">#15177</a>)</li>
<li>[<code>pycodestyle</code>] Preserve original value format
(<code>E731</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15097">#15097</a>)</li>
<li>[<code>pydocstyle</code>] Split on first whitespace character
(<code>D403</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15082">#15082</a>)</li>
<li>[<code>pyupgrade</code>] Add all PEP-585 names to <code>UP006</code>
rule (<a
href="https://redirect.github.com/astral-sh/ruff/pull/5454">#5454</a>)</li>
</ul>
<h3>Configuration</h3>
<ul>
<li>[<code>flake8-type-checking</code>] Improve flexibility of
<code>runtime-evaluated-decorators</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15204">#15204</a>)</li>
<li>[<code>pydocstyle</code>] Add setting to ignore missing
documentation for <code>*args</code> and <code>**kwargs</code>
parameters (<code>D417</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15210">#15210</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="6b907c1305"><code>6b907c1</code></a>
Ruff 0.8.6 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15253">#15253</a>)</li>
<li><a
href="f319531632"><code>f319531</code></a>
Make unreachable a test rule for now (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15252">#15252</a>)</li>
<li><a
href="e4d9fe036a"><code>e4d9fe0</code></a>
Revert &quot;Add all PEP-585 names to UP006 rule&quot; (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15250">#15250</a>)</li>
<li><a
href="baf0d660eb"><code>baf0d66</code></a>
Update salsa (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15243">#15243</a>)</li>
<li><a
href="bde8ecddca"><code>bde8ecd</code></a>
[red-knot] Remove unneeded branch in
<code>Type::is_equivalent_to()</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15242">#15242</a>)</li>
<li><a
href="842f882ef0"><code>842f882</code></a>
[<code>ruff</code>] Avoid reporting when <code>ndigits</code> is
possibly negative (<code>RUF057</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15234">#15234</a>)</li>
<li><a
href="75015b0ed9"><code>75015b0</code></a>
Attribute panics to the mdtests that cause them (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15241">#15241</a>)</li>
<li><a
href="706d87f239"><code>706d87f</code></a>
Show errors for attempted fixes only when passed <code>--verbose</code>
(<a
href="https://redirect.github.com/astral-sh/ruff/issues/15237">#15237</a>)</li>
<li><a
href="0837cdd931"><code>0837cdd</code></a>
[<code>RUF</code>] Add rule to detect empty literal in deque call
(<code>RUF025</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15104">#15104</a>)</li>
<li><a
href="0dbfa8d0e0"><code>0dbfa8d</code></a>
TD003: remove issue code length restriction (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15175">#15175</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.8.3...0.8.6">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ruff&package-manager=pip&previous-version=0.8.3&new-version=0.8.6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Swifty <craigswift13@gmail.com>
2025-01-07 07:56:41 +00:00
Reinier van der Leer
96fae5a5c8 fix(backend): Fix intermittent failure of test_agent_execution (#9210)
- Fixed race condition in `create_graph` to preserve node order
- Resolves #9123
2025-01-07 03:42:33 +00:00
Reinier van der Leer
7a9a771718 fix(backend): Fix webhook ingress URL generation (#9209)
The enum's string *representation* was being inserted in the URL instead
of its string *value*.

Before:
`/api/integrations/ProviderName.GITHUB/webhooks/686db48c-e70d-4340-acf9-ccd0338fddc4/ingress`

After:
`/api/integrations/github/webhooks/686db48c-e70d-4340-acf9-ccd0338fddc4/ingress`

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2025-01-06 23:45:35 +00:00
Reinier van der Leer
c3caa111e4 feat(backend/executor): Add TERMINATED execution status (#9185)
- Resolves #9182

Formerly known as `FAILED` with error message `TERMINATED`.

### Changes 🏗️

- Add `TERMINATED` to `AgentExecutionStatus` enum in DB schema (and its
mirror in the front end)
- Update executor to give terminated node and graph executions status
`TERMINATED` instead of `FAILED`/`COMPLETED`
- Add `TERMINATED` case to status checks referencing
`AgentExecutionStatus`

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
  - Start and forcefully stop a graph execution

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2025-01-06 22:59:49 +00:00
Reinier van der Leer
081c4a6df2 dx: Fix isort pre-commit hooks
Since upgrading to Poetry v2.0.0 the -C flag has been renamed to -P
2025-01-07 00:02:39 +01:00
Reinier van der Leer
d638c1f484 Fix Poetry v2.0.0 compatibility (#9197)
Make all changes necessary to make everything work with Poetry v2.0.0.

- Resolves #9196

## Changes
- Removed `--no-update` flag from `poetry lock` command in codebase
- Removed extra path arguments from `poetry -C [path] run [command]`
occurrences
- Regenerated all lock files in hierarchical order
- Added workaround for Poetry bug where `packages.[i].format` is now
suddenly required

Additionally:
- Fixed up .dockerignore
  - Fixes .venv being erroneously copied over from local
  - Fixes build context bloat (300MB -> 2.5MB)
- Fixed warnings about entrypoint script not being installed in docker
builds

### Relevant (breaking) changes in v2.0.0
- `--no-update` flag no longer exists for `poetry lock` as it has become
default behavior
- The `-C` option now actually changes the directory, so any path
arguments in `poetry run` commands can/must be removed
- Poetry v2.0.0 uses the new v2.1 lock file spec, so all lock files have
to be regenerated to avoid false-positive lock file updates and checks
on future PRs
- **BUG:** when specifying `poetry.tool.packages`, `format` is required
now
  - python-poetry/poetry#9961

Full Poetry v2.0.0 release notes and change log:
https://python-poetry.org/blog/announcing-poetry-2.0.0
2025-01-06 23:34:49 +01:00
Abhimanyu Yadav
0872da1969 fix(store) : Download agent from store if user is not logged in (#9121)
- resolves - #9120 

### Changes 

- Added a new endpoint to download agent files as JSON, allowing users
to retrieve agent data by store listing version ID and version number.
- Introduced a new `get_agent` function in the database module to fetch
agent details and prepare the graph data for download.
- Enhanced the frontend `AgentInfo` component to include a download
button, which triggers the download of the agent file.
- Integrated loading state and user feedback via toast notifications
during the download process.
- Updated the API client to support the new download functionality.

### Demo video 



https://github.com/user-attachments/assets/6744a753-297f-4ccc-abde-f56ca24ed2d5

### Example Json

```json
{
  "id": "14378095-4cc5-41ea-975e-bd0bce010bea",
  "version": 1,
  "is_active": true,
  "is_template": false,
  "name": "something",
  "description": "1",
  "nodes": [
    {
      "id": "6914efa0-e4fa-4ce8-802c-d5577cf061b6",
      "block_id": "aeb08fc1-2fc1-4141-bc8e-f758f183a822",
      "input_default": {},
      "metadata": {
        "position": {
          "x": 756,
          "y": 452.5
        }
      },
      "input_links": [],
      "output_links": [],
      "webhook_id": null,
      "graph_id": "14378095-4cc5-41ea-975e-bd0bce010bea",
      "graph_version": 1,
      "webhook": null
    }
  ],
  "links": [],
  "input_schema": {
    "type": "object",
    "properties": {},
    "required": []
  },
  "output_schema": {
    "type": "object",
    "properties": {},
    "required": []
  }
}
```

---------

Co-authored-by: SwiftyOS <craigswift13@gmail.com>
2025-01-03 17:21:15 +00:00
Reinier van der Leer
1375a0fdbc feat(platform): Support multiple credentials inputs on blocks (#8932)
- Resolves #8930
- Depends on #8725

### Changes 🏗️

- feat(platform): Support multiple credentials inputs on blocks

Aside from `credentials`, fields within the name pattern `*_credentials`
are now also supported!

- Update docs with info on multi credentials support

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
  - [x] Ask @aarushik93 to test
2025-01-03 15:18:57 +00:00
Bently
84af37a27a refactor(blocks): Move some GitHub blocks to correct file (#9180)
This moves my recently added blocks: ``GithubCreateFileBlock``,
``GithubUpdateFileBlock``, ``GithubCreateRepositoryBlock`` and
``GithubListStargazersBlock`` to the correct file ``github/repo.py`` as
i placed them in the wrong file originally
2025-01-03 15:02:53 +00:00
Zamil Majdy
8f1a065976 fix(frontend): Make input layout & padding consistent (#9170)
There are a few hardcoded margins and padding in the block input layout,
causing the input to sometimes overflow or be used inconsistently.


![image](https://github.com/user-attachments/assets/8a9b8e0d-04fd-4660-94d3-5dfe69cbc77d)


### Changes 🏗️

* Make padding consistent between left & right, top & bottom.
* Remove hard-coded margins.
* Match the hardcode negative margin for the right node handle to the
left node handle.
* Make the input box take the full width.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2025-01-03 10:59:06 +00:00
dependabot[bot]
e7689a1eb7 chore(market/deps-dev): bump the development-dependencies group across 1 directory with 3 updates (#9165)
Bumps the development-dependencies group with 3 updates in the
/autogpt_platform/market directory:
[pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio),
[ruff](https://github.com/astral-sh/ruff) and
[pyright](https://github.com/RobertCraigie/pyright-python).

Updates `pytest-asyncio` from 0.25.0 to 0.25.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest-asyncio/releases">pytest-asyncio's
releases</a>.</em></p>
<blockquote>
<h2>pytest-asyncio 0.25.1</h2>
<ul>
<li>Fixes an issue that caused a broken event loop when a
function-scoped test was executed in between two tests with wider loop
scope <a
href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/950">#950</a></li>
<li>Improves test collection speed in auto mode <a
href="https://redirect.github.com/pytest-dev/pytest-asyncio/pull/1020">#1020</a></li>
<li>Corrects the warning that is emitted upon redefining the event_loop
fixture</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="623ab74b80"><code>623ab74</code></a>
docs: Prepare release of v0.25.1.</li>
<li><a
href="c236550e73"><code>c236550</code></a>
docs: Fix broken link to the pytest.mark.asyncio reference.</li>
<li><a
href="41c645b3b7"><code>41c645b</code></a>
fix: Correct warning message when redefining the event_loop
fixture.</li>
<li><a
href="2fd10f8243"><code>2fd10f8</code></a>
docs: Clarify deprecation of event_loop fixture.</li>
<li><a
href="a4e82ab25b"><code>a4e82ab</code></a>
docs: Added changelog entry for <a
href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1020">#1020</a>.</li>
<li><a
href="04f90445e1"><code>04f9044</code></a>
refactor: Replace the &quot;__original_fixture_loop&quot; magic
attribute with the more...</li>
<li><a
href="dafef6c65b"><code>dafef6c</code></a>
refactor: Extracted a function to mark an event loop as created by
pytest-asy...</li>
<li><a
href="0c931b7eab"><code>0c931b7</code></a>
refactor: Extracted function to check if a loop was created by
pytest-asyncio.</li>
<li><a
href="0642dcd27b"><code>0642dcd</code></a>
fix: Fix broken event loop when a function-scoped test is in between two
wide...</li>
<li><a
href="050a5f81c9"><code>050a5f8</code></a>
[pre-commit.ci] pre-commit autoupdate</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest-asyncio/compare/v0.25.0...v0.25.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `ruff` from 0.8.3 to 0.8.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.8.4</h2>
<h2>Release Notes</h2>
<h3>Preview features</h3>
<ul>
<li>[<code>airflow</code>] Extend <code>AIR302</code> with additional
functions and classes (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15015">#15015</a>)</li>
<li>[<code>airflow</code>] Implement <code>moved-to-provider-in-3</code>
for modules that has been moved to Airflow providers
(<code>AIR303</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14764">#14764</a>)</li>
<li>[<code>flake8-use-pathlib</code>] Extend check for invalid path
suffix to include the case <code>&quot;.&quot;</code>
(<code>PTH210</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14902">#14902</a>)</li>
<li>[<code>perflint</code>] Fix panic in <code>PERF401</code> when list
variable is after the <code>for</code> loop (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14971">#14971</a>)</li>
<li>[<code>perflint</code>] Simplify finding the loop target in
<code>PERF401</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15025">#15025</a>)</li>
<li>[<code>pylint</code>] Preserve original value format
(<code>PLR6104</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14978">#14978</a>)</li>
<li>[<code>ruff</code>] Avoid false positives for <code>RUF027</code>
for typing context bindings (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15037">#15037</a>)</li>
<li>[<code>ruff</code>] Check for ambiguous pattern passed to
<code>pytest.raises()</code> (<code>RUF043</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14966">#14966</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>flake8-bandit</code>] Check <code>S105</code> for annotated
assignment (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15059">#15059</a>)</li>
<li>[<code>flake8-pyi</code>] More autofixes for
<code>redundant-none-literal</code> (<code>PYI061</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14872">#14872</a>)</li>
<li>[<code>pydocstyle</code>] Skip leading whitespace for
<code>D403</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14963">#14963</a>)</li>
<li>[<code>ruff</code>] Skip <code>SQLModel</code> base classes for
<code>mutable-class-default</code> (<code>RUF012</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14949">#14949</a>)</li>
</ul>
<h3>Bug</h3>
<ul>
<li>[<code>perflint</code>] Parenthesize walrus expressions in autofix
for <code>manual-list-comprehension</code> (<code>PERF401</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15050">#15050</a>)</li>
</ul>
<h3>Server</h3>
<ul>
<li>Check diagnostic refresh support from client capability which
enables dynamic configuration for various editors (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15014">#15014</a>)</li>
</ul>
<h2>Contributors</h2>
<ul>
<li><a
href="https://github.com/AlexWaygood"><code>@​AlexWaygood</code></a></li>
<li><a
href="https://github.com/Daverball"><code>@​Daverball</code></a></li>
<li><a
href="https://github.com/DimitriPapadopoulos"><code>@​DimitriPapadopoulos</code></a></li>
<li><a
href="https://github.com/InSyncWithFoo"><code>@​InSyncWithFoo</code></a></li>
<li><a href="https://github.com/Lee-W"><code>@​Lee-W</code></a></li>
<li><a
href="https://github.com/MichaReiser"><code>@​MichaReiser</code></a></li>
<li><a href="https://github.com/TheBits"><code>@​TheBits</code></a></li>
<li><a
href="https://github.com/cake-monotone"><code>@​cake-monotone</code></a></li>
<li><a href="https://github.com/carljm"><code>@​carljm</code></a></li>
<li><a
href="https://github.com/dcreager"><code>@​dcreager</code></a></li>
<li><a
href="https://github.com/dhruvmanila"><code>@​dhruvmanila</code></a></li>
<li><a href="https://github.com/dylwil3"><code>@​dylwil3</code></a></li>
<li><a
href="https://github.com/github-actions"><code>@​github-actions</code></a></li>
<li><a
href="https://github.com/kiran-4444"><code>@​kiran-4444</code></a></li>
<li><a
href="https://github.com/krishnan-chandra"><code>@​krishnan-chandra</code></a></li>
<li><a
href="https://github.com/rchen152"><code>@​rchen152</code></a></li>
<li><a
href="https://github.com/renovate"><code>@​renovate</code></a></li>
<li><a href="https://github.com/sharkdp"><code>@​sharkdp</code></a></li>
<li><a
href="https://github.com/tarasmatsyk"><code>@​tarasmatsyk</code></a></li>
<li><a
href="https://github.com/w0nder1ng"><code>@​w0nder1ng</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.8.4</h2>
<h3>Preview features</h3>
<ul>
<li>[<code>airflow</code>] Extend <code>AIR302</code> with additional
functions and classes (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15015">#15015</a>)</li>
<li>[<code>airflow</code>] Implement <code>moved-to-provider-in-3</code>
for modules that has been moved to Airflow providers
(<code>AIR303</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14764">#14764</a>)</li>
<li>[<code>flake8-use-pathlib</code>] Extend check for invalid path
suffix to include the case <code>&quot;.&quot;</code>
(<code>PTH210</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14902">#14902</a>)</li>
<li>[<code>perflint</code>] Fix panic in <code>PERF401</code> when list
variable is after the <code>for</code> loop (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14971">#14971</a>)</li>
<li>[<code>perflint</code>] Simplify finding the loop target in
<code>PERF401</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15025">#15025</a>)</li>
<li>[<code>pylint</code>] Preserve original value format
(<code>PLR6104</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14978">#14978</a>)</li>
<li>[<code>ruff</code>] Avoid false positives for <code>RUF027</code>
for typing context bindings (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15037">#15037</a>)</li>
<li>[<code>ruff</code>] Check for ambiguous pattern passed to
<code>pytest.raises()</code> (<code>RUF043</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14966">#14966</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>flake8-bandit</code>] Check <code>S105</code> for annotated
assignment (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15059">#15059</a>)</li>
<li>[<code>flake8-pyi</code>] More autofixes for
<code>redundant-none-literal</code> (<code>PYI061</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14872">#14872</a>)</li>
<li>[<code>pydocstyle</code>] Skip leading whitespace for
<code>D403</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14963">#14963</a>)</li>
<li>[<code>ruff</code>] Skip <code>SQLModel</code> base classes for
<code>mutable-class-default</code> (<code>RUF012</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14949">#14949</a>)</li>
</ul>
<h3>Bug</h3>
<ul>
<li>[<code>perflint</code>] Parenthesize walrus expressions in autofix
for <code>manual-list-comprehension</code> (<code>PERF401</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15050">#15050</a>)</li>
</ul>
<h3>Server</h3>
<ul>
<li>Check diagnostic refresh support from client capability which
enables dynamic configuration for various editors (<a
href="https://redirect.github.com/astral-sh/ruff/pull/15014">#15014</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3bb0dac235"><code>3bb0dac</code></a>
Bump version to 0.8.4 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15064">#15064</a>)</li>
<li><a
href="40cba5dc8a"><code>40cba5d</code></a>
[red-knot] Cleanup various <code>todo_type!()</code> messages (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15063">#15063</a>)</li>
<li><a
href="596d80cc8e"><code>596d80c</code></a>
[<code>perflint</code>] Parenthesize walrus expressions in autofix for
`manual-list-comp...</li>
<li><a
href="d8b9a366c8"><code>d8b9a36</code></a>
Disable actionlint hook by default when running pre-commit locally (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15061">#15061</a>)</li>
<li><a
href="85e71ba91a"><code>85e71ba</code></a>
[<code>flake8-bandit</code>] Check <code>S105</code> for annotated
assignment (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15059">#15059</a>)</li>
<li><a
href="2802cbde29"><code>2802cbd</code></a>
Don't special-case class instances in unary expression inference (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15045">#15045</a>)</li>
<li><a
href="ed2bce6ebb"><code>ed2bce6</code></a>
[red-knot] Report invalid exceptions (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15042">#15042</a>)</li>
<li><a
href="f0012df686"><code>f0012df</code></a>
Fix typos in <code>RUF043.py</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/15044">#15044</a>)</li>
<li><a
href="0fc4e8f795"><code>0fc4e8f</code></a>
Introduce <code>InferContext</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14956">#14956</a>)</li>
<li><a
href="ac81c72bf3"><code>ac81c72</code></a>
[<code>ruff</code>] Ambiguous pattern passed to
<code>pytest.raises()</code> (<code>RUF043</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14966">#14966</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.8.3...0.8.4">compare
view</a></li>
</ul>
</details>
<br />

Updates `pyright` from 1.1.390 to 1.1.391
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3356df1d40"><code>3356df1</code></a>
[pyright updated to 1.1.391] Update Version (<a
href="https://redirect.github.com/RobertCraigie/pyright-python/issues/327">#327</a>)</li>
<li>See full diff in <a
href="https://github.com/RobertCraigie/pyright-python/compare/v1.1.390...v1.1.391">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-03 09:49:36 +00:00
Bently
fe8393a82f feat(blocks): Add github list stargazers block (#9172)
This adds a list stargazers block, its using
https://docs.github.com/en/rest/activity/starring?apiVersion=2022-11-28#list-stargazers


![image](https://github.com/user-attachments/assets/0fe87a97-ebea-40c2-818d-28f6555ae91c)
2025-01-03 09:48:51 +00:00
Reinier van der Leer
fa98827fd1 fix(backend): Fix validation of hostname-less URLs (#9171)
Previously, `http://` would be converted to `http://http` and pass the
no-hostname check that way. It eventually fails validation, but only at
hostname lookup which times out -> takes very long.

### Changes 🏗️

- Fix URL canonicalization logic
- Merge `_canonicalize_url` into `validate_url`

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [x] CI
2025-01-03 09:48:30 +00:00
dependabot[bot]
d7d69f397f chore(frontend/deps-dev): bump the development-dependencies group across 1 directory with 5 updates (#9150)
Bumps the development-dependencies group with 5 updates in the
/autogpt_platform/frontend directory:

| Package | From | To |
| --- | --- | --- |
|
[@chromatic-com/storybook](https://github.com/chromaui/addon-visual-tests)
| `3.2.2` | `3.2.3` |
| [@storybook/test-runner](https://github.com/storybookjs/test-runner) |
`0.20.1` | `0.21.0` |
| [concurrently](https://github.com/open-cli-tools/concurrently) |
`9.1.0` | `9.1.1` |
|
[eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next)
| `15.1.0` | `15.1.3` |
| [tailwindcss](https://github.com/tailwindlabs/tailwindcss) | `3.4.16`
| `3.4.17` |


Updates `@chromatic-com/storybook` from 3.2.2 to 3.2.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/chromaui/addon-visual-tests/releases"><code>@​chromatic-com/storybook</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v3.2.3</h2>
<h4>🐛 Bug Fix</h4>
<ul>
<li>Fix reading <code>status</code> of <code>undefined</code> in urql's
<code>didAuthError</code> handler <a
href="https://redirect.github.com/chromaui/addon-visual-tests/pull/349">#349</a>
(<a
href="https://github.com/ghengeveld"><code>@​ghengeveld</code></a>)</li>
<li>Add steps to link for local testing <a
href="https://redirect.github.com/chromaui/addon-visual-tests/pull/347">#347</a>
(<a href="https://github.com/codykaup"><code>@​codykaup</code></a>)</li>
</ul>
<h4>Authors: 2</h4>
<ul>
<li>Cody Kaup (<a
href="https://github.com/codykaup"><code>@​codykaup</code></a>)</li>
<li>Gert Hengeveld (<a
href="https://github.com/ghengeveld"><code>@​ghengeveld</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/chromaui/addon-visual-tests/blob/main/CHANGELOG.md"><code>@​chromatic-com/storybook</code>'s
changelog</a>.</em></p>
<blockquote>
<h1>v3.2.3 (Thu Dec 19 2024)</h1>
<h4>🐛 Bug Fix</h4>
<ul>
<li>Fix reading <code>status</code> of <code>undefined</code> in urql's
<code>didAuthError</code> handler <a
href="https://redirect.github.com/chromaui/addon-visual-tests/pull/349">#349</a>
(<a
href="https://github.com/ghengeveld"><code>@​ghengeveld</code></a>)</li>
<li>Add steps to link for local testing <a
href="https://redirect.github.com/chromaui/addon-visual-tests/pull/347">#347</a>
(<a href="https://github.com/codykaup"><code>@​codykaup</code></a>)</li>
</ul>
<h4>Authors: 2</h4>
<ul>
<li>Cody Kaup (<a
href="https://github.com/codykaup"><code>@​codykaup</code></a>)</li>
<li>Gert Hengeveld (<a
href="https://github.com/ghengeveld"><code>@​ghengeveld</code></a>)</li>
</ul>
<hr />
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="871413fd8a"><code>871413f</code></a>
Bump version to: 3.2.3 [skip ci]</li>
<li><a
href="a29f901536"><code>a29f901</code></a>
Update CHANGELOG.md [skip ci]</li>
<li><a
href="982f9cba43"><code>982f9cb</code></a>
Merge pull request <a
href="https://redirect.github.com/chromaui/addon-visual-tests/issues/349">#349</a>
from chromaui/fix-auth-error-handler</li>
<li><a
href="35f989a26b"><code>35f989a</code></a>
Request is optional on error object</li>
<li><a
href="ec0a952a47"><code>ec0a952</code></a>
Merge pull request <a
href="https://redirect.github.com/chromaui/addon-visual-tests/issues/347">#347</a>
from chromaui/cody/cap-2346-write-up-doc-on-how-to-se...</li>
<li><a
href="43ef127485"><code>43ef127</code></a>
Add steps to link for local testing</li>
<li>See full diff in <a
href="https://github.com/chromaui/addon-visual-tests/compare/v3.2.2...v3.2.3">compare
view</a></li>
</ul>
</details>
<br />

Updates `@storybook/test-runner` from 0.20.1 to 0.21.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/test-runner/releases"><code>@​storybook/test-runner</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v0.21.0</h2>
<h4>🚀 Enhancement</h4>
<ul>
<li>Release 0.21.0 <a
href="https://redirect.github.com/storybookjs/test-runner/pull/527">#527</a>
(<a href="https://github.com/kaelig"><code>@​kaelig</code></a> <a
href="https://github.com/guspan-tanadi"><code>@​guspan-tanadi</code></a>
<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
<li>Feature: Add --listTests flag from Jest <a
href="https://redirect.github.com/storybookjs/test-runner/pull/521">#521</a>
(<a href="https://github.com/kaelig"><code>@​kaelig</code></a>)</li>
</ul>
<h4>🐛 Bug Fix</h4>
<ul>
<li>style(README): highlight Markdown Note section <a
href="https://redirect.github.com/storybookjs/test-runner/pull/523">#523</a>
(<a
href="https://github.com/guspan-tanadi"><code>@​guspan-tanadi</code></a>)</li>
<li>Fix: Handle RSC errors <a
href="https://redirect.github.com/storybookjs/test-runner/pull/526">#526</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h4>Authors: 3</h4>
<ul>
<li>Guspan Tanadi (<a
href="https://github.com/guspan-tanadi"><code>@​guspan-tanadi</code></a>)</li>
<li>Kaelig Deloumeau-Prigent (<a
href="https://github.com/kaelig"><code>@​kaelig</code></a>)</li>
<li>Yann Braga (<a
href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h2>v0.21.0-next.1</h2>
<h4>🐛 Bug Fix</h4>
<ul>
<li>Fix: Handle RSC errors <a
href="https://redirect.github.com/storybookjs/test-runner/pull/526">#526</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h4>Authors: 1</h4>
<ul>
<li>Yann Braga (<a
href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h2>v0.21.0-next.0</h2>
<h4>🚀 Enhancement</h4>
<ul>
<li>Feature: Add --listTests flag from Jest <a
href="https://redirect.github.com/storybookjs/test-runner/pull/521">#521</a>
(<a href="https://github.com/kaelig"><code>@​kaelig</code></a>)</li>
</ul>
<h4>Authors: 1</h4>
<ul>
<li>Kaelig Deloumeau-Prigent (<a
href="https://github.com/kaelig"><code>@​kaelig</code></a>)</li>
</ul>
<h2>v0.20.2-next.0</h2>
<h4>🐛 Bug Fix</h4>
<ul>
<li>Fix postVisit hook issue <a
href="https://redirect.github.com/storybookjs/test-runner/pull/519">#519</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h4>Authors: 1</h4>
<ul>
<li>Yann Braga (<a
href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/test-runner/blob/v0.21.0/CHANGELOG.md"><code>@​storybook/test-runner</code>'s
changelog</a>.</em></p>
<blockquote>
<h1>v0.21.0 (Fri Dec 20 2024)</h1>
<h4>🚀 Enhancement</h4>
<ul>
<li>Release 0.21.0 <a
href="https://redirect.github.com/storybookjs/test-runner/pull/527">#527</a>
(<a href="https://github.com/kaelig"><code>@​kaelig</code></a> <a
href="https://github.com/guspan-tanadi"><code>@​guspan-tanadi</code></a>
<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
<li>Feature: Add --listTests flag from Jest <a
href="https://redirect.github.com/storybookjs/test-runner/pull/521">#521</a>
(<a href="https://github.com/kaelig"><code>@​kaelig</code></a>)</li>
</ul>
<h4>🐛 Bug Fix</h4>
<ul>
<li>style(README): highlight Markdown Note section <a
href="https://redirect.github.com/storybookjs/test-runner/pull/523">#523</a>
(<a
href="https://github.com/guspan-tanadi"><code>@​guspan-tanadi</code></a>)</li>
<li>Fix: Handle RSC errors <a
href="https://redirect.github.com/storybookjs/test-runner/pull/526">#526</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h4>Authors: 3</h4>
<ul>
<li>Guspan Tanadi (<a
href="https://github.com/guspan-tanadi"><code>@​guspan-tanadi</code></a>)</li>
<li>Kaelig Deloumeau-Prigent (<a
href="https://github.com/kaelig"><code>@​kaelig</code></a>)</li>
<li>Yann Braga (<a
href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<hr />
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="301bdaed74"><code>301bdae</code></a>
Bump version to: 0.21.0 [skip ci]</li>
<li><a
href="e51456ee77"><code>e51456e</code></a>
Update CHANGELOG.md [skip ci]</li>
<li><a
href="f09c9258ac"><code>f09c925</code></a>
Merge pull request <a
href="https://redirect.github.com/storybookjs/test-runner/issues/527">#527</a>
from storybookjs/release/v0.21.0</li>
<li><a
href="5cd46e3655"><code>5cd46e3</code></a>
Merge branch 'main' into release/v0.21.0</li>
<li><a
href="30d892498f"><code>30d8924</code></a>
Merge pull request <a
href="https://redirect.github.com/storybookjs/test-runner/issues/523">#523</a>
from guspan-tanadi/notehighlight</li>
<li><a
href="9cb0ec2308"><code>9cb0ec2</code></a>
Merge pull request <a
href="https://redirect.github.com/storybookjs/test-runner/issues/526">#526</a>
from storybookjs/fix-rsc-error-handling</li>
<li><a
href="b21c854545"><code>b21c854</code></a>
Merge pull request <a
href="https://redirect.github.com/storybookjs/test-runner/issues/521">#521</a>
from kaelig/add-listTests</li>
<li><a
href="b7a6bca7ce"><code>b7a6bca</code></a>
handle RSC errors</li>
<li><a
href="36573a00b7"><code>36573a0</code></a>
style(README): highlight Markdown Note section</li>
<li><a
href="740607eb10"><code>740607e</code></a>
Add listTests flag from Jest</li>
<li>See full diff in <a
href="https://github.com/storybookjs/test-runner/compare/v0.20.1...v0.21.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `concurrently` from 9.1.0 to 9.1.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/open-cli-tools/concurrently/releases">concurrently's
releases</a>.</em></p>
<blockquote>
<h2>v9.1.1</h2>
<h2>What's Changed</h2>
<ul>
<li>fix: support Deno's JSON with comments configuration by <a
href="https://github.com/mahtaran"><code>@​mahtaran</code></a> in <a
href="https://redirect.github.com/open-cli-tools/concurrently/pull/523">open-cli-tools/concurrently#523</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/open-cli-tools/concurrently/compare/v9.1.0...v9.1.1">https://github.com/open-cli-tools/concurrently/compare/v9.1.0...v9.1.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="6cafc606a3"><code>6cafc60</code></a>
9.1.1</li>
<li><a
href="80fceda02e"><code>80fceda</code></a>
fix: support Deno's JSON with comments (<a
href="https://redirect.github.com/open-cli-tools/concurrently/issues/523">#523</a>)</li>
<li><a
href="8d3f9761bf"><code>8d3f976</code></a>
docs: fix inconsistencies in passthrough args page</li>
<li>See full diff in <a
href="https://github.com/open-cli-tools/concurrently/compare/v9.1.0...v9.1.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `eslint-config-next` from 15.1.0 to 15.1.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vercel/next.js/releases">eslint-config-next's
releases</a>.</em></p>
<blockquote>
<h2>v15.1.3</h2>
<blockquote>
<p>[!NOTE]<br />
This release is backporting bug fixes. It does <strong>not</strong>
include all pending features/changes on canary.</p>
</blockquote>
<h3>Core Changes</h3>
<ul>
<li>Retry manifest file loading only in dev mode: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/73900">#73900</a></li>
<li>Use shared worker for lint &amp; typecheck steps: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/74154">#74154</a></li>
</ul>
<h3>Credits</h3>
<p>Huge thanks to <a
href="https://github.com/unstubbable"><code>@​unstubbable</code></a> and
<a href="https://github.com/ztanner"><code>@​ztanner</code></a> for
helping!</p>
<h2>v15.1.2</h2>
<blockquote>
<p>[!NOTE]<br />
This release is backporting bug fixes. It does <strong>not</strong>
include all pending features/changes on canary.</p>
</blockquote>
<h3>Core Changes</h3>
<ul>
<li>Update React from 7283a213-20241206 to 65e06cb7-20241218: <a
href="https://redirect.github.com/vercel/next.js/pull/74117">vercel/next.js#74117</a></li>
</ul>
<h3>Credits</h3>
<p>Huge thanks to <a
href="https://github.com/ztanner"><code>@​ztanner</code></a> for
helping!</p>
<h2>v15.1.1</h2>
<blockquote>
<p>[!NOTE]<br />
This release is backporting bug fixes. It does <strong>not</strong>
include all pending features/changes on canary.</p>
</blockquote>
<h3>Core Changes</h3>
<ul>
<li>fix(turbo): sassOptions silenceDeprecations was not overwritten with
user options: <a
href="https://redirect.github.com/vercel/next.js/pull/73937">vercel/next.js#73937</a></li>
<li>refactor collectAppPageSegments: <a
href="https://redirect.github.com/vercel/next.js/pull/73908">vercel/next.js#73908</a></li>
</ul>
<h3>Credits</h3>
<p>Huge thanks to <a
href="https://github.com/devjiwonchoi"><code>@​devjiwonchoi</code></a>
and <a href="https://github.com/ztanner"><code>@​ztanner</code></a> for
helping!</p>
<h2>v15.1.1-canary.23</h2>
<h3>Misc Changes</h3>
<ul>
<li>docs: remove catch-all for opengraph-image: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/74338">#74338</a></li>
</ul>
<h3>Credits</h3>
<p>Huge thanks to <a
href="https://github.com/leerob"><code>@​leerob</code></a> for
helping!</p>
<h2>v15.1.1-canary.22</h2>
<h3>Misc Changes</h3>
<ul>
<li>Fix typo in generateViewport docs: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/74288">#74288</a></li>
</ul>
<h3>Credits</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4cbaaa118d"><code>4cbaaa1</code></a>
v15.1.3</li>
<li><a
href="df392a1b97"><code>df392a1</code></a>
v15.1.2</li>
<li><a
href="4384c6834a"><code>4384c68</code></a>
v15.1.1</li>
<li>See full diff in <a
href="https://github.com/vercel/next.js/commits/v15.1.3/packages/eslint-config-next">compare
view</a></li>
</ul>
</details>
<br />

Updates `tailwindcss` from 3.4.16 to 3.4.17
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tailwindlabs/tailwindcss/releases">tailwindcss's
releases</a>.</em></p>
<blockquote>
<h2>v3.4.17</h2>
<h3>Fixed</h3>
<ul>
<li>Work around Node v22.12+ issue (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/15421">#15421</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/tailwindlabs/tailwindcss/blob/v3.4.17/CHANGELOG.md">tailwindcss's
changelog</a>.</em></p>
<blockquote>
<h2>[3.4.17] - 2024-12-17</h2>
<h3>Fixed</h3>
<ul>
<li>Work around Node v22.12+ issue (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/15421">#15421</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4f9f603e12"><code>4f9f603</code></a>
Fix error</li>
<li><a
href="02faa1529e"><code>02faa15</code></a>
v3.4.17</li>
<li><a
href="e268b2aa96"><code>e268b2a</code></a>
Update changelog</li>
<li><a
href="0a836f76bb"><code>0a836f7</code></a>
Work around issue with Node 22 and Jiti (<a
href="https://redirect.github.com/tailwindlabs/tailwindcss/issues/15421">#15421</a>)</li>
<li>See full diff in <a
href="https://github.com/tailwindlabs/tailwindcss/compare/v3.4.16...v3.4.17">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-02 14:46:55 +00:00
Bently
858dc7adc3 feat(blocks): Add github create repo block (#9169)
This adds a new block, Github Create Repository Block
(GithubCreateRepositoryBlock) which lets you create a new github repo.

i have used this to make these repos so i know it works 

https://github.com/Bentlybro/discord-whisper-transcriber
https://github.com/Bentlybro/PyAGI-Framework
https://github.com/Bentlybro/FlaskNotes


![image](https://github.com/user-attachments/assets/17127839-7dc9-4b8a-bc60-8b55cb02fde9)
2025-01-02 14:46:14 +00:00
Bently
745aae4aec feat(blocks): Add github create file block (#9144)
This adds 2 blocks, a Github Create File Block (GithubCreateFileBlock)
and Github Update File Block (GithubUpdateFileBlock)

These allow you to create files and update files on github, i used it to
make all the files that are on my repo here
https://github.com/Bentlybro/AGPT-Testing/commits/main/


![image](https://github.com/user-attachments/assets/ba97b30f-fd32-470d-a5ff-90042f0d9b75)

![image](https://github.com/user-attachments/assets/11d0ecca-f597-4b2b-9df4-cd81fe5a3ca9)

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
2025-01-02 09:23:55 +00:00
SwiftyOS
5959c0d303 Revert "remove marketplace"
This reverts commit 480c4773bf.
2025-01-02 10:28:29 +01:00
SwiftyOS
480c4773bf remove marketplace 2025-01-02 10:28:15 +01:00
Zamil Majdy
1ce1918967 fix(platform): Fields with default value are not set to advanced by default (#9128)
https://github.com/Significant-Gravitas/AutoGPT/issues/8739 causes input
fields that are supposed to be an advanced field end up being a
mandatory field:


![image](https://github.com/user-attachments/assets/1cb41a79-fe85-4012-91b8-861bd5f9a0ca)

*See the retry count field here.

### Changes 🏗️

Set the `advanced` field on each input field, and set the default value
using this logic:
* If it has a default value, set it to True.
* otherwise, False.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-12-31 16:19:23 +00:00
Zamil Majdy
314b04eaba feat(backend): Make scheduler DB connection pool configurable & prevent connection overflow (#9149)
max_overflow parameter description:
```
    :param max_overflow=10: the number of connections to allow in
        connection pool "overflow", that is connections that can be
        opened above and beyond the pool_size setting, which defaults
        to five. this is only used with :class:`~sqlalchemy.pool.QueuePool`.
```

### Changes 🏗️

* Prevent additional db connections from being created in addition to
the pool size for the scheduler.
* Make the pool size configurable.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-12-31 16:19:15 +00:00
Zamil Majdy
26214e1b2c fix(backend): Prevent HTTP requests access to internal IPV6 addresses for Agent Blocks (#9157)
Addresses:
https://github.com/Significant-Gravitas/AutoGPT/security/advisories/GHSA-4c8v-hwxc-2356

Currently, no IPv6 is used by default on this system. However, the lack
of block HTTP access prevention to internal systems with IPv6 could be a
potential SSRF.

### Changes 🏗️

Prevent internal IPv6 address access on HTTP request blocks.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-31 16:18:57 +00:00
Zamil Majdy
10fc7d2114 fix(backend): Remove croniter (#9130)
Croniter is unused, and it will be deprecated soon.

### Changes 🏗️

Remove croniter.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-12-31 15:24:29 +00:00
Zamil Majdy
ea01c8038b fix(frontend): Fix broken block UI layout (#9132)
https://github.com/Significant-Gravitas/AutoGPT/pull/9097/files#diff-ef176e50a6a65af5df2182626ea868ce77b76de447c816fb4f80fb4d376c3049R7-R41
introduced styling changes to block UI layout which causes the block
layout broken:


![image](https://github.com/user-attachments/assets/0d3d6e61-1acc-440c-9c7b-8cc473b457ea)

This PR minimally reverts the styling change.

### Changes 🏗️

Minimal CSS revert to make the block UI layout back to normal.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-31 09:13:47 +01:00
Zamil Majdy
a646e60d2f fix(backend): Added locking status check before releasing to avoid releasing timing out lock (#9135)
Exception:
```
nid:ce829f66-14b0-4bd3-b748-791e46666cb6|-] Failed node execution ce829f66-14b0-4bd3-b748-791e46666cb6: Cannot release an unlocked lock {}\u001b[0m",
Traceback (most recent call last):\n  File \"/app/autogpt_platform/backend/backend/integrations/creds_manager.py\", line 145, in _locked\n    yield\n  File \"/app/autogpt_platform/backend/backend/integrations/creds_manager.py\", line 115, in acquire\n    lock = self._acquire_lock(user_id, credentials_id)",
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^",
  File \"/app/autogpt_platform/backend/backend/integrations/creds_manager.py\", line 139, in _acquire_lock",
    return self._locks.acquire(key)",
           ^^^^^^^^^^^^^^^^^^^^^^^^",
  File \"/app/autogpt_platform/autogpt_libs/autogpt_libs/utils/synchronize.py\", line 44, in acquire",
    lock.acquire()",
  File \"/usr/local/lib/python3.11/site-packages/redis/lock.py\", line 218, in acquire",
    mod_time.sleep(sleep)",
  File \"/app/autogpt_platform/backend/backend/executor/manager.py\", line 471, in <lambda>",
    signal.SIGTERM, lambda _, __: cls.on_node_executor_sigterm()",
                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^",
  File \"/app/autogpt_platform/backend/backend/executor/manager.py\", line 498, in on_node_executor_sigterm",
    sys.exit(0)",
SystemExit: 0",
During handling of the above exception, another exception occurred:",
Traceback (most recent call last):\n  File \"/app/autogpt_platform/backend/backend/executor/manager.py\", line 539, in _on_node_execution\n    for execution in execute_node(\n  File \"/app/autogpt_platform/backend/backend/executor/manager.py\", line 175, in execute_node\n    credentials, creds_lock = creds_manager.acquire(user_id, credentials_meta.id)",
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^",
  File \"/app/autogpt_platform/backend/backend/integrations/creds_manager.py\", line 114, in acquire",
    with self._locked(user_id, credentials_id, \"!time_sensitive\"):",
  File \"/usr/local/lib/python3.11/contextlib.py\", line 158, in __exit__",
    self.gen.throw(typ, value, traceback)",
  File \"/app/autogpt_platform/backend/backend/integrations/creds_manager.py\", line 147, in _locked",
    lock.release()",
  File \"/usr/local/lib/python3.11/site-packages/redis/lock.py\", line 254, in release",
    raise LockError(\"Cannot release an unlocked lock\", lock_name=self.name)",
redis.exceptions.LockError: Cannot release an unlocked lock",
```

### Changes 🏗️

```
try:
   lock.acquire()
   ...
finally:
   lock.release()
```

pattern can cause an error where the lock is already released due to
timeout.

The scope of the change is to manually check the lock status before
releasing.


### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-31 08:48:04 +01:00
Krzysztof Czerwinski
15af2f410b refactor(frontend): Auth pages update (#9124)
There are UX and design issues with current auth pages; `login`,
`signup` and `reset_password` (including change password).

### Changes 🏗️


![auth](https://github.com/user-attachments/assets/56dfbae3-5c12-4324-a29a-846d091d9501)
*Missing `s` on the login's password error is fixed.

Important changes in bold.

#### All auth pages
- **Split `/login` into `/signup`**
- UI Redesign that adheres to Figma designs
- General code cleanup and improvements
- Fix feedback: it's now shown when needed and clear (e.g. "~~String~~
Password must be...")
- All action functions use `Sentry.withServerActionInstrumentation`
- `PasswordInput` "eye button" shows password only when mouse button is
hold and doesn't capture tab

#### Login page
- **Removed agree to terms checkbox** (it's only on signup now)
- Move provider login function to `actions.ts`

#### Signup page
- **Requires to type password twice**
- Shows waitlist information on *any* database error

#### Reset password page
- **Password update requires to type password twice**
- **When request to send email is processed then the feedback is:
Password reset email sent if user exists. Please check your email.**
- Email sent feedback is black, error is red
- Move send email and update password functions to `actions.ts`
- Disable button when email is sent

#### Other
- Update zod schema objects and move them to `types/auth`
- Move `components/PasswordInput.tsx` to `/components/auth`
- Make common UI elements separate components in `components/auth`
- Update `yarn.lock` (supabase packages)
- Remove redundant letter in `client.ts`
- Don't log error when user auth is missing in `useSupabase`; user is
simply not logged in

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
  - [x] Form feedback:
    - [x] Login works
    - [x] Signup works
    - [x] Reset email works
    - [x] Change password works
  - [x] Login works
  - [x] Signup works
  - [x] Reset email is sent
  - [x] Reset email logs user in and redirects to `/reset_password`
  - [x] Change password works
  - [x] Logout works
  - [x] All links across auth pages work

Note: OAuth login providers are disabled and so untested.

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-12-30 18:23:02 +00:00
Swifty
763284e3a3 fix(platform): minor fixes (#9147)
### Changes 🏗️

- Redirect to the marketplace.
- Ensure that the store agent uses agent graph data instead of store
listing data.
- Don’t export agent input values.
- URL sanitization: We can’t open an agent if it has a colon in its
name.
- Show all top agents.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-12-30 16:04:35 +01:00
Ethan Lee
10865cd736 [Platform] Creator profile description no longer ignores new lines (#9114)
Fixes #9086

### Changes 🏗️

Added styling to the div that encapsulates the description that takes
white space into account

### Checklist 📋

#### Code changes:
- [ x] I have clearly listed my changes in the PR description
- [ x] I have made a test plan
- [ x] I have tested my changes according to the test plan:

<summary>The test plan was to just make changes to profile bio and check
the creator page to see if new lines were generated properly</summary>
  
  Below is what the new change looks like:
  
  
<img width="882" alt="Screenshot 2024-12-20 at 12 21 09 pm"
src="https://github.com/user-attachments/assets/6d396ec7-96f8-4c9c-9d1f-a5bd75c6dc86"
/>

becomes...

<img width="468" alt="Screenshot 2024-12-20 at 12 21 15 pm"
src="https://github.com/user-attachments/assets/9dbe256b-5800-4f17-91c2-4ecffcffbc0b"
/>
2024-12-21 12:03:49 +00:00
Swifty
1663d4273b fix(store): username not lowered when its updated (#9112)
fix(store): username not lowered when its updated breaking access to any
of there users pages in the store
2024-12-20 16:43:57 +00:00
Swifty
658493559d fix(store): Fixing add agent to library (#9098)
Do a deep copy of the store agent so the new agent is under the current
users id

⚠️  Hacky fix!!
2024-12-20 15:04:47 +01:00
Abhimanyu Yadav
6025506cae feat(store) : add new model and prompt in image generation (#9099)
Update Marketplace Image generation Prompt and Model  

**Changes:**  
- Updated the image generation prompt for Marketplace to better
highlight agent functionality:
  ```
Create a visually engaging app store thumbnail for the AI agent that
highlights what it does in a clear and captivating way:
  - **Name**: {agent.name}  
  - **Description**: {agent.description}  
  Focus on showcasing its core functionality with an appealing design.
  ```  
- Changed the model to `black-forest-labs/flux-1.1-pro` for improved
results.
2024-12-20 15:02:44 +01:00
Aarushi
54f8d3b4dd blocks(exa): Add more Exa blocks (#9097)
Revamp the Exa search block and add two more for Content and Similarity
search.

### Changes 🏗️

- Updated the exa search block input names to be snakecase not camel
case
- Added Advanced to non required fields
- Pulled Content settings into helpers for reuse across blocks
- Updated customnode.css to handle long inputs, especially in the case
of the date input

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...
2024-12-20 14:57:08 +01:00
Swifty
a8339d0748 fix(store): Sanitize username and Agent Name in URLs (#9096)
[fix(store): Sanitize username and Agent Name in
URLs](28b86d4a1f)

---------

Co-authored-by: abhi1992002 <abhimanyu1992002@gmail.com>
2024-12-20 14:14:24 +01:00
Abhimanyu Yadav
4cc8616c02 feat(store) : Small UI changes on marketplace (#9094)
Add small ui changes on marketplace 

Fix
- #9035
- #9034 
- #9033
- #9031 
- #9029
- #9028
- #9027 
- #9026 
- #9025 
- #9021 
- #9020 
- #9004 
- #9003 
- #9002 
- #9001 
- #8999  
- #8998 
- #8997 
- #8996 
- #8995 
- #8994 
- #8993
- #8991   
- #8990 
- #8989

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-12-20 13:01:15 +01:00
Swifty
44722c4b39 fix(store): remove debug logging of requests (#9093)
[fix(store): remove debug logging of
requests](bb13c864f0)

Remove this stuff:

![Screenshot 2024-12-20 at 09 50
26](https://github.com/user-attachments/assets/b178305b-31eb-4571-8762-6ac8f115eb17)
2024-12-20 10:26:31 +01:00
SwiftyOS
e33864f5ed fix(store): fmt 2024-12-20 09:42:01 +01:00
Swifty
d3e1319eb3 fix(store): Increase the margin below featured section (#9092)
I've increased the margin,  to the requested 60px 

Before:

<img width="1522" alt="91e02ace-920a-4e69-9a12-2c55d9a63ff0"
src="https://github.com/user-attachments/assets/d1163b04-7e80-4ac9-81d5-98f3a7f8a8b9"
/>

Requested:

![Screenshot 2024-12-20 at 09 33
28](https://github.com/user-attachments/assets/f06a2d63-ea4a-435b-b8dd-c8f90ef4bad4)
2024-12-20 09:41:19 +01:00
Nicholas Tindle
ddac69e0f1 feat: swap context menu for dropdown to fix three dots doing nothing (#9091)
<!-- Clearly explain the need for these changes: -->

### Changes 🏗️

swaps context menu for dropdown menu

<!-- Concisely describe all of the changes made in this pull request:
-->

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-20 09:16:53 +01:00
Aarushi
1fb9c8c37f fix(store): Display error toast messaging on creator popup (#9078)
When the agent submission was filled out incorrectly, there was no error
pop up. It just did nothing.

### Changes 🏗️

Created an array to track which fields are missing
If this array is not empty, a toast is displayed to show which fields
are missing.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-12-19 22:19:17 +00:00
Aarushi
71310a1b49 fix(frontend): Make clickable area bigger (#9080)
The clickable area on the navbar was very small and the icons were not
clickable

### Changes 🏗️

Wrap the icons as well in Link

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-19 21:51:49 +00:00
Swifty
8e634d7bc3 feat(store): Generate AI images for store submissions (#9090)
Allow generating ai images for store submissions
2024-12-19 22:37:33 +01:00
Swifty
d028f5bd39 fix(store): "Publish an Agent" flow has a missing default image (#9089)
Introduced when making sure initialData was inferred from the agent
object. This has been fixed now
2024-12-19 18:22:04 +00:00
Swifty
ca91754bc6 fix(store): Make username case insensitive (#9088)
Username was case sensitive, made username case insensitive
2024-12-19 18:13:28 +00:00
Krzysztof Czerwinski
8ca80e05a9 fix(frontend): Disable agent save button when saving or running (#9077)
Now agent can be saved multiple times.

### Changes 🏗️

Disable agent save button when saving or running.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-19 13:42:04 +00:00
Bently
4f15da99f9 feat(frontend) Remove "credentials" from export & import of agents (#9081)
### Changes 🏗️

This is for [Credential ID Exports into Agent JSON #8919
](https://github.com/Significant-Gravitas/AutoGPT/issues/8919)

I have added a new function ``removeCredentials`` into
[``utils.ts``](https://github.com/Significant-Gravitas/AutoGPT/compare/dev...bently/open-2153-credential-id-exports-into-agent-json?expand=1#diff-db26a69e6fb7546dc621634f3c8ee6efa3639e72e02837f753af18b2fdddf7be)
which will go through and look for any "credentials" that are in the
JSON during a agent export, this will then remove them and let the user
download the file.

I have also added the same function to the importing of agents for old
agents that where exported that still contain the credentials, this
means that old agents can be imported with out breaking/causing issues.

When I say it looks for credentials I dont mean actual credentials like
api keys them self, in the JSON that is exported it contains the
following, this needs removing
```
"credentials": {
  "id": "6767232a-3407-4c34-85a3-6887d4969f0c",
  "title": "Anthropic Toran",
  "provider": "anthropic",
  "type": "api_key"
},
```

If there is a better way to go about this let me know!
2024-12-19 13:20:35 +00:00
Swifty
54dddbf488 feat(store): Auto-populate the agent submission form (#9074)
### Changes 🏗️

- added description to my agents response
- auto populate the publish agent info form


https://github.com/user-attachments/assets/68cd5d33-0f67-4875-80e9-5a7115b847e7
2024-12-19 11:23:31 +00:00
Bently
356aee1b72 fix(store): Marketplace - "Integrations" link in Settings is a 404 (#9073)
I copied the original integrations page into
``/store/(users)/integrations`` and did some slight tweaks and I updated
the url path from ``/integrations`` to ``/store/integrations`` in
``Sidebar.tsx`` so the button to the integrations page works now

This also replaces
https://github.com/Significant-Gravitas/AutoGPT/pull/9072



https://github.com/user-attachments/assets/e1ff6fd6-e47a-49b6-82d5-e6fc55eb07b5
2024-12-19 11:18:56 +00:00
Swifty
ed7c9378eb fix(store): Marketplace - Navbar should say "Marketplace" rather than "Agent Store" (#9069)
Fixes #9067 

### Changes 🏗️

- Renamed elements from Agent Store to Marketplace
2024-12-19 10:20:02 +00:00
Swifty
aaf4ee524d fix(store): Youtube link not showing video on agent page (#9068)
Fixes #9054 

## Changes

- add the video link to the start of the images array
2024-12-19 11:19:37 +01:00
SwiftyOS
234e4a35c4 fix(store): Profile updating is handled in an insecure and potentially broken way 2024-12-19 10:47:10 +01:00
Swifty
4646de463a fix(store): Uploading to store selects two agents (#9065)
Fixes #9059 

### Changes 🏗️

- Changed agent selection from keying on agent name to keying on agent
id
2024-12-19 08:51:01 +00:00
Bently
b1d869aad2 feat(frontend): Disable theme toggle (#9062)
### Changes 🏗️

This disables the theme toggle for now, I did not remove it incase we
plan to properly add it back in the future
2024-12-18 21:45:03 +00:00
Nicholas Tindle
bb8a37911c feat: default for is featured (#9061)
<!-- Clearly explain the need for these changes: -->
defaults is_featured to false
2024-12-18 20:17:04 +00:00
Nicholas Tindle
746f3d4e41 feat(platform): Support manually setting up webhooks (#8750)
- Resolves #8748

The webhooks system as is works really well for full blown enterprise
webhooks managed via a UI. It does not work for more "chill guy" webhook
tools that just send notifications sometimes.

## Changes 🏗️

- feat(blocks): Add Compass transcription trigger block

- feat(backend): Amend webhooks system to support manual-set-up webhooks
   - Make event filter input optional on webhook-triggered nodes
   - Make credentials optional on webhook-triggered nodes
   - Add code path to re-use existing manual webhook on graph update
   - Add `ManualWebhookManagerBase`

- feat(frontend): Add UI to pass webhook URL to user on manual-set-up
webhook blocks

![image](https://github.com/user-attachments/assets/1c35f161-7fe4-4916-8506-5ca9a838f398)

- fix(backend): Strip webhook info from node objects for graph export

- refactor(backend): Rename `backend.integrations.webhooks.base` to
`._base`

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-12-18 19:24:34 +00:00
SwiftyOS
89a9354acb fix(store): isFeatured used instead of is_featured 2024-12-18 17:06:09 +01:00
Swifty
aa883d8465 feat(platform): updated schema to allow featuring of specific creators (#9048)
updated schema to allow featuring of specific creators
2024-12-18 13:32:03 +00:00
Bently
e8dd0a297e feat(frontend): Updates to navbar (#9047)
### Changes 🏗️

Updates to navbar and button sizes, added autogpt icon

The navbar now matches the design and resolves [Markeplace - Reduce the
size of the top menu bar, change the font size & the height of the bar
to 64px
#8953](https://github.com/Significant-Gravitas/AutoGPT/issues/8953)


![image](https://github.com/user-attachments/assets/d8b7cfdd-6e57-4f71-bae5-c2b51bfa63f3)

![image](https://github.com/user-attachments/assets/b908a28f-c325-44df-80e4-84f6eca2ddd5)

![image](https://github.com/user-attachments/assets/b4324590-bf27-4fd5-97e2-c7e6047dda15)
2024-12-18 13:28:00 +00:00
Swifty
9d93704264 feat(platform): Add basic library functionality (#9043)
Add functionality to allow users to add agents to their library from the
store page.
2024-12-18 14:01:48 +01:00
Krzysztof Czerwinski
6ec2bacb72 refactor(frontend): Update Supabase and backend API management (#9036)
Currently there are random issues (logout, auth desync) and
inconveniences with how Supabase and backend API works.
Resolves:
- https://github.com/Significant-Gravitas/AutoGPT/issues/9006
- https://github.com/Significant-Gravitas/AutoGPT/issues/8912

### Changes 🏗️

This PR streamlines how the Supabase and backend API is used to fix
current errors with auth, remove unnecessary code and make it easier to
use Supabase and backend API.

- Add `getServerSupabase` for server side that returns `SupabaseClient`.
- Add `Spinner` component that is used for loading animation.
- Remove redundant `useUser`, user is fetched in `useSupabase` already.
- Replace most Supabase `create*Client` to `getSupabaseServer` and
`useSupabase`.
- Remove redundant `AutoGPTServerAPI` class and rename
`BaseAutoGPTServerAPI` to `BackendAPI` and use it instead.
- Remove `SupabaseProvider` context; supabase caches internally what's
possible already.
- Move `useSupabase` hook to its own file and update it.

### Helpful table
| Next.js usage | Server | Client |
|---|---|---|
| API | `new BackendAPI();` | `new BackendAPI();`* or `useBackendAPI()`
|
| Supabase | `getServerSupabase();` | `useSupabase();` |
| user, user.role | `getServerUser();`** | `useSupabase();` |

\* `BackendAPI` automatically chooses correct Supabase client, so while
it's recommended to use `useBackendAPI()`, it's ok to use `new
BackendAPI();` in client components and even memoize it: `useMemo(() =>
new BackendAPI(), [])`.

** The reason user isn't returned in `getServerSupabase` is because it
forces async fetch but creating supabase doesn't, so it'd force
`getServerSupabase` to be async or return `{ supabase: SupabaseClient,
user: Promise<User> | null }`. For the same reason `useSupabase`
provides access to `supabase` immediately but `user` *may* be loading,
so there's `isUserLoading` provided as well.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-18 09:55:23 +00:00
Bently
95bd268de8 feat(frontend): search results updates (#9024)
This PR covers all of these issues below related to the search bar
section

- [Marketplace - search results - change margins between chips and
section title
#8980](https://github.com/Significant-Gravitas/AutoGPT/issues/8980)
- [Marketplace - search results - #8981
](https://github.com/Significant-Gravitas/AutoGPT/issues/8981)
- [Marketplace - search results - search box reduce height to 60px
#8977](https://github.com/Significant-Gravitas/AutoGPT/issues/8977)
- [Marketplace - search results - increase margins between filter chips
and search box
#8978](https://github.com/Significant-Gravitas/AutoGPT/issues/8978)
- [Marketplace - search results - change line height
#8979](https://github.com/Significant-Gravitas/AutoGPT/issues/8979)

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-18 09:25:31 +01:00
Krzysztof Czerwinski
0e10e62bfa feat(frontend): Reset password page (#8987)
Currently, users have no way to reset their password.

### Changes 🏗️

Add `reset_password` page that displays either form to send reset
password email or lets logged in user change their password. Login page
now shows clickable "Forgot your password?" link. After updating
password user is logged out and redirected to login page.

Note: Link provided in the email just logs user in and redirects to
reset password form but password update isn't enforced.

<img width="279" alt="Screenshot 2024-12-14 at 1 28 39 PM"
src="https://github.com/user-attachments/assets/c7ada10c-74e5-4be3-8033-0912eb5b38f2"
/>

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
  - [x] Email is sent
- [x] Link in the email logs user in and redirects to reset password
form
  - [x] Reset password form works

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-17 18:30:18 +00:00
SwiftyOS
4d19bcdc5e Merge branch 'dev' of github.com:Significant-Gravitas/AutoGPT into dev 2024-12-17 14:19:53 +01:00
SwiftyOS
e27d7a2efb revert upgrade of crypto lib 2024-12-17 14:19:41 +01:00
Reinier van der Leer
a386b3ac90 fix(forge): Update browser extension download URL (#9032)
- Resolves #9030
2024-12-17 11:26:39 +00:00
SwiftyOS
41be88f0bf Update dependencies 2024-12-17 11:07:13 +01:00
dependabot[bot]
53eda98737 build(deps-dev): bump the development-dependencies group across 1 directory with 3 updates (#9017)
Bumps the development-dependencies group with 3 updates in the
/autogpt_platform/frontend directory:
[@storybook/test-runner](https://github.com/storybookjs/test-runner),
[eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next)
and [msw](https://github.com/mswjs/msw).

Updates `@storybook/test-runner` from 0.19.1 to 0.20.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/test-runner/releases"><code>@​storybook/test-runner</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v0.20.1</h2>
<h4>🐛 Bug Fix</h4>
<ul>
<li>Release 0.20.1 <a
href="https://redirect.github.com/storybookjs/test-runner/pull/520">#520</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
<li>Fix postVisit hook issue <a
href="https://redirect.github.com/storybookjs/test-runner/pull/519">#519</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h4>Authors: 1</h4>
<ul>
<li>Yann Braga (<a
href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h2>v0.20.0</h2>
<h3>Release Notes</h3>
<h4>Refactor: Align with Storybook 8.2 core package layout</h4>
<p>This is a structural change that shouldn't really affect you. As long
as you have the <code>storybook</code> dependency in your app (which you
should), you're good! This change makes it so that the test-runner
deduplicates Storybook dependencies, and therefore, slims down your
node_modules size.</p>
<h4>Feature: Run postVisit on failures (<a
href="https://redirect.github.com/storybookjs/test-runner/pull/494">#494</a>)</h4>
<p>The test-runner's postVisit hook now runs even if there are failures.
This allows you to, for instance, take snapshots on component failures.
You can check whether the test has failed via the
<code>hasFailure</code> property in the context passed to the hook:</p>
<pre lang="ts"><code>const config: TestRunnerConfig = {
  async postVisit(_page, context) {
    if(context.hasFailure) {
      console.log('problems!')
      // do a snapshot, write a log, or anything you like
    }
  },
}
</code></pre>
<hr />
<h4>🚀 Enhancement</h4>
<ul>
<li>Feature: Run postVisit on failures <a
href="https://redirect.github.com/storybookjs/test-runner/pull/494">#494</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
<li>Align with Storybook 8.2 core package layout <a
href="https://redirect.github.com/storybookjs/test-runner/pull/512">#512</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h4>📝 Documentation</h4>
<ul>
<li>Fix tags docs <a
href="https://redirect.github.com/storybookjs/test-runner/pull/497">#497</a>
(<a href="https://github.com/shilman"><code>@​shilman</code></a> <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h4>Authors: 6</h4>
<ul>
<li>Michael Shilman (<a
href="https://github.com/shilman"><code>@​shilman</code></a>)</li>
<li>Yann Braga (<a
href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h2>v0.20.0-next.2</h2>
<h3>Release Notes</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/test-runner/blob/v0.20.1/CHANGELOG.md"><code>@​storybook/test-runner</code>'s
changelog</a>.</em></p>
<blockquote>
<h1>v0.20.1 (Mon Dec 02 2024)</h1>
<h4>🐛 Bug Fix</h4>
<ul>
<li>Release 0.20.1 <a
href="https://redirect.github.com/storybookjs/test-runner/pull/520">#520</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
<li>Fix postVisit hook issue <a
href="https://redirect.github.com/storybookjs/test-runner/pull/519">#519</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h4>Authors: 1</h4>
<ul>
<li>Yann Braga (<a
href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<hr />
<h1>v0.20.0 (Thu Nov 28 2024)</h1>
<h3>Release Notes</h3>
<h4>Feature: Run postVisit on failures (<a
href="https://redirect.github.com/storybookjs/test-runner/pull/494">#494</a>)</h4>
<p>The test-runner's postVisit hook now runs even if there are failures.
This allows you to, for instance, take snapshots on component failures.
You can check whether the test has failed via the
<code>hasFailure</code> property in the context passed to the hook:</p>
<pre lang="ts"><code>const config: TestRunnerConfig = {
  async postVisit(_page, context) {
    if(context.hasFailure) {
      console.log('problems!')
      // do a snapshot, write a log, or anything you like
    }
  },
}
</code></pre>
<hr />
<h4>🚀 Enhancement</h4>
<ul>
<li>Release 0.20.0 <a
href="https://redirect.github.com/storybookjs/test-runner/pull/518">#518</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a> <a
href="https://github.com/shilman"><code>@​shilman</code></a>)</li>
<li>Feature: Run postVisit on failures <a
href="https://redirect.github.com/storybookjs/test-runner/pull/494">#494</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
<li>Release 0.20.0 <a
href="https://redirect.github.com/storybookjs/test-runner/pull/514">#514</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a> <a
href="mailto:runner@fv-az773-358.an51pne1gm2ejjnmkprpigk40g.dx.internal.cloudapp.net">runner@fv-az773-358.an51pne1gm2ejjnmkprpigk40g.dx.internal.cloudapp.net</a>)</li>
<li>Align with Storybook 8.2 core package layout <a
href="https://redirect.github.com/storybookjs/test-runner/pull/512">#512</a>
(<a href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h4>📝 Documentation</h4>
<ul>
<li>Fix tags docs <a
href="https://redirect.github.com/storybookjs/test-runner/pull/497">#497</a>
(<a href="https://github.com/shilman"><code>@​shilman</code></a> <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>)</li>
</ul>
<h4>Authors: 6</h4>
<ul>
<li>Michael Shilman (<a
href="https://github.com/shilman"><code>@​shilman</code></a>)</li>
<li>shilman (<a
href="mailto:runner@fv-az1567-4.ivwpl3vsblrubjity54i0equac.phxx.internal.cloudapp.net">runner@fv-az1567-4.ivwpl3vsblrubjity54i0equac.phxx.internal.cloudapp.net</a>)</li>
<li>shilman (<a
href="mailto:runner@fv-az2031-358.rag0t2s20xiu3oejmeweyzhkrf.bx.internal.cloudapp.net">runner@fv-az2031-358.rag0t2s20xiu3oejmeweyzhkrf.bx.internal.cloudapp.net</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="055cca406a"><code>055cca4</code></a>
Bump version to: 0.20.1 [skip ci]</li>
<li><a
href="6efa9a391c"><code>6efa9a3</code></a>
Update CHANGELOG.md [skip ci]</li>
<li><a
href="7bc1bcf159"><code>7bc1bcf</code></a>
Merge pull request <a
href="https://redirect.github.com/storybookjs/test-runner/issues/520">#520</a>
from storybookjs/release/v0.20.1</li>
<li><a
href="faeafe7696"><code>faeafe7</code></a>
Merge branch 'main' into release/v0.20.1</li>
<li><a
href="eb1a945c1b"><code>eb1a945</code></a>
Merge pull request <a
href="https://redirect.github.com/storybookjs/test-runner/issues/519">#519</a>
from storybookjs/yann/fix-hooks-issue</li>
<li><a
href="6bff30ef83"><code>6bff30e</code></a>
fix postVisit hook issue</li>
<li><a
href="8dabc7addb"><code>8dabc7a</code></a>
Bump version to: 0.20.0 [skip ci]</li>
<li><a
href="c1571a8c6d"><code>c1571a8</code></a>
Update CHANGELOG.md [skip ci]</li>
<li><a
href="dc1e287b7e"><code>dc1e287</code></a>
Merge pull request <a
href="https://redirect.github.com/storybookjs/test-runner/issues/518">#518</a>
from storybookjs/release/v0.20.0</li>
<li><a
href="0129a50faa"><code>0129a50</code></a>
bring back main deps</li>
<li>Additional commits viewable in <a
href="https://github.com/storybookjs/test-runner/compare/v0.19.1...v0.20.1">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~storybook-bot">storybook-bot</a>, a new
releaser for <code>@​storybook/test-runner</code> since your current
version.</p>
</details>
<br />

Updates `eslint-config-next` from 15.0.3 to 15.1.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vercel/next.js/releases">eslint-config-next's
releases</a>.</em></p>
<blockquote>
<h2>v15.1.0</h2>
<h3>Core Changes</h3>
<ul>
<li>fix: decrypt bound args before generating a cache key: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72463">#72463</a></li>
<li>Fix the path to the next/experimental/testing/server export: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72527">#72527</a></li>
<li>Expand <code>server-source-maps</code> scenarios to cover Edge
runtime: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72288">#72288</a></li>
<li>Ensure logged errors in Edge runtime include the stack: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72394">#72394</a></li>
<li>fix: added cache control headers for static app routes: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72521">#72521</a></li>
<li>capture console issues as console errors: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72468">#72468</a></li>
<li>Add expireTag and expirePath APIs: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72485">#72485</a></li>
<li>fix: try/catch access to localStorage within
__NEXT_APP_ISR_INDICATOR useEffect: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72362">#72362</a></li>
<li>Move client build ID to a global variable: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72592">#72592</a></li>
<li>refactor(turbopack): Remove <code>swc_css</code>: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72602">#72602</a></li>
<li>Bypass source map dev middleware for client chunks: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72581">#72581</a></li>
<li>chore: remove <code>rc</code> from URL: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72599">#72599</a></li>
<li>improve <code>no-img-element</code> lint error message: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72410">#72410</a></li>
<li>Combine bound <code>&quot;use cache&quot;</code> closure args into a
single parameter: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72587">#72587</a></li>
<li>[Turbopack] add BackendOptions and allow to disable dependencies,
children and storage: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72426">#72426</a></li>
<li>Omit unused args when calling <code>&quot;use cache&quot;</code>
functions: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72506">#72506</a></li>
<li>Add experimental <code>clientSegmentCache</code> flag: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72626">#72626</a></li>
<li>Add <code>compiler.define</code> option: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/71802">#71802</a></li>
<li>Fix static indicator with dynamicIO: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72631">#72631</a></li>
<li>Allow usage of Node.js prereleases: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72635">#72635</a></li>
<li>improved network url in (dev) cli: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72634">#72634</a></li>
<li>chore: update <code>getting-started/react-essentials</code> path: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72250">#72250</a></li>
<li>Fix static indicator for pure IO case: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72639">#72639</a></li>
<li>Bump the monorepo packages TypeScript to <code>5.6.3</code>: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72625">#72625</a></li>
<li>Bump <code>@capsizecss/metrics</code> to 3.4.0 for Geist Google
Font: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72746">#72746</a></li>
<li>refactor: remove unused asNotFound property: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72585">#72585</a></li>
<li>Remove unused <code>enabled</code> config from server actions
transforms: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72755">#72755</a></li>
<li>Ensure Next.js is ignore-listed when used as external: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72498">#72498</a></li>
<li>Bump <code>eslint-plugin-react</code> to 7.37.0: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72759">#72759</a></li>
<li>upgrade amphtml-validator to 1.0.38: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72645">#72645</a></li>
<li>fix multi-level redirect in server actions: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72770">#72770</a></li>
<li>refactor: rename error boundary not-found to http-error-fallback: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72586">#72586</a></li>
<li>Upgrade React from <code>5c56b873-20241107</code> to
<code>7ac8e612-20241113</code>: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72768">#72768</a></li>
<li>Re-use randomly selected dev server port for automatic restarts: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72771">#72771</a></li>
<li>Emit build error when <code>&quot;use cache&quot;</code> is used
without <code>dynamicIO</code> enabled: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72781">#72781</a></li>
<li>fix: not found bounary prop: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72784">#72784</a></li>
<li>silence sass <code>legacy-js-api</code> warning: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72632">#72632</a></li>
<li>[Segment Prefetch] Move access token to route tree: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72775">#72775</a></li>
<li>Add internal affordances to show ignore-listed stackframes in
terminal: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72763">#72763</a></li>
<li>chore(turbopack): Centralize reqwest TLS feature configs in
turbo-tasks-fetch: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72526">#72526</a></li>
<li>Upgrade React from <code>7ac8e612-20241113</code> to
<code>380f5d67-20241113</code>: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72819">#72819</a></li>
<li>Shorten unsourcemapped absolute locations in terminal stacktraces:
<a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72764">#72764</a></li>
<li>codemod: replace <code>revalidate(Tag|Path)</code> to
<code>expire(Tag|Path)</code>: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72826">#72826</a></li>
<li>&quot;Fix&quot;: Lift type check out of loop: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72840">#72840</a></li>
<li>hide stack trace in CanaryOnlyError: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72859">#72859</a></li>
<li>Allow missing CacheNodeSeedData during prefetch: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72857">#72857</a></li>
<li>Add Segment Cache feature check to <code>prefetch</code> API: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/72861">#72861</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="dafcd43fac"><code>dafcd43</code></a>
v15.1.0</li>
<li><a
href="2deb35d487"><code>2deb35d</code></a>
v15.0.4-canary.52</li>
<li><a
href="3970d33e6d"><code>3970d33</code></a>
v15.0.4-canary.51</li>
<li><a
href="c824c183d0"><code>c824c18</code></a>
v15.0.4-canary.50</li>
<li><a
href="657c2cbd72"><code>657c2cb</code></a>
v15.0.4-canary.49</li>
<li><a
href="c2078d0c05"><code>c2078d0</code></a>
v15.0.4-canary.48</li>
<li><a
href="6b9baaace0"><code>6b9baaa</code></a>
v15.0.4-canary.47</li>
<li><a
href="2caf05122a"><code>2caf051</code></a>
v15.0.4-canary.46</li>
<li><a
href="a6da830de8"><code>a6da830</code></a>
v15.0.4-canary.45</li>
<li><a
href="85062ae41e"><code>85062ae</code></a>
v15.0.4-canary.44</li>
<li>Additional commits viewable in <a
href="https://github.com/vercel/next.js/commits/v15.1.0/packages/eslint-config-next">compare
view</a></li>
</ul>
</details>
<br />

Updates `msw` from 2.6.8 to 2.7.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/mswjs/msw/releases">msw's
releases</a>.</em></p>
<blockquote>
<h2>v2.7.0 (2024-12-17)</h2>
<h3>Features</h3>
<ul>
<li>use <code>picocolors</code> instead of <code>chalk</code> (<a
href="https://redirect.github.com/mswjs/msw/issues/2377">#2377</a>)
(85bdd82dfe4cd3d514d7820dad3338b485084fbf) <a
href="https://github.com/Namchee"><code>@​Namchee</code></a> <a
href="https://github.com/kettanaito"><code>@​kettanaito</code></a></li>
</ul>
<h2>v2.6.9 (2024-12-16)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>support <code>SharedArrayBuffer</code> in
<code>HttpResponse.arrayBuffer</code> (<a
href="https://redirect.github.com/mswjs/msw/issues/2389">#2389</a>)
(41f00e1a67e21010ab9c1a46c8e92193b655f24a) <a
href="https://github.com/danilofuchs"><code>@​danilofuchs</code></a> <a
href="https://github.com/kettanaito"><code>@​kettanaito</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e3234fdce5"><code>e3234fd</code></a>
chore(release): v2.7.0</li>
<li><a
href="85bdd82dfe"><code>85bdd82</code></a>
feat: use <code>picocolors</code> instead of <code>chalk</code> (<a
href="https://redirect.github.com/mswjs/msw/issues/2377">#2377</a>)</li>
<li><a
href="58f2d2cfa5"><code>58f2d2c</code></a>
chore: use v18 in .nvmrc</li>
<li><a
href="a845ea1e2f"><code>a845ea1</code></a>
chore(release): v2.6.9</li>
<li><a
href="417918fce0"><code>417918f</code></a>
chore: pack/build before all e2e tests (<a
href="https://redirect.github.com/mswjs/msw/issues/2395">#2395</a>)</li>
<li><a
href="41f00e1a67"><code>41f00e1</code></a>
fix: support <code>SharedArrayBuffer</code> in
<code>HttpResponse.arrayBuffer</code> (<a
href="https://redirect.github.com/mswjs/msw/issues/2389">#2389</a>)</li>
<li><a
href="a6c419c877"><code>a6c419c</code></a>
chore: split build into standalone jobs (<a
href="https://redirect.github.com/mswjs/msw/issues/2386">#2386</a>)</li>
<li>See full diff in <a
href="https://github.com/mswjs/msw/compare/v2.6.8...v2.7.0">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-17 08:58:06 +00:00
Nicholas Tindle
abd245cb2b test(frontend): additional build page automation tooling (#8951)
The tutorial was a bit harder than we expected to completely automate.
Along the way though, we made these functions so lets keep em in for
future use
<!-- Clearly explain the need for these changes: -->

### Changes 🏗️
- Adds a few more functions for the build automation pages

<!-- Concisely describe all of the changes made in this pull request:
-->

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [ ] I have tested my changes according to the test plan: Writing tests
2024-12-17 08:55:02 +00:00
dependabot[bot]
9e0c296aef build(deps): bump uvicorn from 0.32.1 to 0.34.0 in /autogpt_platform/market in the production-dependencies group (#9012)
Bumps the production-dependencies group in /autogpt_platform/market with
1 update: [uvicorn](https://github.com/encode/uvicorn).

Updates `uvicorn` from 0.32.1 to 0.34.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/encode/uvicorn/releases">uvicorn's
releases</a>.</em></p>
<blockquote>
<h2>Version 0.34.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Add <code>content-length</code> to 500 response in wsproto by <a
href="https://github.com/Kludex"><code>@​Kludex</code></a> in <a
href="https://redirect.github.com/encode/uvicorn/pull/2542">encode/uvicorn#2542</a></li>
<li>Drop Python 3.8 by <a
href="https://github.com/Kludex"><code>@​Kludex</code></a> in <a
href="https://redirect.github.com/encode/uvicorn/pull/2543">encode/uvicorn#2543</a></li>
</ul>
<hr />
<p><strong>Full Changelog</strong>: <a
href="https://github.com/encode/uvicorn/compare/0.33.0...0.34.0">https://github.com/encode/uvicorn/compare/0.33.0...0.34.0</a></p>
<h2>Version 0.33.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Remove WatchGod by <a
href="https://github.com/Kludex"><code>@​Kludex</code></a> in <a
href="https://redirect.github.com/encode/uvicorn/pull/2536">encode/uvicorn#2536</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/bwells"><code>@​bwells</code></a> made
their first contribution in <a
href="https://redirect.github.com/encode/uvicorn/pull/2491">encode/uvicorn#2491</a></li>
<li><a href="https://github.com/tback"><code>@​tback</code></a> made
their first contribution in <a
href="https://redirect.github.com/encode/uvicorn/pull/2528">encode/uvicorn#2528</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/encode/uvicorn/compare/0.32.1...0.33.0">https://github.com/encode/uvicorn/compare/0.32.1...0.33.0</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/encode/uvicorn/blob/master/CHANGELOG.md">uvicorn's
changelog</a>.</em></p>
<blockquote>
<h2>0.34.0 (2024-12-15)</h2>
<h3>Added</h3>
<ul>
<li>Add <code>content-length</code> to 500 response in
<code>wsproto</code> implementation (<a
href="https://redirect.github.com/encode/uvicorn/issues/2542">#2542</a>)</li>
</ul>
<h3>Removed</h3>
<ul>
<li>Drop support for Python 3.8 (<a
href="https://redirect.github.com/encode/uvicorn/issues/2543">#2543</a>)</li>
</ul>
<h2>0.33.0 (2024-12-14)</h2>
<h3>Removed</h3>
<ul>
<li>Remove <code>WatchGod</code> support for <code>--reload</code> (<a
href="https://redirect.github.com/encode/uvicorn/issues/2536">#2536</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="7983c1ae9c"><code>7983c1a</code></a>
Version 0.34.0 (<a
href="https://redirect.github.com/encode/uvicorn/issues/2546">#2546</a>)</li>
<li><a
href="75d4402f32"><code>75d4402</code></a>
Add alls-green job (<a
href="https://redirect.github.com/encode/uvicorn/issues/2544">#2544</a>)</li>
<li><a
href="4156ccb4c9"><code>4156ccb</code></a>
Drop Python 3.8 (<a
href="https://redirect.github.com/encode/uvicorn/issues/2543">#2543</a>)</li>
<li><a
href="3575cbaa4e"><code>3575cba</code></a>
Add <code>content-length</code> to 500 response in wsproto (<a
href="https://redirect.github.com/encode/uvicorn/issues/2542">#2542</a>)</li>
<li><a
href="a500513085"><code>a500513</code></a>
Version 0.33.0 (<a
href="https://redirect.github.com/encode/uvicorn/issues/2539">#2539</a>)</li>
<li><a
href="038f8ef3fe"><code>038f8ef</code></a>
Bump the python-packages group across 1 directory with 9 updates (<a
href="https://redirect.github.com/encode/uvicorn/issues/2538">#2538</a>)</li>
<li><a
href="3aa1d010d6"><code>3aa1d01</code></a>
Remove WatchGod (<a
href="https://redirect.github.com/encode/uvicorn/issues/2536">#2536</a>)</li>
<li><a
href="a3cc36016e"><code>a3cc360</code></a>
docs: add note about server behavior on exceptions (<a
href="https://redirect.github.com/encode/uvicorn/issues/2535">#2535</a>)</li>
<li><a
href="6725ebb1ee"><code>6725ebb</code></a>
docs: add more mkdocs-material features (<a
href="https://redirect.github.com/encode/uvicorn/issues/2534">#2534</a>)</li>
<li><a
href="bfa754e21e"><code>bfa754e</code></a><code>encode/uvicorn#2527</code><a
href="https://redirect.github.com/encode/uvicorn/issues/2528">#2528</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/encode/uvicorn/compare/0.32.1...0.34.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=uvicorn&package-manager=pip&previous-version=0.32.1&new-version=0.34.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-17 08:50:04 +00:00
dependabot[bot]
59f52fb656 build(deps-dev): bump ruff from 0.8.2 to 0.8.3 in /autogpt_platform/autogpt_libs in the development-dependencies group (#9008)
Bumps the development-dependencies group in
/autogpt_platform/autogpt_libs with 1 update:
[ruff](https://github.com/astral-sh/ruff).

Updates `ruff` from 0.8.2 to 0.8.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.8.3</h2>
<h2>Release Notes</h2>
<h3>Preview features</h3>
<ul>
<li>Fix fstring formatting removing overlong implicit concatenated
string in expression part (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14811">#14811</a>)</li>
<li>[<code>airflow</code>] Add fix to remove deprecated keyword
arguments (<code>AIR302</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14887">#14887</a>)</li>
<li>[<code>airflow</code>]: Extend rule to include deprecated names for
Airflow 3.0 (<code>AIR302</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14765">#14765</a>
and <a
href="https://redirect.github.com/astral-sh/ruff/pull/14804">#14804</a>)</li>
<li>[<code>flake8-bugbear</code>] Improve error messages for
<code>except*</code> (<code>B025</code>, <code>B029</code>,
<code>B030</code>, <code>B904</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14815">#14815</a>)</li>
<li>[<code>flake8-bugbear</code>] <code>itertools.batched()</code>
without explicit <code>strict</code> (<code>B911</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14408">#14408</a>)</li>
<li>[<code>flake8-use-pathlib</code>] Dotless suffix passed to
<code>Path.with_suffix()</code> (<code>PTH210</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14779">#14779</a>)</li>
<li>[<code>pylint</code>] Include parentheses and multiple comparators
in check for <code>boolean-chained-comparison</code>
(<code>PLR1716</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14781">#14781</a>)</li>
<li>[<code>ruff</code>] Do not simplify <code>round()</code> calls
(<code>RUF046</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14832">#14832</a>)</li>
<li>[<code>ruff</code>] Don't emit <code>used-dummy-variable</code> on
function parameters (<code>RUF052</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14818">#14818</a>)</li>
<li>[<code>ruff</code>] Implement <code>if-key-in-dict-del</code>
(<code>RUF051</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14553">#14553</a>)</li>
<li>[<code>ruff</code>] Mark autofix for <code>RUF052</code> as always
unsafe (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14824">#14824</a>)</li>
<li>[<code>ruff</code>] Teach autofix for
<code>used-dummy-variable</code> about TypeVars etc.
(<code>RUF052</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14819">#14819</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>flake8-bugbear</code>] Offer unsafe autofix for
<code>no-explicit-stacklevel</code> (<code>B028</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14829">#14829</a>)</li>
<li>[<code>flake8-pyi</code>] Skip all type definitions in
<code>string-or-bytes-too-long</code> (<code>PYI053</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14797">#14797</a>)</li>
<li>[<code>pyupgrade</code>] Do not report when a UTF-8 comment is
followed by a non-UTF-8 one (<code>UP009</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14728">#14728</a>)</li>
<li>[<code>pyupgrade</code>] Mark fixes for
<code>convert-typed-dict-functional-to-class</code> and
<code>convert-named-tuple-functional-to-class</code> as unsafe if they
will remove comments (<code>UP013</code>, <code>UP014</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14842">#14842</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Raise syntax error for mixing <code>except</code> and
<code>except*</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14895">#14895</a>)</li>
<li>[<code>flake8-bugbear</code>] Fix <code>B028</code> to allow
<code>stacklevel</code> to be explicitly assigned as a positional
argument (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14868">#14868</a>)</li>
<li>[<code>flake8-bugbear</code>] Skip <code>B028</code> if
<code>warnings.warn</code> is called with <code>*args</code> or
<code>**kwargs</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14870">#14870</a>)</li>
<li>[<code>flake8-comprehensions</code>] Skip iterables with named
expressions in <code>unnecessary-map</code> (<code>C417</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14827">#14827</a>)</li>
<li>[<code>flake8-pyi</code>] Also remove <code>self</code> and
<code>cls</code>'s annotation (<code>PYI034</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14801">#14801</a>)</li>
<li>[<code>flake8-pytest-style</code>] Fix
<code>pytest-parametrize-names-wrong-type</code> (<code>PT006</code>) to
edit both <code>argnames</code> and <code>argvalues</code> if both of
them are single-element tuples/lists (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14699">#14699</a>)</li>
<li>[<code>perflint</code>] Improve autofix for <code>PERF401</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14369">#14369</a>)</li>
<li>[<code>pylint</code>] Fix <code>PLW1508</code> false positive for
default string created via a mult operation (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14841">#14841</a>)</li>
</ul>
<h2>Contributors</h2>
<ul>
<li><a
href="https://github.com/AlexWaygood"><code>@​AlexWaygood</code></a></li>
<li><a
href="https://github.com/BurntSushi"><code>@​BurntSushi</code></a></li>
<li><a
href="https://github.com/DimitriPapadopoulos"><code>@​DimitriPapadopoulos</code></a></li>
<li><a
href="https://github.com/Glyphack"><code>@​Glyphack</code></a></li>
<li><a
href="https://github.com/InSyncWithFoo"><code>@​InSyncWithFoo</code></a></li>
<li><a href="https://github.com/Lee-W"><code>@​Lee-W</code></a></li>
<li><a
href="https://github.com/MichaReiser"><code>@​MichaReiser</code></a></li>
<li><a
href="https://github.com/UnknownPlatypus"><code>@​UnknownPlatypus</code></a></li>
<li><a href="https://github.com/carljm"><code>@​carljm</code></a></li>
<li><a href="https://github.com/cclauss"><code>@​cclauss</code></a></li>
<li><a
href="https://github.com/dcreager"><code>@​dcreager</code></a></li>
<li><a
href="https://github.com/dhruvmanila"><code>@​dhruvmanila</code></a></li>
<li><a href="https://github.com/dylwil3"><code>@​dylwil3</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.8.3</h2>
<h3>Preview features</h3>
<ul>
<li>Fix fstring formatting removing overlong implicit concatenated
string in expression part (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14811">#14811</a>)</li>
<li>[<code>airflow</code>] Add fix to remove deprecated keyword
arguments (<code>AIR302</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14887">#14887</a>)</li>
<li>[<code>airflow</code>]: Extend rule to include deprecated names for
Airflow 3.0 (<code>AIR302</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14765">#14765</a>
and <a
href="https://redirect.github.com/astral-sh/ruff/pull/14804">#14804</a>)</li>
<li>[<code>flake8-bugbear</code>] Improve error messages for
<code>except*</code> (<code>B025</code>, <code>B029</code>,
<code>B030</code>, <code>B904</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14815">#14815</a>)</li>
<li>[<code>flake8-bugbear</code>] <code>itertools.batched()</code>
without explicit <code>strict</code> (<code>B911</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14408">#14408</a>)</li>
<li>[<code>flake8-use-pathlib</code>] Dotless suffix passed to
<code>Path.with_suffix()</code> (<code>PTH210</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14779">#14779</a>)</li>
<li>[<code>pylint</code>] Include parentheses and multiple comparators
in check for <code>boolean-chained-comparison</code>
(<code>PLR1716</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14781">#14781</a>)</li>
<li>[<code>ruff</code>] Do not simplify <code>round()</code> calls
(<code>RUF046</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14832">#14832</a>)</li>
<li>[<code>ruff</code>] Don't emit <code>used-dummy-variable</code> on
function parameters (<code>RUF052</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14818">#14818</a>)</li>
<li>[<code>ruff</code>] Implement <code>if-key-in-dict-del</code>
(<code>RUF051</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14553">#14553</a>)</li>
<li>[<code>ruff</code>] Mark autofix for <code>RUF052</code> as always
unsafe (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14824">#14824</a>)</li>
<li>[<code>ruff</code>] Teach autofix for
<code>used-dummy-variable</code> about TypeVars etc.
(<code>RUF052</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14819">#14819</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>flake8-bugbear</code>] Offer unsafe autofix for
<code>no-explicit-stacklevel</code> (<code>B028</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14829">#14829</a>)</li>
<li>[<code>flake8-pyi</code>] Skip all type definitions in
<code>string-or-bytes-too-long</code> (<code>PYI053</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14797">#14797</a>)</li>
<li>[<code>pyupgrade</code>] Do not report when a UTF-8 comment is
followed by a non-UTF-8 one (<code>UP009</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14728">#14728</a>)</li>
<li>[<code>pyupgrade</code>] Mark fixes for
<code>convert-typed-dict-functional-to-class</code> and
<code>convert-named-tuple-functional-to-class</code> as unsafe if they
will remove comments (<code>UP013</code>, <code>UP014</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14842">#14842</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Raise syntax error for mixing <code>except</code> and
<code>except*</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14895">#14895</a>)</li>
<li>[<code>flake8-bugbear</code>] Fix <code>B028</code> to allow
<code>stacklevel</code> to be explicitly assigned as a positional
argument (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14868">#14868</a>)</li>
<li>[<code>flake8-bugbear</code>] Skip <code>B028</code> if
<code>warnings.warn</code> is called with <code>*args</code> or
<code>**kwargs</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14870">#14870</a>)</li>
<li>[<code>flake8-comprehensions</code>] Skip iterables with named
expressions in <code>unnecessary-map</code> (<code>C417</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14827">#14827</a>)</li>
<li>[<code>flake8-pyi</code>] Also remove <code>self</code> and
<code>cls</code>'s annotation (<code>PYI034</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14801">#14801</a>)</li>
<li>[<code>flake8-pytest-style</code>] Fix
<code>pytest-parametrize-names-wrong-type</code> (<code>PT006</code>) to
edit both <code>argnames</code> and <code>argvalues</code> if both of
them are single-element tuples/lists (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14699">#14699</a>)</li>
<li>[<code>perflint</code>] Improve autofix for <code>PERF401</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14369">#14369</a>)</li>
<li>[<code>pylint</code>] Fix <code>PLW1508</code> false positive for
default string created via a mult operation (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14841">#14841</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="53f2d72e02"><code>53f2d72</code></a>
Revert certain double quotes from workflow shell script (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14939">#14939</a>)</li>
<li><a
href="3629cbf35a"><code>3629cbf</code></a>
Use double quotes consistently for shell scripts (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14938">#14938</a>)</li>
<li><a
href="37f433814c"><code>37f4338</code></a>
Bump version to 0.8.3 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14937">#14937</a>)</li>
<li><a
href="45b565cbb5"><code>45b565c</code></a>
[red-knot] <code>Any</code> cannot be parameterized (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14933">#14933</a>)</li>
<li><a
href="82faa9bb62"><code>82faa9b</code></a>
Add tests demonstrating f-strings with debug expressions in replacements
that...</li>
<li><a
href="2eac00c60f"><code>2eac00c</code></a>
[<code>perflint</code>] fix invalid hoist in <code>perf401</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14369">#14369</a>)</li>
<li><a
href="033ecf5a4b"><code>033ecf5</code></a>
Also have zizmor check for low-severity security issues (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14893">#14893</a>)</li>
<li><a
href="5509a3d7ae"><code>5509a3d</code></a>
Add LSP settings example for Zed editor (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14894">#14894</a>)</li>
<li><a
href="e4885a2fb2"><code>e4885a2</code></a>
[red-knot] Understand <code>typing.Tuple</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14927">#14927</a>)</li>
<li><a
href="a7e5e42b88"><code>a7e5e42</code></a>
[red-knot] Make <code>attributes.md</code> test future-proof (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14923">#14923</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.8.2...0.8.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ruff&package-manager=pip&previous-version=0.8.2&new-version=0.8.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-17 08:47:56 +00:00
dependabot[bot]
9f9097c62f chore(backend/deps): Update cryptography from 43.0.3 to 44.0.0 (#8870)
Bumps [cryptography](https://github.com/pyca/cryptography) from 43.0.3
to 44.0.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst">cryptography's
changelog</a>.</em></p>
<blockquote>
<p>44.0.0 - 2024-11-27</p>
<pre><code>
* **BACKWARDS INCOMPATIBLE:** Dropped support for LibreSSL &lt; 3.9.
* Deprecated Python 3.7 support. Python 3.7 is no longer supported by
the
  Python core team. Support for Python 3.7 will be removed in a future
  ``cryptography`` release.
* Updated Windows, macOS, and Linux wheels to be compiled with OpenSSL
3.4.0.
* macOS wheels are now built against the macOS 10.13 SDK. Users on older
  versions of macOS should upgrade, or they will need to build
  ``cryptography`` themselves.
* Enforce the :rfc:`5280` requirement that extended key usage extensions
must
  not be empty.
* Added support for timestamp extraction to the
  :class:`~cryptography.fernet.MultiFernet` class.
* Relax the Authority Key Identifier requirements on root CA
certificates
  during X.509 verification to allow fields permitted by :rfc:`5280` but
  forbidden by the CA/Browser BRs.
* Added support for
:class:`~cryptography.hazmat.primitives.kdf.argon2.Argon2id`
  when using OpenSSL 3.2.0+.
* Added support for the :class:`~cryptography.x509.Admissions`
certificate extension.
* Added basic support for PKCS7 decryption (including S/MIME 3.2) via

:func:`~cryptography.hazmat.primitives.serialization.pkcs7.pkcs7_decrypt_der`,

:func:`~cryptography.hazmat.primitives.serialization.pkcs7.pkcs7_decrypt_pem`,
and

:func:`~cryptography.hazmat.primitives.serialization.pkcs7.pkcs7_decrypt_smime`.
<p>.. _v43-0-3:<br />
</code></pre></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f299a48153"><code>f299a48</code></a>
remove deprecated call (<a
href="https://redirect.github.com/pyca/cryptography/issues/12052">#12052</a>)</li>
<li><a
href="439eb0594a"><code>439eb05</code></a>
Bump version for 44.0.0 (<a
href="https://redirect.github.com/pyca/cryptography/issues/12051">#12051</a>)</li>
<li><a
href="2c5ad4d8dc"><code>2c5ad4d</code></a>
chore(deps): bump maturin from 1.7.4 to 1.7.5 in /.github/requirements
(<a
href="https://redirect.github.com/pyca/cryptography/issues/12050">#12050</a>)</li>
<li><a
href="d23968addd"><code>d23968a</code></a>
chore(deps): bump libc from 0.2.165 to 0.2.166 (<a
href="https://redirect.github.com/pyca/cryptography/issues/12049">#12049</a>)</li>
<li><a
href="133c0e02ed"><code>133c0e0</code></a>
Bump x509-limbo and/or wycheproof in CI (<a
href="https://redirect.github.com/pyca/cryptography/issues/12047">#12047</a>)</li>
<li><a
href="f2259d7aa0"><code>f2259d7</code></a>
Bump BoringSSL and/or OpenSSL in CI (<a
href="https://redirect.github.com/pyca/cryptography/issues/12046">#12046</a>)</li>
<li><a
href="e201c870b8"><code>e201c87</code></a>
fixed metadata in changelog (<a
href="https://redirect.github.com/pyca/cryptography/issues/12044">#12044</a>)</li>
<li><a
href="c6104cc366"><code>c6104cc</code></a>
Prohibit Python 3.9.0, 3.9.1 -- they have a bug that causes errors (<a
href="https://redirect.github.com/pyca/cryptography/issues/12045">#12045</a>)</li>
<li><a
href="d6cac753c2"><code>d6cac75</code></a>
Add support for decrypting S/MIME messages (<a
href="https://redirect.github.com/pyca/cryptography/issues/11555">#11555</a>)</li>
<li><a
href="b8e5bfd4d7"><code>b8e5bfd</code></a>
chore(deps): bump libc from 0.2.164 to 0.2.165 (<a
href="https://redirect.github.com/pyca/cryptography/issues/12042">#12042</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/pyca/cryptography/compare/43.0.3...44.0.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=cryptography&package-manager=pip&previous-version=43.0.3&new-version=44.0.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-17 08:46:49 +00:00
Abhimanyu Yadav
cd339b0ffc feat(frontend) : Add optional input support for object, array, multi-select, and select as well. (#8982)
- Resolve #8976 

> Once you have checked whether this is working or not, then I will
remove the optional field block.

### Changes 
- Updated `NodeGenericInputField` to handle additional input types:
  - Added support for `array` and `object` optional types.
- Enhanced schema definitions for `string` optional type to include
enumerations

### Testing 🔍
- Verified that the new input types function correctly within the
frontend component.

<img width="517" alt="Screenshot 2024-12-13 at 7 08 22 PM"
src="https://github.com/user-attachments/assets/1e4b7c58-2ddc-4082-8a9e-2e11b91495e2"
/>

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-17 03:52:26 +00:00
Abhimanyu Yadav
569222e9cd feat(blocks): Add depends_on support for input fields (#8852)
- Resolves part of #8731 

### Changes
- Added `depends_on` parameter to SchemaField in `model.py` to specify
field dependencies.
- Updated `useAgentGraph` hook to validate input fields based on their
dependencies, ensuring required fields are set when dependent fields are
filled.
- Modified `BlockIOSubSchemaMeta` to include `depends_on` as an optional
property.



https://github.com/user-attachments/assets/64fd47b3-34dc-48fa-ad90-1c9c5cd4c4a3

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-17 03:20:19 +00:00
Abhimanyu Yadav
2fe6eb1df1 feat(blocks): Add support for mutually exclusive input fields (#8856)
- resolves part of #8731 

### Changes
- Introduced `mutually_exclusive` parameter in `SchemaField` to manage
input exclusivity.
- Implemented logic in `NodeGenericInputField` to disable inputs based
on mutual exclusivity.
- Updated related components to support the new `disabled` state for
inputs.
- Enhanced `BlockIOSubSchemaMeta` to include `mutually_exclusive`
property.

> Currently, I’m disabling the input from the same group (I haven’t
added any frontend validation to prevent users from bypassing it).


https://github.com/user-attachments/assets/71fb9fe4-943b-4724-8acb-6aed2232ed6b

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-16 23:30:21 +00:00
Nicholas Tindle
f588b69484 fix: merge issues from store -> dev (#9016)
<!-- Clearly explain the need for these changes: -->

Monitor page is broken for me
### Changes 🏗️

<!-- Concisely describe all of the changes made in this pull request:
-->

- Updates monitor page to what was in dev before store pr went in
- Updates graph getting endpoint to handle invalid graphs a bit more
graceful

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [x] Test to make sure I can start and view my monitor page
2024-12-16 16:46:53 -06:00
Swifty
be6d8cbd18 fix(platform): Restored monitor page and monitor spec code. (#8992)
## Changes 🏗️
	
•	Restored monitor page and monitor spec functionality.
•	Disabled failing tests to allow for smoother CI/CD processes.
2024-12-16 18:11:23 +00:00
Swifty
2de5e3dd83 feat(platform): Agent Store V2 (#8874)
# 🌎 Overview

AutoGPT Store Version 2 expands on the Pre-Store by enhancing agent
discovery, providing richer content presentation, and introducing new
user engagement features. The focus is on creating a visually appealing
and interactive marketplace that allows users to explore and evaluate
agents through images, videos, and detailed descriptions.

### Vision

To create a visually compelling and interactive open-source marketplace
for autonomous AI agents, where users can easily discover, evaluate, and
interact with agents through media-rich listings, ratings, and version
history.

### Objectives

📊 Incorporate visuals (icons, images, videos) into agent listings.
 Introduce a rating system and agent run count.
🔄 Provide version history and update logs from creators.
🔍 Improve user experience with advanced search and filtering features.

### Changes 🏗️

<!-- Concisely describe all of the changes made in this pull request:
-->

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

---------

Co-authored-by: Bently <tomnoon9@gmail.com>
Co-authored-by: Aarushi <aarushik93@gmail.com>
2024-12-13 16:35:02 +00:00
Ace
94a312a279 Ollama - Remote hosts (#8234)
### Background

Currently, AutoGPT only supports ollama servers running locally. Often,
this is not the case as the ollama server could be running on a more
suited instance, such as a Jetson board. This PR adds "ollama host" to
the input of all LLM blocks, allowing users to select the ollama host
for the LLM blocks.

### Changes 🏗️

- Changes contained within blocks/llm.py:
    - Adding ollama host input to all LLM blocks
- Fixed incorrect parsing of prompt when passing to ollama in the
StructuredResponse block
    - Used ollama.Client instances to accomplish this.


### Testing 🔍

Tested all LLM blocks with Ollama remote hosts as well as with the
default localhost value.


### Related issues
https://github.com/Significant-Gravitas/AutoGPT/issues/8225

---------

Co-authored-by: Fried-Squid <Fried-Squid>
Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Nicholas Tindle <nicktindle@outlook.com>
2024-12-13 00:02:49 +00:00
Toran Bruce Richards
de3c096e23 feat(blocks): Add CreateDictionaryBlock and CreateListBlock (#8903)
Though this is technically possible with the AddToDictionary and
AddToList Blocks, that approach alone feels like a hidden work-around
rather than an intuitive feature, and I'm happy with the duplication in
the name of better experience for our users here.

Changes 🏗️
Added CreateDictionaryBlock class that creates a dictionary from the
provided key-value pairs.
Added CreateListBlock class that creates a list from the provided
values.


![dictionary](https://github.com/user-attachments/assets/51250715-686b-4428-aa98-eac85d3860fa)

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-12 22:45:15 +00:00
Bently
f090f4ca4a feat(blocks): Add Code extraction Block (#8778)
This adds a code extraction block, this was originally made by
https://github.com/SerchioSD I simply updated it and made it into a PR

### Changes 🏗️

Adds a new ``code_extraction_block.py`` block which has the code


![image](https://github.com/user-attachments/assets/f7e61390-94e1-49e3-b8ee-b2dc7ea03bfe)

### Updated video to show it working with latest mapped aliases


https://github.com/user-attachments/assets/a96aa708-f06f-4a00-a581-9f64d72f9ee8

---------

Co-authored-by: SerchioSD <69461657+serchiosd@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Nicholas Tindle <nicktindle@outlook.com>
2024-12-12 20:34:21 +00:00
dependabot[bot]
29c771ba1b build(deps-dev): bump the development-dependencies group in /autogpt_platform/market with 2 updates (#8923)
Bumps the development-dependencies group in /autogpt_platform/market
with 2 updates: [ruff](https://github.com/astral-sh/ruff) and
[pyright](https://github.com/RobertCraigie/pyright-python).

Updates `ruff` from 0.8.1 to 0.8.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.8.2</h2>
<h2>Release Notes</h2>
<h3>Preview features</h3>
<ul>
<li>[<code>airflow</code>] Avoid deprecated values (<code>AIR302</code>)
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14582">#14582</a>)</li>
<li>[<code>airflow</code>] Extend removed names for <code>AIR302</code>
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14734">#14734</a>)</li>
<li>[<code>ruff</code>] Extend
<code>unnecessary-regular-expression</code> to non-literal strings
(<code>RUF055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14679">#14679</a>)</li>
<li>[<code>ruff</code>] Implement <code>used-dummy-variable</code>
(<code>RUF052</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14611">#14611</a>)</li>
<li>[<code>ruff</code>] Implement <code>unnecessary-cast-to-int</code>
(<code>RUF046</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14697">#14697</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>airflow</code>] Check <code>AIR001</code> from builtin or
providers <code>operators</code> module (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14631">#14631</a>)</li>
<li>[<code>flake8-pytest-style</code>] Remove <code>@</code> in
<code>pytest.mark.parametrize</code> rule messages (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14770">#14770</a>)</li>
<li>[<code>pandas-vet</code>] Skip rules if the <code>panda</code>
module hasn't been seen (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14671">#14671</a>)</li>
<li>[<code>pylint</code>] Fix false negatives for <code>ascii</code> and
<code>sorted</code> in <code>len-as-condition</code>
(<code>PLC1802</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14692">#14692</a>)</li>
<li>[<code>refurb</code>] Guard <code>hashlib</code> imports and mark
<code>hashlib-digest-hex</code> fix as safe (<code>FURB181</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14694">#14694</a>)</li>
</ul>
<h3>Configuration</h3>
<ul>
<li>[<code>flake8-import-conventions</code>] Improve syntax check for
aliases supplied in configuration for
<code>unconventional-import-alias</code> (<code>ICN001</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14745">#14745</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Revert: [pyflakes] Avoid false positives in
<code>@no_type_check</code> contexts (<code>F821</code>,
<code>F722</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14615">#14615</a>)
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14726">#14726</a>)</li>
<li>[<code>pep8-naming</code>] Avoid false positive for <code>class
Bar(type(foo))</code> (<code>N804</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14683">#14683</a>)</li>
<li>[<code>pycodestyle</code>] Handle f-strings properly for
<code>invalid-escape-sequence</code> (<code>W605</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14748">#14748</a>)</li>
<li>[<code>pylint</code>] Ignore <code>@overload</code> in
<code>PLR0904</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14730">#14730</a>)</li>
<li>[<code>refurb</code>] Handle non-finite decimals in
<code>verbose-decimal-constructor</code> (<code>FURB157</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14596">#14596</a>)</li>
<li>[<code>ruff</code>] Avoid emitting <code>assignment-in-assert</code>
when all references to the assigned variable are themselves inside
<code>assert</code>s (<code>RUF018</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14661">#14661</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>Improve docs for <code>flake8-use-pathlib</code> rules (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14741">#14741</a>)</li>
<li>Improve error messages and docs for
<code>flake8-comprehensions</code> rules (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14729">#14729</a>)</li>
<li>[<code>flake8-type-checking</code>] Expands <code>TC006</code> docs
to better explain itself (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14749">#14749</a>)</li>
</ul>
<h2>Contributors</h2>
<ul>
<li><a
href="https://github.com/AlexWaygood"><code>@​AlexWaygood</code></a></li>
<li><a
href="https://github.com/Daverball"><code>@​Daverball</code></a></li>
<li><a
href="https://github.com/InSyncWithFoo"><code>@​InSyncWithFoo</code></a></li>
<li><a href="https://github.com/Lee-W"><code>@​Lee-W</code></a></li>
<li><a
href="https://github.com/Lokejoke"><code>@​Lokejoke</code></a></li>
<li><a
href="https://github.com/Matt-Ord"><code>@​Matt-Ord</code></a></li>
<li><a
href="https://github.com/MichaReiser"><code>@​MichaReiser</code></a></li>
<li><a
href="https://github.com/Well2333"><code>@​Well2333</code></a></li>
<li><a
href="https://github.com/connorskees"><code>@​connorskees</code></a></li>
<li><a
href="https://github.com/dcreager"><code>@​dcreager</code></a></li>
<li><a
href="https://github.com/dhruvmanila"><code>@​dhruvmanila</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.8.2</h2>
<h3>Preview features</h3>
<ul>
<li>[<code>airflow</code>] Avoid deprecated values (<code>AIR302</code>)
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14582">#14582</a>)</li>
<li>[<code>airflow</code>] Extend removed names for <code>AIR302</code>
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14734">#14734</a>)</li>
<li>[<code>ruff</code>] Extend
<code>unnecessary-regular-expression</code> to non-literal strings
(<code>RUF055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14679">#14679</a>)</li>
<li>[<code>ruff</code>] Implement <code>used-dummy-variable</code>
(<code>RUF052</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14611">#14611</a>)</li>
<li>[<code>ruff</code>] Implement <code>unnecessary-cast-to-int</code>
(<code>RUF046</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14697">#14697</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>airflow</code>] Check <code>AIR001</code> from builtin or
providers <code>operators</code> module (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14631">#14631</a>)</li>
<li>[<code>flake8-pytest-style</code>] Remove <code>@</code> in
<code>pytest.mark.parametrize</code> rule messages (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14770">#14770</a>)</li>
<li>[<code>pandas-vet</code>] Skip rules if the <code>panda</code>
module hasn't been seen (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14671">#14671</a>)</li>
<li>[<code>pylint</code>] Fix false negatives for <code>ascii</code> and
<code>sorted</code> in <code>len-as-condition</code>
(<code>PLC1802</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14692">#14692</a>)</li>
<li>[<code>refurb</code>] Guard <code>hashlib</code> imports and mark
<code>hashlib-digest-hex</code> fix as safe (<code>FURB181</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14694">#14694</a>)</li>
</ul>
<h3>Configuration</h3>
<ul>
<li>[<code>flake8-import-conventions</code>] Improve syntax check for
aliases supplied in configuration for
<code>unconventional-import-alias</code> (<code>ICN001</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14745">#14745</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Revert: [pyflakes] Avoid false positives in
<code>@no_type_check</code> contexts (<code>F821</code>,
<code>F722</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14615">#14615</a>)
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14726">#14726</a>)</li>
<li>[<code>pep8-naming</code>] Avoid false positive for <code>class
Bar(type(foo))</code> (<code>N804</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14683">#14683</a>)</li>
<li>[<code>pycodestyle</code>] Handle f-strings properly for
<code>invalid-escape-sequence</code> (<code>W605</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14748">#14748</a>)</li>
<li>[<code>pylint</code>] Ignore <code>@overload</code> in
<code>PLR0904</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14730">#14730</a>)</li>
<li>[<code>refurb</code>] Handle non-finite decimals in
<code>verbose-decimal-constructor</code> (<code>FURB157</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14596">#14596</a>)</li>
<li>[<code>ruff</code>] Avoid emitting <code>assignment-in-assert</code>
when all references to the assigned variable are themselves inside
<code>assert</code>s (<code>RUF018</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14661">#14661</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>Improve docs for <code>flake8-use-pathlib</code> rules (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14741">#14741</a>)</li>
<li>Improve error messages and docs for
<code>flake8-comprehensions</code> rules (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14729">#14729</a>)</li>
<li>[<code>flake8-type-checking</code>] Expands <code>TC006</code> docs
to better explain itself (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14749">#14749</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b0e26e6fc8"><code>b0e26e6</code></a>
Bump version to 0.8.2 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14789">#14789</a>)</li>
<li><a
href="e9941cd714"><code>e9941cd</code></a>
[red-knot] Move standalone expr inference to <code>for</code> non-name
target (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14788">#14788</a>)</li>
<li><a
href="43bf1a8907"><code>43bf1a8</code></a>
Add tests for &quot;keyword as identifier&quot; syntax errors (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14754">#14754</a>)</li>
<li><a
href="fda8b1f884"><code>fda8b1f</code></a>
[<code>ruff</code>] Unnecessary cast to <code>int</code>
(<code>RUF046</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14697">#14697</a>)</li>
<li><a
href="2d3f557875"><code>2d3f557</code></a>
[red-knot] Fallback for <code>typing._NoDefaultType</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14783">#14783</a>)</li>
<li><a
href="bd27bfab5d"><code>bd27bfa</code></a>
[red-knot] Unify <code>setup_db()</code> functions, add
<code>TestDb</code> builder (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14777">#14777</a>)</li>
<li><a
href="155d34bbb9"><code>155d34b</code></a>
[red-knot] Infer precise types for <code>len()</code> calls (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14599">#14599</a>)</li>
<li><a
href="04c887c8fc"><code>04c887c</code></a>
Fix references for <code>async-busy-wait</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14775">#14775</a>)</li>
<li><a
href="af43bd4b0f"><code>af43bd4</code></a>
[red-knot] Gradual forms do not participate in equivalence/subtyping (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14758">#14758</a>)</li>
<li><a
href="614917769e"><code>6149177</code></a>
Remove <code>@</code> in <code>pytest.mark.parametrize</code> rule
messages (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14770">#14770</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.8.1...0.8.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `pyright` from 1.1.389 to 1.1.390
<details>
<summary>Commits</summary>
<ul>
<li><a
href="ee025bc694"><code>ee025bc</code></a>
Pyright NPM Package update to 1.1.390 (<a
href="https://redirect.github.com/RobertCraigie/pyright-python/issues/325">#325</a>)</li>
<li>See full diff in <a
href="https://github.com/RobertCraigie/pyright-python/compare/v1.1.389...v1.1.390">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-12 20:01:58 +00:00
Reinier van der Leer
582e12c766 ci(frontend): Speed up test jobs (#8949)
- Resolves #8948

### Changes 🏗️

- Parallelize frontend test job into a per-browser matrix
- Speed up "Free Disk Space" step by disabling removal of large system
packages
2024-12-12 19:54:05 +00:00
Reinier van der Leer
e3cf605e9b feat(frontend): Disallow webhook+input or webhook+webhook in the same graph (#8861)
- Resolves #8853

Disallow combining webhook block with another webhook or input block,
because we can't run those. Our current approach to validating the input
for a graph's starting nodes prohibits such cases.

Demo:


https://github.com/user-attachments/assets/ac098765-bb5f-4218-8cd4-ad992b1b8cda

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
- [x] Add a webhook-triggered block -> can't add another, also can't add
an input block
  - [x] Add an input block -> can't add a webhook-triggered block

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-12 13:56:28 +00:00
Reinier van der Leer
abf73e8d66 fix(backend): Deactivate graph on delete (#8947)
- Resolves #8945

### Changes 🏗️

- Call `on_graph_deactivate` on current active version in `DELETE
/api/graphs/{graph_id}` endpoint
2024-12-11 19:52:07 +00:00
Bently
b16bf42fa3 feat(frontend): Update and fix tutorial (#8943)
This is to fix [Tutorial highlight causes bottom buttons to move up
#8942](https://github.com/Significant-Gravitas/AutoGPT/issues/8942)

### Changes 🏗️

Updates the tutorial to add a short delay before moving onto the next
step which prevents the UI from lifting up in a weird way (skip to 14
seconds in the video below to see this being fixed)
Updates to some of the positioning of the steps

Video to show latest run through whole tutorial 


https://github.com/user-attachments/assets/4cf09a2f-8ed2-45bd-9909-aa92540af845
2024-12-11 19:48:48 +00:00
Reinier van der Leer
33b9eef376 refactor(backend): Simplify CredentialsField usage + use ProviderName globally (#8725)
- Resolves #8931
- Follow-up to #8358

### Changes 🏗️
- Avoid double specifying provider and cred types on `credentials`
inputs
- Move `credentials` sub-schema validation from `CredentialsField` to
`CredentialsMetaInput.validate_credentials_field_schema(..)`, which is
called in `BlockSchema.__pydantic_init_subclass__`
- Use `ProviderName` enum globally
2024-12-11 19:27:09 +00:00
Abhimanyu Yadav
b8a3ffc04a fix(frontend) : Optional number input (#8940)
- Resolve #8928 

Currently, the frontend renders a string input for an optional integer.
I have now corrected it.

![Screenshot 2024-12-11 at 10 23
48 AM](https://github.com/user-attachments/assets/a47eaf4c-97b0-458c-8a2c-fc66fdd0d770)
2024-12-11 19:25:25 +00:00
Krzysztof Czerwinski
3fd2b7ce4a feat(backend): Update schema for PAYG System (#8944)
First step for the PAYG System.

### Changes 🏗️

- Add `stripeCustomerId` to `User` model
- Rename model `UserBlockCredit` to `CreditTransaction`
- Rename model `UserBlockCreditType` to `CreditTransactionType`
- Update related code
- Add a migration

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-11 16:52:13 +00:00
Zamil Majdy
6490b4e188 chore(platform):Refactor GraphExecution naming clash and remove unused Graph Execution functions (#8939)
This is a follow-up of
https://github.com/Significant-Gravitas/AutoGPT/pull/8752

There are several APIs and functions related to graph execution that are
unused now.
There is also confusion about the name of `GraphExecution` that exists
in graph.py & execution.py.

### Changes 🏗️

* Renamed `GraphExecution` in `execution.py` to `GraphExecutionEntry`,
this is only used as a queue entry for execution.
* Removed unused `get_graph_execution` & `list_executions` in
`execution.py`.
* Removed `with_run` option on `get_graph` function in `graph.py`.
* Removed `GraphMetaWithRuns`
* Removed exposed functions only for testing.
* Removed `executions` fields in Graph model.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

---------

Co-authored-by: Krzysztof Czerwinski <34861343+kcze@users.noreply.github.com>
2024-12-11 15:41:15 +00:00
Krzysztof Czerwinski
7a9115db18 fix(frontend): Make pins smaller and fix hover area and highlight for input pins (#8941)
Recently pins were made slightly bigger and misaligned needlessly. The
problem in the linked issue was to fix connection area, not make them
bigger.
- https://github.com/Significant-Gravitas/AutoGPT/issues/8913

### Changes 🏗️

- Revert pins size to smaller
- Fix hover area and highlight for input pins

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [x] Connect, reconnect, remove connection
  - [x] Tutorial works

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-11 09:16:36 +00:00
Krzysztof Czerwinski
6307ca1841 feat(platform): Include all agent versions in Runs in Monitor (#8752)
The graph version is bumped on each save. While the agent version is
changed, the past execution history is gone because the monitor page
only shows the latest version's execution history.

### Changes 🏗️

- Add `get_executions` on the backend that returns all executions of all
graphs for a user
- Display all executions (for all versions) for graphs in Monitor
- Rename ts mirror type `ExecutionMeta` to `GraphExecution` for
consistency with the backend
- Remove redundant `FlowRun` type on the frontend and use
`GraphExecution` instead
- Round execution duration text in Monitor to one decimal place

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-12-11 01:28:50 +00:00
Zamil Majdy
d827d4f9e4 feat(block): Support find all regex extraction for ExtractTextInformationBlock (#8934)
ExtractTextInformationBlock is only supporting extracting one match.

### Changes 🏗️

Adding find_all option to ExtractTextInformationBlock.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-10 21:56:06 +00:00
Zamil Majdy
984d42234c fix(backend): Add missing DB indexes (#8929)
Some table foreign key sources are not properly indexed, causing the
potential full table scan on the code queries.

### Changes 🏗️

Added DB indexes on several tables.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-10 10:19:22 +00:00
Zamil Majdy
79c0c314e2 feat(frontend): Add field extraction handle for block with object output (#8900)
This addresses
https://github.com/Significant-Gravitas/AutoGPT/issues/8741

We have quite a few blocks with (object) outputs. The only way to really
use these is to use a "Find In Dictionary" block to pick out that
property.

If the structure of the output object is known, we should expose the
properties of the object directly as sub-outputs. This will make a huge
difference in UX and make using these blocks much much easier.

### Changes 🏗️

Recursively flatten object fields into output node handles

<img width="637" alt="image"
src="https://github.com/user-attachments/assets/dac1f691-9866-4bb7-96b7-20fa6ddbb616">
<img width="773" alt="image"
src="https://github.com/user-attachments/assets/f8e7f97c-b245-40bd-b84f-2c044f5f9e23">


### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-09 21:47:48 +00:00
dependabot[bot]
e6d728b081 build(deps-dev): bump the development-dependencies group in /autogpt_platform/autogpt_libs with 2 updates (#8924)
Bumps the development-dependencies group in
/autogpt_platform/autogpt_libs with 2 updates:
[redis](https://github.com/redis/redis-py) and
[ruff](https://github.com/astral-sh/ruff).

Updates `redis` from 5.2.0 to 5.2.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/redis/redis-py/releases">redis's
releases</a>.</em></p>
<blockquote>
<h2>5.2.1</h2>
<h1>Changes</h1>
<h2>🐛 Bug Fixes</h2>
<ul>
<li>Fixed unsecured tempfile.mktemp() command usage (<a
href="https://redirect.github.com/redis/redis-py/issues/3446">#3446</a>)</li>
<li>Fixed bug with SLOWLOG GET response parsing on Redis Software (<a
href="https://redirect.github.com/redis/redis-py/issues/3441">#3441</a>)</li>
<li>Fixed issue with invoking _close() on closed event loop (<a
href="https://redirect.github.com/redis/redis-py/issues/3438">#3438</a>)</li>
</ul>
<h2>🧰 Maintenance</h2>
<ul>
<li>Migrate test infrastructure to new custom docker images (<a
href="https://redirect.github.com/redis/redis-py/issues/3415">#3415</a>)</li>
<li>Fixed flacky test with HEXPIREAT command (<a
href="https://redirect.github.com/redis/redis-py/issues/3437">#3437</a>)</li>
</ul>
<h2>Contributors</h2>
<p>We'd like to thank all the contributors who worked on this
release!</p>
<p><a href="https://github.com/IlianIliev"><code>@​IlianIliev</code></a>
<a href="https://github.com/uglide"><code>@​uglide</code></a> <a
href="https://github.com/vladvildanov"><code>@​vladvildanov</code></a>
<a href="https://github.com/teodorfn"><code>@​teodorfn</code></a> <a
href="https://github.com/akx"><code>@​akx</code></a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="a74fa6a3dc"><code>a74fa6a</code></a>
Release 5.2.1 (<a
href="https://redirect.github.com/redis/redis-py/issues/3451">#3451</a>)</li>
<li>See full diff in <a
href="https://github.com/redis/redis-py/compare/v5.2.0...v5.2.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `ruff` from 0.8.1 to 0.8.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.8.2</h2>
<h2>Release Notes</h2>
<h3>Preview features</h3>
<ul>
<li>[<code>airflow</code>] Avoid deprecated values (<code>AIR302</code>)
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14582">#14582</a>)</li>
<li>[<code>airflow</code>] Extend removed names for <code>AIR302</code>
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14734">#14734</a>)</li>
<li>[<code>ruff</code>] Extend
<code>unnecessary-regular-expression</code> to non-literal strings
(<code>RUF055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14679">#14679</a>)</li>
<li>[<code>ruff</code>] Implement <code>used-dummy-variable</code>
(<code>RUF052</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14611">#14611</a>)</li>
<li>[<code>ruff</code>] Implement <code>unnecessary-cast-to-int</code>
(<code>RUF046</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14697">#14697</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>airflow</code>] Check <code>AIR001</code> from builtin or
providers <code>operators</code> module (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14631">#14631</a>)</li>
<li>[<code>flake8-pytest-style</code>] Remove <code>@</code> in
<code>pytest.mark.parametrize</code> rule messages (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14770">#14770</a>)</li>
<li>[<code>pandas-vet</code>] Skip rules if the <code>panda</code>
module hasn't been seen (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14671">#14671</a>)</li>
<li>[<code>pylint</code>] Fix false negatives for <code>ascii</code> and
<code>sorted</code> in <code>len-as-condition</code>
(<code>PLC1802</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14692">#14692</a>)</li>
<li>[<code>refurb</code>] Guard <code>hashlib</code> imports and mark
<code>hashlib-digest-hex</code> fix as safe (<code>FURB181</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14694">#14694</a>)</li>
</ul>
<h3>Configuration</h3>
<ul>
<li>[<code>flake8-import-conventions</code>] Improve syntax check for
aliases supplied in configuration for
<code>unconventional-import-alias</code> (<code>ICN001</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14745">#14745</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Revert: [pyflakes] Avoid false positives in
<code>@no_type_check</code> contexts (<code>F821</code>,
<code>F722</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14615">#14615</a>)
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14726">#14726</a>)</li>
<li>[<code>pep8-naming</code>] Avoid false positive for <code>class
Bar(type(foo))</code> (<code>N804</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14683">#14683</a>)</li>
<li>[<code>pycodestyle</code>] Handle f-strings properly for
<code>invalid-escape-sequence</code> (<code>W605</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14748">#14748</a>)</li>
<li>[<code>pylint</code>] Ignore <code>@overload</code> in
<code>PLR0904</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14730">#14730</a>)</li>
<li>[<code>refurb</code>] Handle non-finite decimals in
<code>verbose-decimal-constructor</code> (<code>FURB157</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14596">#14596</a>)</li>
<li>[<code>ruff</code>] Avoid emitting <code>assignment-in-assert</code>
when all references to the assigned variable are themselves inside
<code>assert</code>s (<code>RUF018</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14661">#14661</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>Improve docs for <code>flake8-use-pathlib</code> rules (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14741">#14741</a>)</li>
<li>Improve error messages and docs for
<code>flake8-comprehensions</code> rules (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14729">#14729</a>)</li>
<li>[<code>flake8-type-checking</code>] Expands <code>TC006</code> docs
to better explain itself (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14749">#14749</a>)</li>
</ul>
<h2>Contributors</h2>
<ul>
<li><a
href="https://github.com/AlexWaygood"><code>@​AlexWaygood</code></a></li>
<li><a
href="https://github.com/Daverball"><code>@​Daverball</code></a></li>
<li><a
href="https://github.com/InSyncWithFoo"><code>@​InSyncWithFoo</code></a></li>
<li><a href="https://github.com/Lee-W"><code>@​Lee-W</code></a></li>
<li><a
href="https://github.com/Lokejoke"><code>@​Lokejoke</code></a></li>
<li><a
href="https://github.com/Matt-Ord"><code>@​Matt-Ord</code></a></li>
<li><a
href="https://github.com/MichaReiser"><code>@​MichaReiser</code></a></li>
<li><a
href="https://github.com/Well2333"><code>@​Well2333</code></a></li>
<li><a
href="https://github.com/connorskees"><code>@​connorskees</code></a></li>
<li><a
href="https://github.com/dcreager"><code>@​dcreager</code></a></li>
<li><a
href="https://github.com/dhruvmanila"><code>@​dhruvmanila</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.8.2</h2>
<h3>Preview features</h3>
<ul>
<li>[<code>airflow</code>] Avoid deprecated values (<code>AIR302</code>)
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14582">#14582</a>)</li>
<li>[<code>airflow</code>] Extend removed names for <code>AIR302</code>
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14734">#14734</a>)</li>
<li>[<code>ruff</code>] Extend
<code>unnecessary-regular-expression</code> to non-literal strings
(<code>RUF055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14679">#14679</a>)</li>
<li>[<code>ruff</code>] Implement <code>used-dummy-variable</code>
(<code>RUF052</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14611">#14611</a>)</li>
<li>[<code>ruff</code>] Implement <code>unnecessary-cast-to-int</code>
(<code>RUF046</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14697">#14697</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>airflow</code>] Check <code>AIR001</code> from builtin or
providers <code>operators</code> module (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14631">#14631</a>)</li>
<li>[<code>flake8-pytest-style</code>] Remove <code>@</code> in
<code>pytest.mark.parametrize</code> rule messages (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14770">#14770</a>)</li>
<li>[<code>pandas-vet</code>] Skip rules if the <code>panda</code>
module hasn't been seen (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14671">#14671</a>)</li>
<li>[<code>pylint</code>] Fix false negatives for <code>ascii</code> and
<code>sorted</code> in <code>len-as-condition</code>
(<code>PLC1802</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14692">#14692</a>)</li>
<li>[<code>refurb</code>] Guard <code>hashlib</code> imports and mark
<code>hashlib-digest-hex</code> fix as safe (<code>FURB181</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14694">#14694</a>)</li>
</ul>
<h3>Configuration</h3>
<ul>
<li>[<code>flake8-import-conventions</code>] Improve syntax check for
aliases supplied in configuration for
<code>unconventional-import-alias</code> (<code>ICN001</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14745">#14745</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Revert: [pyflakes] Avoid false positives in
<code>@no_type_check</code> contexts (<code>F821</code>,
<code>F722</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14615">#14615</a>)
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14726">#14726</a>)</li>
<li>[<code>pep8-naming</code>] Avoid false positive for <code>class
Bar(type(foo))</code> (<code>N804</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14683">#14683</a>)</li>
<li>[<code>pycodestyle</code>] Handle f-strings properly for
<code>invalid-escape-sequence</code> (<code>W605</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14748">#14748</a>)</li>
<li>[<code>pylint</code>] Ignore <code>@overload</code> in
<code>PLR0904</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14730">#14730</a>)</li>
<li>[<code>refurb</code>] Handle non-finite decimals in
<code>verbose-decimal-constructor</code> (<code>FURB157</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14596">#14596</a>)</li>
<li>[<code>ruff</code>] Avoid emitting <code>assignment-in-assert</code>
when all references to the assigned variable are themselves inside
<code>assert</code>s (<code>RUF018</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14661">#14661</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>Improve docs for <code>flake8-use-pathlib</code> rules (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14741">#14741</a>)</li>
<li>Improve error messages and docs for
<code>flake8-comprehensions</code> rules (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14729">#14729</a>)</li>
<li>[<code>flake8-type-checking</code>] Expands <code>TC006</code> docs
to better explain itself (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14749">#14749</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b0e26e6fc8"><code>b0e26e6</code></a>
Bump version to 0.8.2 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14789">#14789</a>)</li>
<li><a
href="e9941cd714"><code>e9941cd</code></a>
[red-knot] Move standalone expr inference to <code>for</code> non-name
target (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14788">#14788</a>)</li>
<li><a
href="43bf1a8907"><code>43bf1a8</code></a>
Add tests for &quot;keyword as identifier&quot; syntax errors (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14754">#14754</a>)</li>
<li><a
href="fda8b1f884"><code>fda8b1f</code></a>
[<code>ruff</code>] Unnecessary cast to <code>int</code>
(<code>RUF046</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14697">#14697</a>)</li>
<li><a
href="2d3f557875"><code>2d3f557</code></a>
[red-knot] Fallback for <code>typing._NoDefaultType</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14783">#14783</a>)</li>
<li><a
href="bd27bfab5d"><code>bd27bfa</code></a>
[red-knot] Unify <code>setup_db()</code> functions, add
<code>TestDb</code> builder (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14777">#14777</a>)</li>
<li><a
href="155d34bbb9"><code>155d34b</code></a>
[red-knot] Infer precise types for <code>len()</code> calls (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14599">#14599</a>)</li>
<li><a
href="04c887c8fc"><code>04c887c</code></a>
Fix references for <code>async-busy-wait</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14775">#14775</a>)</li>
<li><a
href="af43bd4b0f"><code>af43bd4</code></a>
[red-knot] Gradual forms do not participate in equivalence/subtyping (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14758">#14758</a>)</li>
<li><a
href="614917769e"><code>6149177</code></a>
Remove <code>@</code> in <code>pytest.mark.parametrize</code> rule
messages (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14770">#14770</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.8.1...0.8.2">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-09 20:50:53 +00:00
dependabot[bot]
a7a526e820 build(deps): bump the production-dependencies group in /autogpt_platform/frontend with 12 updates (#8925)
Bumps the production-dependencies group in /autogpt_platform/frontend
with 12 updates:

| Package | From | To |
| --- | --- | --- |
| [@faker-js/faker](https://github.com/faker-js/faker) | `9.2.0` |
`9.3.0` |
|
[@next/third-parties](https://github.com/vercel/next.js/tree/HEAD/packages/third-parties)
| `15.0.3` | `15.0.4` |
| [@supabase/supabase-js](https://github.com/supabase/supabase-js) |
`2.46.1` | `2.47.3` |
|
[@xyflow/react](https://github.com/xyflow/xyflow/tree/HEAD/packages/react)
| `12.3.5` | `12.3.6` |
| [class-variance-authority](https://github.com/joe-bell/cva) | `0.7.0`
| `0.7.1` |
| [dotenv](https://github.com/motdotla/dotenv) | `16.4.5` | `16.4.7` |
|
[lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)
| `0.462.0` | `0.468.0` |
| [next-themes](https://github.com/pacocoursey/next-themes) | `0.4.3` |
`0.4.4` |
| [react-day-picker](https://github.com/gpbl/react-day-picker) | `9.4.0`
| `9.4.2` |
| [react-hook-form](https://github.com/react-hook-form/react-hook-form)
| `7.53.2` | `7.54.0` |
| [react-icons](https://github.com/react-icons/react-icons) | `5.3.0` |
`5.4.0` |
| [recharts](https://github.com/recharts/recharts) | `2.13.3` | `2.14.1`
|

Updates `@faker-js/faker` from 9.2.0 to 9.3.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/faker-js/faker/releases"><code>@​faker-js/faker</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v9.3.0</h2>
<h2>What's Changed</h2>
<ul>
<li>chore(deps): lock file maintenance by <a
href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3246">faker-js/faker#3246</a></li>
<li>infra: show eslint progress by <a
href="https://github.com/Shinigami92"><code>@​Shinigami92</code></a> in
<a
href="https://redirect.github.com/faker-js/faker/pull/3172">faker-js/faker#3172</a></li>
<li>infra(unicorn): prefer-string-slice by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3247">faker-js/faker#3247</a></li>
<li>infra: name eslint config groups for inspection by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3249">faker-js/faker#3249</a></li>
<li>infra(ci): prepare CI for GitHub merge queues by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3245">faker-js/faker#3245</a></li>
<li>fix(internet): ensure domainWord always returns a valid value in all
locales by <a
href="https://github.com/matthewmayer"><code>@​matthewmayer</code></a>
in <a
href="https://redirect.github.com/faker-js/faker/pull/3253">faker-js/faker#3253</a></li>
<li>infra: remove preflight failure comment by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3188">faker-js/faker#3188</a></li>
<li>docs(guide): remove esModuleInterop flag from config by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3192">faker-js/faker#3192</a></li>
<li>test: fix vite import warning by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3248">faker-js/faker#3248</a></li>
<li>refactor(locale): lowercase Mexican color names by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3200">faker-js/faker#3200</a></li>
<li>test: verify the generated image links are working by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3127">faker-js/faker#3127</a></li>
<li>chore(deps): update dependency eslint-plugin-file-progress to v3 by
<a href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3252">faker-js/faker#3252</a></li>
<li>chore(deps): lock file maintenance by <a
href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3257">faker-js/faker#3257</a></li>
<li>refactor(locale): improve zh_CN vehicle manufacturers by <a
href="https://github.com/Heuluck"><code>@​Heuluck</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3254">faker-js/faker#3254</a></li>
<li>refactor(finance): deprecate maskedNumber for removal by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3201">faker-js/faker#3201</a></li>
<li>feat: add initial seed parameter to constructors by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3220">faker-js/faker#3220</a></li>
<li>docs: faker.animal.type now has 44 possible animals by <a
href="https://github.com/s-inu"><code>@​s-inu</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3258">faker-js/faker#3258</a></li>
<li>docs: expose documentation for all utilities by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3242">faker-js/faker#3242</a></li>
<li>infra(commit-and-tag-version): auto-bump version in usage-guide by
<a href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3250">faker-js/faker#3250</a></li>
<li>infra(unicorn): consistent-function-scoping by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3255">faker-js/faker#3255</a></li>
<li>chore(deps): bump <code>@​eslint/plugin-kit</code> from 0.2.2 to
0.2.3 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3268">faker-js/faker#3268</a></li>
<li>chore(deps): lock file maintenance by <a
href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3271">faker-js/faker#3271</a></li>
<li>chore(test): cleanup usages of randomSeed by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3260">faker-js/faker#3260</a></li>
<li>refactor(locale): split en_AU_ocker first_names by sex by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3270">faker-js/faker#3270</a></li>
<li>infra(CI): skip required CI steps in merge_queues by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3265">faker-js/faker#3265</a></li>
<li>refactor(word): cleanup filter-word-list-by-length.ts by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3262">faker-js/faker#3262</a></li>
<li>chore: fix import styling by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3273">faker-js/faker#3273</a></li>
<li>chore: import validator functions individually by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3274">faker-js/faker#3274</a></li>
<li>chore(deps): lock file maintenance by <a
href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3277">faker-js/faker#3277</a></li>
<li>fix(locale): fix incorrect accents in it first_name by <a
href="https://github.com/matthewmayer"><code>@​matthewmayer</code></a>
in <a
href="https://redirect.github.com/faker-js/faker/pull/3281">faker-js/faker#3281</a></li>
<li>test(image): improve error text by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3278">faker-js/faker#3278</a></li>
<li>fix(locale): add Isadora to female names in pt_BR for consistency by
<a
href="https://github.com/matthewmayer"><code>@​matthewmayer</code></a>
in <a
href="https://redirect.github.com/faker-js/faker/pull/3282">faker-js/faker#3282</a></li>
<li>refactor(locale): split up Spanish generic first names by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3279">faker-js/faker#3279</a></li>
<li>docs(guide): fix link to <code>helpers</code> module by <a
href="https://github.com/yoshi2no"><code>@​yoshi2no</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3289">faker-js/faker#3289</a></li>
<li>docs: add missing example return value for internet.jwt by <a
href="https://github.com/xDivisionByZerox"><code>@​xDivisionByZerox</code></a>
in <a
href="https://redirect.github.com/faker-js/faker/pull/3286">faker-js/faker#3286</a></li>
<li>refactor(locale): sort person data by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3269">faker-js/faker#3269</a></li>
<li>docs: improve example output for replaceSymbols by <a
href="https://github.com/matthewmayer"><code>@​matthewmayer</code></a>
in <a
href="https://redirect.github.com/faker-js/faker/pull/3304">faker-js/faker#3304</a></li>
<li>chore(deps): lock file maintenance by <a
href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3305">faker-js/faker#3305</a></li>
<li>chore(deps): update all non-major dependencies by <a
href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3292">faker-js/faker#3292</a></li>
<li>chore(deps): update codecov/codecov-action action to v5 by <a
href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3299">faker-js/faker#3299</a></li>
<li>chore(deps): update dependency typescript to v5.7.2 by <a
href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3296">faker-js/faker#3296</a></li>
<li>chore(deps): update dependency <code>@​vueuse/core</code> to v12 by
<a href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3300">faker-js/faker#3300</a></li>
<li>chore(deps): update eslint by <a
href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3293">faker-js/faker#3293</a></li>
<li>chore(deps): update devdependencies by <a
href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3298">faker-js/faker#3298</a></li>
<li>chore(deps): update dependency vitepress to v1.5.0 by <a
href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3297">faker-js/faker#3297</a></li>
<li>chore(deps): update vitest by <a
href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3294">faker-js/faker#3294</a></li>
<li>chore(deps): update dependency prettier to v3.4.1 by <a
href="https://github.com/renovate"><code>@​renovate</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3295">faker-js/faker#3295</a></li>
<li>infra(unicorn): prefer-export-from by <a
href="https://github.com/ST-DDT"><code>@​ST-DDT</code></a> in <a
href="https://redirect.github.com/faker-js/faker/pull/3272">faker-js/faker#3272</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/faker-js/faker/blob/next/CHANGELOG.md"><code>@​faker-js/faker</code>'s
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/faker-js/faker/compare/v9.2.0...v9.3.0">9.3.0</a>
(2024-12-02)</h2>
<h3>Features</h3>
<ul>
<li>add initial seed parameter to constructors (<a
href="https://redirect.github.com/faker-js/faker/issues/3220">#3220</a>)
(<a
href="1633c8deb8">1633c8d</a>)</li>
</ul>
<h3>Changed Locales</h3>
<ul>
<li><strong>locale:</strong> improve zh_CN vehicle manufacturers (<a
href="https://redirect.github.com/faker-js/faker/issues/3254">#3254</a>)
(<a
href="9abaed1061">9abaed1</a>)</li>
<li><strong>locale:</strong> lowercase Mexican color names (<a
href="https://redirect.github.com/faker-js/faker/issues/3200">#3200</a>)
(<a
href="0d850758d0">0d85075</a>)</li>
<li><strong>locale:</strong> sort person data (<a
href="https://redirect.github.com/faker-js/faker/issues/3269">#3269</a>)
(<a
href="01e20e9695">01e20e9</a>)</li>
<li><strong>locale:</strong> split en_AU_ocker first_names by sex (<a
href="https://redirect.github.com/faker-js/faker/issues/3270">#3270</a>)
(<a
href="b0a5ad38bb">b0a5ad3</a>)</li>
<li><strong>locale:</strong> split up Spanish generic first names (<a
href="https://redirect.github.com/faker-js/faker/issues/3279">#3279</a>)
(<a
href="5d5fe30ab4">5d5fe30</a>)</li>
<li><strong>locale:</strong> update Polish city name (<a
href="https://redirect.github.com/faker-js/faker/issues/3306">#3306</a>)
(<a
href="53441b7773">53441b7</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>internet:</strong> ensure domainWord always returns a valid
value in all locales (<a
href="https://redirect.github.com/faker-js/faker/issues/3253">#3253</a>)
(<a
href="525fedc91b">525fedc</a>)</li>
<li><strong>locale:</strong> add Isadora to female names in pt_BR for
consistency (<a
href="https://redirect.github.com/faker-js/faker/issues/3282">#3282</a>)
(<a
href="b390432626">b390432</a>)</li>
<li><strong>locale:</strong> fix incorrect accents in it first_name (<a
href="https://redirect.github.com/faker-js/faker/issues/3281">#3281</a>)
(<a
href="e0fb23ef81">e0fb23e</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="bdd55adc39"><code>bdd55ad</code></a>
chore(release): 9.3.0 (<a
href="https://redirect.github.com/faker-js/faker/issues/3307">#3307</a>)</li>
<li><a
href="ecb5cb4a42"><code>ecb5cb4</code></a>
chore(deps): lock file maintenance (<a
href="https://redirect.github.com/faker-js/faker/issues/3311">#3311</a>)</li>
<li><a
href="0fb42953af"><code>0fb4295</code></a>
chore(deps): update vitest to v2.1.7 (<a
href="https://redirect.github.com/faker-js/faker/issues/3310">#3310</a>)</li>
<li><a
href="fcfb873913"><code>fcfb873</code></a>
chore(deps): update dependency <code>@​vitest/ui</code> to v2.1.7 (<a
href="https://redirect.github.com/faker-js/faker/issues/3309">#3309</a>)</li>
<li><a
href="53441b7773"><code>53441b7</code></a>
refactor(locale): update Polish city name (<a
href="https://redirect.github.com/faker-js/faker/issues/3306">#3306</a>)</li>
<li><a
href="7d59cd9bfb"><code>7d59cd9</code></a>
infra(unicorn): prefer-export-from (<a
href="https://redirect.github.com/faker-js/faker/issues/3272">#3272</a>)</li>
<li><a
href="176d430036"><code>176d430</code></a>
chore(deps): update dependency prettier to v3.4.1 (<a
href="https://redirect.github.com/faker-js/faker/issues/3295">#3295</a>)</li>
<li><a
href="ed2c3a2014"><code>ed2c3a2</code></a>
chore(deps): update vitest (<a
href="https://redirect.github.com/faker-js/faker/issues/3294">#3294</a>)</li>
<li><a
href="dd3dbbdd8c"><code>dd3dbbd</code></a>
chore(deps): update dependency vitepress to v1.5.0 (<a
href="https://redirect.github.com/faker-js/faker/issues/3297">#3297</a>)</li>
<li><a
href="54cdd5b885"><code>54cdd5b</code></a>
chore(deps): update devdependencies (<a
href="https://redirect.github.com/faker-js/faker/issues/3298">#3298</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/faker-js/faker/compare/v9.2.0...v9.3.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `@next/third-parties` from 15.0.3 to 15.0.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vercel/next.js/releases"><code>@​next/third-parties</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v15.0.4</h2>
<blockquote>
<p>[!NOTE]<br />
This release is backporting changes. It does <strong>not</strong>
include all pending features/changes on canary.</p>
</blockquote>
<h3>Core Changes</h3>
<ul>
<li>Use React 19 stable in Pages Router: <a
href="https://redirect.github.com/vercel/next.js/pull/73564">vercel/next.js#73564</a></li>
</ul>
<h3>Credits</h3>
<p>Huge thanks to <a
href="https://github.com/eps1lon"><code>@​eps1lon</code></a></p>
<h2>v15.0.4-canary.48</h2>
<h3>Misc Changes</h3>
<ul>
<li>refactor(turbopack): Use <code>ResolvedVc&lt;T&gt;</code> for struct
fields in extra crates: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73451">#73451</a></li>
<li>refactor(turbopack): Use <code>ResolvedVc&lt;T&gt;</code> for struct
fields in <code>next-api</code>, final part: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73367">#73367</a></li>
<li>docs: Fix image component API reference parsing: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73658">#73658</a></li>
<li>docs: fix code block language in images-and-fonts docs: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73492">#73492</a></li>
</ul>
<h3>Credits</h3>
<p>Huge thanks to <a
href="https://github.com/kdy1"><code>@​kdy1</code></a>, <a
href="https://github.com/eps1lon"><code>@​eps1lon</code></a>, and <a
href="https://github.com/JamBalaya56562"><code>@​JamBalaya56562</code></a>
for helping!</p>
<h2>v15.0.4-canary.47</h2>
<h3>Misc Changes</h3>
<ul>
<li>test: fix next-sass test: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73633">#73633</a></li>
</ul>
<h3>Credits</h3>
<p>Huge thanks to <a
href="https://github.com/samcx"><code>@​samcx</code></a> for
helping!</p>
<h2>v15.0.4-canary.46</h2>
<h3>Core Changes</h3>
<ul>
<li>Use consistent error formatting in terminal: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/71909">#71909</a></li>
<li>[Segment Cache] Interception routes: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73434">#73434</a></li>
<li>Upgrade to typescript 5.7: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73594">#73594</a></li>
<li>[Segment Cache] Use LRU to manage cache data : <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73486">#73486</a></li>
<li>[Segment Cache] Add isPartial to segment prefetch : <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73528">#73528</a></li>
<li>Fix missing client reference manifest error when using route groups:
<a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73606">#73606</a></li>
<li>feat(after): stabilize <code>unstable_after</code>: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73605">#73605</a></li>
<li>[Segment Cache] Add isHeadPartial: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73530">#73530</a></li>
<li>fix: do not add suffix for sitemap under group routes: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73570">#73570</a></li>
<li>Dynamic IO: Improve error handling: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73607">#73607</a></li>
</ul>
<h3>Example Changes</h3>
<ul>
<li>Bump <code>examples/**</code> Eslint to v9: <a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73560">#73560</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d6a6aa1406"><code>d6a6aa1</code></a>
v15.0.4</li>
<li><a
href="8774088bc2"><code>8774088</code></a>
[Backport 15.0] Use React 19 stable (<a
href="https://github.com/vercel/next.js/tree/HEAD/packages/third-parties/issues/73564">#73564</a>)</li>
<li>See full diff in <a
href="https://github.com/vercel/next.js/commits/v15.0.4/packages/third-parties">compare
view</a></li>
</ul>
</details>
<br />

Updates `@supabase/supabase-js` from 2.46.1 to 2.47.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/supabase/supabase-js/releases"><code>@​supabase/supabase-js</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v2.47.3</h2>
<h2><a
href="https://github.com/supabase/supabase-js/compare/v2.47.2...v2.47.3">2.47.3</a>
(2024-12-09)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>Bind proper object to setAuth on Realtime callback (<a
href="https://redirect.github.com/supabase/supabase-js/issues/1324">#1324</a>)
(<a
href="325c2c9b25">325c2c9</a>)</li>
</ul>
<h2>v2.47.2</h2>
<h2><a
href="https://github.com/supabase/supabase-js/compare/v2.47.1...v2.47.2">2.47.2</a>
(2024-12-06)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>bump auth-js to v2.66.1 (<a
href="https://redirect.github.com/supabase/supabase-js/issues/1325">#1325</a>)
(<a
href="0ea6d8f2c7">0ea6d8f</a>)</li>
</ul>
<h2>v2.47.1</h2>
<h2><a
href="https://github.com/supabase/supabase-js/compare/v2.47.0...v2.47.1">2.47.1</a>
(2024-12-05)</h2>
<h3>Reverts</h3>
<ul>
<li>Revert &quot;feat: Realtime using accessToken callback for auth (<a
href="https://redirect.github.com/supabase/supabase-js/issues/1320">#1320</a>)&quot;
(<a
href="https://redirect.github.com/supabase/supabase-js/issues/1323">#1323</a>)
(<a
href="b9c86f503e">b9c86f5</a>),
closes <a
href="https://redirect.github.com/supabase/supabase-js/issues/1320">#1320</a>
<a
href="https://redirect.github.com/supabase/supabase-js/issues/1323">#1323</a></li>
</ul>
<h2>v2.47.0</h2>
<h1><a
href="https://github.com/supabase/supabase-js/compare/v2.46.2...v2.47.0">2.47.0</a>
(2024-12-05)</h1>
<h3>Features</h3>
<ul>
<li>Realtime using accessToken callback for auth (<a
href="https://redirect.github.com/supabase/supabase-js/issues/1320">#1320</a>)
(<a
href="88a44dfbfd">88a44df</a>)</li>
</ul>
<h2>v2.46.2</h2>
<h2><a
href="https://github.com/supabase/supabase-js/compare/v2.46.1...v2.46.2">2.46.2</a>
(2024-11-27)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>bump up realtime-js (<a
href="https://redirect.github.com/supabase/supabase-js/issues/1318">#1318</a>)
(<a
href="456f27e02e">456f27e</a>)</li>
</ul>
<h2>v2.46.2-rc.3</h2>
<h2><a
href="https://github.com/supabase/supabase-js/compare/v2.46.2-rc.2...v2.46.2-rc.3">2.46.2-rc.3</a>
(2024-11-13)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>cut release (<a
href="917cbf717c">917cbf7</a>)</li>
</ul>
<h2>v2.46.2-rc.2</h2>
<h2><a
href="https://github.com/supabase/supabase-js/compare/v2.46.2-rc.1...v2.46.2-rc.2">2.46.2-rc.2</a>
(2024-11-13)</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="325c2c9b25"><code>325c2c9</code></a>
fix: Bind proper object to setAuth on Realtime callback (<a
href="https://redirect.github.com/supabase/supabase-js/issues/1324">#1324</a>)</li>
<li><a
href="0ea6d8f2c7"><code>0ea6d8f</code></a>
fix: bump auth-js to v2.66.1 (<a
href="https://redirect.github.com/supabase/supabase-js/issues/1325">#1325</a>)</li>
<li><a
href="b9c86f503e"><code>b9c86f5</code></a>
Revert &quot;feat: Realtime using accessToken callback for auth (<a
href="https://redirect.github.com/supabase/supabase-js/issues/1320">#1320</a>)&quot;
(<a
href="https://redirect.github.com/supabase/supabase-js/issues/1323">#1323</a>)</li>
<li><a
href="88a44dfbfd"><code>88a44df</code></a>
feat: Realtime using accessToken callback for auth (<a
href="https://redirect.github.com/supabase/supabase-js/issues/1320">#1320</a>)</li>
<li><a
href="456f27e02e"><code>456f27e</code></a>
fix: bump up realtime-js (<a
href="https://redirect.github.com/supabase/supabase-js/issues/1318">#1318</a>)</li>
<li>See full diff in <a
href="https://github.com/supabase/supabase-js/compare/v2.46.1...v2.47.3">compare
view</a></li>
</ul>
</details>
<br />

Updates `@xyflow/react` from 12.3.5 to 12.3.6
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/xyflow/xyflow/releases"><code>@​xyflow/react</code>'s
releases</a>.</em></p>
<blockquote>
<h2><code>@​xyflow/react</code><a
href="https://github.com/12"><code>@​12</code></a>.3.6</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4846">#4846</a> <a
href="7501793900"><code>75017939</code></a>
Thanks <a href="https://github.com/moklick"><code>@​moklick</code></a>!
- Make it possible to use expandParent with immer and other immutable
helpers</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4865">#4865</a> <a
href="2c4acc2bd9"><code>2c4acc2b</code></a>
Thanks <a href="https://github.com/moklick"><code>@​moklick</code></a>!
- Add group node to BuiltInNode type. Thanks <a
href="https://github.com/sjdemartini"><code>@​sjdemartini</code></a>!</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4877">#4877</a> <a
href="9a8309dab8"><code>9a8309da</code></a>
Thanks <a
href="https://github.com/peterkogo"><code>@​peterkogo</code></a>! - Fix
intersections for nodes with origins other than [0,0]. Thanks <a
href="https://github.com/gmvrpw"><code>@​gmvrpw</code></a>!</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4844">#4844</a> <a
href="6f11e552c3"><code>6f11e552</code></a>
Thanks <a href="https://github.com/moklick"><code>@​moklick</code></a>!
- Allow custom data-testid for ReactFlow component</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4816">#4816</a> <a
href="43aa52a8cd"><code>43aa52a8</code></a>
Thanks <a href="https://github.com/moklick"><code>@​moklick</code></a>!
- Type isValidConnection prop correctly by passing EdgeType</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4855">#4855</a> <a
href="106c2cf8e5"><code>106c2cf8</code></a>
Thanks <a
href="https://github.com/mhuggins"><code>@​mhuggins</code></a>! -
Support passing <code>path</code> element attributes to
<code>BaseEdge</code> component.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4862">#4862</a> <a
href="adf4fb4e7b"><code>adf4fb4e</code></a>
Thanks <a
href="https://github.com/bcakmakoglu"><code>@​bcakmakoglu</code></a>! -
Prevent default scrolling behavior when nodes or a selection is moved
with an arrow key press.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4875">#4875</a> <a
href="41d4743a69"><code>41d4743a</code></a>
Thanks <a
href="https://github.com/peterkogo"><code>@​peterkogo</code></a>! -
Prevent unnecessary rerenders of edges when resizing the flow.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4826">#4826</a> <a
href="5f90acdab1"><code>5f90acda</code></a>
Thanks <a href="https://github.com/chrtze"><code>@​chrtze</code></a>! -
Forward ref of the div inside Panel components.</p>
</li>
<li>
<p>Updated dependencies [<a
href="d60331e6ba"><code>d60331e6</code></a>]:</p>
<ul>
<li><code>@​xyflow/system</code><a
href="https://github.com/0"><code>@​0</code></a>.0.47</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/xyflow/xyflow/blob/main/packages/react/CHANGELOG.md"><code>@​xyflow/react</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>12.3.6</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4846">#4846</a> <a
href="7501793900"><code>75017939</code></a>
Thanks <a href="https://github.com/moklick"><code>@​moklick</code></a>!
- Make it possible to use expandParent with immer and other immutable
helpers</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4865">#4865</a> <a
href="2c4acc2bd9"><code>2c4acc2b</code></a>
Thanks <a href="https://github.com/moklick"><code>@​moklick</code></a>!
- Add group node to BuiltInNode type. Thanks <a
href="https://github.com/sjdemartini"><code>@​sjdemartini</code></a>!</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4877">#4877</a> <a
href="9a8309dab8"><code>9a8309da</code></a>
Thanks <a
href="https://github.com/peterkogo"><code>@​peterkogo</code></a>! - Fix
intersections for nodes with origins other than [0,0]. Thanks <a
href="https://github.com/gmvrpw"><code>@​gmvrpw</code></a>!</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4844">#4844</a> <a
href="6f11e552c3"><code>6f11e552</code></a>
Thanks <a href="https://github.com/moklick"><code>@​moklick</code></a>!
- Allow custom data-testid for ReactFlow component</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4816">#4816</a> <a
href="43aa52a8cd"><code>43aa52a8</code></a>
Thanks <a href="https://github.com/moklick"><code>@​moklick</code></a>!
- Type isValidConnection prop correctly by passing EdgeType</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4855">#4855</a> <a
href="106c2cf8e5"><code>106c2cf8</code></a>
Thanks <a
href="https://github.com/mhuggins"><code>@​mhuggins</code></a>! -
Support passing <code>path</code> element attributes to
<code>BaseEdge</code> component.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4862">#4862</a> <a
href="adf4fb4e7b"><code>adf4fb4e</code></a>
Thanks <a
href="https://github.com/bcakmakoglu"><code>@​bcakmakoglu</code></a>! -
Prevent default scrolling behavior when nodes or a selection is moved
with an arrow key press.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4875">#4875</a> <a
href="41d4743a69"><code>41d4743a</code></a>
Thanks <a
href="https://github.com/peterkogo"><code>@​peterkogo</code></a>! -
Prevent unnecessary rerenders of edges when resizing the flow.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/xyflow/xyflow/pull/4826">#4826</a> <a
href="5f90acdab1"><code>5f90acda</code></a>
Thanks <a href="https://github.com/chrtze"><code>@​chrtze</code></a>! -
Forward ref of the div inside Panel components.</p>
</li>
<li>
<p>Updated dependencies [<a
href="d60331e6ba"><code>d60331e6</code></a>]:</p>
<ul>
<li><code>@​xyflow/system</code><a
href="https://github.com/0"><code>@​0</code></a>.0.47</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="ba75c01da4"><code>ba75c01</code></a>
chore(packages): bump</li>
<li><a
href="42bb083a6c"><code>42bb083</code></a>
Merge pull request <a
href="https://github.com/xyflow/xyflow/tree/HEAD/packages/react/issues/4877">#4877</a>
from xyflow/fix/intersection-origin2</li>
<li><a
href="7de640685a"><code>7de6406</code></a>
Fix origin not being respected, when calulating rect</li>
<li><a
href="738510b709"><code>738510b</code></a>
Prevent rerendering of EdgeRenderer by removing width &amp; height from
selector</li>
<li><a
href="a666888a1e"><code>a666888</code></a>
refacotr(types): add group node to BuiltInNode type</li>
<li><a
href="ce8c2cf7a6"><code>ce8c2cf</code></a>
Merge pull request <a
href="https://github.com/xyflow/xyflow/tree/HEAD/packages/react/issues/4855">#4855</a>
from mhuggins/html-element-props</li>
<li><a
href="7a8e53463e"><code>7a8e534</code></a>
chore(react): cleanup base edge</li>
<li><a
href="cc6b1d9717"><code>cc6b1d9</code></a>
remove unsused import</li>
<li><a
href="cf3bae57b1"><code>cf3bae5</code></a>
removed svg props from straight edge</li>
<li><a
href="3526963f0b"><code>3526963</code></a>
Revert back to passing props manually</li>
<li>Additional commits viewable in <a
href="https://github.com/xyflow/xyflow/commits/@xyflow/react@12.3.6/packages/react">compare
view</a></li>
</ul>
</details>
<br />

Updates `class-variance-authority` from 0.7.0 to 0.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/joe-bell/cva/releases">class-variance-authority's
releases</a>.</em></p>
<blockquote>
<h2>v0.7.1</h2>
<h2>What's Changed</h2>
<ul>
<li>Add LICENSE Comments by <a
href="https://github.com/joe-bell"><code>@​joe-bell</code></a> in <a
href="https://redirect.github.com/joe-bell/cva/pull/283">joe-bell/cva#283</a></li>
<li>chore: move clsx dependency to caret/semver range by <a
href="https://github.com/philwolstenholme"><code>@​philwolstenholme</code></a>
in <a
href="https://redirect.github.com/joe-bell/cva/pull/316">joe-bell/cva#316</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/philwolstenholme"><code>@​philwolstenholme</code></a>
made their first contribution in <a
href="https://redirect.github.com/joe-bell/cva/pull/316">joe-bell/cva#316</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/joe-bell/cva/compare/v0.7.0...v0.7.1">https://github.com/joe-bell/cva/compare/v0.7.0...v0.7.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="45462dd239"><code>45462dd</code></a>
class-variance-authority@0.7.1</li>
<li><a
href="c236552742"><code>c236552</code></a>
docs: change x.com references to bluesky</li>
<li><a
href="985dba91cf"><code>985dba9</code></a>
chore: move clsx dependency to caret/semver range (<a
href="https://redirect.github.com/joe-bell/cva/issues/316">#316</a>)</li>
<li><a
href="d4ded2dfcc"><code>d4ded2d</code></a>
chore: update sponsors.svg [ci skip]</li>
<li><a
href="ff1717cbe3"><code>ff1717c</code></a>
ci(schedule): adjust cron date to offset midnight traffic</li>
<li><a
href="2f96730b7b"><code>2f96730</code></a>
ci: prevent scheduled workflow running in forks</li>
<li><a
href="aaae670a35"><code>aaae670</code></a>
docs(beta): bun installation</li>
<li><a
href="69feb436b6"><code>69feb43</code></a>
update docs for bun installation (<a
href="https://redirect.github.com/joe-bell/cva/issues/261">#261</a>)</li>
<li><a
href="f9e2ea6764"><code>f9e2ea6</code></a>
chore(docs): update banner links</li>
<li><a
href="5228f0e66f"><code>5228f0e</code></a>
chore: link sponsors to raw svg</li>
<li>Additional commits viewable in <a
href="https://github.com/joe-bell/cva/compare/v0.7.0...v0.7.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `dotenv` from 16.4.5 to 16.4.7
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md">dotenv's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/motdotla/dotenv/compare/v16.4.6...v16.4.7">16.4.7</a>
(2024-12-03)</h2>
<h3>Changed</h3>
<ul>
<li>Ignore <code>.tap</code> folder when publishing. (oops, sorry about
that everyone. - <a
href="https://github.com/motdotla"><code>@​motdotla</code></a>) <a
href="https://redirect.github.com/motdotla/dotenv/pull/848">#848</a></li>
</ul>
<h2><a
href="https://github.com/motdotla/dotenv/compare/v16.4.5...v16.4.6">16.4.6</a>
(2024-12-02)</h2>
<h3>Changed</h3>
<ul>
<li>Clean up stale dev dependencies <a
href="https://redirect.github.com/motdotla/dotenv/pull/847">#847</a></li>
<li>Various README updates clarifying usage and alternative solutions
using <a href="https://github.com/dotenvx/dotenvx">dotenvx</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="a338d68264"><code>a338d68</code></a>
16.4.7</li>
<li><a
href="daf3e3d5cc"><code>daf3e3d</code></a>
changelog 🪵</li>
<li><a
href="fb74f6809f"><code>fb74f68</code></a>
Merge pull request <a
href="https://redirect.github.com/motdotla/dotenv/issues/848">#848</a>
from Spice-King/patch-1</li>
<li><a
href="fe87ba23b5"><code>fe87ba2</code></a>
Add .tap to .npmignore</li>
<li><a
href="0c9f764c66"><code>0c9f764</code></a>
16.4.6</li>
<li><a
href="fd5f26b6c7"><code>fd5f26b</code></a>
changelog 🪵</li>
<li><a
href="bb19b6bb55"><code>bb19b6b</code></a>
Merge pull request <a
href="https://redirect.github.com/motdotla/dotenv/issues/847">#847</a>
from motdotla/deps-updates</li>
<li><a
href="2f4e36bbe2"><code>2f4e36b</code></a>
further dev dependency cleanup</li>
<li><a
href="c2fdd0169d"><code>c2fdd01</code></a>
send to codecov</li>
<li><a
href="6707487b9e"><code>6707487</code></a>
add test coverage</li>
<li>Additional commits viewable in <a
href="https://github.com/motdotla/dotenv/compare/v16.4.5...v16.4.7">compare
view</a></li>
</ul>
</details>
<br />

Updates `lucide-react` from 0.462.0 to 0.468.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/lucide-icons/lucide/releases">lucide-react's
releases</a>.</em></p>
<blockquote>
<h2>New icons 0.468.0</h2>
<h2>New icons 🎨</h2>
<ul>
<li><code>waves-ladder</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2529">#2529</a>)
by <a href="https://github.com/jguddas"><code>@​jguddas</code></a></li>
</ul>
<h2>New icons 0.467.0</h2>
<h2>New icons 🎨</h2>
<ul>
<li><code>scan-heart</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2385">#2385</a>)
by <a href="https://github.com/jguddas"><code>@​jguddas</code></a></li>
</ul>
<h2>Modified Icons 🔨</h2>
<ul>
<li><code>book-dashed</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2399">#2399</a>)
by <a href="https://github.com/jguddas"><code>@​jguddas</code></a></li>
</ul>
<h2>New icons 0.466.0</h2>
<h2>New icons 🎨</h2>
<ul>
<li><code>list-filter-plus</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2645">#2645</a>)
by <a href="https://github.com/abdeniz"><code>@​abdeniz</code></a></li>
</ul>
<h2>Modified Icons 🔨</h2>
<ul>
<li><code>bell-dot</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2656">#2656</a>)
by <a
href="https://github.com/karsa-mistmere"><code>@​karsa-mistmere</code></a></li>
<li><code>bell-minus</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2656">#2656</a>)
by <a
href="https://github.com/karsa-mistmere"><code>@​karsa-mistmere</code></a></li>
<li><code>bell-off</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2656">#2656</a>)
by <a
href="https://github.com/karsa-mistmere"><code>@​karsa-mistmere</code></a></li>
<li><code>bell-plus</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2656">#2656</a>)
by <a
href="https://github.com/karsa-mistmere"><code>@​karsa-mistmere</code></a></li>
<li><code>bell-ring</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2656">#2656</a>)
by <a
href="https://github.com/karsa-mistmere"><code>@​karsa-mistmere</code></a></li>
<li><code>bell</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2656">#2656</a>)
by <a
href="https://github.com/karsa-mistmere"><code>@​karsa-mistmere</code></a></li>
</ul>
<h2>New icons 0.465.0</h2>
<h2>New icons 🎨</h2>
<ul>
<li><code>droplet-off</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2641">#2641</a>)
by <a href="https://github.com/jguddas"><code>@​jguddas</code></a></li>
</ul>
<h2>Modified Icons 🔨</h2>
<ul>
<li><code>flask-conical-off</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2659">#2659</a>)
by <a
href="https://github.com/jamiemlaw"><code>@​jamiemlaw</code></a></li>
<li><code>flask-conical</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2659">#2659</a>)
by <a
href="https://github.com/jamiemlaw"><code>@​jamiemlaw</code></a></li>
<li><code>flask-round</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2659">#2659</a>)
by <a
href="https://github.com/jamiemlaw"><code>@​jamiemlaw</code></a></li>
</ul>
<h2>New icons 0.464.0</h2>
<h2>Modified Icons 🔨</h2>
<ul>
<li><code>paperclip</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2482">#2482</a>)
by <a href="https://github.com/jguddas"><code>@​jguddas</code></a></li>
<li><code>picture-in-picture</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2481">#2481</a>)
by <a href="https://github.com/jguddas"><code>@​jguddas</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4f038d5fe8"><code>4f038d5</code></a>
feat(docs): add Bun.sh support to documentation (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2642">#2642</a>)</li>
<li>See full diff in <a
href="https://github.com/lucide-icons/lucide/commits/0.468.0/packages/lucide-react">compare
view</a></li>
</ul>
</details>
<br />

Updates `next-themes` from 0.4.3 to 0.4.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pacocoursey/next-themes/releases">next-themes's
releases</a>.</em></p>
<blockquote>
<h2>v0.4.4</h2>
<h2>What's Changed</h2>
<ul>
<li>fix: infinite loop theme flicker by <a
href="https://github.com/arturbien"><code>@​arturbien</code></a> in <a
href="https://redirect.github.com/pacocoursey/next-themes/pull/329">pacocoursey/next-themes#329</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/o1Suleyman"><code>@​o1Suleyman</code></a> made
their first contribution in <a
href="https://redirect.github.com/pacocoursey/next-themes/pull/328">pacocoursey/next-themes#328</a></li>
<li><a href="https://github.com/arturbien"><code>@​arturbien</code></a>
made their first contribution in <a
href="https://redirect.github.com/pacocoursey/next-themes/pull/329">pacocoursey/next-themes#329</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/pacocoursey/next-themes/compare/v0.4.3...v0.4.4">https://github.com/pacocoursey/next-themes/compare/v0.4.3...v0.4.4</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="57c0561b1f"><code>57c0561</code></a>
v0.4.4</li>
<li><a
href="ae2ab9b47a"><code>ae2ab9b</code></a>
fix: infinite loop theme flicker (<a
href="https://redirect.github.com/pacocoursey/next-themes/issues/329">#329</a>)</li>
<li><a
href="32ef714130"><code>32ef714</code></a>
Fix &quot;With Tailwind&quot; link (<a
href="https://redirect.github.com/pacocoursey/next-themes/issues/328">#328</a>)</li>
<li>See full diff in <a
href="https://github.com/pacocoursey/next-themes/compare/v0.4.3...v0.4.4">compare
view</a></li>
</ul>
</details>
<br />

Updates `react-day-picker` from 9.4.0 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gpbl/react-day-picker/releases">react-day-picker's
releases</a>.</em></p>
<blockquote>
<h2>v9.4.2</h2>
<p>This release addresses some bugs in the dropdown caption layout.</p>
<h2>What's Changed</h2>
<ul>
<li>fix: display all available years in the dropdown by <a
href="https://github.com/rodgobbi"><code>@​rodgobbi</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2614">gpbl/react-day-picker#2614</a></li>
<li>fix: display all months in dropdown by <a
href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2619">gpbl/react-day-picker#2619</a></li>
<li>docs: update styling.mdx by <a
href="https://github.com/AlecRust"><code>@​AlecRust</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2611">gpbl/react-day-picker#2611</a></li>
<li>docs: code typo in input-fields.mdx by <a
href="https://github.com/pkgacek"><code>@​pkgacek</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2613">gpbl/react-day-picker#2613</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/AlecRust"><code>@​AlecRust</code></a>
made their first contribution in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2611">gpbl/react-day-picker#2611</a></li>
<li><a href="https://github.com/pkgacek"><code>@​pkgacek</code></a> made
their first contribution in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2613">gpbl/react-day-picker#2613</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/gpbl/react-day-picker/compare/v9.4.1...v9.4.2">https://github.com/gpbl/react-day-picker/compare/v9.4.1...v9.4.2</a></p>
<h2>v9.4.1</h2>
<p>This release improves support for screen readers and fixes a
VoiceOver issue when navigating the calendar.</p>
<h2>What's Changed</h2>
<ul>
<li>fix(a11y): improve screen reader and VoiceOver support by <a
href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2609">gpbl/react-day-picker#2609</a></li>
<li>feat(a11y): added <code>role</code> and <code>aria-label</code>
props by <a href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2609">gpbl/react-day-picker#2609</a></li>
<li>chore(style): remove unused CSS variable by <a
href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2610">gpbl/react-day-picker#2610</a></li>
<li>chore: use callbacks for dropdown event handlers by <a
href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2602">gpbl/react-day-picker#2602</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/gpbl/react-day-picker/compare/v9.4.0...v9.4.1">https://github.com/gpbl/react-day-picker/compare/v9.4.0...v9.4.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="a617141132"><code>a617141</code></a>
build: bump v9.4.2</li>
<li><a
href="63303e772a"><code>63303e7</code></a>
fix: dropdown may miss some disabled months (<a
href="https://redirect.github.com/gpbl/react-day-picker/issues/2619">#2619</a>)</li>
<li><a
href="3db609c02f"><code>3db609c</code></a>
chore(test): update variable name</li>
<li><a
href="203fc22b1f"><code>203fc22</code></a>
fix: enable all years available in the year select dropdown (<a
href="https://redirect.github.com/gpbl/react-day-picker/issues/2614">#2614</a>)</li>
<li><a
href="90ed771859"><code>90ed771</code></a>
website: update border-radius for admonition</li>
<li><a
href="1154e3b3b1"><code>1154e3b</code></a>
website: update styles</li>
<li><a
href="62bbc85796"><code>62bbc85</code></a>
website: remove draft documents</li>
<li><a
href="fd6975daa2"><code>fd6975d</code></a>
docs: updatein input-fields.mdx code sample (<a
href="https://redirect.github.com/gpbl/react-day-picker/issues/2613">#2613</a>)</li>
<li><a
href="661c585ce3"><code>661c585</code></a>
docs: update styling.mdx (<a
href="https://redirect.github.com/gpbl/react-day-picker/issues/2611">#2611</a>)</li>
<li><a
href="35a2824c22"><code>35a2824</code></a>
chore(style): remove unused CSS variable (<a
href="https://redirect.github.com/gpbl/react-day-picker/issues/2610">#2610</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/gpbl/react-day-picker/compare/v9.4.0...v9.4.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `react-hook-form` from 7.53.2 to 7.54.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/react-hook-form/react-hook-form/releases">react-hook-form's
releases</a>.</em></p>
<blockquote>
<h2>Version 7.54.0</h2>
<p>🦥 fix: useForm should return a new object on formState changes (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12424">#12424</a>)
🧻 improve prototype pollution check (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12431">#12431</a>)
🪖 fix: add FileList availability check for environments without FileList
support (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12332">#12332</a>)
🧪 close <a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12198">#12198</a>
memo for useController and useFormState (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12421">#12421</a>)
🐞 fix <a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12407">#12407</a>
useFieldArray append issue with useForm disabled props (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12420">#12420</a>)
🐞 fix <a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12415">#12415</a>
issue with flatten object with null value (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12418">#12418</a>)
🐞 fix <a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12385">#12385</a>
nested array field invalid validation report on removed (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12405">#12405</a>)
🙀 fix: hasPromiseValidation return true or false appropriately. (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12389">#12389</a>)
👃 fix more staled props (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12404">#12404</a>)</p>
<p>thanks to <a
href="https://github.com/developer-bandi"><code>@​developer-bandi</code></a>,
<a href="https://github.com/OlegDev1"><code>@​OlegDev1</code></a>, <a
href="https://github.com/sukvvon"><code>@​sukvvon</code></a>, <a
href="https://github.com/alexandredev3"><code>@​alexandredev3</code></a>
and <a
href="https://github.com/mfazekas"><code>@​mfazekas</code></a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="893ffcecee"><code>893ffce</code></a>
7.54.0</li>
<li><a
href="9532038f15"><code>9532038</code></a>
❤️ thank you so much for St. Galler Kantonalbank AG sponsor</li>
<li><a
href="5db95c93b7"><code>5db95c9</code></a>
🐸 update SECURITY.md</li>
<li><a
href="09a9a495ec"><code>09a9a49</code></a>
🦥 fix: useForm should return a new object on formState changes (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12424">#12424</a>)</li>
<li><a
href="0952f7e26d"><code>0952f7e</code></a>
🧻 improve prototype pollution check (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12431">#12431</a>)</li>
<li><a
href="30ea87e203"><code>30ea87e</code></a>
🪖 fix: add <code>FileList</code> availability check for environments
without <code>FileList</code> ...</li>
<li><a
href="29ae596609"><code>29ae596</code></a>
🧪 close <a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12198">#12198</a>
memo for useController and useFormState (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12421">#12421</a>)</li>
<li><a
href="2d7b78981f"><code>2d7b789</code></a>
🐞 fix <a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12407">#12407</a>
useFieldArray append issue with useForm disabled props (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12420">#12420</a>)</li>
<li><a
href="00e39c8a28"><code>00e39c8</code></a>
🐞 fix <a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12415">#12415</a>
issue with flatten object with null value (<a
href="https://redirect.github.com/react-hook-form/react-hook-form/issues/12418">#12418</a>)</li>
<li><a
href="2b1c709815"><code>2b1c709</code></a>
Update README.md</li>
<li>Additional commits viewable in <a
href="https://github.com/react-hook-form/react-hook-form/compare/v7.53.2...v7.54.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `react-icons` from 5.3.0 to 5.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/react-icons/react-icons/releases">react-icons's
releases</a>.</em></p>
<blockquote>
<h2>v5.4.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Add closing of the icon details modal with the ESC key by <a
href="https://github.com/gabrielogregorio"><code>@​gabrielogregorio</code></a>
in <a
href="https://redirect.github.com/react-icons/react-icons/pull/900">react-icons/react-icons#900</a></li>
<li>support moduleResolution: bundler in tsconfig by <a
href="https://github.com/kamijin-fanta"><code>@​kamijin-fanta</code></a>
in <a
href="https://redirect.github.com/react-icons/react-icons/pull/970">react-icons/react-icons#970</a></li>
<li>min search length changed to 2 by <a
href="https://github.com/Kumar06Lav"><code>@​Kumar06Lav</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/967">react-icons/react-icons#967</a></li>
<li>Bump webpack from 5.89.0 to 5.94.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/975">react-icons/react-icons#975</a></li>
<li>Bump micromatch from 4.0.5 to 4.0.8 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/976">react-icons/react-icons#976</a></li>
<li>Bump axios from 1.6.8 to 1.7.7 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/977">react-icons/react-icons#977</a></li>
<li>preview: Reduce the number of results displayed in search results by
<a
href="https://github.com/kamijin-fanta"><code>@​kamijin-fanta</code></a>
in <a
href="https://redirect.github.com/react-icons/react-icons/pull/997">react-icons/react-icons#997</a></li>
<li>2024-12-03 upgrade icons by <a
href="https://github.com/kamijin-fanta"><code>@​kamijin-fanta</code></a>
in <a
href="https://redirect.github.com/react-icons/react-icons/pull/998">react-icons/react-icons#998</a></li>
<li>Bump dset from 3.1.3 to 3.1.4 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/979">react-icons/react-icons#979</a></li>
<li>Bump express from 4.19.2 to 4.21.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/981">react-icons/react-icons#981</a></li>
<li>Bump rollup from 2.79.1 to 2.79.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/982">react-icons/react-icons#982</a></li>
<li>Bump http-proxy-middleware from 2.0.6 to 2.0.7 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/989">react-icons/react-icons#989</a></li>
<li>Bump cross-spawn from 7.0.3 to 7.0.6 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/994">react-icons/react-icons#994</a></li>
<li>workflow: upgrade workflows by <a
href="https://github.com/kamijin-fanta"><code>@​kamijin-fanta</code></a>
in <a
href="https://redirect.github.com/react-icons/react-icons/pull/999">react-icons/react-icons#999</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/Kumar06Lav"><code>@​Kumar06Lav</code></a> made
their first contribution in <a
href="https://redirect.github.com/react-icons/react-icons/pull/967">react-icons/react-icons#967</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/react-icons/react-icons/compare/v5.3.0...v5.4.0">https://github.com/react-icons/react-icons/compare/v5.3.0...v5.4.0</a></p>
<table>
<thead>
<tr>
<th>Icon Library</th>
<th>License</th>
<th>Version</th>
<th align="right">Count</th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="https://circumicons.com/">Circum Icons</a></td>
<td><a
href="https://github.com/Klarr-Agency/Circum-Icons/blob/main/LICENSE">MPL-2.0
license</a></td>
<td>1.0.0</td>
<td align="right">288</td>
</tr>
<tr>
<td><a href="https://fontawesome.com/">Font Awesome 5</a></td>
<td><a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0
License</a></td>
<td>5.15.4-3-gafecf2a</td>
<td align="right">1612</td>
</tr>
<tr>
<td><a href="https://fontawesome.com/">Font Awesome 6</a></td>
<td><a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0
License</a></td>
<td>6.6.0</td>
<td align="right">2050</td>
</tr>
<tr>
<td><a href="https://ionicons.com/">Ionicons 4</a></td>
<td><a
href="https://github.com/ionic-team/ionicons/blob/master/LICENSE">MIT</a></td>
<td>4.6.3</td>
<td align="right">696</td>
</tr>
<tr>
<td><a href="https://ionicons.com/">Ionicons 5</a></td>
<td><a
href="https://github.com/ionic-team/ionicons/blob/master/LICENSE">MIT</a></td>
<td>5.5.4</td>
<td align="right">1332</td>
</tr>
<tr>
<td><a href="http://google.github.io/material-design-icons/">Material
Design icons</a></td>
<td><a
href="https://github.com/google/material-design-icons/blob/master/LICENSE">Apache
License Version 2.0</a></td>
<td>4.0.0-125-gef43291c4d</td>
<td align="right">4341</td>
</tr>
<tr>
<td><a href="http://s-ings.com/typicons/">Typicons</a></td>
<td><a href="https://creativecommons.org/licenses/by-sa/3.0/">CC BY-SA
3.0</a></td>
<td>2.1.2</td>
<td align="right">336</td>
</tr>
<tr>
<td><a href="https://octicons.github.com/">Github Octicons
icons</a></td>
<td><a
href="https://github.com/primer/octicons/blob/master/LICENSE">MIT</a></td>
<td>18.3.0</td>
<td align="right">264</td>
</tr>
<tr>
<td><a href="https://feathericons.com/">Feather</a></td>
<td><a
href="https://github.com/feathericons/feather/blob/master/LICENSE">MIT</a></td>
<td>4.29.2</td>
<td align="right">287<...

_Description has been truncated_

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-09 20:49:31 +00:00
dependabot[bot]
df431d71ff build(deps): bump the production-dependencies group in /autogpt_platform/market with 2 updates (#8922)
Bumps the production-dependencies group in /autogpt_platform/market with
2 updates: [fastapi](https://github.com/fastapi/fastapi) and
[sentry-sdk](https://github.com/getsentry/sentry-python).

Updates `fastapi` from 0.115.5 to 0.115.6
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/fastapi/fastapi/releases">fastapi's
releases</a>.</em></p>
<blockquote>
<h2>0.115.6</h2>
<h3>Fixes</h3>
<ul>
<li>🐛 Preserve traceback when an exception is raised in sync dependency
with <code>yield</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/5823">#5823</a>
by <a href="https://github.com/sombek"><code>@​sombek</code></a>.</li>
</ul>
<h3>Refactors</h3>
<ul>
<li>♻️ Update tests and internals for compatibility with Pydantic
&gt;=2.10. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12971">#12971</a>
by <a href="https://github.com/tamird"><code>@​tamird</code></a>.</li>
</ul>
<h3>Docs</h3>
<ul>
<li>📝 Update includes format in docs with an automated script. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12950">#12950</a>
by <a
href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
<li>📝 Update includes for
<code>docs/de/docs/advanced/using-request-directly.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12685">#12685</a>
by <a
href="https://github.com/alissadb"><code>@​alissadb</code></a>.</li>
<li>📝 Update includes for
<code>docs/de/docs/how-to/conditional-openapi.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12689">#12689</a>
by <a
href="https://github.com/alissadb"><code>@​alissadb</code></a>.</li>
</ul>
<h3>Translations</h3>
<ul>
<li>🌐 Add Traditional Chinese translation for
<code>docs/zh-hant/docs/async.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12990">#12990</a>
by <a
href="https://github.com/ILoveSorasakiHina"><code>@​ILoveSorasakiHina</code></a>.</li>
<li>🌐 Add Traditional Chinese translation for
<code>docs/zh-hant/docs/tutorial/query-param-models.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12932">#12932</a>
by <a
href="https://github.com/Vincy1230"><code>@​Vincy1230</code></a>.</li>
<li>🌐 Add Korean translation for
<code>docs/ko/docs/advanced/testing-dependencies.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12992">#12992</a>
by <a
href="https://github.com/Limsunoh"><code>@​Limsunoh</code></a>.</li>
<li>🌐 Add Korean translation for
<code>docs/ko/docs/advanced/websockets.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12991">#12991</a>
by <a
href="https://github.com/kwang1215"><code>@​kwang1215</code></a>.</li>
<li>🌐 Add Portuguese translation for
<code>docs/pt/docs/tutorial/response-model.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12933">#12933</a>
by <a
href="https://github.com/AndreBBM"><code>@​AndreBBM</code></a>.</li>
<li>🌐 Add Korean translation for
<code>docs/ko/docs/advanced/middlewares.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12753">#12753</a>
by <a
href="https://github.com/nahyunkeem"><code>@​nahyunkeem</code></a>.</li>
<li>🌐 Add Korean translation for
<code>docs/ko/docs/advanced/openapi-webhooks.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12752">#12752</a>
by <a href="https://github.com/saeye"><code>@​saeye</code></a>.</li>
<li>🌐 Add Chinese translation for
<code>docs/zh/docs/tutorial/query-param-models.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12931">#12931</a>
by <a
href="https://github.com/Vincy1230"><code>@​Vincy1230</code></a>.</li>
<li>🌐 Add Russian translation for
<code>docs/ru/docs/tutorial/query-param-models.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12445">#12445</a>
by <a
href="https://github.com/gitgernit"><code>@​gitgernit</code></a>.</li>
<li>🌐 Add Korean translation for
<code>docs/ko/docs/tutorial/query-param-models.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12940">#12940</a>
by <a href="https://github.com/jts8257"><code>@​jts8257</code></a>.</li>
<li>🔥 Remove obsolete tutorial translation to Chinese for
<code>docs/zh/docs/tutorial/sql-databases.md</code>, it references files
that are no longer on the repo. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12949">#12949</a>
by <a
href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
</ul>
<h3>Internal</h3>
<ul>
<li>⬆ [pre-commit.ci] pre-commit autoupdate. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/12954">#12954</a>
by <a
href="https://github.com/apps/pre-commit-ci"><code>@​pre-commit-ci[bot]</code></a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="bb8c2a6498"><code>bb8c2a6</code></a>
🔖 Release version 0.115.6</li>
<li><a
href="905ec1edde"><code>905ec1e</code></a>
📝 Update release notes</li>
<li><a
href="4f8157588e"><code>4f81575</code></a>
🐛 Preserve traceback when exception is raised in sync dependency with
<code>yield</code>...</li>
<li><a
href="8255edfecf"><code>8255edf</code></a>
📝 Update release notes</li>
<li><a
href="53c87842b0"><code>53c8784</code></a>
🌐 Add Traditional Chinese translation for
<code>docs/zh-hant/docs/async.md</code> (<a
href="https://redirect.github.com/fastapi/fastapi/issues/12990">#12990</a>)</li>
<li><a
href="297135244d"><code>2971352</code></a>
📝 Update release notes</li>
<li><a
href="8376228a49"><code>8376228</code></a>
🌐 Add Traditional Chinese translation for
`docs/zh-hant/docs/tutorial/query-p...</li>
<li><a
href="6c7873c77e"><code>6c7873c</code></a>
📝 Update release notes</li>
<li><a
href="d75b81ce3f"><code>d75b81c</code></a>
🌐 Add Korean translation for
<code>docs/ko/docs/advanced/testing-dependencies.md</code> ...</li>
<li><a
href="206037c292"><code>206037c</code></a>
📝 Update release notes</li>
<li>Additional commits viewable in <a
href="https://github.com/fastapi/fastapi/compare/0.115.5...0.115.6">compare
view</a></li>
</ul>
</details>
<br />

Updates `sentry-sdk` from 2.19.0 to 2.19.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/getsentry/sentry-python/releases">sentry-sdk's
releases</a>.</em></p>
<blockquote>
<h2>2.19.2</h2>
<h3>Various fixes &amp; improvements</h3>
<ul>
<li>Deepcopy and ensure get_all function always terminates (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3861">#3861</a>)
by <a
href="https://github.com/cmanallen"><code>@​cmanallen</code></a></li>
<li>Cleanup chalice test environment (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3858">#3858</a>)
by <a
href="https://github.com/antonpirker"><code>@​antonpirker</code></a></li>
</ul>
<h2>2.19.1</h2>
<h3>Various fixes &amp; improvements</h3>
<ul>
<li>Fix errors when instrumenting Django cache (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3855">#3855</a>)
by <a href="https://github.com/BYK"><code>@​BYK</code></a></li>
<li>Copy <code>scope.client</code> reference as well (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3857">#3857</a>)
by <a
href="https://github.com/sl0thentr0py"><code>@​sl0thentr0py</code></a></li>
<li>Don't give up on Spotlight on 3 errors (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3856">#3856</a>)
by <a href="https://github.com/BYK"><code>@​BYK</code></a></li>
<li>Add missing stack frames (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3673">#3673</a>)
by <a
href="https://github.com/antonpirker"><code>@​antonpirker</code></a></li>
<li>Fix wrong metadata type in async gRPC interceptor (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3205">#3205</a>)
by <a
href="https://github.com/fdellekart"><code>@​fdellekart</code></a></li>
<li>Rename launch darkly hook to match JS SDK (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3743">#3743</a>)
by <a href="https://github.com/aliu39"><code>@​aliu39</code></a></li>
<li>Script for checking if our instrumented libs are Python 3.13
compatible (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3425">#3425</a>)
by <a
href="https://github.com/antonpirker"><code>@​antonpirker</code></a></li>
<li>Improve Ray tests (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3846">#3846</a>)
by <a
href="https://github.com/antonpirker"><code>@​antonpirker</code></a></li>
<li>Test with Celery <code>5.5.0rc3</code> (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3842">#3842</a>)
by <a
href="https://github.com/sentrivana"><code>@​sentrivana</code></a></li>
<li>Fix asyncio testing setup (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3832">#3832</a>)
by <a
href="https://github.com/sl0thentr0py"><code>@​sl0thentr0py</code></a></li>
<li>Bump <code>codecov/codecov-action</code> from <code>5.0.2</code> to
<code>5.0.7</code> (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3821">#3821</a>)
by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a></li>
<li>Fix CI (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3834">#3834</a>)
by <a
href="https://github.com/sentrivana"><code>@​sentrivana</code></a></li>
<li>Use new ClickHouse GH action (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3826">#3826</a>)
by <a
href="https://github.com/antonpirker"><code>@​antonpirker</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md">sentry-sdk's
changelog</a>.</em></p>
<blockquote>
<h2>2.19.2</h2>
<h3>Various fixes &amp; improvements</h3>
<ul>
<li>Deepcopy and ensure get_all function always terminates (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3861">#3861</a>)
by <a
href="https://github.com/cmanallen"><code>@​cmanallen</code></a></li>
<li>Cleanup chalice test environment (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3858">#3858</a>)
by <a
href="https://github.com/antonpirker"><code>@​antonpirker</code></a></li>
</ul>
<h2>2.19.1</h2>
<h3>Various fixes &amp; improvements</h3>
<ul>
<li>Fix errors when instrumenting Django cache (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3855">#3855</a>)
by <a href="https://github.com/BYK"><code>@​BYK</code></a></li>
<li>Copy <code>scope.client</code> reference as well (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3857">#3857</a>)
by <a
href="https://github.com/sl0thentr0py"><code>@​sl0thentr0py</code></a></li>
<li>Don't give up on Spotlight on 3 errors (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3856">#3856</a>)
by <a href="https://github.com/BYK"><code>@​BYK</code></a></li>
<li>Add missing stack frames (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3673">#3673</a>)
by <a
href="https://github.com/antonpirker"><code>@​antonpirker</code></a></li>
<li>Fix wrong metadata type in async gRPC interceptor (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3205">#3205</a>)
by <a
href="https://github.com/fdellekart"><code>@​fdellekart</code></a></li>
<li>Rename launch darkly hook to match JS SDK (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3743">#3743</a>)
by <a href="https://github.com/aliu39"><code>@​aliu39</code></a></li>
<li>Script for checking if our instrumented libs are Python 3.13
compatible (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3425">#3425</a>)
by <a
href="https://github.com/antonpirker"><code>@​antonpirker</code></a></li>
<li>Improve Ray tests (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3846">#3846</a>)
by <a
href="https://github.com/antonpirker"><code>@​antonpirker</code></a></li>
<li>Test with Celery <code>5.5.0rc3</code> (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3842">#3842</a>)
by <a
href="https://github.com/sentrivana"><code>@​sentrivana</code></a></li>
<li>Fix asyncio testing setup (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3832">#3832</a>)
by <a
href="https://github.com/sl0thentr0py"><code>@​sl0thentr0py</code></a></li>
<li>Bump <code>codecov/codecov-action</code> from <code>5.0.2</code> to
<code>5.0.7</code> (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3821">#3821</a>)
by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a></li>
<li>Fix CI (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3834">#3834</a>)
by <a
href="https://github.com/sentrivana"><code>@​sentrivana</code></a></li>
<li>Use new ClickHouse GH action (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3826">#3826</a>)
by <a
href="https://github.com/antonpirker"><code>@​antonpirker</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="163762f107"><code>163762f</code></a>
release: 2.19.2</li>
<li><a
href="8f9461e1a0"><code>8f9461e</code></a>
Deepcopy and ensure get_all function always terminates (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3861">#3861</a>)</li>
<li><a
href="fd56608d46"><code>fd56608</code></a>
Merge branch 'release/2.19.1'</li>
<li><a
href="7ab7fe6749"><code>7ab7fe6</code></a>
Cleanup chalice test environment (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3858">#3858</a>)</li>
<li><a
href="231a6a1d5e"><code>231a6a1</code></a>
Update CHANGELOG.md</li>
<li><a
href="c591b64d50"><code>c591b64</code></a>
release: 2.19.1</li>
<li><a
href="7a6d460bd1"><code>7a6d460</code></a>
Copy scope.client reference as well (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3857">#3857</a>)</li>
<li><a
href="5a09770541"><code>5a09770</code></a>
fix(spotlight): Don't give up on Spotlight on 3 errors (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3856">#3856</a>)</li>
<li><a
href="31fdcfaee7"><code>31fdcfa</code></a>
fix(django): Fix errors when instrumenting Django cache (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3855">#3855</a>)</li>
<li><a
href="5891717b14"><code>5891717</code></a>
Script for checking if our instrumented libs are python 3.13 compatible
(<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3425">#3425</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/getsentry/sentry-python/compare/2.19.0...2.19.2">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-09 20:39:06 +00:00
vishesh10
281cd2910b fix(backend): Fix Github PR blocks (#8908)
<!-- Clearly explain the need for these changes: -->

### Background

The Github PR blocks are not able to function properly because the
correct endpoint is not getting called.
- Resolves #8667

### Changes 🏗️
* Added logic to derive correct endpoint from the given PR url.
* This logic is implemented in multiple blocks viz.
`GithubReadPullRequestBlock`, `GithubAssignPRReviewerBlock`,
`GithubUnassignPRReviewerBlock`, `GithubListPRReviewersBlock`.

### Test
* Github List PR Reviewers
<img width="511" alt="Screenshot 2024-12-03 at 11 03 59 PM"
src="https://github.com/user-attachments/assets/9c69edcf-c2f4-42d2-954d-0fc4d903ae22">

* Github Read Pull Request (Include Pr Changes checked)
<img width="417" alt="Screenshot 2024-12-06 at 12 01 41 PM"
src="https://github.com/user-attachments/assets/986fada7-7fbb-41b6-a42a-47d1e11fa562">

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-12-09 14:37:02 +00:00
Abhimanyu Yadav
6997e2a170 fix(frontend) : Increase size of connection pin in blocks (#8920)
- Resolve https://github.com/Significant-Gravitas/AutoGPT/issues/8913

Increase size of Connection pin

<img width="1154" alt="Screenshot 2024-12-09 at 6 44 49 PM"
src="https://github.com/user-attachments/assets/7cd1ad0d-94c3-4027-aeea-d5ecd27e498d">
2024-12-09 13:50:32 +00:00
Toran Bruce Richards
1a85eb1dcf feat(blocks): Add new openrouter models (#8905)
**Summary:**
This PR removes the `GEMINI_FLASH_1_5_EXP` model (due to inference on
OpenRouter not working) and introduces several new models to the
`LlmModel` enum. Corresponding updates have been made to the metadata
configurations and block cost settings to reflect the changes.

**Key Changes:**
1. **Removed Models:**
   - `GEMINI_FLASH_1_5_EXP`

2. **Added New Models:**
   - `QWEN_QWQ_32B_PREVIEW`
   - `NOUSRESEARCH_HERMES_3_LLAMA_3_1_405B`
   - `NOUSRESEARCH_HERMES_3_LLAMA_3_1_70B`
   - `AMAZON_NOVA_LITE_V1`
   - `AMAZON_NOVA_MICRO_V1`
   - `AMAZON_NOVA_PRO_V1`
   - `MICROSOFT_WIZARDLM_2_8X22B`
   - `GRYPHE_MYTHOMAX_L2_13B`

3. **Metadata Updates:**
- Added metadata entries for the new models with a max output tokens of
4,000 tokens.

4. **Cost Configuration Updates:**
   - Defined block costs for the newly added models:
     - `QWEN_QWQ_32B_PREVIEW`: 2 credits
     - All other new models: 1 credit

**Testing:**
- Verified that all models can be called without errors with the AI Text
generator block
2024-12-09 11:49:15 +00:00
Nicholas Tindle
b62f411518 feat(frontend): monitor tests (#8880)
<!-- Clearly explain the need for these changes: -->
We want to be able to test the monitor page with importing and exporting
agents
### Changes 🏗️

- Adds more test ids
- Builds out monitor.page.ts
- adds import export tests
- Fixes #8791, fixes #8795, fixes #8792
<!-- Concisely describe all of the changes made in this pull request:
-->

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
Writing/Running the automated tests
2024-12-06 21:14:33 +00:00
Kaitlyn Barnard
eb79c04855 Incremental additions to platform documentation (#8898)
### Changes 🏗️

Adding incremental documentation based on YouTube series: 
- How to Submit an Agent to the AutoGPT Marketplace
- How to Download and Import an Agent from the AutoGPT Marketplace
(Local Hosting)
- Creating a Basic AI Agent with AutoGPT
- How to Edit an Agent in AutoGPT
- How to Delete an Agent in AutoGPT

---------

Co-authored-by: Bently <tomnoon9@gmail.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-06 19:14:15 +00:00
Aarushi
d7c9742d7e feat(frontend/feature-flags): Add LaunchDarkly feature flagging UI (#8847)
This PR allows us to feature flag on the frontend, this means we can
rollout features in stages, hide features, do AB testing etc.

### Changes 🏗️

Added a LaunchDarkly Provider
Added a withFeatureFlag component
Added two env vars for: 
- enabling LD 
- specifying the _public_ client side key

Usage: 

```
'use client'

import { useFlags } from 'launchdarkly-react-client-sdk'
import { withFeatureFlag } from '@/components/feature-flag/with-feature-flag'

function TestFlagPage() {
  const flags = useFlags()

  return (
    <div className="p-4">
      <h1>If you can see this, the feature flag is ON</h1>
      <pre>Current flag value: {JSON.stringify(flags, null, 2)}</pre>
    </div>
  )
}

export default withFeatureFlag(TestFlagPage, 'test-flag')
```

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Test plan</summary>
- Set LD to false
- Navigate to a test page, should not be visible
- Set LD to true
- Navigate to same test page, should be visible
</details>

#### For configuration changes:
- [x] `.env.example` is updated or already compatible with my changes
- [x] I have included a list of my configuration changes in the PR
description (under **Changes**)
- [x] I have updated infra repo

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Bently <tomnoon9@gmail.com>
Co-authored-by: SerchioSD <69461657+serchiosd@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Abhimanyu Yadav <122007096+Abhi1992002@users.noreply.github.com>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-12-06 19:11:06 +00:00
Aarushi
ea6c9a1152 fix(platform): Stop the start up & shutdown of LaunchDarkly on local envs (#8897)
We aren't using Launch Darkly locally and so it's not set up but it was
still attempting to shut down LaunchDarkly when the app shutdown,
causing errors on shutdown. This PR fixes that issue by entirely
disabling LD on local machines.

### Changes 🏗️

Added a contextmanager to handle LaunchDarkly start up and shutdown
Added a check for local environment in said context manager

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-06 12:41:48 +00:00
Aarushi
dcfad263cb feat(blocks): Add Exa API Blocks (#8835)
Adding Exa API blocks because it does very cool search and web scrapping

### Changes 🏗️

Adding Exa API blocks: 
Search

Added a new calendar and time input 

Added _auth.py for Exa API too.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-06 10:45:40 +00:00
Zamil Majdy
9ad9dd9fe1 fix(frontend): Agent output not being re-fetched on each agent output dialog opened (#8883)
https://github.com/user-attachments/assets/edd6908e-ecf3-45c2-94d7-3f88de70bb8f

### Changes 🏗️

`fetchBlockResults` should always be triggered when `isOutputOpen` is
true.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-06 05:15:18 +00:00
Zamil Majdy
e2904136bd fix(backend): Make sure all the obtained DB connections are able to query (#8894)
### Changes 🏗️

We've seen some symptoms where during the initial startup of the
application the obtained db connection produces an error when the
network is unreachable. This code made sure that the obtained connection
could run the query and retry it on the spot if it was unable to do so.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-06 04:51:25 +00:00
Zamil Majdy
6dba31e021 fix(backend): Enable Jinja SandboxedEnvironment for TextFormatter (#8891)
We still use plain Jinja objects for text formatting in our block codes.

### Changes 🏗️

Introduced a `TextFormatter` utility class that uses jina
SandboxedEnvironment for safer text formatting.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-06 04:21:30 +00:00
Zamil Majdy
ffc3eff7e2 fix(backend): Add stricter URL validation for block requests (#8890)
We need stricter URL validation for the hostname we can request in the
block code.

### Changes 🏗️

* Canonicalization: Ensures \ are converted to /, adds http:// if
missing, and normalizes the input URL.
* Scheme Check: Only http or https are allowed.
* Hostname Validation:
    - Ensures a hostname exists.
    - Converts it to an IDNA ASCII form to prevent Unicode spoofing.
    - Verifies that the hostname matches a safe DNS pattern.
* Trusted Origins Check: Allows certain hostnames explicitly if needed.
* IP Resolution and Blocking:
    - Resolves the hostname to its IP addresses.
- Checks against a list of private/reserved IP networks to prevent SSRF
to internal services.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-06 04:21:24 +00:00
dependabot[bot]
73eafa37c6 build(deps): bump the production-dependencies group in /autogpt_platform/frontend with 5 updates (#8865)
Bumps the production-dependencies group in /autogpt_platform/frontend
with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) |
`8.40.0` | `8.42.0` |
| [@supabase/supabase-js](https://github.com/supabase/supabase-js) |
`2.46.1` | `2.46.2` |
| [class-variance-authority](https://github.com/joe-bell/cva) | `0.7.0`
| `0.7.1` |
|
[lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)
| `0.460.0` | `0.462.0` |
| [react-day-picker](https://github.com/gpbl/react-day-picker) | `9.4.0`
| `9.4.1` |

Updates `@sentry/nextjs` from 8.40.0 to 8.42.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/getsentry/sentry-javascript/releases"><code>@​sentry/nextjs</code>'s
releases</a>.</em></p>
<blockquote>
<h2>8.42.0</h2>
<h3>Important Changes</h3>
<ul>
<li>
<p><strong>feat(react): React Router v7 support (library) (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14513">#14513</a>)</strong></p>
<p>This release adds support for <a
href="https://reactrouter.com/home#react-router-as-a-library">React
Router v7 (library mode)</a>.
Check out the docs on how to set up the integration: <a
href="https://docs.sentry.io/platforms/javascript/guides/react/features/react-router/v7/">Sentry
React Router v7 Integration Docs</a></p>
</li>
</ul>
<h3>Deprecations</h3>
<ul>
<li>
<p><strong>feat: Warn about source-map generation (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14533">#14533</a>)</strong></p>
<p>In the next major version of the SDK we will change how source maps
are generated when the SDK is added to an application.
Currently, the implementation varies a lot between different SDKs and
can be difficult to understand.
Moving forward, our goal is to turn on source maps for every framework,
unless we detect that they are explicitly turned off.
Additionally, if we end up enabling source maps, we will emit a log
message that we did so.</p>
<p>With this particular release, we are emitting warnings that source
map generation will change in the future and we print instructions on
how to prepare for the next major.</p>
</li>
<li>
<p><strong>feat(nuxt): Deprecate <code>tracingOptions</code> in favor of
<code>vueIntegration</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14530">#14530</a>)</strong></p>
<p>Currently it is possible to configure tracing options in two places
in the Sentry Nuxt SDK:</p>
<ul>
<li>In <code>Sentry.init()</code></li>
<li>Inside <code>tracingOptions</code> in
<code>Sentry.init()</code></li>
</ul>
<p>For tree-shaking purposes and alignment with the Vue SDK, it is now
recommended to instead use the newly exported
<code>vueIntegration()</code> and its <code>tracingOptions</code> option
to configure tracing options in the Nuxt SDK:</p>
<pre lang="ts"><code>// sentry.client.config.ts
import * as Sentry from '@sentry/nuxt';
<p>Sentry.init({<br />
// ...<br />
integrations: [<br />
Sentry.vueIntegration({<br />
tracingOptions: {<br />
trackComponents: true,<br />
},<br />
}),<br />
],<br />
});<br />
</code></pre></p>
</li>
</ul>
<h3>Other Changes</h3>
<ul>
<li>feat(browser-utils): Update <code>web-vitals</code> to v4.2.4 (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14439">#14439</a>)</li>
<li>feat(nuxt): Expose <code>vueIntegration</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14526">#14526</a>)</li>
<li>fix(feedback): Handle css correctly in screenshot mode (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14535">#14535</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/getsentry/sentry-javascript/blob/8.42.0/CHANGELOG.md"><code>@​sentry/nextjs</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>8.42.0</h2>
<h3>Important Changes</h3>
<ul>
<li>
<p><strong>feat(react): React Router v7 support (library) (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14513">#14513</a>)</strong></p>
<p>This release adds support for <a
href="https://reactrouter.com/home#react-router-as-a-library">React
Router v7 (library mode)</a>.
Check out the docs on how to set up the integration: <a
href="https://docs.sentry.io/platforms/javascript/guides/react/features/react-router/v7/">Sentry
React Router v7 Integration Docs</a></p>
</li>
</ul>
<h3>Deprecations</h3>
<ul>
<li>
<p><strong>feat: Warn about source-map generation (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14533">#14533</a>)</strong></p>
<p>In the next major version of the SDK we will change how source maps
are generated when the SDK is added to an application.
Currently, the implementation varies a lot between different SDKs and
can be difficult to understand.
Moving forward, our goal is to turn on source maps for every framework,
unless we detect that they are explicitly turned off.
Additionally, if we end up enabling source maps, we will emit a log
message that we did so.</p>
<p>With this particular release, we are emitting warnings that source
map generation will change in the future and we print instructions on
how to prepare for the next major.</p>
</li>
<li>
<p><strong>feat(nuxt): Deprecate <code>tracingOptions</code> in favor of
<code>vueIntegration</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14530">#14530</a>)</strong></p>
<p>Currently it is possible to configure tracing options in two places
in the Sentry Nuxt SDK:</p>
<ul>
<li>In <code>Sentry.init()</code></li>
<li>Inside <code>tracingOptions</code> in
<code>Sentry.init()</code></li>
</ul>
<p>For tree-shaking purposes and alignment with the Vue SDK, it is now
recommended to instead use the newly exported
<code>vueIntegration()</code> and its <code>tracingOptions</code> option
to configure tracing options in the Nuxt SDK:</p>
<pre lang="ts"><code>// sentry.client.config.ts
import * as Sentry from '@sentry/nuxt';
<p>Sentry.init({<br />
// ...<br />
integrations: [<br />
Sentry.vueIntegration({<br />
tracingOptions: {<br />
trackComponents: true,<br />
},<br />
}),<br />
],<br />
});<br />
</code></pre></p>
</li>
</ul>
<h3>Other Changes</h3>
<ul>
<li>feat(browser-utils): Update <code>web-vitals</code> to v4.2.4 (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14439">#14439</a>)</li>
<li>feat(nuxt): Expose <code>vueIntegration</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14526">#14526</a>)</li>
<li>fix(feedback): Handle css correctly in screenshot mode (<a
href="https://redirect.github.com/getsentry/sentry-javascript/pull/14535">#14535</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="faa64d0d4d"><code>faa64d0</code></a>
release: 8.42.0</li>
<li><a
href="da3a72c3cc"><code>da3a72c</code></a>
Merge pull request <a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14538">#14538</a>
from getsentry/prepare-release/8.42.0</li>
<li><a
href="e695a5ec41"><code>e695a5e</code></a>
meta(changelog): Update changelog for 8.42.0</li>
<li><a
href="0b349eb021"><code>0b349eb</code></a>
ci(deps): Bump codecov/codecov-action from 4 to 5 (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14537">#14537</a>)</li>
<li><a
href="146bafc62a"><code>146bafc</code></a>
feat(nuxt): Deprecate <code>tracingOptions</code> in favor of
<code>vueIntegration</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14530">#14530</a>)</li>
<li><a
href="87b789cfc3"><code>87b789c</code></a>
feat(browser-utils): Update <code>web-vitals</code> to v4.2.4 (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14439">#14439</a>)</li>
<li><a
href="9b9ec7775c"><code>9b9ec77</code></a>
feat(nuxt): Expose <code>vueIntegration</code> (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14526">#14526</a>)</li>
<li><a
href="44477df43d"><code>44477df</code></a>
fix(feeback): Handle css correctly in screenshot mode (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14535">#14535</a>)</li>
<li><a
href="3fdab04962"><code>3fdab04</code></a>
feat: Warn about source-map generation (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14533">#14533</a>)</li>
<li><a
href="e17bd91db7"><code>e17bd91</code></a>
chore: Dedupe <code>@sentry/core</code> imports (<a
href="https://redirect.github.com/getsentry/sentry-javascript/issues/14529">#14529</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/getsentry/sentry-javascript/compare/8.40.0...8.42.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `@supabase/supabase-js` from 2.46.1 to 2.46.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/supabase/supabase-js/releases"><code>@​supabase/supabase-js</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v2.46.2</h2>
<h2><a
href="https://github.com/supabase/supabase-js/compare/v2.46.1...v2.46.2">2.46.2</a>
(2024-11-27)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>bump up realtime-js (<a
href="https://redirect.github.com/supabase/supabase-js/issues/1318">#1318</a>)
(<a
href="456f27e02e">456f27e</a>)</li>
</ul>
<h2>v2.46.2-rc.3</h2>
<h2><a
href="https://github.com/supabase/supabase-js/compare/v2.46.2-rc.2...v2.46.2-rc.3">2.46.2-rc.3</a>
(2024-11-13)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>cut release (<a
href="917cbf717c">917cbf7</a>)</li>
</ul>
<h2>v2.46.2-rc.2</h2>
<h2><a
href="https://github.com/supabase/supabase-js/compare/v2.46.2-rc.1...v2.46.2-rc.2">2.46.2-rc.2</a>
(2024-11-13)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>bump postgrest-js to 1.17.4 (<a
href="https://redirect.github.com/supabase/supabase-js/issues/1310">#1310</a>)
(<a
href="64ac43bc08">64ac43b</a>)</li>
</ul>
<h2>v2.46.2-rc.1</h2>
<h2><a
href="https://github.com/supabase/supabase-js/compare/v2.46.1...v2.46.2-rc.1">2.46.2-rc.1</a>
(2024-11-06)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>postgrest-js v1.17.3 (<a
href="c6c42b6038">c6c42b6</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="456f27e02e"><code>456f27e</code></a>
fix: bump up realtime-js (<a
href="https://redirect.github.com/supabase/supabase-js/issues/1318">#1318</a>)</li>
<li>See full diff in <a
href="https://github.com/supabase/supabase-js/compare/v2.46.1...v2.46.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `class-variance-authority` from 0.7.0 to 0.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/joe-bell/cva/releases">class-variance-authority's
releases</a>.</em></p>
<blockquote>
<h2>v0.7.1</h2>
<h2>What's Changed</h2>
<ul>
<li>Add LICENSE Comments by <a
href="https://github.com/joe-bell"><code>@​joe-bell</code></a> in <a
href="https://redirect.github.com/joe-bell/cva/pull/283">joe-bell/cva#283</a></li>
<li>chore: move clsx dependency to caret/semver range by <a
href="https://github.com/philwolstenholme"><code>@​philwolstenholme</code></a>
in <a
href="https://redirect.github.com/joe-bell/cva/pull/316">joe-bell/cva#316</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/philwolstenholme"><code>@​philwolstenholme</code></a>
made their first contribution in <a
href="https://redirect.github.com/joe-bell/cva/pull/316">joe-bell/cva#316</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/joe-bell/cva/compare/v0.7.0...v0.7.1">https://github.com/joe-bell/cva/compare/v0.7.0...v0.7.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="45462dd239"><code>45462dd</code></a>
class-variance-authority@0.7.1</li>
<li><a
href="c236552742"><code>c236552</code></a>
docs: change x.com references to bluesky</li>
<li><a
href="985dba91cf"><code>985dba9</code></a>
chore: move clsx dependency to caret/semver range (<a
href="https://redirect.github.com/joe-bell/cva/issues/316">#316</a>)</li>
<li><a
href="d4ded2dfcc"><code>d4ded2d</code></a>
chore: update sponsors.svg [ci skip]</li>
<li><a
href="ff1717cbe3"><code>ff1717c</code></a>
ci(schedule): adjust cron date to offset midnight traffic</li>
<li><a
href="2f96730b7b"><code>2f96730</code></a>
ci: prevent scheduled workflow running in forks</li>
<li><a
href="aaae670a35"><code>aaae670</code></a>
docs(beta): bun installation</li>
<li><a
href="69feb436b6"><code>69feb43</code></a>
update docs for bun installation (<a
href="https://redirect.github.com/joe-bell/cva/issues/261">#261</a>)</li>
<li><a
href="f9e2ea6764"><code>f9e2ea6</code></a>
chore(docs): update banner links</li>
<li><a
href="5228f0e66f"><code>5228f0e</code></a>
chore: link sponsors to raw svg</li>
<li>Additional commits viewable in <a
href="https://github.com/joe-bell/cva/compare/v0.7.0...v0.7.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `lucide-react` from 0.460.0 to 0.462.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/lucide-icons/lucide/releases">lucide-react's
releases</a>.</em></p>
<blockquote>
<h2>New icons 0.462.0</h2>
<h2>New icons 🎨</h2>
<ul>
<li><code>image-upscale</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2462">#2462</a>)
by <a href="https://github.com/jguddas"><code>@​jguddas</code></a></li>
</ul>
<h2>Modified Icons 🔨</h2>
<ul>
<li><code>grid-2x2</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2628">#2628</a>)
by <a href="https://github.com/jguddas"><code>@​jguddas</code></a></li>
<li><code>ship</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2548">#2548</a>)
by <a href="https://github.com/jguddas"><code>@​jguddas</code></a></li>
<li><code>shuffle</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2478">#2478</a>)
by <a href="https://github.com/jguddas"><code>@​jguddas</code></a></li>
<li><code>venetian-mask</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/1950">#1950</a>)
by <a href="https://github.com/jguddas"><code>@​jguddas</code></a></li>
</ul>
<h2>New icons 0.461.0</h2>
<h2>New icons 🎨</h2>
<ul>
<li><code>calendar-sync</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2590">#2590</a>)
by <a
href="https://github.com/chessurisme"><code>@​chessurisme</code></a></li>
</ul>
<h2>Modified Icons 🔨</h2>
<ul>
<li><code>scale-3d</code> (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2627">#2627</a>)
by <a href="https://github.com/jguddas"><code>@​jguddas</code></a></li>
</ul>
<h2>Hotfix lucide-svelte icon imports</h2>
<p>Icons imports broke in <code>lucide-svelte</code> after
<code>0.458.0</code>.</p>
<p>This is fixed in <a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2615">#2615</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="1d5c725b58"><code>1d5c725</code></a>
Fix path image backer</li>
<li><a
href="d9a011994a"><code>d9a0119</code></a>
feat(readme): add pdfme as an awesome backer (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2639">#2639</a>)</li>
<li><a
href="c6c645ca7f"><code>c6c645c</code></a>
docs(readme): Update readme files (<a
href="https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/2634">#2634</a>)</li>
<li>See full diff in <a
href="https://github.com/lucide-icons/lucide/commits/0.462.0/packages/lucide-react">compare
view</a></li>
</ul>
</details>
<br />

Updates `react-day-picker` from 9.4.0 to 9.4.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gpbl/react-day-picker/releases">react-day-picker's
releases</a>.</em></p>
<blockquote>
<h2>v9.4.1</h2>
<p>This release improves support for screen readers and fixes a
VoiceOver issue when navigating the calendar.</p>
<h2>What's Changed</h2>
<ul>
<li>fix(a11y): improve screen reader and VoiceOver support by <a
href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2609">gpbl/react-day-picker#2609</a></li>
<li>feat(a11y): added <code>role</code> and <code>aria-label</code>
props by <a href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2609">gpbl/react-day-picker#2609</a></li>
<li>chore(style): remove unused CSS variable by <a
href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2610">gpbl/react-day-picker#2610</a></li>
<li>chore: use callbacks for dropdown event handlers by <a
href="https://github.com/gpbl"><code>@​gpbl</code></a> in <a
href="https://redirect.github.com/gpbl/react-day-picker/pull/2602">gpbl/react-day-picker#2602</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/gpbl/react-day-picker/compare/v9.4.0...v9.4.1">https://github.com/gpbl/react-day-picker/compare/v9.4.0...v9.4.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="35a2824c22"><code>35a2824</code></a>
chore(style): remove unused CSS variable (<a
href="https://redirect.github.com/gpbl/react-day-picker/issues/2610">#2610</a>)</li>
<li><a
href="3d994aaaf7"><code>3d994aa</code></a>
a11y: improve screen reader and VoiceOver support (<a
href="https://redirect.github.com/gpbl/react-day-picker/issues/2609">#2609</a>)</li>
<li><a
href="37cc0ca1e5"><code>37cc0ca</code></a>
build: bump 9.4.1</li>
<li><a
href="105b0fb9e6"><code>105b0fb</code></a>
docs: update Time Zone guide</li>
<li><a
href="8ae3889a0b"><code>8ae3889</code></a>
Revert &quot;build(website): update dependencies&quot;</li>
<li><a
href="231b426ccd"><code>231b426</code></a>
build(website): update dependencies</li>
<li><a
href="82fd69d7e1"><code>82fd69d</code></a>
docs: add sitemap to docusaurus</li>
<li><a
href="d41e055078"><code>d41e055</code></a>
docs: fix image in anatomy.mdx</li>
<li><a
href="c9f995720e"><code>c9f9957</code></a>
docs: remove CSS modules example, add docusaurus-plugin-plausible</li>
<li><a
href="af97f1d747"><code>af97f1d</code></a>
Merge branch 'main' of <a
href="https://github.com/gpbl/react-day-picker">https://github.com/gpbl/react-day-picker</a></li>
<li>Additional commits viewable in <a
href="https://github.com/gpbl/react-day-picker/compare/v9.4.0...v9.4.1">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-12-06 04:07:14 +00:00
dependabot[bot]
c621226554 build(deps-dev): bump the development-dependencies group in /autogpt_platform/market with 2 updates (#8871)
Bumps the development-dependencies group in /autogpt_platform/market
with 2 updates: [pytest](https://github.com/pytest-dev/pytest) and
[ruff](https://github.com/astral-sh/ruff).

Updates `pytest` from 8.3.3 to 8.3.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest/releases">pytest's
releases</a>.</em></p>
<blockquote>
<h2>8.3.4</h2>
<h1>pytest 8.3.4 (2024-12-01)</h1>
<h2>Bug fixes</h2>
<ul>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12592">#12592</a>:
Fixed <code>KeyError</code>{.interpreted-text role=&quot;class&quot;}
crash when using <code>--import-mode=importlib</code> in a directory
layout where a directory contains a child directory with the same
name.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12818">#12818</a>:
Assertion rewriting now preserves the source ranges of the original
instructions, making it play well with tools that deal with the
<code>AST</code>, like <a
href="https://github.com/alexmojaki/executing">executing</a>.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12849">#12849</a>:
ANSI escape codes for colored output now handled correctly in
<code>pytest.fail</code>{.interpreted-text role=&quot;func&quot;} with
[pytrace=False]{.title-ref}.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/9353">#9353</a>:
<code>pytest.approx</code>{.interpreted-text role=&quot;func&quot;} now
uses strict equality when given booleans.</p>
</li>
</ul>
<h2>Improved documentation</h2>
<ul>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/10558">#10558</a>:
Fix ambiguous docstring of
<code>pytest.Config.getoption</code>{.interpreted-text
role=&quot;func&quot;}.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/10829">#10829</a>:
Improve documentation on the current handling of the
<code>--basetemp</code> option and its lack of retention functionality
(<code>temporary directory location and
retention</code>{.interpreted-text role=&quot;ref&quot;}).</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12866">#12866</a>:
Improved cross-references concerning the
<code>recwarn</code>{.interpreted-text role=&quot;fixture&quot;}
fixture.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12966">#12966</a>:
Clarify <code>filterwarnings</code>{.interpreted-text
role=&quot;ref&quot;} docs on filter precedence/order when using
multiple <code>@pytest.mark.filterwarnings
&lt;pytest.mark.filterwarnings ref&gt;</code>{.interpreted-text
role=&quot;ref&quot;} marks.</p>
</li>
</ul>
<h2>Contributor-facing changes</h2>
<ul>
<li><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12497">#12497</a>:
Fixed two failing pdb-related tests on Python 3.13.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="53f8b4e634"><code>53f8b4e</code></a>
Update pypa/gh-action-pypi-publish to v1.12.2</li>
<li><a
href="98dff36c9d"><code>98dff36</code></a>
Prepare release version 8.3.4</li>
<li><a
href="1b474e221d"><code>1b474e2</code></a>
approx: use exact comparison for bool (<a
href="https://redirect.github.com/pytest-dev/pytest/issues/13013">#13013</a>)</li>
<li><a
href="b541721529"><code>b541721</code></a>
docs: Fix wrong statement about sys.modules with importlib import mode
(<a
href="https://redirect.github.com/pytest-dev/pytest/issues/1298">#1298</a>...</li>
<li><a
href="16cb87b650"><code>16cb87b</code></a>
pytest.fail: fix ANSI escape codes for colored output (<a
href="https://redirect.github.com/pytest-dev/pytest/issues/12959">#12959</a>)
(<a
href="https://redirect.github.com/pytest-dev/pytest/issues/12990">#12990</a>)</li>
<li><a
href="be6bc812b0"><code>be6bc81</code></a>
Issue <a
href="https://redirect.github.com/pytest-dev/pytest/issues/12966">#12966</a>
Clarify filterwarnings docs on precedence when using multiple ma...</li>
<li><a
href="7aeb72bbc6"><code>7aeb72b</code></a>
Improve docs on basetemp and retention (<a
href="https://redirect.github.com/pytest-dev/pytest/issues/12912">#12912</a>)
(<a
href="https://redirect.github.com/pytest-dev/pytest/issues/12928">#12928</a>)</li>
<li><a
href="c8758414cf"><code>c875841</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest/issues/12917">#12917</a>
from pytest-dev/patchback/backports/8.3.x/ded1f44e5...</li>
<li><a
href="6502816d97"><code>6502816</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest/issues/12913">#12913</a>
from jakkdl/dontfailonbadpath</li>
<li><a
href="52135b033f"><code>52135b0</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest/issues/12885">#12885</a>
from The-Compiler/pdb-py311 (<a
href="https://redirect.github.com/pytest-dev/pytest/issues/12887">#12887</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest/compare/8.3.3...8.3.4">compare
view</a></li>
</ul>
</details>
<br />

Updates `ruff` from 0.8.0 to 0.8.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.8.1</h2>
<h2>Release Notes</h2>
<h3>Preview features</h3>
<ul>
<li>Formatter: Avoid invalid syntax for format-spec with quotes for all
Python versions (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14625">#14625</a>)</li>
<li>Formatter: Consider quotes inside format-specs when choosing the
quotes for an f-string (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14493">#14493</a>)</li>
<li>Formatter: Do not consider f-strings with escaped newlines as
multiline (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14624">#14624</a>)</li>
<li>Formatter: Fix f-string formatting in assignment statement (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14454">#14454</a>)</li>
<li>Formatter: Fix unnecessary space around power operator
(<code>**</code>) in overlong f-string expressions (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14489">#14489</a>)</li>
<li>[<code>airflow</code>] Avoid implicit <code>schedule</code> argument
to <code>DAG</code> and <code>@dag</code> (<code>AIR301</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14581">#14581</a>)</li>
<li>[<code>flake8-builtins</code>] Exempt private built-in modules
(<code>A005</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14505">#14505</a>)</li>
<li>[<code>flake8-pytest-style</code>] Fix
<code>pytest.mark.parametrize</code> rules to check calls instead of
decorators (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14515">#14515</a>)</li>
<li>[<code>flake8-type-checking</code>] Implement
<code>runtime-cast-value</code> (<code>TC006</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14511">#14511</a>)</li>
<li>[<code>flake8-type-checking</code>] Implement
<code>unquoted-type-alias</code> (<code>TC007</code>) and
<code>quoted-type-alias</code> (<code>TC008</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/12927">#12927</a>)</li>
<li>[<code>flake8-use-pathlib</code>] Recommend
<code>Path.iterdir()</code> over <code>os.listdir()</code>
(<code>PTH208</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14509">#14509</a>)</li>
<li>[<code>pylint</code>] Extend <code>invalid-envvar-default</code> to
detect <code>os.environ.get</code> (<code>PLW1508</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14512">#14512</a>)</li>
<li>[<code>pylint</code>] Implement <code>len-test</code>
(<code>PLC1802</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14309">#14309</a>)</li>
<li>[<code>refurb</code>] Fix bug where methods defined using lambdas
were flagged by <code>FURB118</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14639">#14639</a>)</li>
<li>[<code>ruff</code>] Auto-add <code>r</code> prefix when string has
no backslashes for <code>unraw-re-pattern</code> (<code>RUF039</code>)
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14536">#14536</a>)</li>
<li>[<code>ruff</code>] Implement
<code>invalid-assert-message-literal-argument</code>
(<code>RUF040</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14488">#14488</a>)</li>
<li>[<code>ruff</code>] Implement
<code>unnecessary-nested-literal</code> (<code>RUF041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14323">#14323</a>)</li>
<li>[<code>ruff</code>] Implement
<code>unnecessary-regular-expression</code> (<code>RUF055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14659">#14659</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>Ignore more rules for stub files (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14541">#14541</a>)</li>
<li>[<code>pep8-naming</code>] Eliminate false positives for
single-letter names (<code>N811</code>, <code>N814</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14584">#14584</a>)</li>
<li>[<code>pyflakes</code>] Avoid false positives in
<code>@no_type_check</code> contexts (<code>F821</code>,
<code>F722</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14615">#14615</a>)</li>
<li>[<code>ruff</code>] Detect redirected-noqa in file-level comments
(<code>RUF101</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14635">#14635</a>)</li>
<li>[<code>ruff</code>] Mark fixes for <code>unsorted-dunder-all</code>
and <code>unsorted-dunder-slots</code> as unsafe when there are complex
comments in the sequence (<code>RUF022</code>, <code>RUF023</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14560">#14560</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Avoid fixing code to <code>None | None</code> for
<code>redundant-none-literal</code> (<code>PYI061</code>) and
<code>never-union</code> (<code>RUF020</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14583">#14583</a>,
<a
href="https://redirect.github.com/astral-sh/ruff/pull/14589">#14589</a>)</li>
<li>[<code>flake8-bugbear</code>] Fix
<code>mutable-contextvar-default</code> to resolve annotated function
calls properly (<code>B039</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14532">#14532</a>)</li>
<li>[<code>flake8-pyi</code>, <code>ruff</code>] Fix traversal of nested
literals and unions (<code>PYI016</code>, <code>PYI051</code>,
<code>PYI055</code>, <code>PYI062</code>, <code>RUF041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14641">#14641</a>)</li>
<li>[<code>flake8-pyi</code>] Avoid rewriting invalid type expressions
in <code>unnecessary-type-union</code> (<code>PYI055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14660">#14660</a>)</li>
<li>[<code>flake8-type-checking</code>] Avoid syntax errors and type
checking problem for quoted annotations autofix (<code>TC003</code>,
<code>TC006</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14634">#14634</a>)</li>
<li>[<code>pylint</code>] Do not wrap function calls in parentheses in
the fix for unnecessary-dunder-call (<code>PLC2801</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14601">#14601</a>)</li>
<li>[<code>ruff</code>] Handle <code>attrs</code>'s
<code>auto_attribs</code> correctly (<code>RUF009</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14520">#14520</a>)</li>
</ul>
<h2>Contributors</h2>
<ul>
<li><a
href="https://github.com/AlexWaygood"><code>@​AlexWaygood</code></a></li>
<li><a
href="https://github.com/Daverball"><code>@​Daverball</code></a></li>
<li><a
href="https://github.com/Glyphack"><code>@​Glyphack</code></a></li>
<li><a
href="https://github.com/InSyncWithFoo"><code>@​InSyncWithFoo</code></a></li>
<li><a
href="https://github.com/Lokejoke"><code>@​Lokejoke</code></a></li>
<li><a
href="https://github.com/MichaReiser"><code>@​MichaReiser</code></a></li>
<li><a
href="https://github.com/cake-monotone"><code>@​cake-monotone</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.8.1</h2>
<h3>Preview features</h3>
<ul>
<li>Formatter: Avoid invalid syntax for format-spec with quotes for all
Python versions (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14625">#14625</a>)</li>
<li>Formatter: Consider quotes inside format-specs when choosing the
quotes for an f-string (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14493">#14493</a>)</li>
<li>Formatter: Do not consider f-strings with escaped newlines as
multiline (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14624">#14624</a>)</li>
<li>Formatter: Fix f-string formatting in assignment statement (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14454">#14454</a>)</li>
<li>Formatter: Fix unnecessary space around power operator
(<code>**</code>) in overlong f-string expressions (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14489">#14489</a>)</li>
<li>[<code>airflow</code>] Avoid implicit <code>schedule</code> argument
to <code>DAG</code> and <code>@dag</code> (<code>AIR301</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14581">#14581</a>)</li>
<li>[<code>flake8-builtins</code>] Exempt private built-in modules
(<code>A005</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14505">#14505</a>)</li>
<li>[<code>flake8-pytest-style</code>] Fix
<code>pytest.mark.parametrize</code> rules to check calls instead of
decorators (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14515">#14515</a>)</li>
<li>[<code>flake8-type-checking</code>] Implement
<code>runtime-cast-value</code> (<code>TC006</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14511">#14511</a>)</li>
<li>[<code>flake8-type-checking</code>] Implement
<code>unquoted-type-alias</code> (<code>TC007</code>) and
<code>quoted-type-alias</code> (<code>TC008</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/12927">#12927</a>)</li>
<li>[<code>flake8-use-pathlib</code>] Recommend
<code>Path.iterdir()</code> over <code>os.listdir()</code>
(<code>PTH208</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14509">#14509</a>)</li>
<li>[<code>pylint</code>] Extend <code>invalid-envvar-default</code> to
detect <code>os.environ.get</code> (<code>PLW1508</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14512">#14512</a>)</li>
<li>[<code>pylint</code>] Implement <code>len-test</code>
(<code>PLC1802</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14309">#14309</a>)</li>
<li>[<code>refurb</code>] Fix bug where methods defined using lambdas
were flagged by <code>FURB118</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14639">#14639</a>)</li>
<li>[<code>ruff</code>] Auto-add <code>r</code> prefix when string has
no backslashes for <code>unraw-re-pattern</code> (<code>RUF039</code>)
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14536">#14536</a>)</li>
<li>[<code>ruff</code>] Implement
<code>invalid-assert-message-literal-argument</code>
(<code>RUF040</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14488">#14488</a>)</li>
<li>[<code>ruff</code>] Implement
<code>unnecessary-nested-literal</code> (<code>RUF041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14323">#14323</a>)</li>
<li>[<code>ruff</code>] Implement
<code>unnecessary-regular-expression</code> (<code>RUF055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14659">#14659</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>Ignore more rules for stub files (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14541">#14541</a>)</li>
<li>[<code>pep8-naming</code>] Eliminate false positives for
single-letter names (<code>N811</code>, <code>N814</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14584">#14584</a>)</li>
<li>[<code>pyflakes</code>] Avoid false positives in
<code>@no_type_check</code> contexts (<code>F821</code>,
<code>F722</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14615">#14615</a>)</li>
<li>[<code>ruff</code>] Detect redirected-noqa in file-level comments
(<code>RUF101</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14635">#14635</a>)</li>
<li>[<code>ruff</code>] Mark fixes for <code>unsorted-dunder-all</code>
and <code>unsorted-dunder-slots</code> as unsafe when there are complex
comments in the sequence (<code>RUF022</code>, <code>RUF023</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14560">#14560</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Avoid fixing code to <code>None | None</code> for
<code>redundant-none-literal</code> (<code>PYI061</code>) and
<code>never-union</code> (<code>RUF020</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14583">#14583</a>,
<a
href="https://redirect.github.com/astral-sh/ruff/pull/14589">#14589</a>)</li>
<li>[<code>flake8-bugbear</code>] Fix
<code>mutable-contextvar-default</code> to resolve annotated function
calls properly (<code>B039</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14532">#14532</a>)</li>
<li>[<code>flake8-pyi</code>, <code>ruff</code>] Fix traversal of nested
literals and unions (<code>PYI016</code>, <code>PYI051</code>,
<code>PYI055</code>, <code>PYI062</code>, <code>RUF041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14641">#14641</a>)</li>
<li>[<code>flake8-pyi</code>] Avoid rewriting invalid type expressions
in <code>unnecessary-type-union</code> (<code>PYI055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14660">#14660</a>)</li>
<li>[<code>flake8-type-checking</code>] Avoid syntax errors and type
checking problem for quoted annotations autofix (<code>TC003</code>,
<code>TC006</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14634">#14634</a>)</li>
<li>[<code>pylint</code>] Do not wrap function calls in parentheses in
the fix for unnecessary-dunder-call (<code>PLC2801</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14601">#14601</a>)</li>
<li>[<code>ruff</code>] Handle <code>attrs</code>'s
<code>auto_attribs</code> correctly (<code>RUF009</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14520">#14520</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b3b2c982cd"><code>b3b2c98</code></a>
Update CHANGELOG.md with the new commits for 0.8.1 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14664">#14664</a>)</li>
<li><a
href="abb3c6ea95"><code>abb3c6e</code></a>
[<code>flake8-pyi</code>] Avoid rewriting invalid type expressions in
`unnecessary-type-...</li>
<li><a
href="224fe75a76"><code>224fe75</code></a>
[<code>ruff</code>] Implement
<code>unnecessary-regular-expression</code> (<code>RUF055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14659">#14659</a>)</li>
<li><a
href="dc29f52750"><code>dc29f52</code></a>
[<code>flake8-pyi</code>, <code>ruff</code>] Fix traversal of nested
literals and unions (<code>PYI016</code>,...</li>
<li><a
href="d9cbf2fe44"><code>d9cbf2f</code></a>
Avoids unnecessary overhead for <code>TC004</code>, when
<code>TC001-003</code> are disabled (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14657">#14657</a>)</li>
<li><a
href="3f6c65e78c"><code>3f6c65e</code></a>
[red-knot] Fix merged type after if-else without explicit else branch
(<a
href="https://redirect.github.com/astral-sh/ruff/issues/14621">#14621</a>)</li>
<li><a
href="976c37a849"><code>976c37a</code></a>
Bump version to 0.8.1 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14655">#14655</a>)</li>
<li><a
href="a378ff38dc"><code>a378ff3</code></a>
[red-knot] Fix Boolean flags in mdtests (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14654">#14654</a>)</li>
<li><a
href="d8bca0d3a2"><code>d8bca0d</code></a>
Fix bug where methods defined using lambdas were flagged by FURB118 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14639">#14639</a>)</li>
<li><a
href="6f1cf5b686"><code>6f1cf5b</code></a>
[red-knot] Minor fix in MRO tests (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14652">#14652</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.8.0...0.8.1">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-12-06 03:57:20 +00:00
Abhimanyu Yadav
227806aef9 feat(blocks): Add code execution block (#8768)
- Resolves #8766 

Creates a block that executes code in an E2B sandbox.

Demo:


https://github.com/user-attachments/assets/460382c4-5bf7-4f96-a539-88ab263777de

---------

Co-authored-by: Reinier van der Leer <github@pwuts.nl>
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-12-06 01:16:19 +00:00
Reinier van der Leer
0272d87af3 ci(backend): Add poetry.lock check (#8885)
- Resolves #8884

We need to prevent breaking updates to dependency version requirements
of `autogpt_libs`.
`autogpt_libs/pytroject.toml` and `backend/poetry.lock` are loosely
coupled, and to ensure they stay in sync we need an extra check.

For now I'm also reverting the breaking update of #8787, otherwise this
added CI check will immediately fail.

### Changes
- ci(backend): Add `poetry.lock` check
- Revert "build(deps): bump pydantic from 2.9.2 to 2.10.2 in
/autogpt_platform/autogpt_libs in the production-dependencies group
across 1 directory (#8787)"
2024-12-05 18:41:59 +00:00
Reinier van der Leer
64f5e60d12 feat(blocks): Add webhook block status indicator (#8838)
- Resolves #8743
- Follow-up to #8358

### Demo


https://github.com/user-attachments/assets/f983dfa2-2dc2-4ab0-8373-e768ba17e6f7

### Changes 🏗️

- feat(frontend): Add webhook status indicator on `CustomNode`
   - Add `webhookId` to frontend node data model

- fix(backend): Fix webhook ping endpoint
   - Remove `provider` path parameter
   - Fix return values and error handling
   - Fix `WebhooksManager.trigger_ping(..)`
      - Add `credentials` parameter
      - Fix usage of credentials
   - Fix `.data.integrations.wait_for_webhook_event(..)`
      - Add `AsyncRedisEventBus.wait_for_event(..)`

- feat(frontend): Add `BackendAPIProvider` + `useBackendAPI`

- feat(frontend): Improve layout of node header

    Before:

![image](https://github.com/user-attachments/assets/17a33b94-65f0-4e34-a47d-2dd321edecae)
    After:

![image](https://github.com/user-attachments/assets/64afb1e4-e3f2-4ca9-8961-f1245f25477f)

- refactor(backend): Clean up `.data.integrations`
- refactor(backend): Fix naming in `.data.queue` for understandability

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [x] Add webhook block, save -> gray indicator
  - [x] Add necessary info to webhook block, save -> green indicator
  - [x] Remove necessary info, save -> gray indicator

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-12-05 10:35:13 +00:00
Nicholas Tindle
6b742d1a8c docs: add docs for writing playwright tests (#8877)
<!-- Clearly explain the need for these changes: -->
Nick wants others to be able to write tests besides Nick

### Changes 🏗️

<!-- Concisely describe all of the changes made in this pull request:
-->
- Fixes various import errors across the docs to fix dead links
- Adds Docs for making and debugging your own tests

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-12-04 18:17:17 +00:00
Nicholas Tindle
d4edb9371d feat(blocks): Add Slant 3D printing via API service (#8805)
<!-- Clearly explain the need for these changes: -->

I want to be able to have agents 3d print things and deliver them to my
house!

### Changes 🏗️

<!-- Concisely describe all of the changes made in this pull request:
-->
- Adds slant3d as a provider
- Adds slant3d order webhook (disabled on the cloud by default due to
how it notifies users)
- Adds several blocks to order from slant3d
- Diables Get Orders (for the same reason as webhook)

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan

<details>
  <summary>Test Plan</summary>
  
  - [ ] Add filament block and fill API key
  - [ ] Run filament block
- [ ] Add slice block and use this value:
https://files.printables.com/media/prints/1081287/stls/8176524_a9edde2d-68c1-41de-a207-b584fcf42f30_f9127d5b-39ed-4ef8-b59f-d3a0bc874373/rod-holder.stl
  - [ ] Run slice block
- [ ] Add estimate blocks (print and shipping) and use your address, and
the above file
  - [ ] select petg and count 1
  - [ ] run the blocks
  - [ ] Create an order using same information
  - [ ] Run the block and note the order number
  - [ ] Delete the create order block so you don't keep ordering stuff
  - [ ] Run get orders block
  - [ ] Check your order exists
  - [ ] Run the cancel order block with the order id
  - [ ] run the get orders block and check the order no longer exists
</details>

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-12-04 02:44:29 +00:00
Nicholas Tindle
89011aabe0 feat(frontend): add block tests (#8804)
<!-- Clearly explain the need for these changes: -->
We want to be able to automatically test agent running creation and
building via the build page

### Changes 🏗️
- updates many UI elements to have new data ids 
- adds page for build
- adds spec for build
<!-- Concisely describe all of the changes made in this pull request:
-->

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
  - [x] Run the UI Tests!

---------

Co-authored-by: Bently <tomnoon9@gmail.com>
2024-12-03 16:10:46 +00:00
Abhimanyu Yadav
43bd5c89d7 fix(frontend): advanced-toggle-default (#8802)
- resolve #8739

I don't think so that this is a frontend issue [might be wrong] ,
because if we are not classifying that a particular input is `advanced =
true/false`. Then we automatically get `advanced = True`.

<img width="1142" alt="Screenshot 2024-11-27 at 10 36 59 AM"
src="https://github.com/user-attachments/assets/e8d9c037-5b8b-45b2-b40b-8390bc63de99">
2024-12-03 12:14:17 +00:00
dependabot[bot]
0a604a5746 build(deps-dev): bump ruff from 0.8.0 to 0.8.1 in /autogpt_platform/autogpt_libs in the development-dependencies group (#8864)
Bumps the development-dependencies group in
/autogpt_platform/autogpt_libs with 1 update:
[ruff](https://github.com/astral-sh/ruff).

Updates `ruff` from 0.8.0 to 0.8.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.8.1</h2>
<h2>Release Notes</h2>
<h3>Preview features</h3>
<ul>
<li>Formatter: Avoid invalid syntax for format-spec with quotes for all
Python versions (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14625">#14625</a>)</li>
<li>Formatter: Consider quotes inside format-specs when choosing the
quotes for an f-string (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14493">#14493</a>)</li>
<li>Formatter: Do not consider f-strings with escaped newlines as
multiline (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14624">#14624</a>)</li>
<li>Formatter: Fix f-string formatting in assignment statement (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14454">#14454</a>)</li>
<li>Formatter: Fix unnecessary space around power operator
(<code>**</code>) in overlong f-string expressions (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14489">#14489</a>)</li>
<li>[<code>airflow</code>] Avoid implicit <code>schedule</code> argument
to <code>DAG</code> and <code>@dag</code> (<code>AIR301</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14581">#14581</a>)</li>
<li>[<code>flake8-builtins</code>] Exempt private built-in modules
(<code>A005</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14505">#14505</a>)</li>
<li>[<code>flake8-pytest-style</code>] Fix
<code>pytest.mark.parametrize</code> rules to check calls instead of
decorators (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14515">#14515</a>)</li>
<li>[<code>flake8-type-checking</code>] Implement
<code>runtime-cast-value</code> (<code>TC006</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14511">#14511</a>)</li>
<li>[<code>flake8-type-checking</code>] Implement
<code>unquoted-type-alias</code> (<code>TC007</code>) and
<code>quoted-type-alias</code> (<code>TC008</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/12927">#12927</a>)</li>
<li>[<code>flake8-use-pathlib</code>] Recommend
<code>Path.iterdir()</code> over <code>os.listdir()</code>
(<code>PTH208</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14509">#14509</a>)</li>
<li>[<code>pylint</code>] Extend <code>invalid-envvar-default</code> to
detect <code>os.environ.get</code> (<code>PLW1508</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14512">#14512</a>)</li>
<li>[<code>pylint</code>] Implement <code>len-test</code>
(<code>PLC1802</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14309">#14309</a>)</li>
<li>[<code>refurb</code>] Fix bug where methods defined using lambdas
were flagged by <code>FURB118</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14639">#14639</a>)</li>
<li>[<code>ruff</code>] Auto-add <code>r</code> prefix when string has
no backslashes for <code>unraw-re-pattern</code> (<code>RUF039</code>)
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14536">#14536</a>)</li>
<li>[<code>ruff</code>] Implement
<code>invalid-assert-message-literal-argument</code>
(<code>RUF040</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14488">#14488</a>)</li>
<li>[<code>ruff</code>] Implement
<code>unnecessary-nested-literal</code> (<code>RUF041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14323">#14323</a>)</li>
<li>[<code>ruff</code>] Implement
<code>unnecessary-regular-expression</code> (<code>RUF055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14659">#14659</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>Ignore more rules for stub files (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14541">#14541</a>)</li>
<li>[<code>pep8-naming</code>] Eliminate false positives for
single-letter names (<code>N811</code>, <code>N814</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14584">#14584</a>)</li>
<li>[<code>pyflakes</code>] Avoid false positives in
<code>@no_type_check</code> contexts (<code>F821</code>,
<code>F722</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14615">#14615</a>)</li>
<li>[<code>ruff</code>] Detect redirected-noqa in file-level comments
(<code>RUF101</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14635">#14635</a>)</li>
<li>[<code>ruff</code>] Mark fixes for <code>unsorted-dunder-all</code>
and <code>unsorted-dunder-slots</code> as unsafe when there are complex
comments in the sequence (<code>RUF022</code>, <code>RUF023</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14560">#14560</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Avoid fixing code to <code>None | None</code> for
<code>redundant-none-literal</code> (<code>PYI061</code>) and
<code>never-union</code> (<code>RUF020</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14583">#14583</a>,
<a
href="https://redirect.github.com/astral-sh/ruff/pull/14589">#14589</a>)</li>
<li>[<code>flake8-bugbear</code>] Fix
<code>mutable-contextvar-default</code> to resolve annotated function
calls properly (<code>B039</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14532">#14532</a>)</li>
<li>[<code>flake8-pyi</code>, <code>ruff</code>] Fix traversal of nested
literals and unions (<code>PYI016</code>, <code>PYI051</code>,
<code>PYI055</code>, <code>PYI062</code>, <code>RUF041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14641">#14641</a>)</li>
<li>[<code>flake8-pyi</code>] Avoid rewriting invalid type expressions
in <code>unnecessary-type-union</code> (<code>PYI055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14660">#14660</a>)</li>
<li>[<code>flake8-type-checking</code>] Avoid syntax errors and type
checking problem for quoted annotations autofix (<code>TC003</code>,
<code>TC006</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14634">#14634</a>)</li>
<li>[<code>pylint</code>] Do not wrap function calls in parentheses in
the fix for unnecessary-dunder-call (<code>PLC2801</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14601">#14601</a>)</li>
<li>[<code>ruff</code>] Handle <code>attrs</code>'s
<code>auto_attribs</code> correctly (<code>RUF009</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14520">#14520</a>)</li>
</ul>
<h2>Contributors</h2>
<ul>
<li><a
href="https://github.com/AlexWaygood"><code>@​AlexWaygood</code></a></li>
<li><a
href="https://github.com/Daverball"><code>@​Daverball</code></a></li>
<li><a
href="https://github.com/Glyphack"><code>@​Glyphack</code></a></li>
<li><a
href="https://github.com/InSyncWithFoo"><code>@​InSyncWithFoo</code></a></li>
<li><a
href="https://github.com/Lokejoke"><code>@​Lokejoke</code></a></li>
<li><a
href="https://github.com/MichaReiser"><code>@​MichaReiser</code></a></li>
<li><a
href="https://github.com/cake-monotone"><code>@​cake-monotone</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.8.1</h2>
<h3>Preview features</h3>
<ul>
<li>Formatter: Avoid invalid syntax for format-spec with quotes for all
Python versions (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14625">#14625</a>)</li>
<li>Formatter: Consider quotes inside format-specs when choosing the
quotes for an f-string (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14493">#14493</a>)</li>
<li>Formatter: Do not consider f-strings with escaped newlines as
multiline (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14624">#14624</a>)</li>
<li>Formatter: Fix f-string formatting in assignment statement (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14454">#14454</a>)</li>
<li>Formatter: Fix unnecessary space around power operator
(<code>**</code>) in overlong f-string expressions (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14489">#14489</a>)</li>
<li>[<code>airflow</code>] Avoid implicit <code>schedule</code> argument
to <code>DAG</code> and <code>@dag</code> (<code>AIR301</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14581">#14581</a>)</li>
<li>[<code>flake8-builtins</code>] Exempt private built-in modules
(<code>A005</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14505">#14505</a>)</li>
<li>[<code>flake8-pytest-style</code>] Fix
<code>pytest.mark.parametrize</code> rules to check calls instead of
decorators (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14515">#14515</a>)</li>
<li>[<code>flake8-type-checking</code>] Implement
<code>runtime-cast-value</code> (<code>TC006</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14511">#14511</a>)</li>
<li>[<code>flake8-type-checking</code>] Implement
<code>unquoted-type-alias</code> (<code>TC007</code>) and
<code>quoted-type-alias</code> (<code>TC008</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/12927">#12927</a>)</li>
<li>[<code>flake8-use-pathlib</code>] Recommend
<code>Path.iterdir()</code> over <code>os.listdir()</code>
(<code>PTH208</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14509">#14509</a>)</li>
<li>[<code>pylint</code>] Extend <code>invalid-envvar-default</code> to
detect <code>os.environ.get</code> (<code>PLW1508</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14512">#14512</a>)</li>
<li>[<code>pylint</code>] Implement <code>len-test</code>
(<code>PLC1802</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14309">#14309</a>)</li>
<li>[<code>refurb</code>] Fix bug where methods defined using lambdas
were flagged by <code>FURB118</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14639">#14639</a>)</li>
<li>[<code>ruff</code>] Auto-add <code>r</code> prefix when string has
no backslashes for <code>unraw-re-pattern</code> (<code>RUF039</code>)
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/14536">#14536</a>)</li>
<li>[<code>ruff</code>] Implement
<code>invalid-assert-message-literal-argument</code>
(<code>RUF040</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14488">#14488</a>)</li>
<li>[<code>ruff</code>] Implement
<code>unnecessary-nested-literal</code> (<code>RUF041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14323">#14323</a>)</li>
<li>[<code>ruff</code>] Implement
<code>unnecessary-regular-expression</code> (<code>RUF055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14659">#14659</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>Ignore more rules for stub files (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14541">#14541</a>)</li>
<li>[<code>pep8-naming</code>] Eliminate false positives for
single-letter names (<code>N811</code>, <code>N814</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14584">#14584</a>)</li>
<li>[<code>pyflakes</code>] Avoid false positives in
<code>@no_type_check</code> contexts (<code>F821</code>,
<code>F722</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14615">#14615</a>)</li>
<li>[<code>ruff</code>] Detect redirected-noqa in file-level comments
(<code>RUF101</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14635">#14635</a>)</li>
<li>[<code>ruff</code>] Mark fixes for <code>unsorted-dunder-all</code>
and <code>unsorted-dunder-slots</code> as unsafe when there are complex
comments in the sequence (<code>RUF022</code>, <code>RUF023</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14560">#14560</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Avoid fixing code to <code>None | None</code> for
<code>redundant-none-literal</code> (<code>PYI061</code>) and
<code>never-union</code> (<code>RUF020</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14583">#14583</a>,
<a
href="https://redirect.github.com/astral-sh/ruff/pull/14589">#14589</a>)</li>
<li>[<code>flake8-bugbear</code>] Fix
<code>mutable-contextvar-default</code> to resolve annotated function
calls properly (<code>B039</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14532">#14532</a>)</li>
<li>[<code>flake8-pyi</code>, <code>ruff</code>] Fix traversal of nested
literals and unions (<code>PYI016</code>, <code>PYI051</code>,
<code>PYI055</code>, <code>PYI062</code>, <code>RUF041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14641">#14641</a>)</li>
<li>[<code>flake8-pyi</code>] Avoid rewriting invalid type expressions
in <code>unnecessary-type-union</code> (<code>PYI055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14660">#14660</a>)</li>
<li>[<code>flake8-type-checking</code>] Avoid syntax errors and type
checking problem for quoted annotations autofix (<code>TC003</code>,
<code>TC006</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14634">#14634</a>)</li>
<li>[<code>pylint</code>] Do not wrap function calls in parentheses in
the fix for unnecessary-dunder-call (<code>PLC2801</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14601">#14601</a>)</li>
<li>[<code>ruff</code>] Handle <code>attrs</code>'s
<code>auto_attribs</code> correctly (<code>RUF009</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/14520">#14520</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b3b2c982cd"><code>b3b2c98</code></a>
Update CHANGELOG.md with the new commits for 0.8.1 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14664">#14664</a>)</li>
<li><a
href="abb3c6ea95"><code>abb3c6e</code></a>
[<code>flake8-pyi</code>] Avoid rewriting invalid type expressions in
`unnecessary-type-...</li>
<li><a
href="224fe75a76"><code>224fe75</code></a>
[<code>ruff</code>] Implement
<code>unnecessary-regular-expression</code> (<code>RUF055</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14659">#14659</a>)</li>
<li><a
href="dc29f52750"><code>dc29f52</code></a>
[<code>flake8-pyi</code>, <code>ruff</code>] Fix traversal of nested
literals and unions (<code>PYI016</code>,...</li>
<li><a
href="d9cbf2fe44"><code>d9cbf2f</code></a>
Avoids unnecessary overhead for <code>TC004</code>, when
<code>TC001-003</code> are disabled (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14657">#14657</a>)</li>
<li><a
href="3f6c65e78c"><code>3f6c65e</code></a>
[red-knot] Fix merged type after if-else without explicit else branch
(<a
href="https://redirect.github.com/astral-sh/ruff/issues/14621">#14621</a>)</li>
<li><a
href="976c37a849"><code>976c37a</code></a>
Bump version to 0.8.1 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14655">#14655</a>)</li>
<li><a
href="a378ff38dc"><code>a378ff3</code></a>
[red-knot] Fix Boolean flags in mdtests (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14654">#14654</a>)</li>
<li><a
href="d8bca0d3a2"><code>d8bca0d</code></a>
Fix bug where methods defined using lambdas were flagged by FURB118 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14639">#14639</a>)</li>
<li><a
href="6f1cf5b686"><code>6f1cf5b</code></a>
[red-knot] Minor fix in MRO tests (<a
href="https://redirect.github.com/astral-sh/ruff/issues/14652">#14652</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.8.0...0.8.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ruff&package-manager=pip&previous-version=0.8.0&new-version=0.8.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-03 11:35:15 +00:00
Reinier van der Leer
5ccfb8e4c6 dx(backend): Fix linting & formatting for autogpt_libs (#8860)
- Resolves #8859
- Follow-up to #8751

### Changes
- Add `autogpt_libs` to the backend CI path filter
- Add `ruff format` step for `autogpt_libs` to `linter.py` and
`pre-commit` config
- Run `poetry run format` with the new setup
2024-12-03 11:34:07 +00:00
Nicholas Tindle
96bba3c1bd fix: specify encoding for file with emoji in it so it loads on windows (#8873)
<!-- Clearly explain the need for these changes: -->

On windows this file load kept crashing stuff on startup so I specified
the encoding

### Changes 🏗️

<!-- Concisely describe all of the changes made in this pull request:
-->

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] Run the app!
2024-12-03 11:17:34 +00:00
Aarushi
de1cd6c295 chore(blocks/fal): Use dict instead of Dict (#8855)
Replace Dict with dict

### Changes 🏗️

Replace Dict with dict

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-03 11:09:38 +00:00
Aarushi
3bca279b35 feat(libs): Add API key rate limit middleware (#8850)
Once we release api key feature, we will want to be able to rate limit
as well. This is the foundation for that.
For now it is a blanket rate limit, later we will be able to add tiered
rate limits

### Changes 🏗️

Added new middleware libary in autogpt_libs which contains the logic for
getting the api key, storing it's details in redis and checking how many
requests it's done, how many are left and what the reset time is.

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-12-03 09:25:29 +00:00
Nicholas Tindle
7c2e371f23 docs: huntr no longer is offering a security bounty so remove it (#8872)
<!-- Clearly explain the need for these changes: -->

Huntr isn't offering a security bounty for autogpt at the moment so
remove it in favor of github security adviosories

### Changes 🏗️

<!-- Concisely describe all of the changes made in this pull request:
-->

comments out huntr line in case they decide to offer it again in the
future
2024-12-02 21:44:43 +00:00
Abhimanyu Yadav
dce9bdd488 Add URL swapping for marketplace based on environment (#8418)
### Fixes #8371

These changes are needed to automatically switch between local and
production marketplace URLs, ensuring the app connects to the correct
environment (dev or prod) without manual intervention.

### Changes 🏗️

1. Swaps marketplace URL based on APP_ENV (dev or prod).
2. Ensures correct URL is used for local or production environments.

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-12-02 12:12:10 +00:00
Reinier van der Leer
30bb9a3d72 dx: Fix dependabot PR/commit titles (#8841)
Dependabot's commit messages are bulky and don't use our commit message
scopes. Although not fully customizable, this partially fixes it.

### Changes 🏗️

- Fix dependabot commit message scopes

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-12-02 10:39:10 +00:00
Kaitlyn Barnard
758edaec9e Adding Docs for Agent Blocks (#8845)
### Changes 🏗️

Adding docs for Agent Blocks

Co-authored-by: Bently <tomnoon9@gmail.com>
2024-12-02 10:22:37 +00:00
Bently
be7f9123bb feat(blocks): Add jina fact checker block (#8409)
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-12-02 10:33:36 +00:00
Zamil Majdy
5c49fc87fd refactor(backend): Apply lint on autogpt_lib folder on backend/linter.py (#8751)
linter.py, only applies in the `backend` module, not `autogpt_libs`.

The scope of this PR is to clear this out.

### Changes 🏗️

* Add a linting scope to both the `backend` & `autogpt_libs` modules,
and apply the linter.


### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-12-02 09:57:53 +00:00
Zamil Majdy
2121ffd06b chore(platform): Bump version to v0.3.4 2024-12-02 09:08:19 +07:00
Zamil Majdy
0c2940353f hotfix(backend): Fix month credit calculation on December (#8851) 2024-12-02 09:00:01 +07:00
Zamil Majdy
d26105d382 hotfix(backend): Fix month credit calculation on December (#8851)
When calculating the next month, we are not rolling the month number
causing an error on credits.

### Changes 🏗️

Add modulo while calculating next month.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-12-02 08:47:40 +07:00
dependabot[bot]
7d48eebc78 build(deps): bump pydantic from 2.9.2 to 2.10.2 in /autogpt_platform/autogpt_libs in the production-dependencies group across 1 directory (#8787)
Bumps the production-dependencies group with 1 update in the
/autogpt_platform/autogpt_libs directory:
[pydantic](https://github.com/pydantic/pydantic).

Updates `pydantic` from 2.9.2 to 2.10.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pydantic/pydantic/releases">pydantic's
releases</a>.</em></p>
<blockquote>
<h2>v2.10.2 2024-11-26</h2>
<h2>What's Changed</h2>
<h3>Fixes</h3>
<ul>
<li>Only evaluate <code>FieldInfo</code> annotations if required during
schema building by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10769">#10769</a></li>
<li>Do not evaluate annotations for private fields by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10962">#10962</a></li>
<li>Support serialization as any for <code>Secret</code> types and
<code>Url</code> types by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10947">#10947</a></li>
<li>Fix type hint of <code>Field.default</code> to be compatible with
Python 3.8 and 3.9 by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10972">#10972</a></li>
<li>Add hashing support for URL types by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10975">#10975</a></li>
<li>Hide <code>BaseModel.__replace__</code> definition from type
checkers by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10979">10979</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/pydantic/pydantic/compare/v2.10.1...v2.10.2">https://github.com/pydantic/pydantic/compare/v2.10.1...v2.10.2</a></p>
<h2>v2.10.1 2024-11-21</h2>
<h2>What's Changed</h2>
<h3>Packaging</h3>
<ul>
<li>Bump <code>pydantic-core</code> version to <code>v2.27.1</code> by
<a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10938">#10938</a></li>
</ul>
<h3>Fixes</h3>
<ul>
<li>Use the correct frame when instantiating a parametrized
<code>TypeAdapter</code> by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10893">#10893</a></li>
<li>Relax check for validated data in <code>default_factory</code> utils
by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10909">#10909</a></li>
<li>Fix type checking issue with <code>model_fields</code> and
<code>model_computed_fields</code> by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10911">#10911</a></li>
<li>Use the parent configuration during schema generation for stdlib
<code>dataclass</code>es by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10928">#10928</a></li>
<li>Use the <code>globals</code> of the function when evaluating the
return type of serializers and <code>computed_field</code>s by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10929">#10929</a></li>
<li>Fix URL constraint application by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10922">#10922</a></li>
<li>Fix URL equality with different validation methods by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10934">#10934</a></li>
<li>Fix JSON schema title when specified as <code>''</code> by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10936">#10936</a></li>
<li>Fix <code>python</code> mode serialization for <code>complex</code>
inference by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic-core/pull/1549">pydantic-core#1549</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/pydantic/pydantic/compare/v2.10.0...v2.10.1">https://github.com/pydantic/pydantic/compare/v2.10.0...v2.10.1</a></p>
<h2>v2.10.0 2024-11-20</h2>
<p>The code released in v2.10.0 is practically identical to that of
v2.10.0b2.
See the <a
href="https://pydantic.dev/articles/pydantic-v2-10-release">v2.10
release blog post</a> for the highlights!</p>
<h2>What's Changed</h2>
<h3>Packaging</h3>
<ul>
<li>Bump <code>pydantic-core</code> to <code>v2.27.0</code> by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10825">#10825</a></li>
<li>Replaced pdm with uv by <a
href="https://github.com/frfahim"><code>@​frfahim</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10727">#10727</a></li>
</ul>
<h3>New Features</h3>
<ul>
<li>Support <code>fractions.Fraction</code> by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10318">#10318</a></li>
<li>Support <code>Hashable</code> for json validation by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10324">#10324</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pydantic/pydantic/blob/main/HISTORY.md">pydantic's
changelog</a>.</em></p>
<blockquote>
<h2>v2.10.2 (2024-11-25)</h2>
<p><a
href="https://github.com/pydantic/pydantic/releases/tag/v2.10.2">GitHub
release</a></p>
<h3>What's Changed</h3>
<h4>Fixes</h4>
<ul>
<li>Only evaluate FieldInfo annotations if required during schema
building by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10769">#10769</a></li>
<li>Do not evaluate annotations for private fields by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10962">#10962</a></li>
<li>Support serialization as any for <code>Secret</code> types and
<code>Url</code> types by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10947">#10947</a></li>
<li>Fix type hint of <code>Field.default</code> to be compatible with
Python 3.8 and 3.9 by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10972">#10972</a></li>
<li>Add hashing support for URL types by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10975">#10975</a></li>
<li>Hide <code>BaseModel.__replace__</code> definition from type
checkers by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10979">10979</a></li>
</ul>
<h2>v2.10.1 (2024-11-21)</h2>
<p><a
href="https://github.com/pydantic/pydantic/releases/tag/v2.10.1">GitHub
release</a></p>
<h3>What's Changed</h3>
<h4>Packaging</h4>
<ul>
<li>Bump <code>pydantic-core</code> version to <code>v2.27.1</code> by
<a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10938">#10938</a></li>
</ul>
<h4>Fixes</h4>
<ul>
<li>Use the correct frame when instantiating a parametrized
<code>TypeAdapter</code> by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10893">#10893</a></li>
<li>Relax check for validated data in <code>default_factory</code> utils
by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10909">#10909</a></li>
<li>Fix type checking issue with <code>model_fields</code> and
<code>model_computed_fields</code> by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10911">#10911</a></li>
<li>Use the parent configuration during schema generation for stdlib
<code>dataclass</code>es by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10928">#10928</a></li>
<li>Use the <code>globals</code> of the function when evaluating the
return type of serializers and <code>computed_field</code>s by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10929">#10929</a></li>
<li>Fix URL constraint application by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10922">#10922</a></li>
<li>Fix URL equality with different validation methods by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10934">#10934</a></li>
<li>Fix JSON schema title when specified as <code>''</code> by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10936">#10936</a></li>
<li>Fix <code>python</code> mode serialization for <code>complex</code>
inference by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic-core/pull/1549">pydantic-core#1549</a></li>
</ul>
<h3>New Contributors</h3>
<h2>v2.10.0 (2024-11-20)</h2>
<p>The code released in v2.10.0 is practically identical to that of
v2.10.0b2.</p>
<p><a
href="https://github.com/pydantic/pydantic/releases/tag/v2.10.0">GitHub
release</a></p>
<p>See the <a
href="https://pydantic.dev/articles/pydantic-v2-10-release">v2.10
release blog post</a> for the highlights!</p>
<h3>What's Changed</h3>
<h4>Packaging</h4>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="fe32515498"><code>fe32515</code></a>
Prepare for v2.10.2 release (<a
href="https://redirect.github.com/pydantic/pydantic/issues/10982">#10982</a>)</li>
<li><a
href="226cfaf62b"><code>226cfaf</code></a>
Hide <code>BaseModel.__replace__</code> definition from type checkers
(<a
href="https://redirect.github.com/pydantic/pydantic/issues/10979">#10979</a>)</li>
<li><a
href="02229a6ab1"><code>02229a6</code></a>
hashing support for urls (<a
href="https://redirect.github.com/pydantic/pydantic/issues/10975">#10975</a>)</li>
<li><a
href="a9cf39c32a"><code>a9cf39c</code></a>
Fix type hint of <code>Field.default</code> to be compatible with Python
3.8 and 3.9 (<a
href="https://redirect.github.com/pydantic/pydantic/issues/1">#1</a>...</li>
<li><a
href="869eafd70b"><code>869eafd</code></a>
Support serialization as any for <code>Secret</code> types and
<code>Url</code> types (<a
href="https://redirect.github.com/pydantic/pydantic/issues/10947">#10947</a>)</li>
<li><a
href="7c0ed72aa2"><code>7c0ed72</code></a>
Do not evaluate annotations for private fields (<a
href="https://redirect.github.com/pydantic/pydantic/issues/10962">#10962</a>)</li>
<li><a
href="d6fc7fce7d"><code>d6fc7fc</code></a>
Only evaluate <code>FieldInfo</code> annotations if required during
schema building (<a
href="https://redirect.github.com/pydantic/pydantic/issues/10">#10</a>...</li>
<li><a
href="17e60fafd6"><code>17e60fa</code></a>
spacing</li>
<li><a
href="369b355dba"><code>369b355</code></a>
remove typo</li>
<li><a
href="4c75404d6b"><code>4c75404</code></a>
Prepare for v2.10.1 release (<a
href="https://redirect.github.com/pydantic/pydantic/issues/10939">#10939</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/pydantic/pydantic/compare/v2.9.2...v2.10.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pydantic&package-manager=pip&previous-version=2.9.2&new-version=2.10.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-11-29 13:41:00 +00:00
dependabot[bot]
c6b36fbad7 build(deps): bump the production-dependencies group in /autogpt_platform/market with 2 updates (#8757)
Bumps the production-dependencies group in /autogpt_platform/market with
2 updates: [uvicorn](https://github.com/encode/uvicorn) and
[sentry-sdk](https://github.com/getsentry/sentry-python).

Updates `uvicorn` from 0.32.0 to 0.32.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/encode/uvicorn/releases">uvicorn's
releases</a>.</em></p>
<blockquote>
<h2>Version 0.32.1</h2>
<h2>What's Changed</h2>
<ul>
<li>Enable httptools lenient data by <a
href="https://github.com/vvanglro"><code>@​vvanglro</code></a> in <a
href="https://redirect.github.com/encode/uvicorn/pull/2488">encode/uvicorn#2488</a></li>
<li>Drop ASGI spec version to 2.3 on HTTP scope by <a
href="https://github.com/Kludex"><code>@​Kludex</code></a> in <a
href="https://redirect.github.com/encode/uvicorn/pull/2513">encode/uvicorn#2513</a></li>
</ul>
<hr />
<p><strong>Full Changelog</strong>: <a
href="https://github.com/encode/uvicorn/compare/0.32.0...0.32.1">https://github.com/encode/uvicorn/compare/0.32.0...0.32.1</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/encode/uvicorn/blob/master/CHANGELOG.md">uvicorn's
changelog</a>.</em></p>
<blockquote>
<h2>0.32.1 (2024-11-20)</h2>
<h3>Fixed</h3>
<ul>
<li>Drop ASGI spec version to 2.3 on HTTP scope <a
href="https://redirect.github.com/encode/uvicorn/pull/2513">#2513</a></li>
<li>Enable httptools lenient data on <code>httptools &gt;= 0.6.3</code>
<a
href="https://redirect.github.com/encode/uvicorn/pull/2488">#2488</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5279296e62"><code>5279296</code></a>
Upgrade upload/download GitHub Actions (<a
href="https://redirect.github.com/encode/uvicorn/issues/2517">#2517</a>)</li>
<li><a
href="8c3402dd22"><code>8c3402d</code></a>
Update <code>publish.yaml</code> with latest PyPI recommendations (<a
href="https://redirect.github.com/encode/uvicorn/issues/2516">#2516</a>)</li>
<li><a
href="04c6320f39"><code>04c6320</code></a>
Version 0.32.1 (<a
href="https://redirect.github.com/encode/uvicorn/issues/2515">#2515</a>)</li>
<li><a
href="fc6c51b8bb"><code>fc6c51b</code></a>
Drop ASGI spec version to 2.3 on HTTP (<a
href="https://redirect.github.com/encode/uvicorn/issues/2513">#2513</a>)</li>
<li><a
href="2aea8354ea"><code>2aea835</code></a>
fix(http): enable httptools lenient data (<a
href="https://redirect.github.com/encode/uvicorn/issues/2488">#2488</a>)</li>
<li>See full diff in <a
href="https://github.com/encode/uvicorn/compare/0.32.0...0.32.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `sentry-sdk` from 2.18.0 to 2.19.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/getsentry/sentry-python/releases">sentry-sdk's
releases</a>.</em></p>
<blockquote>
<h2>2.19.0</h2>
<h3>Various fixes &amp; improvements</h3>
<ul>
<li>New: introduce <code>rust_tracing</code> integration. See <a
href="https://docs.sentry.io/platforms/python/integrations/rust_tracing/">https://docs.sentry.io/platforms/python/integrations/rust_tracing/</a>
(<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3717">#3717</a>)
by <a
href="https://github.com/matt-codecov"><code>@​matt-codecov</code></a></li>
<li>Auto enable Litestar integration (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3540">#3540</a>)
by <a
href="https://github.com/provinzkraut"><code>@​provinzkraut</code></a></li>
<li>Deprecate <code>sentry_sdk.init</code> context manager (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3729">#3729</a>)
by <a
href="https://github.com/szokeasaurusrex"><code>@​szokeasaurusrex</code></a></li>
<li>feat(spotlight): Send PII to Spotlight when no DSN is set (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3804">#3804</a>)
by <a href="https://github.com/BYK"><code>@​BYK</code></a></li>
<li>feat(spotlight): Add info logs when Sentry is enabled (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3735">#3735</a>)
by <a href="https://github.com/BYK"><code>@​BYK</code></a></li>
<li>feat(spotlight): Inject Spotlight button on Django (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3751">#3751</a>)
by <a href="https://github.com/BYK"><code>@​BYK</code></a></li>
<li>feat(spotlight): Auto enable cache_spans for Spotlight on DEBUG (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3791">#3791</a>)
by <a href="https://github.com/BYK"><code>@​BYK</code></a></li>
<li>fix(logging): Handle parameter <code>stack_info</code> for the
<code>LoggingIntegration</code> (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3745">#3745</a>)
by <a
href="https://github.com/gmcrocetti"><code>@​gmcrocetti</code></a></li>
<li>fix(pure-eval): Make sentry-sdk[pure-eval] installable with
pip==24.0 (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3757">#3757</a>)
by <a
href="https://github.com/sentrivana"><code>@​sentrivana</code></a></li>
<li>fix(rust_tracing): include_tracing_fields arg to control unvetted
data in rust_tracing integration (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3780">#3780</a>)
by <a
href="https://github.com/matt-codecov"><code>@​matt-codecov</code></a></li>
<li>fix(aws) Fix aws lambda tests (by reducing event size) (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3770">#3770</a>)
by <a
href="https://github.com/antonpirker"><code>@​antonpirker</code></a></li>
<li>fix(arq): fix integration with Worker settings as a dict (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3742">#3742</a>)
by <a
href="https://github.com/saber-solooki"><code>@​saber-solooki</code></a></li>
<li>fix(httpx): Prevent Sentry baggage duplication (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3728">#3728</a>)
by <a
href="https://github.com/szokeasaurusrex"><code>@​szokeasaurusrex</code></a></li>
<li>fix(falcon): Don't exhaust request body stream (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3768">#3768</a>)
by <a
href="https://github.com/szokeasaurusrex"><code>@​szokeasaurusrex</code></a></li>
<li>fix(integrations): Check <code>retries_left</code> before capturing
exception (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3803">#3803</a>)
by <a
href="https://github.com/malkovro"><code>@​malkovro</code></a></li>
<li>fix(openai): Use name instead of description (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3807">#3807</a>)
by <a
href="https://github.com/sourceful-rob"><code>@​sourceful-rob</code></a></li>
<li>test(gcp): Only run GCP tests when they should (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3721">#3721</a>)
by <a
href="https://github.com/szokeasaurusrex"><code>@​szokeasaurusrex</code></a></li>
<li>chore: Shorten CI workflow names (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3805">#3805</a>)
by <a
href="https://github.com/sentrivana"><code>@​sentrivana</code></a></li>
<li>chore: Test with pyspark prerelease (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3760">#3760</a>)
by <a
href="https://github.com/sentrivana"><code>@​sentrivana</code></a></li>
<li>build(deps): bump codecov/codecov-action from 4.6.0 to 5.0.2 (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3792">#3792</a>)
by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a></li>
<li>build(deps): bump actions/checkout from 4.2.1 to 4.2.2 (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3691">#3691</a>)
by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md">sentry-sdk's
changelog</a>.</em></p>
<blockquote>
<h2>2.19.0</h2>
<h3>Various fixes &amp; improvements</h3>
<ul>
<li>New: introduce <code>rust_tracing</code> integration. See <a
href="https://docs.sentry.io/platforms/python/integrations/rust_tracing/">https://docs.sentry.io/platforms/python/integrations/rust_tracing/</a>
(<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3717">#3717</a>)
by <a
href="https://github.com/matt-codecov"><code>@​matt-codecov</code></a></li>
<li>Auto enable Litestar integration (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3540">#3540</a>)
by <a
href="https://github.com/provinzkraut"><code>@​provinzkraut</code></a></li>
<li>Deprecate <code>sentry_sdk.init</code> context manager (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3729">#3729</a>)
by <a
href="https://github.com/szokeasaurusrex"><code>@​szokeasaurusrex</code></a></li>
<li>feat(spotlight): Send PII to Spotlight when no DSN is set (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3804">#3804</a>)
by <a href="https://github.com/BYK"><code>@​BYK</code></a></li>
<li>feat(spotlight): Add info logs when Sentry is enabled (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3735">#3735</a>)
by <a href="https://github.com/BYK"><code>@​BYK</code></a></li>
<li>feat(spotlight): Inject Spotlight button on Django (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3751">#3751</a>)
by <a href="https://github.com/BYK"><code>@​BYK</code></a></li>
<li>feat(spotlight): Auto enable cache_spans for Spotlight on DEBUG (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3791">#3791</a>)
by <a href="https://github.com/BYK"><code>@​BYK</code></a></li>
<li>fix(logging): Handle parameter <code>stack_info</code> for the
<code>LoggingIntegration</code> (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3745">#3745</a>)
by <a
href="https://github.com/gmcrocetti"><code>@​gmcrocetti</code></a></li>
<li>fix(pure-eval): Make sentry-sdk[pure-eval] installable with
pip==24.0 (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3757">#3757</a>)
by <a
href="https://github.com/sentrivana"><code>@​sentrivana</code></a></li>
<li>fix(rust_tracing): include_tracing_fields arg to control unvetted
data in rust_tracing integration (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3780">#3780</a>)
by <a
href="https://github.com/matt-codecov"><code>@​matt-codecov</code></a></li>
<li>fix(aws) Fix aws lambda tests (by reducing event size) (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3770">#3770</a>)
by <a
href="https://github.com/antonpirker"><code>@​antonpirker</code></a></li>
<li>fix(arq): fix integration with Worker settings as a dict (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3742">#3742</a>)
by <a
href="https://github.com/saber-solooki"><code>@​saber-solooki</code></a></li>
<li>fix(httpx): Prevent Sentry baggage duplication (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3728">#3728</a>)
by <a
href="https://github.com/szokeasaurusrex"><code>@​szokeasaurusrex</code></a></li>
<li>fix(falcon): Don't exhaust request body stream (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3768">#3768</a>)
by <a
href="https://github.com/szokeasaurusrex"><code>@​szokeasaurusrex</code></a></li>
<li>fix(integrations): Check <code>retries_left</code> before capturing
exception (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3803">#3803</a>)
by <a
href="https://github.com/malkovro"><code>@​malkovro</code></a></li>
<li>fix(openai): Use name instead of description (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3807">#3807</a>)
by <a
href="https://github.com/sourceful-rob"><code>@​sourceful-rob</code></a></li>
<li>test(gcp): Only run GCP tests when they should (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3721">#3721</a>)
by <a
href="https://github.com/szokeasaurusrex"><code>@​szokeasaurusrex</code></a></li>
<li>chore: Shorten CI workflow names (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3805">#3805</a>)
by <a
href="https://github.com/sentrivana"><code>@​sentrivana</code></a></li>
<li>chore: Test with pyspark prerelease (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3760">#3760</a>)
by <a
href="https://github.com/sentrivana"><code>@​sentrivana</code></a></li>
<li>build(deps): bump codecov/codecov-action from 4.6.0 to 5.0.2 (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3792">#3792</a>)
by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a></li>
<li>build(deps): bump actions/checkout from 4.2.1 to 4.2.2 (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3691">#3691</a>)
by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="039c220bcb"><code>039c220</code></a>
Updated changelog</li>
<li><a
href="c83e7428f4"><code>c83e742</code></a>
release: 2.19.0</li>
<li><a
href="8fe5bb4b19"><code>8fe5bb4</code></a>
feat: Send PII to Spotlight when no DSN is set (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3804">#3804</a>)</li>
<li><a
href="295dd8d50f"><code>295dd8d</code></a>
Auto enable Litestar integration (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3540">#3540</a>)</li>
<li><a
href="bd50c38652"><code>bd50c38</code></a>
fix(httpx): Prevent Sentry baggage duplication (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3728">#3728</a>)</li>
<li><a
href="e9ec6c1812"><code>e9ec6c1</code></a>
test(gcp): Only run GCP tests when they should (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3721">#3721</a>)</li>
<li><a
href="aa6e8fd05c"><code>aa6e8fd</code></a>
fix(falcon): Don't exhaust request body stream (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3768">#3768</a>)</li>
<li><a
href="3e2885322a"><code>3e28853</code></a>
fix(integrations): Check retries_left before capturing exception (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3803">#3803</a>)</li>
<li><a
href="01146bd3ad"><code>01146bd</code></a>
fix(openai): Use name instead of description (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3807">#3807</a>)</li>
<li><a
href="d894fc2320"><code>d894fc2</code></a>
Shorten CI workflow names (<a
href="https://redirect.github.com/getsentry/sentry-python/issues/3805">#3805</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/getsentry/sentry-python/compare/2.18.0...2.19.0">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-29 13:38:30 +00:00
Toran Bruce Richards
4aa5f53710 feat(block): Add AI video generator block with Fal txt 2 vid (#8528)
### Background

Implements an AI Video Generator Block for text to image models hosted
on Fal


![image](https://github.com/user-attachments/assets/9cb70015-4174-4419-8c1a-4144f324442f)

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
Co-authored-by: Aarushi <aarushik93@gmail.com>
2024-11-29 13:04:42 +00:00
Nicholas Tindle
75f9b072a6 refactor(backend): Rename & move IntegrationCredentialsStore to backend (#8648)
- Move `autogpt_libs.supabase_integration_credentials_store` into
`backend`
   - `.store` -> `backend.integrations.credentials_store`
   - `.types` -> added to `backend.data.model`
- Rename `SupabaseIntegrationCredentialsStore` to
`IntegrationCredentialsStore`

We wanted to get a few security things in quickly in #8403 and had to
make some compromises to do so. This picks those up and fixes them.

- Resolves #8540

### Checklist 📋

#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-11-29 11:48:04 +00:00
Zamil Majdy
63af42dafb fix(backend): Fix conn_retry decorator possible incorrect behaviour on failed async function (#8836)
This fix is triggered by an error observed on db connection failure on
SupaBase:
```
2024-11-28 07:45:24,724 INFO  [DatabaseManager] Starting...
2024-11-28 07:45:24,726 INFO  [PID-18|DatabaseManager|Prisma-7f32369c-6432-4edb-8e71-ef820332b9e4] Acquiring connection started...
2024-11-28 07:45:24,726 INFO  [PID-18|DatabaseManager|Prisma-7f32369c-6432-4edb-8e71-ef820332b9e4] Acquiring connection completed successfully.
{"is_panic":false,"message":"Can't reach database server at `...pooler.supabase.com:5432`\n\nPlease make sure your database server is running at `....pooler.supabase.com:5432`.","meta":{"database_host":"...pooler.supabase.com","database_port":5432},"error_code":"P1001"}
2024-11-28 07:45:35,153 INFO  [PID-18|DatabaseManager|Prisma-7f32369c-6432-4edb-8e71-ef820332b9e4] Acquiring connection failed: Could not connect to the query engine. Retrying now...
2024-11-28 07:45:36,155 INFO  [PID-18|DatabaseManager|Redis-e14a33de-2d81-4536-b48b-a8aa4b1f4766] Acquiring connection started...
2024-11-28 07:45:36,181 INFO  [PID-18|DatabaseManager|Redis-e14a33de-2d81-4536-b48b-a8aa4b1f4766] Acquiring connection completed successfully.
2024-11-28 07:45:36,183 INFO  [PID-18|DatabaseManager|Pyro-2722cd29-4dbd-4cf9-882f-73842658599d] Starting Pyro Service started...
2024-11-28 07:45:36,189 INFO  [DatabaseManager] Connected to Pyro; URI = PYRO:DatabaseManager@0.0.0.0:8005
2024-11-28 07:46:28,241 ERROR  Error in get_user_integrations: All connection attempts failed
```

Where  even 
```
2024-11-28 07:45:35,153 INFO  [PID-18|DatabaseManager|Prisma-7f32369c-6432-4edb-8e71-ef820332b9e4] Acquiring connection failed: Could not connect to the query engine. Retrying now...
```
is present, the Redis connection is still proceeding without waiting for
the retry to complete. This was likely caused by Tenacity not fully
awaiting the DB connection acquisition command.

### Changes 🏗️

* Add special handling for the async function to explicitly await the
function execution result on each retry.
* Explicitly raise exceptions on `db.connect()` if the db is not
connected even after `prisma.connect()` command.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-11-29 09:30:36 +00:00
Aarushi
29f177e70d feat(blocks): Add Hubspot blocks (#8786)
This PR adds the first few Hubspot blocks so we can create _real_ sales
and marketing agents.

### Changes 🏗️

Added Hubspot blocks; 

- Aded auth for hubspot
- Added Company block
- Added Contact block
- Added Engagement block

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-11-29 09:26:43 +00:00
Zamil Majdy
eeb5b4aa46 fix(backend): Fix credentials cost filter not able to filter the block cost (#8837)
We've started enabling cost based on the *partial value* of the
`credentials` field. And this logic has never been supported.

### Changes 🏗️

* Add partial object matching on the input data filter for evaluating
the block cost.
* Add missing credentials for `ExtractWebsiteContentBlock`
* Removed fallback cost on LLM blocks.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-11-29 08:46:33 +00:00
Zamil Majdy
520b1d7940 feat(frontend): Make Block description searchable on Block list palette (#8839)
Blocks should be easy to search, the name is sometimes not
straightforward, but the description does.

<img width="576" alt="image"
src="https://github.com/user-attachments/assets/0528b019-0ebc-4e6f-8a3c-40323a671b13">


### Changes 🏗️

Make the block description searchable.

### Checklist 📋

#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
  <!-- Put your test plan here: -->
  - [ ] ...

<details>
  <summary>Example test plan</summary>
  
  - [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes
correctly
  - [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
  - [ ] Edit an agent from monitor, and confirm it executes correctly
</details>

#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my
changes
- [ ] I have included a list of my configuration changes in the PR
description (under **Changes**)

<details>
  <summary>Examples of configuration changes</summary>

  - Changing ports
  - Adding new services that need to communicate with each other
  - Secrets or environment variable changes
  - New or infrastructure changes such as databases
</details>
2024-11-29 07:41:02 +00:00
Zamil Majdy
f8b00e55d0 Merge branch 'dev' of github.com:Significant-Gravitas/AutoGPT into dev 2024-11-28 13:22:03 +07:00
Aarushi
4b8087c067 feat(platform/featureflags): Setting up feature flagging (#8718)
* feature flag formatting and linting

* add tests

* update poetry lock

* remove unneeded changes

* fix pyproject

* fix formatting and linting

* pydantic settings

* address comments and format

* alphabetize

* fix lockfile

* fix conflicts
2024-11-27 19:29:57 +00:00
Reinier van der Leer
d2f3f53f57 fix(frontend): Fix missing credentials input when no credentials available (#8834)
Fixes breakage from f1414550 (#8772)

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-11-27 18:26:15 +00:00
Reinier van der Leer
ab3643388f ci: Fix workflow status checker script to work with merge_group runs 2024-11-27 19:25:36 +01:00
Reinier van der Leer
845c8c51e5 ci: Add merge_group trigger to status checker 2024-11-27 19:15:28 +01:00
Reinier van der Leer
118fdeeb1d ci: Add merge_group triggers 2024-11-27 17:57:44 +01:00
dependabot[bot]
97d00455ef chore(backend): Update 12 dependencies (#8763)
* build(deps): bump the production-dependencies group across 1 directory with 12 updates

Bumps the production-dependencies group with 12 updates in the /autogpt_platform/backend directory:

| Package | From | To |
| --- | --- | --- |
| [aio-pika](https://github.com/mosquito/aio-pika) | `9.4.3` | `9.5.0` |
| [apscheduler](https://github.com/agronholm/apscheduler) | `3.10.4` | `3.11.0` |
| [fastapi](https://github.com/fastapi/fastapi) | `0.115.4` | `0.115.5` |
| [google-api-python-client](https://github.com/googleapis/google-api-python-client) | `2.151.0` | `2.154.0` |
| [groq](https://github.com/groq/groq-python) | `0.11.0` | `0.12.0` |
| [ollama](https://github.com/ollama/ollama-python) | `0.3.3` | `0.4.1` |
| [openai](https://github.com/openai/openai-python) | `1.54.3` | `1.55.1` |
| [pydantic](https://github.com/pydantic/pydantic) | `2.9.2` | `2.10.1` |
| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.18.0` | `2.19.0` |
| [uvicorn](https://github.com/encode/uvicorn) | `0.32.0` | `0.32.1` |
| [replicate](https://github.com/replicate/replicate-python) | `1.0.3` | `1.0.4` |
| [pinecone](https://github.com/pinecone-io/pinecone-python-client) | `5.3.1` | `5.4.0` |



Updates `aio-pika` from 9.4.3 to 9.5.0
- [Release notes](https://github.com/mosquito/aio-pika/releases)
- [Changelog](https://github.com/mosquito/aio-pika/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mosquito/aio-pika/compare/9.4.3...9.5.0)

Updates `apscheduler` from 3.10.4 to 3.11.0
- [Release notes](https://github.com/agronholm/apscheduler/releases)
- [Changelog](https://github.com/agronholm/apscheduler/blob/3.11.0/docs/versionhistory.rst)
- [Commits](https://github.com/agronholm/apscheduler/compare/3.10.4...3.11.0)

Updates `fastapi` from 0.115.4 to 0.115.5
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.115.4...0.115.5)

Updates `google-api-python-client` from 2.151.0 to 2.154.0
- [Release notes](https://github.com/googleapis/google-api-python-client/releases)
- [Commits](https://github.com/googleapis/google-api-python-client/compare/v2.151.0...v2.154.0)

Updates `groq` from 0.11.0 to 0.12.0
- [Release notes](https://github.com/groq/groq-python/releases)
- [Changelog](https://github.com/groq/groq-python/blob/main/CHANGELOG.md)
- [Commits](https://github.com/groq/groq-python/compare/v0.11.0...v0.12.0)

Updates `ollama` from 0.3.3 to 0.4.1
- [Release notes](https://github.com/ollama/ollama-python/releases)
- [Commits](https://github.com/ollama/ollama-python/compare/v0.3.3...v0.4.1)

Updates `openai` from 1.54.3 to 1.55.1
- [Release notes](https://github.com/openai/openai-python/releases)
- [Changelog](https://github.com/openai/openai-python/blob/main/CHANGELOG.md)
- [Commits](https://github.com/openai/openai-python/compare/v1.54.3...v1.55.1)

Updates `pydantic` from 2.9.2 to 2.10.1
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/v2.9.2...v2.10.1)

Updates `sentry-sdk` from 2.18.0 to 2.19.0
- [Release notes](https://github.com/getsentry/sentry-python/releases)
- [Changelog](https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-python/compare/2.18.0...2.19.0)

Updates `uvicorn` from 0.32.0 to 0.32.1
- [Release notes](https://github.com/encode/uvicorn/releases)
- [Changelog](https://github.com/encode/uvicorn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/encode/uvicorn/compare/0.32.0...0.32.1)

Updates `replicate` from 1.0.3 to 1.0.4
- [Release notes](https://github.com/replicate/replicate-python/releases)
- [Commits](https://github.com/replicate/replicate-python/compare/1.0.3...1.0.4)

Updates `pinecone` from 5.3.1 to 5.4.0
- [Release notes](https://github.com/pinecone-io/pinecone-python-client/releases)
- [Changelog](https://github.com/pinecone-io/pinecone-python-client/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pinecone-io/pinecone-python-client/compare/v5.3.1...v5.4.0)

---
updated-dependencies:
- dependency-name: aio-pika
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
- dependency-name: apscheduler
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
- dependency-name: fastapi
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
- dependency-name: google-api-python-client
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
- dependency-name: groq
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
- dependency-name: ollama
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
- dependency-name: openai
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
- dependency-name: pydantic
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
- dependency-name: sentry-sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
- dependency-name: uvicorn
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
- dependency-name: replicate
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
- dependency-name: pinecone
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>

* Downgrade pydantic & pinecode

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-11-27 16:49:23 +00:00
Zamil Majdy
ae9bd87161 fix(backend): Spin-up Database manager on rest.py (#8832) 2024-11-27 16:39:08 +00:00
dependabot[bot]
a556995d1f chore(frontend): Update 5 dependencies (#8755)
build(deps): bump the production-dependencies group

Bumps the production-dependencies group in /autogpt_platform/frontend with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) | `8.38.0` | `8.40.0` |
| [cookie](https://github.com/jshttp/cookie) | `1.0.1` | `1.0.2` |
| [react-day-picker](https://github.com/gpbl/react-day-picker) | `9.3.2` | `9.4.0` |
| [react-shepherd](https://github.com/shepherd-pro/shepherd) | `6.1.4` | `6.1.6` |
| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `2.5.4` | `2.5.5` |


Updates `@sentry/nextjs` from 8.38.0 to 8.40.0
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/8.38.0...8.40.0)

Updates `cookie` from 1.0.1 to 1.0.2
- [Release notes](https://github.com/jshttp/cookie/releases)
- [Commits](https://github.com/jshttp/cookie/compare/v1.0.1...v1.0.2)

Updates `react-day-picker` from 9.3.2 to 9.4.0
- [Release notes](https://github.com/gpbl/react-day-picker/releases)
- [Changelog](https://github.com/gpbl/react-day-picker/blob/main/CHANGELOG.md)
- [Commits](https://github.com/gpbl/react-day-picker/compare/v9.3.2...v9.4.0)

Updates `react-shepherd` from 6.1.4 to 6.1.6
- [Release notes](https://github.com/shepherd-pro/shepherd/releases)
- [Changelog](https://github.com/shipshapecode/shepherd/blob/main/CHANGELOG.md)
- [Commits](https://github.com/shepherd-pro/shepherd/commits)

Updates `tailwind-merge` from 2.5.4 to 2.5.5
- [Release notes](https://github.com/dcastil/tailwind-merge/releases)
- [Commits](https://github.com/dcastil/tailwind-merge/compare/v2.5.4...v2.5.5)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
- dependency-name: cookie
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
- dependency-name: react-day-picker
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
- dependency-name: react-shepherd
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
- dependency-name: tailwind-merge
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-11-27 16:33:21 +00:00
Nicholas Tindle
fd6c1d9f4f feat(blocks): Various block QoL improvements (#8749)
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
Resolves #8357
Resolves #8738
2024-11-27 16:18:53 +00:00
dependabot[bot]
14cc21a843 chore(frontend): Update 14 dev dependencies (#8756)
build(deps-dev): bump the development-dependencies group across 1 directory with 16 updates

Bumps the development-dependencies group with 14 updates in the /autogpt_platform/frontend directory:

| Package | From | To |
| --- | --- | --- |
| [@playwright/test](https://github.com/microsoft/playwright) | `1.48.2` | `1.49.0` |
| [@storybook/addon-essentials](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/essentials) | `8.4.2` | `8.4.5` |
| [@storybook/addon-interactions](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/interactions) | `8.4.2` | `8.4.5` |
| [@storybook/addon-links](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/links) | `8.4.2` | `8.4.5` |
| [@storybook/addon-onboarding](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/onboarding) | `8.4.2` | `8.4.5` |
| [@storybook/blocks](https://github.com/storybookjs/storybook/tree/HEAD/code/lib/blocks) | `8.4.2` | `8.4.5` |
| [@storybook/nextjs](https://github.com/storybookjs/storybook/tree/HEAD/code/frameworks/nextjs) | `8.4.2` | `8.4.5` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `22.9.0` | `22.9.3` |
| [eslint-plugin-storybook](https://github.com/storybookjs/eslint-plugin-storybook) | `0.11.0` | `0.11.1` |
| [postcss](https://github.com/postcss/postcss) | `8.4.48` | `8.4.49` |
| [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) | `0.6.8` | `0.6.9` |
| [storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/lib/cli) | `8.4.2` | `8.4.5` |
| [tailwindcss](https://github.com/tailwindlabs/tailwindcss) | `3.4.14` | `3.4.15` |
| [typescript](https://github.com/microsoft/TypeScript) | `5.6.3` | `5.7.2` |



Updates `@playwright/test` from 1.48.2 to 1.49.0
- [Release notes](https://github.com/microsoft/playwright/releases)
- [Commits](https://github.com/microsoft/playwright/compare/v1.48.2...v1.49.0)

Updates `@storybook/addon-essentials` from 8.4.2 to 8.4.5
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.5/code/addons/essentials)

Updates `@storybook/addon-interactions` from 8.4.2 to 8.4.5
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.5/code/addons/interactions)

Updates `@storybook/addon-links` from 8.4.2 to 8.4.5
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.5/code/addons/links)

Updates `@storybook/addon-onboarding` from 8.4.2 to 8.4.5
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.5/code/addons/onboarding)

Updates `@storybook/blocks` from 8.4.2 to 8.4.5
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.5/code/lib/blocks)

Updates `@storybook/nextjs` from 8.4.2 to 8.4.5
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.5/code/frameworks/nextjs)

Updates `@storybook/react` from 8.4.2 to 8.4.5
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.5/code/renderers/react)

Updates `@storybook/test` from 8.4.2 to 8.4.5
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.5/code/lib/test)

Updates `@types/node` from 22.9.0 to 22.9.3
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `eslint-plugin-storybook` from 0.11.0 to 0.11.1
- [Release notes](https://github.com/storybookjs/eslint-plugin-storybook/releases)
- [Changelog](https://github.com/storybookjs/eslint-plugin-storybook/blob/main/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/eslint-plugin-storybook/compare/v0.11.0...v0.11.1)

Updates `postcss` from 8.4.48 to 8.4.49
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.48...8.4.49)

Updates `prettier-plugin-tailwindcss` from 0.6.8 to 0.6.9
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.8...v0.6.9)

Updates `storybook` from 8.4.2 to 8.4.5
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v8.4.5/code/lib/cli)

Updates `tailwindcss` from 3.4.14 to 3.4.15
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/v3.4.15/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/compare/v3.4.14...v3.4.15)

Updates `typescript` from 5.6.3 to 5.7.2
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.6.3...v5.7.2)

---
updated-dependencies:
- dependency-name: "@playwright/test"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: development-dependencies
- dependency-name: "@storybook/addon-essentials"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: "@storybook/addon-interactions"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: "@storybook/addon-links"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: "@storybook/addon-onboarding"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: "@storybook/blocks"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: "@storybook/nextjs"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: "@storybook/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: "@storybook/test"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: eslint-plugin-storybook
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: storybook
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: development-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-11-27 16:06:25 +00:00
dependabot[bot]
772baff6db build(deps): bump docker/build-push-action from 2 to 6 (#8465)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 2 to 6.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v2...v6)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-11-27 22:52:58 +07:00
Nicholas Tindle
5dd151b41e feat(tests): add baseline utility for integration testing from frontend ui (#8765) 2024-11-27 09:44:19 +00:00
Zamil Majdy
86fbbae65c fix(frontend): Add text length limit when displaying Graph & Block name with different length in different places (#8746) 2024-11-27 08:37:26 +00:00
Abhimanyu Yadav
6bfe7ff497 fix(frontend): Add integer type definition for node handles (#8803) 2024-11-27 08:16:29 +01:00
dependabot[bot]
effd1e35a3 chore(libs): Update dev dependency Ruff from 0.7.4 to 0.8.0 (#8760)
build(deps-dev): bump ruff

Bumps the development-dependencies group in /autogpt_platform/autogpt_libs with 1 update: [ruff](https://github.com/astral-sh/ruff).


Updates `ruff` from 0.7.4 to 0.8.0
- [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.4...0.8.0)

---
updated-dependencies:
- dependency-name: ruff
  dependency-type: direct:development
  update-type: version-update:semver-minor
  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-26 22:43:06 +00:00
Bently
4aae15d769 feat(blocks): Add Word Character Count Block (#8781)
* Adds Word Character Count Block

Co-Authored-By: SerchioSD <69461657+serchiosd@users.noreply.github.com>

* update test_output

---------

Co-authored-by: SerchioSD <69461657+serchiosd@users.noreply.github.com>
2024-11-26 21:38:43 +00:00
oxygen-fragment
f62fa3e1e3 updated URL on README.md (#8767)
* docs(backend): Add `--build` to docker command in Getting Started guide (#8762)

* updated URL on README.md

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-11-26 20:49:47 +00:00
Abhimanyu Yadav
708ed9a91c fix(platform): handle None value in issue body when fetching GitHub issues (#8773)
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-11-26 20:46:13 +00:00
Abhimanyu Yadav
951948d239 fix(platform): allowing condition block to compare 2 strings (#8771)
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
Co-authored-by: Bently <tomnoon9@gmail.com>
2024-11-26 20:40:51 +00:00
Reinier van der Leer
f1414550f9 refactor(platform): Combine per-provider credentials API calls (#8772)
- Add `/integrations/credentials` endpoint which lists all credentials for the authenticated user
- Amend credential fetching logic in front end to fetch all at once instead of per provider

- Resolves #8770
- Resolves (hopefully) #8613
2024-11-26 17:03:06 +00:00
dependabot[bot]
c6e838da37 chore(market): Update Ruff from 0.7.4 to 0.8.0 (#8758) 2024-11-26 08:12:27 +00:00
Reinier van der Leer
06b403f2b0 docs(backend): Add --build to docker command in Getting Started guide (#8762) 2024-11-25 22:51:24 -06:00
dependabot[bot]
03f776681a build(deps-dev): bump the development-dependencies group in /autogpt_platform/backend with 2 updates (#8761)
build(deps-dev): bump the development-dependencies group

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


Updates `poethepoet` from 0.30.0 to 0.31.0
- [Release notes](https://github.com/nat-n/poethepoet/releases)
- [Commits](https://github.com/nat-n/poethepoet/compare/v0.30.0...v0.31.0)

Updates `ruff` from 0.7.4 to 0.8.0
- [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.4...0.8.0)

---
updated-dependencies:
- dependency-name: poethepoet
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: development-dependencies
- dependency-name: ruff
  dependency-type: direct:development
  update-type: version-update:semver-minor
  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-25 22:49:45 +00:00
Reinier van der Leer
3d21d54dab fix(backend): Add missing strenum dependency
Follow-up hotfix for #8358
2024-11-25 18:26:13 +00:00
Reinier van der Leer
eef9bbe991 feat(platform, blocks): Webhook-triggered blocks (#8358)
- feat(blocks): Add GitHub Pull Request Trigger block

## feat(platform): Add support for Webhook-triggered blocks
- ⚠️ Add `PLATFORM_BASE_URL` setting

- Add webhook config option and `BlockType.WEBHOOK` to `Block`
  - Add check to `Block.__init__` to enforce type and shape of webhook event filter
  - Add check to `Block.__init__` to enforce `payload` input on webhook blocks
  - Add check to `Block.__init__` to disable webhook blocks if `PLATFORM_BASE_URL` is not set

- Add `Webhook` model + CRUD functions in `backend.data.integrations` to represent webhooks created by our system
  - Add `IntegrationWebhook` to DB schema + reference `AgentGraphNode.webhook_id`
    - Add `set_node_webhook(..)` in `backend.data.graph`

- Add webhook-related endpoints:
  - `POST /integrations/{provider}/webhooks/{webhook_id}/ingress` endpoint, to receive webhook payloads, and for all associated nodes create graph executions
    - Add `Node.is_triggered_by_event_type(..)` helper method
  - `POST /integrations/{provider}/webhooks/{webhook_id}/ping` endpoint, to allow testing a webhook
  - Add `WebhookEvent` + pub/sub functions in `backend.data.integrations`

- Add `backend.integrations.webhooks` module, including:
  - `graph_lifecycle_hooks`, e.g. `on_graph_activate(..)`, to handle corresponding webhook creation etc.
    - Add calls to these hooks in the graph create/update endpoints
  - `BaseWebhooksManager` + `GithubWebhooksManager` to handle creating + registering, removing + deregistering, and retrieving existing webhooks, and validating incoming payloads

## Other improvements
- fix(blocks): Allow having an input and output pin with the same name
- fix(blocks): Add tooltip with description in places where block inputs are rendered without `NodeHandle`
- feat(blocks): Allow hiding inputs (e.g. `payload`) with `SchemaField(hidden=True)`
- fix(frontend): Fix `MultiSelector` component styling
- feat(frontend): Add `AlertDialog` UI component
- feat(frontend): Add `NodeMultiSelectInput` component
- feat(backend/data): Add `NodeModel` with `graph_id`, `graph_version`; `GraphModel` with `user_id`
  - Add `make_graph_model(..)` helper function in `backend.data.graph`
- refactor(backend/data): Make `RedisEventQueue` generic and move to `backend.data.execution`
- refactor(frontend): Deduplicate & clean up code for different block types in `generateInputHandles(..)` in `CustomNode`
- dx(backend): Add `MissingConfigError`, `NeedConfirmation` exception

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-11-25 18:42:36 +01:00
Reinier van der Leer
464b5309d7 fix(forge): Fix double model kwarg error in AnthropicProvider.create_chat_completion(..) (#8666) 2024-11-25 15:41:50 +00:00
Zamil Majdy
f00654cb2c fix(backend): Fix .env file read contention on pyro connection setup (#8736) 2024-11-25 16:55:52 +07:00
thecosmicmuffet
bc8ae1f542 docs(platform): Fix url in README.md (#8747) 2024-11-23 02:37:41 +00:00
Reinier van der Leer
f2816f98e9 Merge branch 'master' into dev 2024-11-21 18:06:08 +00:00
Abhimanyu Yadav
5ee8b62d67 fix: hide content except login when not authenticated to prevent errors (#8398)
* fix: hide content except login when not authenticated to prevent errors

* Remove supabase folder from tracking

* Remove supabase folder from Git tracking

* adding git submodule

* adding git submodule

* Discard changes to .gitignore

* only showing AutoGPT logo if user is not present

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Nicholas Tindle <nicktindle@outlook.com>
Co-authored-by: Swifty <craigswift13@gmail.com>
Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-11-21 15:57:35 +00:00
Zamil Majdy
8b4bb27077 fix(backend): Re-work the connection input consumption logic for Agent Executor Block (#8710) 2024-11-21 11:05:41 +00:00
Zamil Majdy
6954f4eb0e fix(backend): Revert non-async routes that are changed to async (#8734) 2024-11-21 11:46:55 +01:00
Zamil Majdy
c14ab0c37a refactor(backend): Remove un-needed join in fix_llm_provider_credentials query (#8728) 2024-11-21 09:35:17 +00:00
Reinier van der Leer
13da8af170 chore(platform): Bump version to v0.3.3 2024-11-20 23:25:14 +00:00
Bently
63e3244e7e feat(platform): Updates to Runner Output UI (#8717)
* feat(platform): Updates to Runner Output UI

* add copy text button to output boxes

* prettier

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-11-20 19:35:29 +00:00
Simone Busoli
19095be249 docs: replace docker-compose with docker compose (#8502)
Co-authored-by: Swifty <craigswift13@gmail.com>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-11-20 19:20:46 +00:00
Nicholas Tindle
26a6bd4d10 docs(platform): update docs for security ssrf (#8675) 2024-11-20 15:29:45 +00:00
Nicholas Tindle
92bfbfad57 feat: generate simple auth tests (#8709) 2024-11-20 15:21:16 +00:00
Krzysztof Czerwinski
cf43248ab8 feat(frontend): Show Agent Output on Monitor page (#8501)
* Show Output in Monitor

* Updates

* Updates

* Move hardcoded ids to a dedicated enum

---------

Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-11-20 15:08:22 +00:00
dependabot[bot]
aea6e7caed build(deps): bump the production-dependencies group in /autogpt_platform/frontend with 7 updates (#8703)
build(deps): bump the production-dependencies group

Bumps the production-dependencies group in /autogpt_platform/frontend with 7 updates:

| Package | From | To |
| --- | --- | --- |
| @radix-ui/react-icons | `1.3.1` | `1.3.2` |
| [@radix-ui/react-scroll-area](https://github.com/radix-ui/primitives) | `1.2.0` | `1.2.1` |
| [@radix-ui/react-tooltip](https://github.com/radix-ui/primitives) | `1.1.3` | `1.1.4` |
| [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) | `8.37.1` | `8.38.0` |
| [elliptic](https://github.com/indutny/elliptic) | `6.6.0` | `6.6.1` |
| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.456.0` | `0.460.0` |
| [react-day-picker](https://github.com/gpbl/react-day-picker) | `9.3.0` | `9.3.2` |


Updates `@radix-ui/react-icons` from 1.3.1 to 1.3.2

Updates `@radix-ui/react-scroll-area` from 1.2.0 to 1.2.1
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

Updates `@radix-ui/react-tooltip` from 1.1.3 to 1.1.4
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

Updates `@sentry/nextjs` from 8.37.1 to 8.38.0
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/8.37.1...8.38.0)

Updates `elliptic` from 6.6.0 to 6.6.1
- [Commits](https://github.com/indutny/elliptic/compare/v6.6.0...v6.6.1)

Updates `lucide-react` from 0.456.0 to 0.460.0
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/0.460.0/packages/lucide-react)

Updates `react-day-picker` from 9.3.0 to 9.3.2
- [Release notes](https://github.com/gpbl/react-day-picker/releases)
- [Changelog](https://github.com/gpbl/react-day-picker/blob/main/CHANGELOG.md)
- [Commits](https://github.com/gpbl/react-day-picker/compare/v9.3.0...v9.3.2)

---
updated-dependencies:
- dependency-name: "@radix-ui/react-icons"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
- dependency-name: "@radix-ui/react-scroll-area"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
- dependency-name: "@radix-ui/react-tooltip"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
- dependency-name: elliptic
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
- dependency-name: lucide-react
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
- dependency-name: react-day-picker
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-11-20 17:20:27 +04:00
dependabot[bot]
c84cc292f1 build(deps): bump fastapi from 0.115.4 to 0.115.5 in /autogpt_platform/market in the production-dependencies group (#8705)
build(deps): bump fastapi

Bumps the production-dependencies group in /autogpt_platform/market with 1 update: [fastapi](https://github.com/fastapi/fastapi).


Updates `fastapi` from 0.115.4 to 0.115.5
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.115.4...0.115.5)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-11-20 17:08:07 +04:00
Swifty
d84ddfcf1a fix(block): Updated model_version to prevent conflicts with pydantic naming (#8729)
changed model_version name to avoid conflicts
2024-11-20 12:51:06 +00:00
Zamil Majdy
5fa5b7104a fix(frontend): Monitor Page got all the request doubled on each page refresh (#8727)
fix(frontend): Avoid refreshing page on each auth state change event
2024-11-20 10:43:34 +00:00
Reinier van der Leer
33dd2eb919 dx(backend): Fix pre-commit isort step (#8726)
- 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 (#8715)
remove settings endpoint
2024-11-19 23:39:40 +00:00
Zamil Majdy
274419d393 fix(backend): Improve typing for blocks StepThroughItemsBlock, CountdownTimerBlock, AddToListBlock, AddToDictionaryBlock (#8713) 2024-11-19 20:53:34 +00:00
Aarushi
520d0ca0e4 delete infra folder (#8555)
* delete infra folder

* remove ci
2024-11-19 14:21:57 +00:00
dependabot[bot]
84076ebee1 build(deps-dev): bump the development-dependencies group in /autogpt_platform/backend with 2 updates (#8699)
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
dependabot[bot]
2e934dfff3 build(deps-dev): bump the development-dependencies group in /autogpt_platform/market with 2 updates (#8706)
build(deps-dev): bump the development-dependencies group

Bumps the development-dependencies group in /autogpt_platform/market 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:08:08 +00:00
dependabot[bot]
c1c3345bc0 build(deps-dev): bump ruff from 0.7.3 to 0.7.4 in /autogpt_platform/autogpt_libs in the development-dependencies group (#8701)
build(deps-dev): bump ruff

Bumps the development-dependencies group in /autogpt_platform/autogpt_libs with 1 update: [ruff](https://github.com/astral-sh/ruff).


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)

---
updated-dependencies:
- dependency-name: ruff
  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 10:10:26 +00:00
dependabot[bot]
fb9a543e35 build(deps): bump pyjwt from 2.9.0 to 2.10.0 in /autogpt_platform/autogpt_libs in the production-dependencies group (#8700)
build(deps): bump pyjwt

Bumps the production-dependencies group in /autogpt_platform/autogpt_libs with 1 update: [pyjwt](https://github.com/jpadilla/pyjwt).


Updates `pyjwt` from 2.9.0 to 2.10.0
- [Release notes](https://github.com/jpadilla/pyjwt/releases)
- [Changelog](https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/jpadilla/pyjwt/compare/2.9.0...2.10.0)

---
updated-dependencies:
- dependency-name: pyjwt
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-19 10:06:05 +00:00
Reinier van der Leer
e81083d9ab fix(frontend): Allow importing agent file with empty description (#8670)
Check structure of agent file with `obj[key] != null` rather than `!!obj[key]` to allow empty strings
2024-11-18 23:57:02 +00:00
Coenraad Loubser
865e3c056d ref(classic): Do not 'rm -rf <unquoted variable>' when removing classic env (#8417)
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-11-18 17:09:10 -06:00
Aarushi
8fccf2eed3 fix(platform/builder): Add heartbeat mechanism (#8665)
* add heartbeat mechanism

* formatting data

* import List

* another import fix

* wip

* formatting adn linting
2024-11-18 16:33:15 +00:00
Reinier van der Leer
1f34f78e4e build(frontend): Optimize Docker build time and image size (#8695)
This PR reduces image size by 4.9GB (93%) and reduces uncached build time from ~7m to ~5m20s.

- Use cache mount to prevent Yarn cache from being included in `yarn install` layer
- Leverage Next.js output tracing to generate minimal application w/ tree-shaken dependencies
- Add non-root user following the Next.js reference Dockerfile
2024-11-18 15:07:03 +00:00
Toran Bruce Richards
29cff1bb4e feat(blocks): Add Open Router integration with a large selection of new models (#8653)
* 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
402789d8cd fix(frontend): avoid displaying long description text for block (#8688)
Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-11-18 13:25:21 +00:00
Zamil Majdy
6fa4b8cb11 fix(backend): Add the lower cap of the user credits to zero (#8682)
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 (#8691) 2024-11-18 13:01:21 +00:00
Krzysztof Czerwinski
a660833744 refactor(frontend): Update buttons to edit agents in Monitor (#8687)
Update Monitor buttons

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-11-18 12:56:40 +00:00
Reinier van der Leer
e840106949 fix(backend): Resolve Pydantic warning about missing secrets_dir (#8692)
- Remove `secrets_dir` and other references to `get_secrets_path()`
- Remove unused `get_config_path()`

Follow-up to #8521, 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
Zamil Majdy
cd7dfbb8b3 fix(frontend): Typing in the NodeKeyValueInput field causes the field to un-focus (#8680)
* fix(frontend): Typing in the "Prompt Values" input field causes the field to un-focus

* Add comment

* Rephrase
2024-11-18 10:51:54 +00:00
Zamil Majdy
a2895a2ca0 fix(backend): Define executionmanager hostname for local docker-mode (#8681) 2024-11-18 09:16:00 +00:00
Craig Perkins
e30dac575d Update links to images in FORGE-QUICKSTART.md (#8517)
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-11-16 21:23:54 -06:00
Reinier van der Leer
918538147c fix(backend): Add migrations to fix credentials inputs with invalid provider "llm" (#8674)
In #8524, 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"(#8674)
In #8524, 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
Toran Bruce Richards
bd2f172e6d tweak(docs): Update Block File Path in Documentation (#8662)
Update new_blocks.md doccumentation
2024-11-15 12:46:31 +00: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 (#8578) 2024-11-15 17:28:59 +07:00
Zamil Majdy
6a1cea4c4e fix(backend): Add execution persistence for execution scheduler service (#8649)
* 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
Zamil Majdy
f27f596f58 fix(frontend): Newly typed text in Input fields vanishes on scroll (#8657) 2024-11-15 08:00:59 +00:00
Nicholas Tindle
ea214d9168 ci: fix classic ci (#8338)
* ci(frontend,backend,classic): update branch from develop to dev

* ci(frontend, infra): enable ci on other tools

* Update classic-autogpt-docker-ci.yml

* fix: don't error if the folder exists

* fix: drop bad test

* Revert "fix: drop bad test"

This reverts commit c478d3cf4c.

* fix: turn off the correct test 👀

* fix: remove more

* Discard changes to .github/workflows/classic-autogpt-ci.yml

* Update classic-autogpt-docker-ci.yml

* Update classic-autogpt-docker-release.yml

* Update classic-autogpts-ci.yml

* Discard changes to .github/workflows/classic-forge-ci.yml

* Discard changes to .github/workflows/classic-autogpts-ci.yml

* Discard changes to .github/workflows/classic-python-checks.yml

* Discard changes to .github/workflows/repo-pr-label.yml

* Discard changes to .github/workflows/platform-backend-ci.yml

* Update classic-benchmark-ci.yml

* Update classic-frontend-ci.yml
2024-11-15 01:48:00 -06:00
Reinier van der Leer
f9633ffb71 Revert "fix(platform): Remove migrate and encrypt function" (#8654)
Reverts c707ee9 (#8646)

The problem analysis that led to #8646 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
Bently
e140873dd4 Feat(Builder/tutorial): Updates to fix tutorial (#8655)
Feat(Builder/tutorial): Updates to fix tutorial
2024-11-14 22:25:32 +00:00
Abhimanyu Yadav
dd0081ab35 feat(platform) : scheduling agent runner (#8634)
* 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 (#8597)
* 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 (#8525)
* 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
Nicholas Tindle
52b3148196 feat(frontend): check auth before allowing actions to run (#8633) 2024-11-14 09:45:31 +00:00
Toran Bruce Richards
05c76738a4 tweak(frontend): Add jina and unreal to hidden credentials list in frontend (#8642)
Adds missing hidden credentials
2024-11-14 09:33:00 +00:00
vishesh10
639242ac68 Add provision for other languages in Youtube Video Block (#8630)
Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-11-14 09:20:46 +00:00
Zamil Majdy
ce667f6287 feat(frontend): Center initial canvas (#8644)
* fix(frontend): Fix client-side validation for Agent Executor Block

* Fix zoom scale calculation

* Fix zoom scale calculation
2024-11-14 09:15:30 +00:00
Zamil Majdy
98ab525e39 fix(frontend): Fix input-field update on empty & default value (#8647)
* fix(frontend): Fix input-field update on empty & default value

* Fix error message

* Revert
2024-11-14 09:03:12 +00:00
Aarushi
c707ee9cb6 fix(platform): Remove migrate and encrypt function (#8646)
remove migrate and encrypt function
2024-11-13 23:09:26 +00:00
Nicholas Tindle
b64c536eca Create SECURITY.md (#8645) 2024-11-13 22:28:52 +00:00
Reinier van der Leer
5c0f979b9c fix(frontend): Remove double title on credentials input (#8638)
- Add condition to hide `credentials` input title in `CustomNode:generateInputHandles`
- Add `title={schema.description}` to `<CredentialsInput>` title element
2024-11-13 19:37:55 +00:00
Nicholas Tindle
b048385091 fix(classic): update docs for security deprecation (#8632)
* Create README.md

* Update README.md

* Update index.md

* Update README.md

* Update index.md

* Update index.md
2024-11-13 18:52:21 +00:00
Zamil Majdy
67244759c7 fix(frontend): Fix client-side validation for Agent Executor Block (#8643)
* feat(frontend): Center initial canvas & add option to open graph on agent executor blok

* Removed unused variable
2024-11-13 18:31:22 +00:00
Kaitlyn Barnard
a3655b8a85 Adding Google Analytics to docs site (#8640)
Adding GA tag to docs site

Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-11-13 17:03:28 +00:00
Toran Bruce Richards
aafc101224 tweak(backend): Update all block costs (#8639)
* 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
ef3f7aad18 fix(frontend): Unbreak credentials input on single-provider blocks (vol. 2)
Fix bad condition introduced in aaa0b79f (#8636) to resolve #8635
2024-11-13 15:30:36 +01:00
Reinier van der Leer
aaa0b79f08 fix(frontend): Unbreak credentials input on single-provider blocks (#8636)
- Resolves #8635

- 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 (#8524)
- 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 (#8623) 2024-11-12 14:09:59 +00:00
Zamil Majdy
1e872406ca feat(platform): Introduced Agent Execution Block (#8533) 2024-11-12 13:03:15 +07:00
Abhimanyu Yadav
5ee909f687 fix: show error toast on Run failure when inputs or credentials are i… (#8391)
* fix: show error toast on Run failure when inputs or credentials are invalid

* Remove supabase folder from tracking

* revert supabase

* remove toast

---------

Co-authored-by: Avhimanyu <2023ebcs396@online.bits-pilani.ac.in>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-11-11 22:43:15 -06:00
Nicholas Tindle
ff1fa2af2d [Snyk] Security upgrade zipp from 3.15.0 to 3.19.1 (#8622)
fix: docs/requirements.txt to reduce vulnerabilities


The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-ZIPP-7430899

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-11-11 18:22:03 -06:00
dependabot[bot]
ee3252bdb1 build(deps): bump cookie from 0.7.0 to 1.0.1 in /autogpt_platform/frontend (#8616)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-12 00:15:45 +00:00
Nicholas Tindle
4a8f3dbbb1 [Snyk] Security upgrade urllib3 from 2.0.7 to 2.2.2 (#8620)
Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-11-11 17:45:56 -06:00
dependabot[bot]
4a163e5b54 build(deps-dev): bump the development-dependencies group in /autogpt_platform/backend with 3 updates (#8611)
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]
ca0b2311e8 build(deps): bump the production-dependencies group in /autogpt_platform/frontend with 8 updates (#8614)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-11 17:25:25 -06:00
dependabot[bot]
d03fd930c6 build(deps-dev): bump the development-dependencies group in /autogpt_platform/frontend with 12 updates (#8615)
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:34:43 +00:00
dependabot[bot]
603fec3467 build(deps): bump the production-dependencies group in /autogpt_platform/backend with 2 updates (#8610)
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
dependabot[bot]
c53c7f8dd8 build(deps-dev): bump the development-dependencies group in /autogpt_platform/market with 2 updates (#8612)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-11 22:13:43 +00:00
dependabot[bot]
ce3539ff16 build(deps-dev): bump ruff from 0.7.2 to 0.7.3 in /autogpt_platform/autogpt_libs in the development-dependencies group (#8618)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-11 16:10:08 -06:00
dependabot[bot]
ea8f164b93 build(deps): bump supabase from 2.9.1 to 2.10.0 in /autogpt_platform/autogpt_libs in the production-dependencies group (#8617)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-11 21:48:57 +00:00
Nicholas Tindle
3c0dea0017 [Snyk] Security upgrade python from 3.11-slim-buster to 3.11.10-slim-bookworm (#8619)
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
dependabot[bot]
9e4246602d build(deps): bump peter-evans/repository-dispatch from 2 to 3 (#8609)
Bumps [peter-evans/repository-dispatch](https://github.com/peter-evans/repository-dispatch) from 2 to 3.
- [Release notes](https://github.com/peter-evans/repository-dispatch/releases)
- [Commits](https://github.com/peter-evans/repository-dispatch/compare/v2...v3)

---
updated-dependencies:
- dependency-name: peter-evans/repository-dispatch
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-11 19:59:12 +00:00
Toran Bruce Richards
1f0cbc6500 feat(block): Add AI Music Generator Block with Meta Music Gen (#8532)
* 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 (#8603)
add jina defaults
2024-11-10 17:18:53 +00:00
Aarushi
f981a74a10 Merge master into dev 2024-11-09 19:10:03 -06:00
Aarushi
09dd391041 Merge dev into master 2024-11-09 19:09:09 -06:00
Nicholas Tindle
0b5b95eff5 build: add launch.json debugging for vscode (#8496)
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-11-08 20:49:13 +00:00
Aarushi
4adbbc52f2 Merge branch 'master' into dev 2024-11-08 11:52:14 -06:00
Aarushi
359ae8307a feat(backend): Add API key DB table (#8593)
* 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 (#8535)
* update pinecone

* update blocks

* fix linting

* update test

* update requests

* mock funciton
2024-11-08 17:13:55 +00:00
Reinier van der Leer
c960bd870c dx: Clean up PR template (#8541)
* dx: Clean up PR template
2024-11-08 17:44:55 +01:00
Reinier van der Leer
dfb7cf19f7 dx: Fix pre-commit config (#8584)
- fix naming of hooks
- fix `pyright` hooks (b0rked by repo restructure)
- fix `forge` path (b0rked by faulty replace-all when the repo was restructured)
- fix `black` hook to work on all Python versions
- add `poetry install` hooks
- add `ruff`, `isort`, `pyright`, `pytest`, and `prisma generate` hooks for `backend/`
- add `ruff` and `pyright` hooks for `autogpt_libs/`
2024-11-08 16:06:23 +00:00
Aarushi
d6ecf80197 Merge branch 'dev' 2024-11-07 22:43:26 -06:00
Aarushi
c0f77c8e7a ci(platform): Update pipelines to run from infra repo (#8595)
* deploy trigger

* update name

* test path change

* update prod deploy too

* remove envvars

* update prod deploy name
2024-11-07 22:39:59 -06:00
Aarushi
47759f6951 refactor(backend): Remove config.default.json (#8581)
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 (#8531) 2024-11-08 00:29:18 +00:00
Aarushi
c25d03e945 fix(searchtheweb): Fix the Jina Search Block (#8583)
* 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 (#8574) 2024-11-07 11:34:32 +07:00
Nicholas Tindle
b08ad973fa Update codeql.yml (#8500)
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-11-07 02:51:01 +00:00
Abhimanyu Yadav
a037c431cd feat(build-page): make all content unselectable except flowEditor (#8534)
* docs(platform): Update frontend instructions (#8514)

update readme

* docs(platform): correct readme

* feat(build-page): make all content unselectable except flowEditor

* revert some changes

* revert some changes

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-11-07 02:45:42 +00:00
Zamil Majdy
86c544177e refactor(backend): Introduced Graph Input & Output Schema, Merge GraphMeta & Graph, Remove subgraph functionality (#8526) 2024-11-07 09:30:51 +07:00
Zamil Majdy
af9ea5bc31 fix(frontend): Broken UI caused by lack of error propagation on Run (#8575) 2024-11-07 08:49:32 +07:00
Nicholas Tindle
25fa1bee1e fix: update cookie (#8571) 2024-11-05 18:55:57 -06:00
Nicholas Tindle
c76c077522 feat: bump elliptic to 6.6.0 (#8570) 2024-11-05 18:35:33 -06:00
dependabot[bot]
4259ad686e build(deps): bump the production-dependencies group across 1 directory with 11 updates (#8567)
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
Aarushi
9a2664be35 fix(platform): Add local enc key (#8568)
add local enc key
2024-11-05 12:44:59 -08:00
Aarushi
9070378e60 fix(platform): Add local enc key (#8568)
add local enc key
2024-11-05 12:44:36 -08:00
dependabot[bot]
f17c20ed91 build(deps): manual fix!! bump replicate from 0.34.1 to 1.0.3 in /autogpt_platform/backend (#8476)
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
Nicholas Tindle
799c6e550a [Snyk] Security upgrade python from 3.11-slim-buster to 3.11.10-slim-bookworm (#8557)
Co-authored-by: Swifty <craigswift13@gmail.com>
Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-11-05 19:19:36 +00:00
Zamil Majdy
21100c109a feat(backend): Reduce number of services on the local mode (#8563) 2024-11-05 22:36:51 +07:00
SwiftyOS
b92c4774a6 feat(platform): Added .gitignore to platform root dir 2024-11-05 16:32:48 +01:00
Zamil Majdy
3a127dc355 feat(backend): Reduce number of services on the local mode (#8562) 2024-11-05 22:24:36 +07: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
e84910b423 fix(frontend): Fix connection value clash (#8559) 2024-11-05 05:43:07 +00:00
Aarushi
44f73078f7 Update docker-compose.platform.yml (#8560) 2024-11-04 21:38:05 -08:00
Aarushi
cd106611eb Update docker-compose.platform.yml (#8560) 2024-11-04 21:09:47 -08:00
Zamil Majdy
45fe26b58d feat(platform): Toast Graph Creation Error (#8536)
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-11-05 03:23:41 +00:00
dependabot[bot]
ab0aaf55a9 build(deps-dev): bump redis from 5.1.1 to 5.2.0 in /autogpt_platform/autogpt_libs in the development-dependencies group (#8433)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-11-04 20:37:22 -06:00
dependabot[bot]
57eb7db93c build(deps): bump pydantic-settings from 2.6.0 to 2.6.1 in /autogpt_platform/autogpt_libs in the production-dependencies group (#8542)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-04 20:34:26 -06:00
dependabot[bot]
39f2745e89 build(deps-dev): bump the development-dependencies group in /autogpt_platform/market with 2 updates (#8545)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-04 20:19:07 -06:00
dependabot[bot]
f9d7ca70c6 build(deps-dev): bump @chromatic-com/storybook from 1.9.0 to 3.2.2 in /autogpt_platform/frontend (#8551)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-05 02:00:45 +00:00
dependabot[bot]
d5ec9f898e build(deps): bump sentry-sdk from 2.17.0 to 2.18.0 in /autogpt_platform/market in the production-dependencies group (#8544)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-04 19:50:31 -06:00
dependabot[bot]
11a4f9fdaa build(deps-dev): bump the development-dependencies group in /autogpt_platform/backend with 2 updates (#8543)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-04 19:14:05 -06:00
dependabot[bot]
9b3bef7c3e build(deps-dev): bump the development-dependencies group in /autogpt_platform/frontend with 12 updates (#8548)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-04 18:58:45 -06:00
dependabot[bot]
6052a0aa07 build(deps): bump date-fns from 3.6.0 to 4.1.0 in /autogpt_platform/frontend (#8550)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-04 18:34:54 -06:00
dependabot[bot]
111fb8e69f build(deps): bump the production-dependencies group across 1 directory with 7 updates (#8556)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-04 17:44:49 -06:00
dependabot[bot]
78f5cc4608 build(deps): bump uuid from 10.0.0 to 11.0.2 in /autogpt_platform/frontend (#8552)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-04 23:13:42 +00:00
dependabot[bot]
b223cc0233 build(deps): bump actions/checkout from 2 to 4 (#8553)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-04 16:21:54 -06:00
SwiftyOS
db44d8c2ec fix(platform): Add ENCRYPTION_KEY Env Var to docker compose file 2024-11-04 10:06:43 -08:00
Swifty
594aa996d7 refactor(platform/rest): Update REST API to use standard FastAPI structure (#8519) 2024-11-04 18:12:21 +07:00
SwiftyOS
e26513f5e4 Merge branch 'dev' of github.com:Significant-Gravitas/AutoGPT into dev 2024-11-04 11:25:50 +01:00
SwiftyOS
1a822683a9 fix(platform): Add ENCRYPTION_KEY Env Var to docker compose file 2024-11-04 11:25:44 +01:00
Aarushi
7cf029da68 feat(platform): reseal revid (#8523)
reseal revid
2024-11-01 09:50:20 -07:00
Swifty
4d4cc60071 chore(platform): Tidy up repo structure (#8521)
* tidy up

* nextjs env specific .env files
2024-11-01 15:33:26 +00:00
SwiftyOS
952f6f58ef docs(platform): correct readme 2024-11-01 09:13:55 +00:00
SwiftyOS
8950021be5 docs(platform): correct readme 2024-11-01 09:13:25 +00:00
Swifty
151fad5ced docs(platform): Update frontend instructions (#8514)
update readme
2024-10-31 13:41:54 +00:00
Swifty
27320d279e docs(platform): Update frontend instructions (#8514)
update readme
2024-10-31 13:38:54 +00:00
Swifty
edaa938f99 feat(pre-commit): Detect secrets (#8507)
Add detect secrets pre commit
2024-10-31 08:49:50 +00:00
Nicholas Tindle
74d8aa6d90 Update llm.py (#8513)
* Update llm.py

* Update llm.py

* Update llm.py

* Update llm.py

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-10-30 22:40:38 -07:00
Aarushi
3ea50f3b70 fix(infra): Add missing corrected secret (#8512)
add missing corrected secret
2024-10-30 21:04:55 -07:00
Nicholas Tindle
3aebed61d2 feat(backend): credential swap to api keys in cred store (#8403)
* feat(backend): credential swap

* ci: formatting

* fix: importing is hard okay

* fix: spelln' is hard

* feat: better credential provider handling

* docs: update the imports locations

* fix: test credentials + formatting

* feat: drop continuous read mode

* fix: lint

* feat: fallback credentials

* feat: charge for credential useage and have a bad backup mechnism

* fix: don't save default credentials + add d_id

* fix: formatting

* feat: basic encryption/decryption

* ref: move files around

* ref: sign all blocks out of their credentials

* ref: update target to match a new, and encrypted future

* wip: llm provider merger

* don't delete `credentials` input on nodes

* fix llm block ci issues

* updated get AICredentials

* fix fix

* insert migration to move integration credentials from `auth.user` metadata to `platform.User.metadata`

* fixed migration

* add migration for existing user integration credentials

* disabled reddit and email block

* fix credential handling in LLM blocks

* add other secret fields to credential scrubber migration

* add other secret fields to credential scrubber migration (vol. 2)

* fix: pr fixes

* fix: mock funciton

* add encrypted values

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
Co-authored-by: SwiftyOS <craigswift13@gmail.com>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
Co-authored-by: Aarushi <aarushik93@gmail.com>
2024-10-31 02:36:38 +00:00
Aarushi
26caf1c6af Merge branch 'master' into dev 2024-10-30 11:02:22 -07:00
Aarushi
8b5175980f feat(secrets): Reseal new secrets (#8506)
resealed new secrets
2024-10-30 11:00:52 -07:00
Aarushi
c2e036abd1 feat(secrets): Reseal new secrets (#8506)
resealed new secrets
2024-10-30 17:58:49 +00:00
Aarushi
09bb57ed0d feat(secrets): Rotate secrets (#8505)
* reseal secrets

* update DB url

* rotate prod db

* rotate prod

* rotate server

* builder valuse

* public env vars in env files

* public env vars in env files
2024-10-30 09:54:30 -07:00
Aarushi
fc0c3e311f feat(secrets): Rotate secrets (#8505)
* reseal secrets

* update DB url

* rotate prod db

* rotate prod

* rotate server

* builder valuse

* public env vars in env files

* public env vars in env files
2024-10-30 15:55:53 +00:00
Nicholas Tindle
e2a848d5fb fix: object pollution problem (#8499) 2024-10-30 00:49:46 +00:00
dependabot[bot]
67ff738fda build(deps): bump croniter from 2.0.7 to 5.0.1 in /autogpt_platform/backend (#8498)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-29 18:54:49 -05:00
dependabot[bot]
c995e89c26 build(deps-dev): bump the development-dependencies group across 1 directory with 18 updates (#8491)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-10-29 18:34:46 -05:00
dependabot[bot]
22fff451da build(deps): bump @next/third-parties from 14.2.6 to 15.0.2 in /autogpt_platform/frontend (#8490)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-29 17:56:10 -05:00
dependabot[bot]
53dcec5dd7 build(deps): bump the production-dependencies group across 1 directory with 22 updates (#8492)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
resolvers](https://github.com/react-hook-form/resolvers) | `3.9.0` | `3.9.1` |
2024-10-29 17:21:38 -05:00
Krzysztof Czerwinski
ae1389760c feat(frontend): Make Save to Templates Marketplace button create and redirect to a new agent (#8481)
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-10-29 16:52:11 -05:00
dependabot[bot]
030ea6d9a0 build(deps-dev): bump eslint-config-next from 14.2.4 to 15.0.2 in /autogpt_platform/frontend (#8488)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-29 17:58:41 +00:00
Swifty
c7cd6dc026 feat(platform): Add target database model to reflect domain (#8375) 2024-10-29 08:22:35 +01:00
vishesh10
b1a747a1d1 Fix broken "You Tube" in the block (#8390)
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-10-29 01:07:13 +00:00
dependabot[bot]
ff03619196 build(deps): bump the production-dependencies group across 1 directory with 5 updates (#8464)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-29 00:44:50 +00:00
dependabot[bot]
fa04f802b2 build(deps-dev): bump the development-dependencies group in /autogpt_platform/backend with 4 updates (#8471)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-29 00:34:02 +00:00
Niranjan Kurhade
62aa002b37 Benchmark Broken Link Fixed in README (#8458)
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-10-29 00:20:23 +00:00
dependabot[bot]
6fef4fd66e build(deps): bump tenacity from 8.5.0 to 9.0.0 in /autogpt_platform/backend (#8472)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-28 23:52:08 +00:00
dependabot[bot]
c028dd647e build(deps): bump psutil from 5.9.8 to 6.1.0 in /autogpt_platform/backend (#8473)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-28 18:45:56 -05:00
dependabot[bot]
308a9bc40e build(deps): bump sentry-sdk from 1.45.0 to 2.17.0 in /autogpt_platform/backend (#8475)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-28 17:04:48 -05:00
dependabot[bot]
d8317c8257 build(deps): bump websockets from 12.0 to 13.1 in /autogpt_platform/backend (#8477)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-10-28 20:44:24 +00:00
dependabot[bot]
7e63a8f94a build(deps): bump google-github-actions/auth from 1 to 2 (#8468)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-28 20:28:05 +00:00
dependabot[bot]
456b1e55aa build(deps): bump google-github-actions/setup-gcloud from 1 to 2 (#8469)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-28 15:24:01 -05:00
dependabot[bot]
db0f1fa0ec build(deps): bump peter-evans/create-pull-request from 6 to 7 (#8470)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-28 15:21:30 -05:00
dependabot[bot]
757fb075b1 build(deps): bump actions/cache from 2 to 4 (#8467)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-28 15:16:19 -05:00
Kaitlyn Barnard
b9551db516 Updating docs nav structure to make Platform first class citizen v2 (#8448)
* docs updates

* text changes

* resolving merge conflicts

---------

Co-authored-by: Kaitlyn Barnard <kaitlynbarnard@Kaitlyns-MacBook-Pro-2.local>
Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-10-28 16:21:16 +00:00
Aarushi
525b894618 feat(platform/frontend) Remove dotenv (#8459)
remove dotenv
2024-10-28 13:03:02 +00:00
Aarushi
b2972cc9c6 fix(ci): Fix the prod workload identity pool defined in the prod yaml (#8456)
fix project id
2024-10-28 12:51:51 +00:00
Zamil Majdy
8938209d0d fix(backend): Avoid long synchronous call to block FastAPI event-loop (#8429) 2024-10-27 23:54:38 +07:00
Zamil Majdy
1e620fdb13 feat(backend): RedisEventQueue into Pub/Sub (#8387) 2024-10-27 23:49:33 +07:00
dependabot[bot]
8a68516f0b build(deps): bump the production-dependencies group in /autogpt_platform/autogpt_libs with 4 updates (#8432)
build(deps): bump the production-dependencies group

Bumps the production-dependencies group in /autogpt_platform/autogpt_libs with 4 updates: [google-cloud-logging](https://github.com/googleapis/python-logging), [pydantic](https://github.com/pydantic/pydantic), [pydantic-settings](https://github.com/pydantic/pydantic-settings) and [supabase](https://github.com/supabase/supabase-py).


Updates `google-cloud-logging` from 3.11.2 to 3.11.3
- [Release notes](https://github.com/googleapis/python-logging/releases)
- [Changelog](https://github.com/googleapis/python-logging/blob/main/CHANGELOG.md)
- [Commits](https://github.com/googleapis/python-logging/compare/v3.11.2...v3.11.3)

Updates `pydantic` from 2.9.1 to 2.9.2
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/v2.9.1...v2.9.2)

Updates `pydantic-settings` from 2.5.2 to 2.6.0
- [Release notes](https://github.com/pydantic/pydantic-settings/releases)
- [Commits](https://github.com/pydantic/pydantic-settings/compare/v2.5.2...v2.6.0)

Updates `supabase` from 2.7.4 to 2.9.1
- [Release notes](https://github.com/supabase/supabase-py/releases)
- [Changelog](https://github.com/supabase/supabase-py/blob/main/CHANGELOG.md)
- [Commits](https://github.com/supabase/supabase-py/compare/v2.7.4...v2.9.1)

---
updated-dependencies:
- dependency-name: google-cloud-logging
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
- dependency-name: pydantic
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: production-dependencies
- dependency-name: pydantic-settings
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
- dependency-name: supabase
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: production-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 23:08:34 +00:00
dependabot[bot]
8f5bd40791 build(deps): bump google-github-actions/get-gke-credentials from 1 to 2 (#8437)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 17:53:14 -05:00
dependabot[bot]
19dc2093df build(deps): bump docker/setup-buildx-action from 1 to 3 (#8436)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 22:47:52 +00:00
dependabot[bot]
ca43f71fa8 build(deps): bump azure/setup-helm from 1 to 4 (#8439)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 22:45:44 +00:00
dependabot[bot]
2fa4d8042c build(deps): bump helm/chart-testing-action from 2.6.0 to 2.6.1 in the production-dependencies group (#8435)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 17:43:36 -05:00
dependabot[bot]
cc17147a98 build(deps-dev): bump the development-dependencies group in /autogpt_platform/market with 6 updates (#8434)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-10-25 22:34:30 +00:00
dependabot[bot]
75f3092ba2 build(deps): bump actions/setup-python from 4 to 5 (#8438)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 22:30:18 +00:00
dependabot[bot]
4730bf6f95 build(deps): bump react-day-picker from 8.10.1 to 9.2.0 in /autogpt_platform/frontend (#8442)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-10-25 13:59:33 -05:00
Aarushi
88885f12fa feat(platform): Add default secrets (#8452)
* secrets

* seal secrets

* remove jina

* replicate
2024-10-25 17:36:32 +01:00
Aarushi
e990a9d301 feat(platform): Add default secrets (#8452)
* secrets

* seal secrets

* remove jina

* replicate
2024-10-25 17:35:38 +01:00
Aarushi
e2df6019fb feat(blocks): Add pinecone and jina blocks (#8401)
* add pinecone and jina blocks

* udpate based on comments

* backend updates

* frontend updates

* type hint

* more type hints

* another type hint

* update run signature

* shared jina provider

* fix linting

* lockfile

* remove noqa

* remove noqa

* remove vector db folder

* line

* update pincone credentials provider

* fix imports

* formating

* update frontend

* Test (#8425)

* h

* Discard changes to autogpt_platform/backend/poetry.lock

* fix: broken dep

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-10-24 21:01:53 +01:00
Aarushi
6d812acb20 fix(infra): Update variable names (#8447)
update variable names
2024-10-24 20:06:28 +01:00
Aarushi
08a8abeb58 docs(pr_template): Add reminder for config and infra changes (#8430)
add config change reminder
2024-10-24 19:31:53 +01:00
Zamil Majdy
1321faf9db fix(backend): Fix error pin output not being propagated into the next nodes (#8408) 2024-10-24 17:13:58 +00:00
Aarushi
f3583e8ea6 fix(market): Fix DB URL not being read or upgrade correctly (#8428)
fix extra character
2024-10-24 17:35:25 +01:00
Abhimanyu Yadav
f3a4fd2a41 fix(market): Handle empty agents response (#8393)
* Fix issue where marketplace breaks if no agents are returned

* Fix issue where marketplace breaks if no agents are returned

* Remove supabase folder from tracking

* adding supabase submodule

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-10-24 17:34:52 +01:00
Aarushi
643c33456e fix(platform): Expose DB Manager Port (#8424)
expose 8005 for db manager
2024-10-24 16:12:19 +01:00
Aarushi
6846d8f49e Merge branch 'master' into dev 2024-10-24 10:06:56 +01:00
Abhimanyu Yadav
8ded935e71 feat(frontend): Improve added block positioning logic to handle collisions and dynamic dimensions size (#8406) 2024-10-23 22:20:32 +00:00
Abhimanyu Yadav
370e87d2e2 Merge login and signin (#8389)
Co-authored-by: Avhimanyu <2023ebcs396@online.bits-pilani.ac.in>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-10-23 21:23:09 +00:00
Abhimanyu Yadav
e908068f22 Implement custom save shortcut in SaveControl component (#8407)
Co-authored-by: Nicholas Tindle <nicktindle@outlook.com>
2024-10-23 21:12:39 +00:00
Aarushi
4e44a79785 fix(platform/infra): Fix spelling error (#8416)
fix spelling error
2024-10-23 18:25:29 +01:00
Zamil Majdy
9e411efd6e fix(backend): Reverse pyro config refactor (#8410)
* fix(backend): Fix error pin output not being propagated into the next nodes

* fix(backend): Reverse pyro config refactor

* Revert "fix(backend): Fix error pin output not being propagated into the next nodes"

This reverts commit 2ff50a94ec.

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-10-23 15:54:29 +00:00
Aarushi
e4995096ef fix(platform): Fix containerized connection issues with DB Manager (#8412)
add missing DB manager host values
2024-10-23 14:13:16 +00:00
Aarushi
d9b8e0d273 feat(platform/ci): Add prod migrations (#8396)
* ci with workload identity

* temp update

* update name

* wip

* update auth step

* update provider name

* remove audience

* temp set to false

* update registry naming

* update context

* update login

* revert temp updates

* add prod iam and pool

* add release deploy with approval

* use gha default approval behaviour

* add back in release trigger

* add new line

* add prod migrations

* prod migrations without check
2024-10-23 09:25:33 +01:00
Aarushi
404d0638de feat(platform/ci) Add workflow for deploying to production (#8384)
* ci with workload identity

* temp update

* update name

* wip

* update auth step

* update provider name

* remove audience

* temp set to false

* update registry naming

* update context

* update login

* revert temp updates

* add prod iam and pool

* add release deploy with approval

* use gha default approval behaviour

* add back in release trigger

* add new line
2024-10-23 09:23:54 +01:00
Aarushi
37607d104c feat(platform/infra): Create prod service account and pool (#8383)
* ci with workload identity

* temp update

* update name

* wip

* update auth step

* update provider name

* remove audience

* temp set to false

* update registry naming

* update context

* update login

* revert temp updates

* add prod iam and pool
2024-10-23 09:22:45 +01:00
Aarushi
2715b81ff5 feat(platform/ci): Run migrations in ci for dev (#8395)
* run migrations in ci

* update environment

* temp false

* add dev migrations

* remove code change step
2024-10-23 09:21:12 +01:00
Zamil Majdy
27c9ec5bcd fix(platform): Enable auth on local-backend mode by default (#8405) 2024-10-23 03:39:15 +00:00
Zamil Majdy
17e79ad88d fix(backend): Fix DatabaseManager usage by calling it on-demand (#8404) 2024-10-23 10:09:23 +07:00
Zamil Majdy
7f318685af Revert "fix(backend): Fix DatabaseManager usage by calling it on-demand"
This reverts commit e5f5005ab8.
2024-10-23 07:41:59 +07:00
Zamil Majdy
e5f5005ab8 fix(backend): Fix DatabaseManager usage by calling it on-demand 2024-10-23 07:39:15 +07:00
Zamil Majdy
f4dac22335 feat(backend): Track LLM token usage + LLM blocks cleanup (#8367) 2024-10-22 18:13:27 -05:00
Toran Bruce Richards
0c517216df fix(frontend): Fix broken terms of use link (#8279)
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-10-22 15:39:54 -05:00
Aarushi
83817cb641 Merge branch 'master' into dev 2024-10-22 19:21:55 +01:00
Aarushi
e5ea62dc25 feat(platform): Added latest claude version (#8397)
latest sonnet model
2024-10-22 16:53:54 +01:00
Aarushi
81febb6589 feat(platform): Added latest claude version (#8397)
latest sonnet model
2024-10-22 16:51:23 +01:00
Aarushi
30a62f898c feat(platform/ci) Set up deploys from dev (#8355)
* ci with workload identity

* temp update

* update name

* wip

* update auth step

* update provider name

* remove audience

* temp set to false

* update registry naming

* update context

* update login

* revert temp updates
2024-10-22 13:45:30 +00:00
Nicholas Tindle
1622a4aaa8 refactor(backend): Move credentials storage to prisma user (#8283)
* feat(frontend,backend): testing

* feat: testing

* feat(backend): it works for reading email

* feat(backend): more docs on google

* fix(frontend,backend): formatting

* feat(backend): more logigin (i know this should be debug)

* feat(backend): make real the default scopes

* feat(backend): tests and linting

* fix: code review prep

* feat: sheets block

* feat: liniting

* Update route.ts

* Update autogpt_platform/backend/backend/integrations/oauth/google.py

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

* Update autogpt_platform/backend/backend/server/routers/integrations.py

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

* fix: revert opener change

* feat(frontend): add back opener

required to work on mac edge

* feat(frontend): drop typing list import from gmail

* fix: code review comments

* feat: code review changes

* feat: code review changes

* fix(backend): move from asserts to checks so they don't get optimized away in the future

* fix(backend): code review changes

* fix(backend): remove google specific check

* fix: add typing

* fix: only enable google blocks when oauth is configured for google

* fix: errors are real and valid outputs always when output

* fix(backend): add provider detail for debuging scope declines

* Update autogpt_platform/frontend/src/components/integrations/credentials-input.tsx

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

* fix(frontend): enhance with comment, typeof error isn't known so this is best way to ensure the stringifyication will work

* feat: code review change requests

* fix: linting

* fix: reduce error catching

* fix: doc messages in code

* fix: check the correct scopes object 😄

* fix: remove double (and not needed) try catch

* fix: lint

* fix: scopes

* feat: handle the default scopes better

* feat: better email objectification

* feat: process attachements

turns out an email doesn't need a body

* fix: lint

* Update google.py

* Update autogpt_platform/backend/backend/data/block.py

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

* fix: quit trying and except failure

* Update autogpt_platform/backend/backend/server/routers/integrations.py

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

* feat: don't allow expired states

* fix: clarify function name and purpose

* feat: code links updates

* feat: additional docs on adding a block

* fix: type hint missing which means the block won't work

* fix: linting

* fix: docs formatting

* Update issues.py

* fix: improve the naming

* fix: formatting

* Update new_blocks.md

* Update new_blocks.md

* feat: better docs on what the args mean

* feat: more details on yield

* Update new_blocks.md

* fix: remove ignore from docs build

* feat: initial migration

* feat: migration tested with supabase-> prisma data location

* add custom migrations and script

* update migration command

* formatting and linting

* updated migration script

* add direct db url

* add find files

* rename

* use binary instead of source

* temp adding supabase

* remove unused functions

* adding missed merge

* fix: commit hash for lock

* ci: fix lint

* fix: minor bugs that prevented connecting and migrating to dbs and auth

* fix: linting

* fix: missed await

* fix(backend): phase one pr updates

* fix: handle error with returning user object from database_manager

* fix: linting

* Address comments

* Make the migration safe

* Update migration doc

* Move misplaced model functions

* Grammar

* Revert lock

* Remove irrelevant changes

* Remove irrelevant changes

* Avoid adding trigger on public schema

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
Co-authored-by: Aarushi <aarushik93@gmail.com>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-10-22 13:33:54 +01:00
Aarushi
5e386fda33 fix(platform/dockercompose): Put removed services back in (#8386)
put removed services back in
2024-10-22 11:46:26 +01:00
Nicholas Tindle
2437f58849 ci: create dependabot config (#8372)
* ci: create dependabot

* ci: target the dev branch for dependabot

* ci: group prs

* ci: group updates

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-10-21 08:05:07 -05:00
Bently
9f4be6f0c9 feat(blocks): fix output divider bar being in the wrong place (#8385) 2024-10-21 12:18:18 +00:00
Aarushi
e4a9c8216f fix(platform/infra): Fix liveness probe (#8382)
fix liveness probe
2024-10-21 10:55:16 +01:00
Aarushi
f19ed9f652 fix spelling mistake (#8380) 2024-10-21 10:39:59 +01:00
Emmanuel Ferdman
30376a8ec8 fix: update types reference (#8366)
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
2024-10-19 10:52:41 -05:00
Aarushi
32680a549e Merge branch 'master' into dev 2024-10-18 13:59:06 +01:00
Aarushi
68158de126 fix(dockercompose): Fix db manager connection (#8377)
* add db host

* remove unused variable
2024-10-18 13:57:14 +01:00
Aarushi
6f3828fc99 fix(dockercompose): Fix db manager connection (#8377)
* add db host

* remove unused variable
2024-10-18 12:49:56 +00:00
Zamil Majdy
26b1bca033 refactor(backend): Make block fields consistently use SchemaField (#8360) 2024-10-18 10:22:05 +07:00
Kushal Agrawal
7f6354caae Update README.md (#8319)
* Update README.md

* Update README.md

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-10-17 16:26:35 +00:00
Reinier van der Leer
5d4d2486da ci: Enforce dev as base branch for development (#8369)
* Create repo-pr-enforce-base-branch.yml

* fix quotes

* test

* fix github token

* fix trigger and CLI config

* change back trigger because otherwise I can't test it

* fix the fix

* fix repo selection

* fix perms?

* fix quotes and newlines escaping in message

* Update repo-pr-enforce-base-branch.yml

* grrr escape sequences in bash

* test

* clean up

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-10-17 17:15:15 +01:00
Zamil Majdy
2c0286e411 feat(backend): Add credit for Jina/Search & LLM blocks (#8361) 2024-10-17 20:51:10 +07:00
Aarushi
fca8d61cc4 Merge branch 'master' into dev 2024-10-17 12:25:54 +01:00
Aarushi
2b4af19799 fix(platform/frontend): Add behave as var (#8365)
add behave as variable
2024-10-17 12:24:24 +01:00
Aarushi
615a9746dc fix(market): Reseal Market URL (#8363)
reseal market url
2024-10-17 11:46:02 +01:00
Aarushi
ac33c1eb03 fix(platform): Include health router (#8362)
include health router
2024-10-17 11:09:33 +01:00
Nicholas Tindle
d6d2820b92 fix(market): agent pagination and search errors (#8336)
* fix(market): agent pagination and search errors

* fix(frontend): search was not paginated

* fix: linting

* feat(market): linting ci

* fix(ci): branch limit name
2024-10-16 20:29:53 +00:00
Bently
3982e20faa feat(frontend): Allow copy and pasting of blocks between flows (#8346) 2024-10-16 21:21:01 +01:00
Bently
c029fde502 docs(blocks): Add documentation for each block we currently have (#8289)
* Initial upload of block docks

* add github + google block docs

* small tweak
2024-10-16 15:09:34 +00:00
Aarushi
405dd1659e fix(infra): Update backend server health check endpoint (#8351)
* feat(platform): List and revoke credentials in user profile (#8207)

Display existing credentials (OAuth and API keys) for all current providers: Google, Github, Notion and allow user to remove them. For providers that support it, we also revoke the tokens through the API: of the providers we currently have, Google and GitHub support it; Notion doesn't.

- Add credentials list and `Delete` button in `/profile`
- Add `revoke_tokens` abstract method to `BaseOAuthHandler` and implement it in each provider
- Revoke OAuth tokens for providers on `DELETE` `/{provider}/credentials/{cred_id}`, and return whether tokens could be revoked
   - Update `autogpt-server-api/baseClient.ts:deleteCredentials` with `CredentialsDeleteResponse` return type

Bonus:
- Update `autogpt-server-api/baseClient.ts:_request` to properly handle empty server responses

* fix(backend): Lower the number of node workers to save DB connections (#8331)

Change [graph]×[node] worker limit from 10×5 to 10×3

---------

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

* fix(ci,platform): Add dev branch trigger to all ci (#8339)

* update ci for dev

* update classic

* remove duplicate dev

* fix(frontend): Fix styling inconsistencies in input elements (#8337)

- Apply consistent border styling to `Input`, `Select`, and `Textarea`
   - Remove `rounded-xl` from node input elements

- Add `whitespace-nowrap` to `CustomNode` header category tags

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>

* feat(builder): Use configmap for builder (#8343)

use configmap in builder

* fix(platform,infra): Checkin non secret values  (#8344)

checkin non secrets

* security(platform): Add sealed secrets (#8342)

* add sealed secrets

* add encrypted secrets

* remove extra space

* Tf public media buckets (#8324)

* fix(infra): Fix sealed secret names  (#8350)

* fix sealed secret names

* fix names and add annotation

* feat(backend): Introduce executors shared DB connection (#8340)

* update health checkendpoint

---------

Co-authored-by: Krzysztof Czerwinski <34861343+kcze@users.noreply.github.com>
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
Co-authored-by: Swifty <craigswift13@gmail.com>
2024-10-16 15:02:21 +00:00
Aarushi
2d0e51fe28 security(platform/backend): Add health endpoint (#8341)
* add health endpoint

* fix linting

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-10-16 14:57:23 +00:00
Zamil Majdy
6f07d24e93 feat(backend): Introduce executors shared DB connection (#8340) 2024-10-16 21:15:23 +07:00
Aarushi
9292597d56 fix(infra): Fix sealed secret names (#8350)
* fix sealed secret names

* fix names and add annotation
2024-10-16 14:54:35 +01:00
Swifty
f6eebcab6e Tf public media buckets (#8324) 2024-10-16 09:28:41 +00:00
Aarushi
9fe3fed1a2 security(platform): Add sealed secrets (#8342)
* add sealed secrets

* add encrypted secrets

* remove extra space
2024-10-16 09:59:54 +01:00
Aarushi
769ab18cca fix(platform,infra): Checkin non secret values (#8344)
checkin non secrets
2024-10-15 15:28:35 +01:00
Aarushi
d46219c80f feat(builder): Use configmap for builder (#8343)
use configmap in builder
2024-10-15 14:23:10 +01:00
Reinier van der Leer
97015a91ad fix(frontend): Fix styling inconsistencies in input elements (#8337)
- Apply consistent border styling to `Input`, `Select`, and `Textarea`
   - Remove `rounded-xl` from node input elements

- Add `whitespace-nowrap` to `CustomNode` header category tags

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-10-15 15:18:19 +02:00
Aarushi
a2ef456525 fix(ci,platform): Add dev branch trigger to all ci (#8339)
* update ci for dev

* update classic

* remove duplicate dev
2024-10-15 10:57:24 +01:00
Aarushi
1c71351652 fix(backend): Lower the number of node workers to save DB connections (#8331)
Change [graph]×[node] worker limit from 10×5 to 10×3

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-10-14 15:59:59 +00:00
Krzysztof Czerwinski
bd5d2b1e86 feat(platform): List and revoke credentials in user profile (#8207)
Display existing credentials (OAuth and API keys) for all current providers: Google, Github, Notion and allow user to remove them. For providers that support it, we also revoke the tokens through the API: of the providers we currently have, Google and GitHub support it; Notion doesn't.

- Add credentials list and `Delete` button in `/profile`
- Add `revoke_tokens` abstract method to `BaseOAuthHandler` and implement it in each provider
- Revoke OAuth tokens for providers on `DELETE` `/{provider}/credentials/{cred_id}`, and return whether tokens could be revoked
   - Update `autogpt-server-api/baseClient.ts:deleteCredentials` with `CredentialsDeleteResponse` return type

Bonus:
- Update `autogpt-server-api/baseClient.ts:_request` to properly handle empty server responses
2024-10-14 17:50:55 +02:00
Zamil Majdy
8502928a21 feat(frontend): Update block UI (#8260)
* feat(platform): Update block UI

* add border on card

* added delay and badge data-id

* Fix border & width for block control list

* More cleanup on border & shadow

* Nav border consistency

* Simplify category badges

* restored backward compatablility

* fix alignement of sub handles

* Fix dynamic pin experience

* Added a timeout to prevent losing focus whilst typing

* Added flex-col back in removed timeout

* Clear nodes before tutorial

* Fix highlight on tutorial

* Sort blocks

* lint

* Fix tutorial and lint error

* w-fit

* Fix tutorial modals silly jumps!

* updates to tutorial

* prettier

* add data-id to save control bar

* prettier again

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Bently <tomnoon9@gmail.com>
2024-10-12 10:33:29 +01:00
Bently
c1f97415fb refactor(frontend/login): Hide sign in with Google/GitHub/Discord for now (#8318)
hide sign in with Google/GitHub/Discord for now
2024-10-11 16:52:08 +00:00
Reinier van der Leer
74e677baec ci(frontend): Enforce consistent yarn.lock + minor DX improvements (#8316)
- ci(frontend): Ensure CI fails if `yarn.lock` is inconsistent with `package.json`
- dx(frontend): Add Prettier check to `lint` script in `package.json`
- dx(frontend): Add `packageManager` to `package.json` for Corepack support
- build(frontend): Use `yarn` consistently in the Dockerfile
2024-10-11 16:51:15 +02:00
Reinier van der Leer
992989ee71 feat(backend): Ensure validity of OAuth credentials during graph execution (#8191)
- feat(backend/executor): Change credential injection mechanism to acquire credentials from `AgentServer` just before execution
  - Also locks the credentials for the duration of the execution

- feat(backend/server): Add thread-safe `IntegrationCredentialsManager` to handle and synchronize credentials-related operations

- feat(libs): Add mutexes to `SupabaseIntegrationCredentialsStore` to ensure thread-safety

Also:
- feat(backend): Added Pydantic model (de)serialization support to `@expose` decorator

Refactorings:
- refactor(backend, libs): Move `KeyedMutex` to `autogpt_libs.utils.synchronize`
- refactor(backend/server): Make `backend.server.integrations` module with `router`, `creds_manager`, and `utils` in it
2024-10-10 16:45:43 +00:00
Swifty
d8145c158c tool(platform): Add storybooks to aid UI development (#8274)
* storybook init

* alert stories

* Avatar stories

* badge stories

* button stories

* calander stories

* stories default

* card stories

* checkbox stories

* formatting

* added tailwind config

* add collapsible story

* added command story

* rename use-toast.ts to tsx

* added more stories

* fix linting issues

* added stories for input

* added stories for label

* Added tests to button story

* added multiselect stories

* added popover stories

* added render stories

* scroll area stories

* more stories

* Added rest of the stories for the default components

* fmt

* add test runner

* added ci

* fix tests

* fixing ci

* remove storybook from ci

* removed styling

* added new line
2024-10-10 16:35:05 +00:00
Zamil Majdy
9ad5e1f808 fix(platform): Remove blind try-except for yielding error on block (#8287) 2024-10-10 23:25:29 +07:00
vishesh10
7b92bae942 Fix block execution status in case of error (#8267) 2024-10-10 02:59:26 +00:00
Aarushi
c03e2fb949 tweak(platform): Remove importing templates from local dir (#8276)
* always filter on user id

* add user id to doc string

* fix linting

* fix imports function

* remove import templates from local directory
2024-10-09 23:13:46 +00:00
Zamil Majdy
dbc603c6eb fix(platform): Fix unexpected connection clash on two dynamic pins link with the same keys (#8252) 2024-10-09 15:29:13 -05:00
Aarushi
c582b5512a tweak(platform): Add Anthropic (#8286)
add anthropic in helm
2024-10-09 11:54:49 +01:00
Nicholas Tindle
e654aa1e7a feat(backend): add the capibility to disable llm models in the cloud env (#8285)
* feat(backend): logic to disable enums based on python logic

* feat(backend): add behave as setting and clarify its purpose and APP_ENV

APP_ENV is used for not cloud vs local but the application environment such as local/dev/prod so we need BehaveAs as well

* fix(backend): various uses of AppEnvironment without the Enum or incorrectly

AppEnv in the logging library will never be cloud due to the restrictions applied when loading settings in by pydantic settings. This commit fixes this error, however the code path for logging may now be incorrect

* feat(backend): use a metaclass to disable ollama in the cloud environment

* fix: formatting

* fix(backend): typing improvements

* fix(backend): more linting 😭
2024-10-09 10:12:48 +01:00
Aarushi
e37744b9f2 fix(platform): Update deletion of secret values to not do it in place (#8284)
update deletion of secret values to not do it in place
2024-10-08 22:43:36 +01:00
Aarushi
bc1df92c29 fix(platform): Fix marketplace leaking secrets (#8281)
* add hide secrets param

* Update autogpt_platform/backend/backend/data/graph.py

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

* Update autogpt_platform/frontend/src/lib/autogpt-server-api/baseClient.ts

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

* rename hide secrets

* use builtin dict

* delete key

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-10-08 20:20:18 +01:00
Nicholas Tindle
04473cad1e feat(docs): OAuth docs updates based on google block changes (#8243)
* feat(frontend,backend): testing

* feat: testing

* feat(backend): it works for reading email

* feat(backend): more docs on google

* fix(frontend,backend): formatting

* feat(backend): more logigin (i know this should be debug)

* feat(backend): make real the default scopes

* feat(backend): tests and linting

* fix: code review prep

* feat: sheets block

* feat: liniting

* Update route.ts

* Update autogpt_platform/backend/backend/integrations/oauth/google.py

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

* Update autogpt_platform/backend/backend/server/routers/integrations.py

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

* fix: revert opener change

* feat(frontend): add back opener

required to work on mac edge

* feat(frontend): drop typing list import from gmail

* fix: code review comments

* feat: code review changes

* feat: code review changes

* fix(backend): move from asserts to checks so they don't get optimized away in the future

* fix(backend): code review changes

* fix(backend): remove google specific check

* fix: add typing

* fix: only enable google blocks when oauth is configured for google

* fix: errors are real and valid outputs always when output

* fix(backend): add provider detail for debuging scope declines

* Update autogpt_platform/frontend/src/components/integrations/credentials-input.tsx

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

* fix(frontend): enhance with comment, typeof error isn't known so this is best way to ensure the stringifyication will work

* feat: code review change requests

* fix: linting

* fix: reduce error catching

* fix: doc messages in code

* fix: check the correct scopes object 😄

* fix: remove double (and not needed) try catch

* fix: lint

* fix: scopes

* feat: handle the default scopes better

* feat: better email objectification

* feat: process attachements

turns out an email doesn't need a body

* fix: lint

* Update google.py

* Update autogpt_platform/backend/backend/data/block.py

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

* fix: quit trying and except failure

* Update autogpt_platform/backend/backend/server/routers/integrations.py

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

* feat: don't allow expired states

* fix: clarify function name and purpose

* feat: code links updates

* feat: additional docs on adding a block

* fix: type hint missing which means the block won't work

* fix: linting

* fix: docs formatting

* Update issues.py

* fix: improve the naming

* fix: formatting

* Update new_blocks.md

* Update new_blocks.md

* feat: better docs on what the args mean

* feat: more details on yield

* Update new_blocks.md

* fix: remove ignore from docs build

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-10-08 11:11:14 -05:00
Zamil Majdy
2a74381ae8 feat(platform): Add delete agent functionality (#8273) 2024-10-08 16:03:26 +00:00
Toran Bruce Richards
d42ed088dd tweak(docs): Further clarify licencing (#8282)
* Update files via upload

* Update README.md

* Update CONTRIBUTING.md

* Update CONTRIBUTING.md
2024-10-08 10:54:22 -05:00
Aarushi
2aed470d26 tweak(platform): Disable docs endpoint when not local (#8265)
* disable docs endpoint

* add to .env.example

* use enum for app env

* lint
2024-10-08 10:31:08 +01:00
Aarushi
61f1d0cdb5 fix(platform): Always filter on user id (#8275)
* always filter on user id

* add user id to doc string

* fix linting

* fix imports function
2024-10-07 15:47:49 +02:00
Aarushi
d742019349 feat(platform,db): Add on deletes (#8272)
add on deletes
2024-10-07 14:44:37 +04:00
Swifty
fd9968683c tweak(platform): Limit templates to users (#8271)
limit templates to users

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-10-07 11:08:51 +01:00
Zamil Majdy
daa054c79c feat(backend): Make Redis connection Sync + Use Redis as Distributed Lock (#8197) 2024-10-07 15:39:32 +07:00
PRIYANKjakharia
fe98abf875 refactor(frontend): Remove unnecessary keywords in BaseAutoGPTServerAPI (#8242)
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-10-07 07:46:11 +00:00
ymrohit
a6f763db24 Updated ReplicateFluxAdvancedModel block with the latest Flux 1.1 Pro model (#8266)
Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-10-07 05:01:38 +00:00
Krzysztof Czerwinski
a09fb731b5 fix(builder): Make edge delete button render above nodes (#8259) 2024-10-06 12:51:38 +01:00
Toran Bruce Richards
07ae912cfe feat(blocks): Add text to speech block and Unreal Speech API key (#8264) 2024-10-04 14:35:56 +01:00
SuperComboGamer
7501089bbf feat: Add Ideogram image generation block with customizable options (#8237)
* add ideogram ai image gen

* fixed revid secret api key being removed

* fixed auto checks errors

* Add AI Upscale option to IdeogramModelBlock

- Introduced an 'Upscale Image' option in the input schema to allow users to upscale generated images.
- Created the 'UpscaleOption' enum with options 'AI Upscale' and 'No Upscale'.
- Implemented the 'upscale_image' method to download the generated image into RAM and send it to the Ideogram AI upscale API without saving it to disk.
- Updated the 'run' method to handle the upscaling process based on the user's input.
- Ensured that the image processing is done entirely in memory (RAM) without writing to disk.
- Updated test inputs and mocks to reflect the new 'Upscale Image' option.

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-10-04 10:25:51 +00:00
Aarushi
f811a6ffc0 feat(infra,prod): Add prod values builder and ws (#8262)
add prod values
2024-10-04 11:17:33 +01:00
Bently
5e2d29f27e Feat(Builder/tutorial): update tutorial to make it work with latest UI (#8232)
* updates to tutorial

* updates to get user to save

* Update tutorial.ts

* final updates to end of tutorial

* Prettier

* add back data-id for badge within the blocks

* Prettier
2024-10-04 10:02:29 +00:00
Aarushi
72cbbbbbc9 feat(market) Add on delete to market (#8255)
* add on delete to market

* add migrations

* updated schema

* add endpint

* add migrations

* remove transaction

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-10-04 09:28:01 +00:00
Zamil Majdy
1e3b1dad06 feat(platform): Add Graph Execution error data & status (#8250) 2024-10-04 09:15:54 +00:00
Toran Bruce Richards
d3266d003d tweak(frontend): Fix broken terms of use link (#8261)
* Fix broken terms of use link

* fix linting

---------

Co-authored-by: Aarushi <aarushik93@gmail.com>
2024-10-04 08:54:43 +00:00
Zamil Majdy
fa7b8c54ff Revert "Revert "Revert "tweak(frontend): Update Blocks UI (#8190)" (#8257)"" 2024-10-04 02:31:13 +04:00
Zamil Majdy
ce124a74b5 Fix ref setting 2024-10-04 02:25:09 +04:00
Zamil Majdy
1bc445007a Revert "Revert "tweak(frontend): Update Blocks UI (#8190)" (#8257)"
This reverts commit 4989e3c282.
2024-10-04 01:54:05 +04:00
Nicholas Tindle
6dbc0f7270 feat(frontend,backend): fix google auth and add gmail, sheets (#8236)
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-10-03 16:36:30 +00:00
Swifty
4989e3c282 Revert "tweak(frontend): Update Blocks UI (#8190)" (#8257)
This reverts commit 1114b421d0.
2024-10-03 16:41:28 +02:00
Aarushi
7194f099b9 tweak(infra): Remove cloudsql values (#8239)
remove cloudsql values
2024-10-03 12:27:34 +02:00
Swifty
1114b421d0 tweak(frontend): Update Blocks UI (#8190)
* Updated onOpenChange code style

* modifying how handle text is rendered

* Rounding input boxes

* Modifying layout of nodes

* formatting

* update edge start / end positions

* updated handle rendering

* moved outputs down and disabled toggle

* formatting

* update font

* update key name formatting

* modify layout of input items

* updated the add property button

* feat(platform): Sync on new UI design

* simplify UI

* block list add border and remove padding

* add highlight on navbar button

* Change block header so block costs line up correctly

* fix history type issue

* formatting

* tweaking css to hide white spot

* fixed white spot

* Added context menu

* Changed status badge color

* getting error colors just right

* Added a NodeOutputs component for rendering the outputs

* tidy up

* Change Add Item Button Color

* changed cursor on hover in block control panel

* formatting

* updated formatting of tutoral and tally buttons

* fix(platform): Fix text area input not updating input field

* Address comments

* Add missing color

* fix lint errors

* Cleanup context logic

* Make inputref reliable

* Update coloring

* fix(platform): Fix unexpected closing block list on tutorial

* Add X-scrolling

* Remove excessive shadows

* Remove another excessive shadows

* Another patch patch patch

* Add border on context menu

* Cleanup executions

* Cleanup executions

* Makr border darker

* Make border darker

* Fix input reset

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-10-03 12:16:25 +02:00
Zamil Majdy
95e184c85f fix(platform): Add block data db auto-update (#8249) 2024-10-03 10:10:45 +01:00
Zamil Majdy
78fe578177 feat(platform): Add implicit typing conversion of nested data-structure (#8231) 2024-10-02 20:57:13 +00:00
Toran Bruce Richards
723055ce1d feat(blocks): Add text decoder block (#8248)
* Refactor search.py: Add option for raw content scraping in ExtractWebsiteContentBlock

* Add TextDecoderBlock for decoding escape sequences in text
2024-10-02 17:26:32 +01:00
vishesh10
24cc5131d7 refactor(backend): Replace deprecated event hooks with lifecycle handler (#8092)
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-10-02 16:33:05 +02:00
Nicholas Tindle
9748cd08bf feat(market): swap to prisma direct query (#8246)
* feat(market): swap to prisma direct query

* add schema

---------

Co-authored-by: Aarushi <aarushik93@gmail.com>
2024-10-02 13:45:44 +01:00
Krzysztof Czerwinski
f892894193 docs(server): Request to use UUID generators for new block ids (#8241) 2024-10-01 15:42:14 +01:00
Reinier van der Leer
8803740d47 refactor(blocks): Reassign non-random IDs (#8229)
- refactor(blocks): Assign new IDs to 13 blocks
   - Create DB migration to update block IDs in existing DB entities

- feat(frontend): Add `updateBlockIDs` "middleware" to `AgentImportForm` loader in front end
2024-10-01 15:08:42 +01:00
Nicholas Tindle
55803bcd54 feat(frontend): push to cloud if needed for marketplace, and add a download agent button (#8196)
* feat(frontend): push to cloud if needed for marketplace

* fix(market): missing envar in the example 😠

* feat(frontend): download button functions

* feat(frontend): styling and linting

* feat(frontend): move to popup

* feat(frontend): style fixes and link replacement

* feat(infra): add variables

* fix(frontend): merge

* fix(frontend): linting

* feat(frontend): pr changes

* Update NavBar.tsx

* fix(frontend): linting

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-10-01 11:37:01 +01:00
Aarushi
f6b5e13c2f feat(prod,infra): Add prod values and clean up infra (#8238)
add prod values and clean up infra
2024-10-01 11:29:10 +01:00
Zamil Majdy
a80b0de18d fix(platform): Fix unexpected closing block list on tutorial (#8233) 2024-09-30 22:00:10 +00:00
Reinier van der Leer
c64a2d4101 dx(blocks): Auto-label block PRs (#8230)
Automatically apply the `platform/blocks` label to PRs that change files in `backend/blocks/`
2024-09-30 19:52:05 +00:00
Toran Bruce Richards
1de99ca4df tweak(blocks): Add option for simple raw content scraping to ExtractWebsiteContentBlock (#8228)
Refactor search.py: Add option for raw content scraping in ExtractWebsiteContentBlock
2024-10-01 01:48:07 +07:00
Toran Bruce Richards
a8e5a0d98e tweak(Blocks): Simplify iteration block to output list items (#8219)
Refactor iteration block to support iterating over dictionaries and to return individual list items.
2024-09-30 13:25:03 +00:00
Toran Bruce Richards
210c140a0f feat(blocks): Add AI List Generator block (#8221)
Add AIListGeneratorBlock class
2024-09-30 08:05:26 -05:00
Toran Bruce Richards
0cf3b9f48b feat(blocks): Add shortform video block (#8217)
* feat(blocks): Add AIShortformVideoCreatorBlock

- Added a new block called AIShortformVideoCreatorBlock to create shortform videos using revid.ai.
- The block takes input parameters such as script,  background music, and voice ID.
- It uses the revid.ai API to create the video and waits for completion using a webhook proxy service.
- Once the video is ready, it returns the URL of the created video.
- This block takes anywhere from 5 seconds to several minutes to complete depending on the length of the video.

Add revid.ai API key to Secrets

- Added a new field in the Secrets class to store the revid.ai API key.

* refactor(blocks): Remove unused webhook code in AIShortformVideoCreatorBlock

* Add background music track options.

* Add preset voice options

* Add generation preset and visual style configuration options.

* Remove "morpher" video type due to long generation times and low quality.

Plus extend timeout cut-off.

* Add audio track configuration options.

* refactor AudioTrack selection into single class

* format

* Add test mocks

* run format
2024-09-30 12:31:47 +01:00
Toran Bruce Richards
9dc7bb8497 Remove fluxdev from AI Generation block due to licence restrictions. (#8222) 2024-09-30 10:54:40 +01:00
ymrohit
22fb9bc635 Added Replicate Flux Blocks for image generation (#8216)
* Added Replicate Flux Blocks

* updated poetry lock file for replicate

* Refactor ReplicateFluxAdvancedModelBlock to use an enum for replicate_model_name rather than free strings.

* Refactor ReplicateFluxAdvancedModelBlock to use an enum for output_format instead of free strings

* Refactor ReplicateFluxAdvancedModelBlock to stop requiring people to type a random seed

* Refactor ReplicateFluxAdvancedModelBlock to stop requiring people to type a random seed

* run format

* poetry run format

* Delete ReplicateFluxBasicModelBlock

* Mark model name as not advanced

* tweak input order

* Fix test

---------

Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-09-29 22:24:42 +01:00
Michael Sheinman
3ac0e2d1d3 fix(platform) Fix stuck tutorial bug on add block step (#8213) 2024-09-29 02:52:28 +07:00
Bently
d7e59966ef Feat(Builder): Add Google Maps Search Block (#8162)
* Feat(Builder): Add Google Maps Search Block

* format

* Updates to google maps search block

* fixes

* format + updates again

* fix for pytest

* format again

* updates based on new comments

* fix for format?

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-09-27 21:29:59 +01:00
Michael Sheinman
a5c63880b8 fix(platform): Fix NPM security vulnerabilities upgrade next 14.2.4 -> 14.2.13 (#8198)
Co-authored-by: Michael Sheinman <michaelsheinman@Michaels-MacBook-Air.local>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-09-27 16:14:48 +00:00
Aarushi
230ec1c88c tweak(infra): Update prod market ingres host (#8205)
update name
2024-09-27 10:12:13 +01:00
Aarushi
31450fcb9c feat(infra): Add market prod (#8204)
market prod values
market prod values
2024-09-27 10:08:01 +01:00
Zamil Majdy
1286a1b034 feat(platform): Sync on new UI design (#8194)
* feat(platform): Sync on new UI design

* simplify UI

* block list add border and remove padding

* add highlight on navbar button

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-09-27 10:31:44 +02:00
Aarushi
f607efd74f feat(infra): Add prod redis values (#8202)
add redis production values
2024-09-27 09:31:12 +01:00
Aarushi
0f503aa467 feat(prod): Set up prod values infra (#8201)
updated prod vars
2024-09-27 09:17:11 +01:00
Nicholas Tindle
538f945edc feat(docs): add a few qol upgrades (#8176)
* feat(docs): add a few qol upgrades

* fix(docs): render favicon correctly

* feat(docs): pr comments
2024-09-27 06:31:43 +00:00
Toran Bruce Richards
dc6c1bb8b0 Feat(Builder): Add Video and Image Rendering to Block outputs (#8167)
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-09-27 09:00:42 +07:00
Aarushi
9fd6d3df42 tweak(platform): Remove unused supabase services in docker compose (#8178)
remove unused supabase services
2024-09-26 16:02:08 +00:00
Toran Bruce Richards
0d8dfaf312 tweak(docs): Update setup.md with git instructions. (#8192)
Update setup.md with git instructions.
2024-09-26 16:57:17 +01:00
Aarushi
007a773296 fix(infra): Add missing quotes in helm values (#8193)
fix missing quotes
2024-09-26 16:56:36 +01:00
Toran Bruce Richards
351fdcef32 Update broken link in setup.md 2024-09-26 16:25:12 +01:00
Swifty
beedc4b971 tweak(platform): Updated onOpenChange code style (#8187) 2024-09-26 15:09:01 +00:00
Toran Bruce Richards
41e3c4f6bd Feat(Builder): Enhance AITextSummarizerBlock with configurable summary style and focus (#8165)
* feat(platform): Enhance AITextSummarizerBlock with configurable summary style and focus

The AITextSummarizerBlock in the autogpt_platform/backend/backend/blocks/llm.py file has been enhanced to include the following changes:
- Added a new enum class, SummaryStyle, with options for concise, detailed, bullet points, and numbered list styles.
- Added a new input parameter, focus, to specify the topic of the summary.
- Modified the _summarize_chunk method to include the style and focus in the prompt.
- Modified the _combine_summaries method to include the style and focus in the prompt.

These changes allow users to customize the style and focus of the generated summaries, providing more flexibility and control.

* run formatting and linting
2024-09-26 15:20:05 +01:00
Zamil Majdy
b4097f3a51 fix(platform): UI fixes; Fix block note UI displayed as normal block;Json-prettify execution output (#8169)
* fix(platform): UI fixes; Fix block note UI displayed as normal block; Json-prettify execution output

* fix(platform): UI fixes; Fix block note UI displayed as normal block; Json-prettify execution output

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-09-26 09:40:06 +02:00
Zamil Majdy
fcd61a69f7 fix(platform): UI fixes; Fix disabled Run/Stop button (#8171)
* fix(platform): UI fixes; Fix disabled Run/Stop button

* fix(platform): UI fixes; Fix disabled Run/Stop button

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-09-26 09:39:20 +02:00
Zamil Majdy
53a0ee2523 fix(platform): UI fixes; Fix default value on input fields & fix enum custom fields (#8182)
* fix(platform): Fix default value on input fields & fix enum custom fields

* fix(platform): Fix default value on input fields & fix enum custom fields
2024-09-26 09:38:58 +02:00
Swifty
8f980c43c5 fix(platform): Reset Block Control filters on popover close (#8156)
Reset Block Control filters on popover close

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-09-26 09:32:01 +02:00
Swifty
7d8f2e6cc1 tweak(platform): Update Nav Menu styling (#8148)
* easy nav ui changes

* teaked mobile nav menu
2024-09-26 09:27:26 +02:00
Swifty
1d2e7b89ea tweak(platform): Update block descriptions and tweak block card ui (#8147)
* Update block descriptions and tweak block card ui

* updated string

* updated block descriptions

* updated output description

* fmt
2024-09-26 09:27:06 +02:00
Nicholas Tindle
7aea24285a fix(market): the database url schema should be market (#8180) 2024-09-26 04:13:22 +00:00
Zamil Majdy
ef9308bed4 fix(platform): Add missing mandatory environment variable (#8183) 2024-09-25 23:02:24 -05:00
Aarushi
aec715cb2b tweak(platform) Add frontendconfig for redirect (#8160)
* add frontendconfig for redirect

* add the files
2024-09-25 22:44:54 +00:00
Reinier van der Leer
5e2874c315 feat(platform): OAuth support + API key management + GitHub blocks (#8044)
## Config
- For Supabase, the back end needs `SUPABASE_URL`, `SUPABASE_SERVICE_ROLE_KEY`, and `SUPABASE_JWT_SECRET`
- For the GitHub integration to work, the back end needs `GITHUB_CLIENT_ID` and `GITHUB_CLIENT_SECRET`
- For integrations OAuth flows to work in local development, the back end needs `FRONTEND_BASE_URL` to generate login URLs with accurate redirect URLs

## REST API
- Tweak output of OAuth `/login` endpoint: add `state_token` separately in response
- Add `POST /integrations/{provider}/credentials` (for API keys)
- Add `DELETE /integrations/{provider}/credentials/{cred_id}`

## Back end
- Add Supabase support to `AppService`
- Add `FRONTEND_BASE_URL` config option, mainly for local development use

### `autogpt_libs.supabase_integration_credentials_store`
- Add `CredentialsType` alias
- Add `.bearer()` helper methods to `APIKeyCredentials` and `OAuth2Credentials`

### Blocks
- Add `CredentialsField(..) -> CredentialsMetaInput`

## Front end
### UI components
- `CredentialsInput` for use on `CustomNode`: allows user to add/select credentials for a service.
  - `APIKeyCredentialsModal`: a dialog for creating API keys
  - `OAuth2FlowWaitingModal`: a dialog to indicate that the application is waiting for the user to log in to the 3rd party service in the provided pop-up window
- `NodeCredentialsInput`: wrapper for `CredentialsInput` with the "usual" interface of node input components
- New icons: `IconKey`, `IconKeyPlus`, `IconUser`, `IconUserPlus`

### Data model
- `CredentialsProvider`: introduces the app-level `CredentialsProvidersContext`, which acts as an application-wide store and cache for credentials metadata.
- `useCredentials` for use on `CustomNode`: uses `CredentialsProvidersContext` and provides node-specific credential data and provider-specific data/functions
- `/auth/integrations/oauth_callback` route to close the loop to the `CredentialsInput` after a user completes sign-in to the external service
- Add `BlockIOCredentialsSubSchema`

### API client
- Add `isAuthenticated` method
- Add methods for integration OAuth flow: `oAuthLogin`, `oAuthCallback`
- Add CRD methods for credentials: `createAPIKeyCredentials`, `listCredentials`, `getCredentials`, `deleteCredentials`
- Add mirrored types `CredentialsMetaResponse`, `CredentialsMetaInput`, `OAuth2Credentials`, `APIKeyCredentials`
- Add GitHub blocks + "DEVELOPER_TOOLS" category
- Add `**kwargs` to `Block.run(..)` signature to support additional kwargs
- Add support for loading blocks from nested modules (e.g. `blocks/github/issues.py`)

#### Executor
- Add strict support for `credentials` fields on blocks
- Fetch credentials for graph execution and pass them down through to the node execution
2024-09-26 00:36:29 +02:00
Swifty
3a1574e4bd tweak(platform): Add primary action buttons (#8161) 2024-09-25 22:00:24 +02:00
Aarushi
d220562806 tweak(frontend): Add msg for custom error (#8157)
add waitlist msg
2024-09-25 19:18:52 +01:00
Swifty
bd39d5da0b fix(platform): Update Backend .env.example BACKEND_CORS_ALLOW_ORIGINS to be a list (#8163)
updated to list
2024-09-25 13:53:11 +02:00
Swifty
9f79e70b0f fix(platform): Fix REST API CORS issue + UI build for Firefox (#8140) 2024-09-25 11:06:47 +00:00
Nicholas Tindle
46b8f9af0a feat(builder): scaffold playwright (#8109) 2024-09-24 23:31:38 +00:00
Swifty
03b8f5ec6e feat(marketplace): Added a list of keywords to describe agents (#8146)
* Added more keywords

* formatting
2024-09-24 23:19:50 +00:00
Zamil Majdy
b78c43111f feat(platform): Make REST & WS server host configurable (#8143) 2024-09-24 23:15:45 +00:00
Zamil Majdy
81d1be73cd feat(platform): Add OpenAI reasoning models (#8152) 2024-09-24 18:11:15 -05:00
Zamil Majdy
6da8007ce0 fix(platform): Refresh doc setup instruction (#8142) 2024-09-24 22:43:54 +00:00
Toran Bruce Richards
2b0ec123cd Update CONTRIBUTING.md 2024-09-24 23:16:24 +01:00
Toran Bruce Richards
591a2bc431 Add files via upload 2024-09-24 23:11:57 +01:00
Swifty
00b8d219f2 fix(frontend): Remove Sentry Pop-up and add run options (#8138)
* modify sentry setup

* Update sentry.client.config.ts

* remove env vars from dev so it will work on windows still
2024-09-24 20:01:06 +00:00
Toran Bruce Richards
e04beffe62 Update README.md (#8153)
* Update README.md

* Update README.md

* Update README.md
2024-09-24 20:55:24 +01:00
Kaitlyn Barnard
769058a8c9 Update README.md (#8150)
Edits based on AutoGPT Platform launch

Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-09-24 19:24:21 +00:00
Toran Bruce Richards
b5dd75fad2 Update README with new Tutorial.md 2024-09-24 20:03:41 +01:00
Reinier van der Leer
f109c3e019 ci: Set up customized CodeQL scanning (#8106)
This replaces the dynamically configured CodeQL scanning that we had set up through the GitHub settings.
2024-09-24 18:26:15 +02:00
Nicholas Tindle
198a1048e8 feat(frontend): add marketplace server side client (#8129) 2024-09-23 14:44:56 -05:00
Zamil Majdy
6e205cb850 feat(platform): Add coin icon on block cost & current credits (#8124) 2024-09-23 14:24:31 -05:00
Swifty
4ab3f42780 fix(platform): Monitor page crashing when agents present with no runs (#8139)
* fix null issue

* formatting
2024-09-23 16:27:55 +01:00
Reinier van der Leer
679245416f ci: Reduce PR Status Checker interval (#8137)
Reduce interval from 3 minutes to 30 seconds to reduce CI lag
2024-09-23 13:10:23 +00:00
Aarushi
88e278b736 tweak(rnd): Move to the PG within Supabase (#8085)
* move to supabase pg instance

* remove postgres and bind supabase port

* Updated setup
- Switched db name to postgres to work with prisma studio
- Added platform schema
- Added Market-migartions
- bound prisma studio port

* remove studio port

* updated .env

* updated readmes

---------

Co-authored-by: SwiftyOS <craigswift13@gmail.com>
2024-09-23 14:04:26 +01:00
Reinier van der Leer
c533044cdc ci(backend): Add Supabase (#8123)
- Set up Supabase in the Backend CI
  - Remove separate Postgres DB setup
- Remove unused MinIO service
- Remove multi-platform stuff
2024-09-23 09:45:20 +00:00
Swifty
c07cf8a7b8 fix(platform): Added updated graph meta to include runs (#8088) 2024-09-23 11:31:48 +02:00
Aarushi
fc51176a56 fix(.dockerignore) Put dockerignore back (#8136)
* put dockerignore back

* add classic prefix
2024-09-23 09:26:30 +00:00
Swifty
6718007d9b refactor(platform): Update docker compose file names (#8135)
* update docker compose file names

* update docs
2024-09-23 10:10:56 +01:00
Zamil Majdy
612e7cfed5 feat(rnd): Route to /login on authenticated requests (#8111) 2024-09-21 23:50:55 +07:00
Zamil Majdy
52ee846744 fix(platform): Fix logging incomplete information & LLM missing error (#8128) 2024-09-21 15:18:36 +00:00
Zamil Majdy
62a3e1c127 fix(rnd): Fix broken list input pin execution ordering & unlinked dynamic pins on save (#8108) 2024-09-21 22:11:35 +07:00
Swifty
ef7cfbb860 refactor: AutoGPT Platform Stealth Launch Repo Re-Org (#8113)
Restructuring the Repo to make it clear the difference between classic autogpt and the autogpt platform:
* Move the "classic" projects `autogpt`, `forge`, `frontend`, and `benchmark` into a `classic` folder
  * Also rename `autogpt` to `original_autogpt` for absolute clarity
* Rename `rnd/` to `autogpt_platform/`
  * `rnd/autogpt_builder` -> `autogpt_platform/frontend`
  * `rnd/autogpt_server` -> `autogpt_platform/backend`
* Adjust any paths accordingly
2024-09-20 16:50:43 +02:00
Aarushi
2dfc927f03 tweak(docs) add to docs supabase submodule steps (#8115)
add to docs
2024-09-20 10:39:52 +01:00
Aarushi
e3f35d79c7 tweak(.github): Update pr template wording (#8103)
* update pr template wording

* add what and how

* Update .github/PULL_REQUEST_TEMPLATE.md

---------

Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-09-19 12:44:50 +00:00
Aarushi
0040495143 tweak(.github): Update PR template (#8100)
* update PR template

* Update .github/PULL_REQUEST_TEMPLATE.md

Co-authored-by: Krzysztof Czerwinski <34861343+kcze@users.noreply.github.com>

* add note

* typo

---------

Co-authored-by: Krzysztof Czerwinski <34861343+kcze@users.noreply.github.com>
2024-09-19 13:00:16 +01:00
Aarushi
d3eac86f9a fix(frontend): Update REST API port (#8096)
update server port to 8006

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-09-19 01:06:04 +02:00
Zamil Majdy
c3cb90ac20 feat(rnd): Add initial block execution credit accounting UI on AutoGPT Builder (#8078) 2024-09-19 04:21:40 +07:00
matanm
9b5bf81d7c Fix typo in Groq setup docs (#8018)
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-09-18 20:22:57 +00:00
Nicholas Tindle
86db4deef9 feat(server): backend analytics endpoints (#8030) 2024-09-18 18:23:20 +00:00
Aarushi
d8f989daf8 docs(rnd): Update submodules info in readme (#8095)
update submodules info in readme
2024-09-18 18:59:23 +01:00
Aarushi
00f2b134cb tweak(rnd): add env var to docker compose so no messing with .env (#8091)
add env var to docker compose so no messing with .env
2024-09-18 16:39:15 +01:00
Aarushi
a3959712dc tweak(builder): Update .env.example server url with right port (#8090)
update server url with right port
2024-09-18 15:51:44 +01:00
Aarushi
8477b25c5a tweak(builder) Add local supabse credentials (#8089)
add local supabse credentials
2024-09-18 15:45:09 +01:00
Swifty
f133c9c1ef fix(rnd): incorrect docker image for migrate (#8086)
fix incorrect docker image for migrate
2024-09-18 15:21:38 +02:00
Aarushi
dc72ec97bc feat(rnd): Add support for supabase locally (#8077)
* add just auth for now

* add supabase script

* add to docker compose

* update docker compose

* tweak(rnd) Add prefix in logs (#8001)

* add prefix

* fix typos

* fix conflicts

* feat(rnd): Reduce container size remove dep with forge and autogpt (#8040)

* Remove forge and autogpt

* update lock files

* Update build process to reduce image size

* Reduced built image size

* fixed docker compose watch

* Updated logging

* updated env.example

* formatting

* linting issue

* linting not working in github actions..

* trying to get around github action linting issue

* updated version

* sleep for prisma issues

* add exp backoff on connection issues

* updated config based on review comments

* Sorting alphabetical

* updated default config

* updated depends checks

* fixed missing prisma binaries

* remove dead layer

* remove try

* remove dead layer

* updated lock file

* add to docker compose

* update for init

* add local supabase variables to docker compose

* wip supbase connectioon

* subabase submodule

* combined docker file wth new supbase url pointing to kong

* updated combined

* ngix

* updated docker compose without frontend

* updated docker compose

* update to remove frontend

* update docs

* update newline

* remove unescessary change

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-09-18 09:50:39 +01:00
Nicholas Tindle
0c915cb558 feat(server): anthropic updates, csv, sampling, and code blocks (#7803)
Co-authored-by: Bentlybro <tomnoon9@gmail.com>
2024-09-17 21:29:35 -05:00
Nicholas Tindle
f6ab15db47 feat(market): add filters to the market queries (#8064) 2024-09-17 14:59:25 +00:00
Krzysztof Czerwinski
80161decb9 feat(server): Add credentials API endpoints (#8024)
- Add two endpoints to OAuth `integrations.py`:
  - `GET /integrations/{provider}/credentials` - list all credentials for a provider, without secrets (metadata only)
   - `GET /integrations/{provider}/credentials/{cred_id}` - retrieve a set of credentials (including secrets)

- Add `username` property to `Credentials` types
   - Add logic to populate `username` in OAuth handlers

- Expand `CredentialsMetaResponse` and remove `credentials_` prefix from properties

- Fix `autogpt_libs` dependency caching issue

- Remove accidentally duplicated OAuth handler files in `autogpt_server/integrations`
2024-09-17 11:16:16 +00:00
Swifty
0bf8edcd96 fix(autogpt_server): Fix vulnerability in Dockerfile (#8071) 2024-09-17 11:37:22 +01:00
Zamil Majdy
b1347a92de fix(rnd): Fix execution error on non-saved agent (#8054) 2024-09-16 19:35:31 +00:00
Nicholas Tindle
22ce8e0047 feat(builder): sentry integration (#8053) 2024-09-16 23:19:52 +07:00
Bently
5a7193cfb7 Feat(Builder): Add Runner input and ouput screens (#8038)
* Feat(Builder): Add Runner input and ouput screens

* Fix run button not working

* prettier

* prettier again -- forgot flow

* fix input scaling + auto close on run

* removed "Runner Input" button to make it auto open runner input if input block is  + Fixed issue with output not showing in output UI

* replaced runner output icon and added a new icon for it

* replaced IconOutput icon with LogOut from lucide-react

* prettier

* fix type safety issue + add error handling for formatOutput

* Updates based on comments

* prettier for utils
2024-09-16 13:05:07 +02:00
Zamil Majdy
c1f301ab8b feat(rnd): Add initial credit accounting system for block execution (#8047)
### Background

We need a way to set an execution quota per user for each block execution.

### Changes 🏗️

* Introduced a `UserBlockCredit`, a transaction table tracking the block usage along with it cost/quota.
* The tracking is toggled by `ENABLE_CREDIT` config, default = false.
* Introduced  `BLOCK_COSTS` | `GET /blocks/costs` as a source of information for the cost on each block depending on the input configuration.

Improvements:
* Refactor logging in manager.py to always print a prefix and pass the metadata.
* Make executionStatus on AgentNodeExecution prisma enum. And add executionStatus on AgentGraphExecution.
* Use executionStatus from AgentGraphExecution to improve waiting logic on test_manager.py.
2024-09-14 23:47:28 +07:00
Zamil Majdy
f32244a112 fix(rnd): Fix broken save feature on Agent Builder (#8052) 2024-09-13 18:04:51 -05:00
Aarushi
9395706841 fix(rnd,market): Fix docker issues with market, and DB connection (#8050)
fix docker issues with market, and DB connection
2024-09-13 16:15:06 +01:00
SwiftyOS
a98677b79d Revert "updated lock file"
This reverts commit 056eb46c0f.
2024-09-12 17:59:39 +02:00
SwiftyOS
056eb46c0f updated lock file 2024-09-12 16:18:13 +02:00
Swifty
6fde030c37 feat(rnd): Reduce container size remove dep with forge and autogpt (#8040)
* Remove forge and autogpt

* update lock files

* Update build process to reduce image size

* Reduced built image size

* fixed docker compose watch

* Updated logging

* updated env.example

* formatting

* linting issue

* linting not working in github actions..

* trying to get around github action linting issue

* updated version

* sleep for prisma issues

* add exp backoff on connection issues

* updated config based on review comments

* Sorting alphabetical

* updated default config

* updated depends checks

* fixed missing prisma binaries

* remove dead layer

* remove try

* remove dead layer
2024-09-12 13:03:37 +02:00
Aarushi
bf1e01d423 tweak(rnd) Add prefix in logs (#8001)
* add prefix

* fix typos

* fix conflicts
2024-09-12 11:48:47 +01:00
Zamil Majdy
52c731abd6 fix(rnd): Fix decorator function type hint (#8043) 2024-09-12 05:35:33 +07:00
Aarushi
c8fbce643e fix(rnd): Add connection timeout (#8041)
add connection timeout
2024-09-11 18:32:07 +01:00
Swifty
6c001bd595 Create Input Node Custom UI Node (#8016) 2024-09-11 14:14:03 +02:00
Aarushi
f5b89672f8 feat(rnd): Add k8s default health check (#8037)
add k8s default health check
2024-09-11 12:30:34 +01:00
Aarushi
76480ffa03 fix(rnd): Update port in market (#8036)
update port
2024-09-11 12:19:11 +01:00
Aarushi
ab60a57379 tweak(rnd): Ignore .env in market (#8035)
ignore .env
2024-09-11 11:01:34 +01:00
Aarushi
1d9b01fc77 tweak(rnd): Use docker compose not docker-compose (#8034)
* use docker compose not docker-compose

* linting
2024-09-11 10:20:31 +01:00
Swifty
e81d9f9f0b docker nits (#8033) 2024-09-11 10:31:12 +02:00
Bentlybro
0d5d0270ea Merge branch 'master' of https://github.com/Significant-Gravitas/AutoGPT 2024-09-10 18:24:53 +01:00
SwiftyOS
bd25f9223c expose schedular port and fix marketplace port 2024-09-10 17:09:39 +02:00
SwiftyOS
07305b55ff fix(rnd) use migrate deploy 2024-09-10 16:18:42 +02:00
SwiftyOS
cdfe3e5fbc Updated rnd/README.md 2024-09-10 16:16:16 +02:00
Swifty
e992cdf8c2 Fixing docker setup for local testing (#8026)
* Fixing docker setup

* Updated docker compose setup

* update helm charts

* Corrected agent server host name
2024-09-10 15:46:22 +02:00
Aarushi
ebd2ecd84c docs(server): Update docs (#8031)
update docs
2024-09-10 10:24:54 +01:00
Aarushi
0b919522ae feat(rnd): Split Execution Manager (#8008)
* split execution manager and removed ns and use direct uri with k8s and docker specific dns

* formating

* split execution manager

* refactor(builder): Fix linting warning and errors (#8021)

* Fix lint errors

* Fix dependency loop

* address feedback

* docker compose

* remove ns entirely

* remove yarn lock changes

* update readme

* remove ref

* dockerfile and log

* update log

* debug

* rename to executor

* remove execution from rest

* exec.py

* linting

* udpate tests to use config

* fix test

---------

Co-authored-by: Krzysztof Czerwinski <34861343+kcze@users.noreply.github.com>
2024-09-10 10:05:31 +01:00
Nicholas Tindle
ef691359b7 feat: document the use of isolation better (#8028) 2024-09-09 20:55:05 +00:00
Aarushi
f8815c3053 fix(builder): Use escaped apostrophe (#8027)
* use escaped apostrophe

* linter
2024-09-09 18:08:32 +00:00
Reinier van der Leer
a60ed21404 feat(server): Add OAuth flow endpoints for integrations (#7872)
- feat(server): Initial draft of OAuth init and exchange endpoints
  - Add `supabase` dependency
  - Add Supabase credentials to `Secrets`
  - Add `get_supabase` utility to `.server.utils`
  - Add `.server.integrations` API segment with initial implementations for OAuth init and exchange endpoints
- Move integration OAuth handlers to `autogpt_server.integrations.oauth`
- Change constructor of `SupabaseIntegrationCredentialsStore` to take a Supabase client
- Fix type issues in `GoogleOAuthHandler`
2024-09-09 17:21:56 +02:00
Krzysztof Czerwinski
2618d1d87c refactor(builder): Fix linting warning and errors (#8021)
* Fix lint errors

* Fix dependency loop
2024-09-09 09:54:36 +02:00
Andy Hooker
e17ea22a0a feat(builder): Aligning error and loading for NextJS best practices (#7894)
* feat(builder): Add skeleton loading components for Monitor views

Introduce skeleton components for Agents, Flow Runs List, and Flow Runs Status sections to enhance loading state indication. These components help improve user experience by visually outlining content placeholders while data is being fetched.

* feat(builder): Leveraging NextJS's error boundary with error.tsx

Replace the basic error page with a more detailed and interactive error component. The new component includes a retry option, a link to the homepage, and logs the error details to the console. It also aligns with NextJS standards

---------
2024-09-08 12:47:36 +02:00
Nicholas Tindle
60669903a0 fix: couple block categories improved (#8017) 2024-09-06 22:47:40 -05:00
Zamil Majdy
b1b31390a4 feat(rnd): Add creation & update time for AgentGraphExecutionSchedule, AgentGraphExecution, and AgentGraph (#8015) 2024-09-06 21:29:53 +00:00
Nicholas Tindle
3c12a398ae feat: marketplace analytics (#7998) 2024-09-06 19:22:24 +00:00
Aarushi
126d070396 tweak(rnd,redis) Make redis logging more clear (#8014)
make redis logging more clear
2024-09-06 15:23:33 +00:00
Reinier van der Leer
090f22b05c fix(server): Improve logging consistency (#8012)
- Make process/service startup/shutdown messages consistent
- Configure `uvicorn` to use our logging config instead of its own
- Replace `print(..)` statements in ws_api.py with log statements
- Improve log statements in ws_api.py
2024-09-06 17:05:30 +02:00
Reinier van der Leer
1b9adf5434 fix(server): Always JSON-encode AgentNodeExecutionInputOutput data (#8010)
- Handle JSON-encoding inside `.data.execution.upsert_execution_output(..)` to ensure it is always encoded the same
- Amend `.executor.manager.execute_node(..)` to pass unencoded data into `upsert_execution_output(..)`
2024-09-06 16:58:04 +02:00
Reinier van der Leer
3bd8040d6a feat(server): Clean up resources when spinning down services/processes (#7938)
- Add SIGTERM handler and `cleanup()` hook to `AppProcess`
- Implement `cleanup()` on `AppService` to close DB and Redis connections
- Implement `cleanup()` on `ExecutionManager` to shut down worker pool
- Add `atexit` and SIGTERM handlers to node executor to close DB connection and shut down node workers
- Improve logging in `.executor.manager`
- Fix shutdown order of `.util.test:SpinTestServer`
2024-09-06 16:50:59 +02:00
Aarushi
b12dba13f4 docs(readme) Update readme to include non docker steps (#8013)
update readme
2024-09-06 15:33:17 +01:00
Swifty
2cae9ba8da feat(server): Updated Output block (#7997)
* Add Block UI Types and StickyNote Block

* Renamed StickyNote to Note

* Add comment

* Updated Input Block

* rename default_values to placeholder_values

* Update sample graph

* Update input block output to match previous change

* fixing test

* Updated the output block

* re-remove old output block
2024-09-06 15:56:41 +02:00
Swifty
3753906482 feat(builder): Block UI Types and StickyNote (#7994)
* Add Block UI Types and StickyNote Block

* Renamed StickyNote to Note

* Add comment
2024-09-06 15:52:03 +02:00
Swifty
fd54ad8666 update(server): update input nodes (#7996)
* Add Block UI Types and StickyNote Block

* Updated Input Block
2024-09-06 13:27:37 +01:00
Zamil Majdy
e645cc4b33 tweak(rnd): Remove duplicated call 2024-09-05 17:20:55 -05:00
Zamil Majdy
010a8ffaaf tweak(rnd): Stop publishing custom Sentry metrics (#8000) 2024-09-05 21:51:00 +00:00
Zamil Majdy
2df325d033 fix(rnd): Fix prisma connection acquisition intermittent error on linux (#7999) 2024-09-06 03:22:25 +07:00
Nicholas Tindle
79ebc4c13b feat(builder): promotion/demotion of featured agents (#7932) 2024-09-05 20:04:11 +00:00
Zamil Majdy
e5eb42d84a tweak(rnd): Post infra change cleanup - fix process creation lifecycle (#7981) 2024-09-06 01:41:24 +07:00
Bently
d62b940baf Feat(Monitor/Builder): Fix loading of "Import from file" modal (#7976)
* Feat(Monitor/Builder): Fix loading of "Import from file" modal

* prettier

* prettier - forgot page.tsx
2024-09-05 15:02:48 +00:00
Reinier van der Leer
8fd22bcfd7 feat(server, builder): Implement "STOP" button for graph runs (#7892)
- feat(builder): Add "Stop Run" buttons to monitor and builder
  - Implement additional state management in `useAgentGraph` hook
    - Add "stop" request mechanism
    - Implement execution status tracking using WebSockets
    - Add `isSaving`, `isRunning`, `isStopping` outputs
    - Add `requestStopRun` method
      - Rename `requestSaveRun` to `requestSaveAndRun` for clarity
  - Add needed functionality for the above to `AutoGPTServerAPI` client
    - Add `stopGraphExecution` method
    - Add support for multiple handlers per WebSocket method
    - Fix parsing of timestamps in `execution_event` WebSocket messages
  - Add `IconSquare` from Lucide to `@/components/ui/icons`

- feat(server): Add `POST /graphs/{graph_id}/executions/{graph_exec_id}/stop` route
  - Add `stop_graph_run` method to `AgentServer`

- feat(server): Add `cancel_execution` method to `ExecutionManager`
  - Replace node executor `ProcessPoolExecutor` by `multiprocessing.Pool` (which has a `terminate()` method)
    - Remove now unnecessary `Executor.wait_future(..)` method
  - Add `get_graph_execution(..)` in `.data.execution`

- fix(server): Reduce number of node executors to 5 per graph executor
  This is necessary because `multiprocessing.Pool` spawns its workers on init, instead of based on demand like `ProcessPoolExecutor` does

- dx(server): Improve debug logging in `ExecutionManager`
- ci(server): Add debug logging mode to CI Pytest step

### Other improvements
Server:
- Improve output type of `ExecutionManager.add_execution(..)`
- Renamed a few things in `.server.rest_api` for consistency

Front end:
- Improved typing in `AutoGPTServerAPI` client
2024-09-05 14:42:28 +02:00
Bently
11827835a0 Feat(Builder): Add tooltips to Blocks and Save buttons (#7975) 2024-09-05 12:04:29 +00:00
Zamil Majdy
70fab8711a fix(rnd): avoid duplicating name on input/output pin for blocks (#7979) 2024-09-05 10:54:02 +00:00
Swifty
8ec015ba72 fix(builder): update tutorial routing to work on safari (#7992) 2024-09-05 10:27:15 +00:00
SwiftyOS
bc7d2f0f37 added test password as default for redis queue 2024-09-05 11:41:53 +02:00
Zamil Majdy
54694709bb tweak(rnd): Hide non required field on Blocks (#7977)
Add prompt_values for LLM block, and make it non-advanced.
Make all-field, advanced by default.
cleanup .env.example and .env.template
2024-09-05 05:00:14 +07:00
Zamil Majdy
b4b5a09b6b fix(rnd): Dockerfile Avoid full rebuild on each file change (#7971)
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-09-04 17:30:13 +00:00
Reinier van der Leer
82239dd129 fix(server): Fix node input concurrency deadlock (#7936)
In `autogpt_server.util.lock:KeyedMutex`:
- track number of pending requests for each lock
- only remove a lock from `self.locks` when the number of pending lock requests hits 0
2024-09-04 18:13:35 +02:00
Aarushi
078ad29356 update docker compose (#7972) 2024-09-04 16:19:41 +01:00
Aarushi
5000aa7ee0 tweak(rnd,docker) Remove SQLite (#7966)
* move migrations, update networking and dockignore

* update docs

* remove sqlite from ci

* remove schema linting checks

* fix formatting

* remove schema linting

* add test script

* formatting and linting

* stop pg not down

* seperate test db

* diff port

* remove duplicate
2024-09-04 10:18:57 +01:00
Bently
dc1077f893 Feat(Builder): Replace `Math Block with Calculator Block` (#7969) 2024-09-04 08:12:01 +00:00
Swifty
80df44a978 feat(server): Add endpoint to calculate required graph inputs (#7965) 2024-09-04 09:45:45 +02:00
Zamil Majdy
c2a79d2f10 feat(rnd): Add Node & Graph level execution stats instrumentation (#7957)
### **User description**
### Background

The scope of this change is collecting the required information that will be needed for the execution analytics.

### Changes 🏗️

* Add sentry integration.
* Refactor logging_metadata on manager.py.
* Collect graph-level & node-level instrumentation.
* Introduced `stats` column for `AgentNodeExecution` & `AgentGraphExecution`.
2024-09-04 02:45:19 +07:00
Bently
7db85a8990 Feat(Builder): Update tutorial to work with latest block UI (#7962)
* Feat(Builder): Update tutorial to work with latest block UI

* prettier
2024-09-03 14:56:55 +00:00
Krzysztof Czerwinski
0454a9a7be fix(builder): Prevent zooming on input field modal
- Add `nowheel` class to Textarea parent div
2024-09-03 14:30:35 +02:00
Krzysztof Czerwinski
09951fed4b feat(builder, server): Add advanced block inputs (#7934)
- Add `advanced` to `SchemaField` and pass it to `json_extra`
- Add `advanced` to `BlockIOSubSchemaMeta` type
- Update `CustomNode`, so that:
  - non-required advanced inputs are hidden
  - non-advanced and required inputs are always shown
2024-09-03 12:01:42 +01:00
Aarushi
6204d82d84 feat(server): Integrate forge.logging (#7915)
* feat(server): Integrate `forge.logging`

- Add `configure_logging()` in `.util.logging` - a wrapper for `forge.logging.configure_logging()` with project-specific extras
- Call `configure_logging()` in `.app.main()`, and in child process initializers (e.g. `AppProcess.execute_run_command(..)`, `ExecutorManager.on_graph_executor_start()`)
- Change some `logger.warning` statements to `logger.info` where appropriate

* fix warnings to info

* fix(rnd): Fix broken test and Input/Output block field renaming

* Rename

* fix(rnd): Fix flaky CI

* feat(server): Add OAuth handlers for GitHub, Notion, Google & amend store data structure (#7868)

- Add `BaseOAuthHandler` + 3 initial implementations
  - Add `GitHubOAuthHandler`
  - Add `NotionOAuthHandler`
  - Add `GoogleOAuthHandler`
- Amend `OAuth2Credentials` type
  - Add `metadata` attribute
  - Make `access_token_expires_at`, `refresh_token`, `refresh_token_expires_at` optional

* extend GCP Logger

* update manager & add flag

* linting

* use default logger behaviour

* update messages

* update another message

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-09-03 11:56:21 +01:00
Krzysztof Czerwinski
8c9fe5c167 feat(builder): Resizable input modal (#7955)
- Add minimize/maximize button in the corner of modal to make it significantly larger and centered
- Add copy button to copy all text
- Add optional `title` to display as a modal header
2024-09-03 11:42:25 +01:00
Reinier van der Leer
71de1a6a5e fix(server): Fix type checking and propagation issues (#7941)
- fix type propagation by `AppService.run_and_wait(..)`
- fix type propagation by `@expose` and add note
- fix type propagation by `wait(..)` in `.executor.manager.execute_node(..)`
- fix type propagation by `wait(..)` in `.executor.manager._enqueue_next_nodes(..)`
- remove unnecessary null checks for `.data.graph.get_node(..)`
- fix type issue in `ExecutionScheduler`
- reduce use of `# type: ignore` in `.data.execution`
- reduce usage of `# type: ignore` in `.executor.manager`
- reduce usage of `# type: ignore` in `.server`
- reduce usage of `# type: ignore` in cli.py
- update `pyright` to v1.1.378
2024-09-02 14:13:56 +00:00
Bently
956165adf3 Feat(Builder): Fix block menu width (#7946) 2024-09-02 09:54:52 +00:00
Aarushi
e4dc16a867 docs(server): Update docs with new docker compose steps (#7944)
* update setup

* add docker links
2024-09-02 10:55:54 +02:00
Aarushi
cfa0b6610c feat(rnd,infra): Pull out websockets away from server api (#7899)
* standalone websocket server

* add websocket url

* wip: talk to ws directly

* rename to api server

* dockerfile and queue

* fix paths

* update poetry lock

* helm charts for websockets

* create seperate deployments for websockets and rest server with redis queue for async comms

* delete duplicate queue

* add depends in ws_api

* singleton for conn manager

* update from review

* fix CI

* address feedback

* update readme

* update docker file and add migration step in readm

* ad watch

* add step to copy example env file

* put connect back in
2024-09-02 10:32:51 +02:00
Krzysztof Czerwinski
933baa0e8d feat(builder): Store and display output data history in nodes (#7930)
- Update styling and use tailwind more
- Add `react-toast` dependency
- Fix output button not changing checked state on execution
- Make status a badge in node's corner
- Rename `output_data` to `executionResults` and store multiple results with execution UUIDs
- Add `DataTable` component that displays execution outputs
- Outputs can be copied and there's a toast displayed as a feedback
2024-09-01 11:18:57 +01:00
Bently
370b2dabe8 Feat(Builder): Add block categories to block menu (#7918) 2024-08-31 19:22:37 +00:00
Nicholas Tindle
baa00a5b03 feat(builder,server): add review of agent submissions to the admin portal (#7914)
Co-authored-by: Aarushi <aarushik93@gmail.com>
2024-08-30 18:20:59 +00:00
Zamil Majdy
60a8e00578 fix(rnd): Fix overflowing card due to long block name (#7931) 2024-08-30 18:02:55 +00:00
Bently
85e7d678ce Feat(Builder): Fix Multiple Connections Between Pins (#7924) 2024-08-30 18:15:18 +01:00
Krzysztof Czerwinski
476b307d69 feat(builder): Draw selected edges above nodes (#7893) 2024-08-30 16:39:22 +01:00
Bently
5dbfb4e3f1 feat(builder): Turn block border red on error (#7910)
* Turn block border red on error

* prettier
2024-08-30 15:09:19 +00:00
Zamil Majdy
f6d09c74f5 feat(rnd): Rename Blocks (#7925)
### Background

Standardize block names with a focus of making them intuitive to a non-technical person.

### Changes 🏗️

Replace these names:
* TextLlmCallBlock -> AITextGeneratorBlock
* ObjectLlmCallBlock -> AIStructuredResponseBlock
* AdvancedLlmCallBlock -> AIConversationBlock
* CreateTalkingAvatarClipBlock -> CreateTalkingAvatarVideoBlock
* DiscordReaderBlock -> ReadDiscordMessagesBlock
* DiscordMessageSenderBlock -> SendDiscordMessageBlock
* YouTubeTranscriberBlock -> TranscribeYouTubeVideoBlock
* CreateMediumPostBlock -> PublishToMediumBlock
* ForEachBlock -> ListIteratorBlock
* MathsBlock -> CalculatorBlock
* CounterBlock -> CountItemsBlock
* ValueBlock -> StoreValueBlock
* PrintingBlock -> PrintToConsoleBlock
* DictionaryAddEntryBlock -> AddToDictionaryBlock
* ListAddEntryBlock -> AddToListBlock
* ObjectLookupBlock -> FindInDictionaryBlock
* RedditGetPostsBlock -> GetRedditPostsBlock
* RedditPostCommentBlock -> PostRedditCommentBlock
* WikipediaSummaryBlock -> GetWikipediaSummaryBlock
* WebSearchBlock -> SearchTheWebBlock
* WebScraperBlock -> ExtractWebsiteContentBlock
* GetOpenWeatherMapBlock -> GetWeatherInformationBlock
* HttpRequestBlock -> SendWebRequestBlock
* CurrentTimeBlock -> GetCurrentTimeBlock
* CurrentDateBlock -> GetCurrentDateBlock
* CurrentDateAndTimeBlock -> GetCurrentDateAndTimeBlock
* TimerBlock -> CountdownTimerBlock
* RSSReaderBlock -> ReadRSSFeedBlock
* TextMatcherBlock -> MatchTextPatternBlock
* TextParserBlock -> ExtractTextInformationBlock
* TextFormatterBlock -> FillTextTemplateBlock
* TextCombinerBlock -> CombineTextsBlock
2024-08-30 21:36:42 +07:00
Zamil Majdy
6d17e627e8 fix(rnd): Add null checking & remove console logs on Input UI component (#7927)
fix(rnd): And null checking & remove logs
2024-08-30 12:21:09 +00:00
Bently
5cfa807f00 Feat(Builder): Make the copy block button work (#7920)
* Feat(Builder): Make the copy block button work

* prettier

* Fixes

* fix block id

* prettier

* fix type
2024-08-30 11:48:33 +00:00
Bently
6fff06f0f6 Feat(Builder): Fix delete block is non-undoable (#7922)
* Feat(Builder): Fix delete block is non-undoable

* prettier
2024-08-30 08:05:37 +00:00
Aarushi
cbe553a547 feat(infra): Add deployment for Market (#7907)
* deployment for marketplace

* set up deployment for marketplace
update nodes

update helm

* update health check & allow builder origin
2024-08-29 18:23:40 +00:00
Reinier van der Leer
96ef35536c ci(server): Run tests even if linting fails 2024-08-29 15:42:49 +02:00
Reinier van der Leer
087d3a3760 test(server): Add type to server fixture usages 2024-08-29 15:42:15 +02:00
Zamil Majdy
5da58aa284 fix(rnd): Fix jumping caret problem on builder input text field (#7917)
Issue 1:
Input text field cursor keeps moving to the end of the text.
Try to type "Hello World!" into the input text. Then try to type "some string" in the middle of the "Hello" and "World".

Issue 2:
History should only tracks on the input box onBlur/onLeave
Try to type a "longcharacters" and try to undo it, the undo is removing 1 character at a time, polluting the history, and make the undo pretty much unusable.

Issue 3:
KeyValue & ArrayInput is non-undoable.
Try to add key-value or add an entry to the list, it doesn't undo the value, but you need to click as many number of entries being added to make the undo work again
2024-08-29 13:12:10 +00:00
Bently
7de12a2200 Feat(Builder): Add first guide tutorial (#7862)
* Feat(Builder): Add first guide tutorial

* added more steps + some fixes

* added local storage to fix starting every time going to build

* update copy & paste to support mac

* small fix

* Prettier fixes

* Added "Skip Tutorial" button to first step

* some fixes based on requests

* revert camelCase change

* add ability to use url to reset tutorial

* prettier

* Added Tutorial button next to tally

* prettier

* change pinBlocksPopover to setPinBlocksPopover

* fixes + update + prettier

* made the resetTutorial url dynamic

* force to /build on reset tutorial

* fix renaming

* prettier
2024-08-29 07:53:45 -05:00
Reinier van der Leer
8f1c63a7ea feat(server): Add OAuth handlers for GitHub, Notion, Google & amend store data structure (#7868)
- Add `BaseOAuthHandler` + 3 initial implementations
  - Add `GitHubOAuthHandler`
  - Add `NotionOAuthHandler`
  - Add `GoogleOAuthHandler`
- Amend `OAuth2Credentials` type
  - Add `metadata` attribute
  - Make `access_token_expires_at`, `refresh_token`, `refresh_token_expires_at` optional
2024-08-29 09:11:37 +00:00
Zamil Majdy
6ec200f912 fix(rnd): Fix flaky CI 2024-08-28 15:59:51 -05:00
Zamil Majdy
b5db7f575e Rename 2024-08-28 15:56:02 -05:00
Zamil Majdy
98c909f99f fix(rnd): Fix broken test and Input/Output block field renaming 2024-08-28 15:54:48 -05:00
Krzysztof Czerwinski
c5615aa862 fix(builder): Prevent overflow in node output (#7912) 2024-08-28 16:27:42 +01:00
Bently
e725305e15 fix(builder): Set default value in NodeStringInput to silence uncontrolled input warning (#7909)
add default value to fix bug
2024-08-28 12:44:06 +01:00
Aarushi
9551f54c35 feat(infra): Add websockets IP (#7905)
tf changes from original branch to unblock other work
2024-08-27 20:35:31 +01:00
Bently
777f7d25bf Fix copy-paste of text creating unintended blocks (#7903) 2024-08-27 11:49:35 +01:00
Zamil Majdy
ea6f37bf98 feat(rnd): Integrate Jinja2 into TextFormatter (#7891)
Add Jinja2 to TextFormatter while maintaining backward compatibility.
2024-08-27 07:17:57 +00:00
Krzysztof Czerwinski
299530cf95 refactor(builder): Update ReactFlow to version 12 & split up Flow.tsx (#7808)
Update ReactFlow to version 12 and split `Flow.tsx` into `useAgentGraph` hook that takes care of agent state and API calls to the server.

- Update ReactFlow to v12 ([migration guide](https://reactflow.dev/learn/troubleshooting/migrate-to-v12))
- Move `setIsAnyModalOpen` to `FlowContext`
- Make `setHardcodedValues` and `setErrors` functions of `CustomNode` and utilize new `updateNodeData` ReactFlow API
- Fix type errors
- `useAgentGraph` hook
  - Take care of all API calls, websocket, agent state and logic
  - Make saving and execution async and thus more consistent and reliable
	- Save&run requests are state
	- Wait for node ids to sync with backend reactively
	- Queue execution updates
  - Memoize functions using `useCallback`
2024-08-26 11:45:05 +01:00
Nicholas Tindle
1df7d527dd Remove debug (#7890) 2024-08-25 17:59:41 +00:00
Aarushi
407cf858e7 fix(server): Ensure nameserver is started before other processes (#7788)
ensure nameserver is started before other processes
2024-08-24 20:54:11 +00:00
Aarushi
a670b384f6 tweak(infra): Add 1 more node to GKE (#7889)
add one more node
2024-08-24 18:53:24 +01:00
Zamil Majdy
f9b8b0a41a feat(rnd): Add dynamic input pin for input object construction (#7871)
### Background

Currently, there is no way to construct the output of nodes into a composite data structure (list/dict/object) using the builder UI.

The backend already supports this feature by connecting the output pin to the input pin using these format:
* <pin_name>_$_<list_index> for constructing list
* <pin_name>_#_<dict_key> for constructing dict
* <pin_name>_@_<field_name> for constructing object

The scope of this PR is implementing the UX for this in the builder UI.

### Changes 🏗️

<img width="765" alt="image" src="https://github.com/user-attachments/assets/8fc319a4-1350-410f-98cf-24f2aa2bc34b">

This allows you to add more pins in a key value & list input: `_$_` list constructor & `_#_` dict constructor.
2024-08-23 18:21:38 +00:00
Zamil Majdy
e59e138352 fix(rnd): Prevent boolean with no default value on AGPT-builder (#7884)
### Background

Boolean without default value is a UX problem. It's currently displayed as a toggle and it has no way to describe the `null` value.
So we need to prevent blocks from introducing a nullable boolean.

### Changes 🏗️

Add explicit check to prevent nullable boolean. Fix existing block field that has nullable boolean.
2024-08-23 18:03:21 +00:00
Aarushi
a95ee693dd fix(rnd): Add missing libs folder (#7887)
add missing libs folder
2024-08-23 16:42:24 +00:00
Aarushi
26f56114d1 feat(infra): Add ws server infra changes (#7886)
add ws server infra changes
2024-08-23 11:25:57 -05:00
Aarushi
45ace8ccab Add number of workers to environment variables in in charts (#7869)
add workers to env vars
2024-08-23 20:21:51 +07:00
Aarushi
95af63b5ad feat(libs): Add integration credentials store (#7826)
- Add `SupabaseIntegrationCredentialsStore` in `.supabase_integration_credentials_store`
- Add `supabase` dependency
- Add `pydantic` dependency

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-08-23 12:39:26 +02:00
Aarushi
012bad72e8 feat(rnd,blocks): Add D-ID Block (#7798)
* talking head

* linting

* remove clip id, not needed

* add more descriptive name

* add min requirement to polling attempts and intervals

* add docs and link to docs

* remove extra space

* force new tab

* fix linting

* add did key to .env.template
2024-08-23 09:39:55 +01:00
Nicholas Tindle
efcd0f93ed ci(all): take two on the global status checker (#7849)
* ci(all): fundamentally change how we do this

* Update workflow-checker.yml

* ci: dupe and move file in attempt to figure out why its not accessible

* Update workflow-checker.yml

* fix: sleep before checking, move files, improve code

* Update workflow-checker.yml

* Update check_actions_status.py

* Update check_actions_status.py

* Update workflow-checker.yml

* Update workflow-checker.yml

* ci: remove debug, add more

* Update check_actions_status.py

* Update check_actions_status.py

* Update check_actions_status.py

* Revert "Update check_actions_status.py"

This reverts commit 36134527af.

* Revert "Update check_actions_status.py"

This reverts commit 828aabf532.

* Update check_actions_status.py

* Update check_actions_status.py

* Update check_actions_status.py

* Update check_actions_status.py
2024-08-22 07:06:15 -05:00
Swifty
4c32b46d40 feat(builder): Add google analytics to the project (#7860) 2024-08-22 10:24:12 +01:00
Konstantinos Voulgaropoulos
41fbfe35fb tweak(rnd): Trim Whitespace from BlockSecret to Prevent Authentication Issues (#7789)
* ensure secret value of BlockSecret is always trimmed

* avoid logging secret values when trimming
2024-08-21 14:44:26 -05:00
Zamil Majdy
c719e4f177 fix(rnd): Fix JS event-loop freeze caused by websocket connection retry (#7861)
### Background

Websocket connection retry has no backoff period which causes event-loop freeze.

### Changes 🏗️

Add a back-off period on retry.
2024-08-21 21:41:15 +07:00
Zamil Majdy
3d62cec553 fix(rnd): Guarantee execution ordering per node by waiting the node completion (#7855)
### Background

We don't have an ordering guarantee on the node execution.
Let's say we have a node that has to execute different data A, B, and C.
The current implementation limits the execution to 1 execution at a time, but there is no guarantee that A, B, and C will be executed in order.

The initial implementation did not have any restrictions, so it used to be A, B, and C executed in parallel
In the current implementation with the per-node constraint, it's A, B, C are executed serially but with no guarantee of ordering.

The scope of this PR is to guarantee that order.

### Changes 🏗️

Guaranteeing the execution per node ordering by avoiding any re-enqueue mechanism. If there are two executions run in the same node, the first one will be executed and the other will block. The blocking mechanism is indeed sub-optimal, the performance improvement can be done later (a follow-up issue will be added).
2024-08-21 19:08:18 +07:00
Aarushi
fa12564954 bug(infra): Add frontend config to ingres (#7854)
add frontend config to ingres
2024-08-21 11:31:16 +01:00
Nicholas Tindle
f6d8e597e1 clean(builder): learned we should be using this to keep our tailwind classes sorted (#7836) 2024-08-21 05:14:21 -05:00
Krzysztof Czerwinski
a1cbc101a5 fix(builder): Correctly display static links on new edges (#7851)
Fix static links on edge creation
2024-08-21 10:24:01 +01:00
Aarushi
afc8338145 feat(infra) Create builder account with necessary permissions (#7840)
* create builder account with necessary permissions

* remove unrelated changes
2024-08-21 10:18:51 +01:00
Aarushi
7fe4e455fd feat(infra): Ensure http is always redirected to HTTPS (#7853)
redirect to https always
2024-08-21 10:01:06 +01:00
Bently
52d40d0f8b Feat(Builder): Make blocks spawn in the center of the screen not at 0,0 (#7805)
Feat(Builder): Make nodes spawn in the center of the screen not at 0,0
2024-08-20 15:05:12 +01:00
Aarushi
9e35f8c5cb tweak(infra): Rename builder for consistency (#7837)
rename builder for consistency
2024-08-20 13:37:40 +01:00
Nicholas Tindle
c0afb133a7 feat(builder): checkbox for tos on login page and submit agent (#7745)
* feat(builder): checkbox for tos on login page

* feat(builder): submit agent page

DOES NOT WORK

* feat(builder): basic upload (not working)

* feat(builder): submit page more working but still not

* fix(builder): working categories, not dynamic

* feat(builder, server): enable submissions (auth error)

* fix(lint): linting

* feat(builder): submit page terms of service

* fix(builder): update lockfile

* lint(builder): lint marketplace files
2024-08-20 07:04:22 -05:00
Zamil Majdy
526364297c feat(rnd): Add staticOutput field on block API (#7802) 2024-08-16 22:13:10 +07:00
Krzysztof Czerwinski
aed067e61c feat(builder): Support static connections (#7799)
- Add static link/connection support on the frontend and display them as dashed lines
- Remove queueing for static connections - there'll always be only one bead waiting at the end
- Make beads slightly larger and further from the end arrow
2024-08-16 13:39:48 +01:00
Zamil Majdy
653eb4964f fix(rnd): Fix graph validation error message (#7797) 2024-08-16 17:10:11 +07:00
SwiftyOS
406206f5d0 Add categories to all the blocks 2024-08-16 10:11:30 +02:00
SwiftyOS
1e05d6a8e9 added categories 2024-08-16 10:10:18 +02:00
Krzysztof Czerwinski
848637bfeb feat(builder): Visualise data beads on connections (#7791)
* Visualise data beads on edges

* Add `useBezierPath` hook

* Fix edge color on load

* Updates

* Merge branch 'master' into kpczerwinski/open-1580-visualise-data-coming-down-connections

* Add `visualizeBeads` state in `FlowEditor`

* Add `FlowContext`

Allow disabling beads animation

* fix(builder): linting

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-08-14 13:29:19 -05:00
Swifty
cea81bfe4e feat(builder): Updated Block Categories and colouring (#7794)
* Updated Block Categories

* formatting

* Added category coloring
2024-08-14 11:06:01 +02:00
Zamil Majdy
1e92c284d9 fix(rnd): Fix text blocks, make outbound links on ValueBlock static (#7796) 2024-08-14 10:03:43 +01:00
Swifty
98c1cb8ff9 feat(builder): Added tooltips for blocks (#7793) 2024-08-14 10:41:01 +02:00
Zamil Majdy
58dc8296db fix(rnd): Fix unparsed string on HTTP block (#7795) 2024-08-14 06:19:46 +02:00
Zamil Majdy
4782f4383c fix(rnd): string to list auto-conversion 2024-08-13 18:08:24 +02:00
Zamil Majdy
2b60a392fb fix(rnd): Fix broken test 2024-08-13 17:51:59 +02:00
Konstantinos Voulgaropoulos
f30b2cdf25 inclusion of poetry run prisma generate in the documentation (#7790) 2024-08-13 10:46:28 -05:00
Zamil Majdy
9084c31662 fix(rnd): Make discord bot continuously running (#7792) 2024-08-13 10:39:39 -05:00
SwiftyOS
183c72b2d0 fix typo 2024-08-13 15:07:57 +02:00
Swifty
55e100ee1e tweak(builder) Changes to transparency, connector color and title boldness (#7766)
Changes to transparency, connector color and title boldness
2024-08-13 15:07:07 +02:00
Toran Bruce Richards
82c5cd2d79 Add Advanced Chatbot with History using Discord (#7786)
* Add Advanced Chatbot with History using Discord

* Update Discord Chatbot with History_v145.json

update is_active to false and is_template to true

---------

Co-authored-by: Bently <tomnoon9@gmail.com>
2024-08-13 09:03:14 +01:00
Aarushi
f0ab795248 fix(builder,server) Add missing create user calls (#7784)
* fix missing create user calls

* formating and linting
2024-08-09 16:49:21 +01:00
Zamil Majdy
5b9caa4345 fix(rnd): Added run-time implicit type conversion on agent node execution (#7775)
The execution graph is supposed to be typed, but there are cases where generic types like Any were used, and there are cases, where incompatible data passed into the wrong type. 

If such a thing happens on runtime, we should do the best-effort conversion instead of breaking the run. E.g.: try to json-stringify the object to str input, or try to parse number in the string to int input, etc.
2024-08-09 20:38:33 +07:00
Bently
1e054064f6 Feat(Builder): Allow for zooming out more on builder UI (#7760)
add min and max zoom
2024-08-09 07:43:06 -05:00
Aarushi
646d98470f fix(builder): Temporarily disbale TS checks (#7777)
* disable ts checks temporarily

* prettier
2024-08-09 09:59:39 +01:00
Reinier van der Leer
5a68be5419 refactor(server, builder): Remove unused/duplicate WebSocket endpoints (#7740)
* Remove WS API method `runGraph` in favor of REST method `executeGraph`

* Remove unused WebSocket methods from `autogpt_server.server`
2024-08-08 17:01:37 +02:00
Reinier van der Leer
2ff8a0743a fix(server): Make userId required on DB entities and apply default ID to existing entries (#7755)
* Make `userId` required on DB entities `AgentGraph`, `AgentGraphExecution`, and `AgentGraphExecutionSchedule`

* Add SQLite and Postgres migrations to make `userId` required and set `userId` to `3e53486c-cf57-477e-ba2a-cb02dc828e1a` on existing entries without `userId`

* Amend `create_graph` endpoint and `.data.graph`, `.data.execution` methods to handle required `user_id`

* Add `.data.user.DEFAULT_USER_ID` constant to replace hardcoded literals
2024-08-08 16:57:59 +02:00
Reinier van der Leer
582571631e fix+refactor(builder): Sort out FlowEditor+ReactFlow state management (#7737)
* refactor(builder): Migrate `FlowEditor` to use ReactFlow's state management system

  We have been keeping two copies of node and edge data: one inside ReactFlow and one outside.
  It works, but it's accidental and implicit and there is no reason to be using shadow copies rather than a single data source.

  - Replace `useNodesState` and `useEdgesState` with `useReactFlow` hook
  - Use `addNodes`, `addEdges`, and `deleteElements` where appropriate instead of `setNodes`/`setEdges` to allow use of event hooks
  - Consolidate all edge -> node state sync logic into `onEdgesChange` event handler
    This replaces `updateNodesOnEdgeChange`, part of `onConnect`, and `onEdgesDelete`.
  - Move node deletion logic from `CustomNode` to `FlowEditor:onNodesChange`

* fix(builder): Refactor and fix copy-paste mechanism
  - Rename variables for readability
  - Use an ID map to correctly set the source and target IDs for the pasted edges
2024-08-08 16:18:15 +02:00
Reinier van der Leer
bf10df612e feat(builder): Move /monitor to / (#7769)
- Move `monitor/page.tsx` to `page.tsx`
- Remove redirect from `/` to `/build`
- Set temporary redirect from `/monitor` to `/` to prevent breaking UX (may be removed after a grace period, e.g. 2024-09-01)
2024-08-08 16:07:12 +02:00
SwiftyOS
c577d04692 Changed background to white and add an effect on it 2024-08-08 15:50:59 +02:00
Swifty
85d895ef77 tweak(builder): Node styling (#7763)
* wix width

* teak(builder): blocks control styling

* tweak node styling

* formatting
2024-08-08 13:16:38 +01:00
Swifty
deacc2bd8f tweak(builder) block control styling (#7762)
* wix width

* teak(builder): blocks control styling
2024-08-08 13:15:04 +01:00
Swifty
3eb0d73461 fix(builder): Fix the control panel being too narrow for its elements (#7758)
wix width
2024-08-08 13:38:40 +02:00
Swifty
be0f6498ed fix(builder): Added header background and moved some styling to tailwind (#7756)
Added header background and moved some styling to tailwind
2024-08-08 12:12:20 +01:00
Swifty
0bab2714e9 feat(market): Agent Submission Process (#7718)
* adding auth to store

* Add ability to submit agents and review them before being added to the market

* Added auth decorator

* Added auth to market api client

* fix(builder): Fix drag-select behavior on `NodeKeyValueInput`

* fix(github): Added in fallback variables for postgres testing (#7715)

Co-authored-by: Leslie Cruz <lelcruz@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>

* feat(builder): basic tally feedback form (#7725)

* removed database changes

* moved auth to libs project

* fixed formatting

* cleaned up auth

* Added tests and database migration

* delete decorator
2024-08-08 11:12:35 +02:00
Aarushi
9c74d76a3a fix(tests): Ensure user ID is not None on schedule in tests (#7749)
* ensure user id is never None on schedule

* remove comment
2024-08-08 11:11:57 +02:00
Bently
78e96f8a1a Feat(Builder): Add TimerBlock (#7728) 2024-08-08 09:59:06 +01:00
Bently
904b444b13 Feat(Builder): Add email sending block (#7736) 2024-08-08 10:57:39 +02:00
Andy Hooker
3cad0f89ee feat(builder): Standardize icons and integrate with ControlPanel and NavBar (#7743)
* feat(builder): Add new icons and integrate with ControlPanel

Introduce SVG icons and replace ControlPanel dependencies with new icons. The ControlPanel component now uses the new icon components for improved consistency.

* feat(builder): add additional icon and update icons in NavBar

Introduced the new icon with relevant documentation and examples. Replaced existing icon imports with the newly defined icons in the NavBar component for consistency.

* feat(builder): Add icon for megaphone and replace usage

Introduced the IconMegaphone for reuse across the application. Updated TallyPopup to utilize IconMegaphone instead of the previous Megaphone icon from lucide-react.

* fix(builder): Running prettier to format changed files.

Adjusted various files for consistent code formatting. Ensured proper spacing and alignment of imports, JSX tags, and object properties to enhance readability and maintain coding standards. No functional changes made.
2024-08-08 10:55:57 +02:00
lelcruz
8131fc385b fix(builder): Added option to pan view to center agents on build screen (#7742)
Co-authored-by: Leslie Cruz <lelcruz@users.noreply.github.com>
Co-authored-by: Bently <tomnoon9@gmail.com>
2024-08-08 10:54:37 +02:00
Reinier van der Leer
335fea8605 fix(builder): Always show connected optional pins on node (#7724)
- Always show connected optional pins on node
- Refactor `hasOptionalFields()` to a constant `hasOptionalFields`
2024-08-08 10:48:14 +02:00
Reinier van der Leer
55d32f0324 fix(builder): Automatically (re)connect websocket when sending message (#7739)
- Amend `AutoGPTServerAPI.sendWebSocketMessage(..)` to automatically (re)connect the websocket if disconnected
- Amend `AutoGPTServerAPI.connectWebSocket()` to prevent race conditions
2024-08-08 09:09:50 +01:00
Swifty
56ce7ac628 feat(market): Added Auth to Market and Protect routes (#7717)
* adding auth to store

* Added auth decorator

* Added auth to market api client

* removed database changes

* moved auth to libs project

* fixed formatting

* Switched to using fastapi dependencies

* Return a user object

* removed logging of the token

* Added tests
2024-08-08 09:28:44 +02:00
Zamil Majdy
81adf84032 fix(rnd): Fix flaky CurrentDateAndTimeBlock test (#7741)
### Background

CurrentDateAndTimeBlock would fail if the test is not complete within 1-second wall-time.
In the case a test started at the second 01:59:59, it becomes flaky.

We can change the test to only assert the type. But this is also a good chance to add more assertion options for Block: a custom function.

### Changes 🏗️

Change assertion for the time block using an additional margin of error.
2024-08-07 23:44:47 -05:00
Aarushi
f8d07a27af feat(builder): Add jwt support on websockets (#7734)
add jwt support on websockets
2024-08-07 14:47:35 +01:00
Aarushi
1bad26657c feat(rnd): Add user management (#7663)
* add user management support

* fixing tests

* fix formatting and linting

* default user, formatting & linting

* remove unused code

* remove default creation when auth enabled

* add client side calls

* addressing feedback

* prettier

* add defaults for websockets

* linting

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-08-07 14:15:29 +01:00
Nicholas Tindle
31dbb543a2 feat(builder): basic tally feedback form (#7725) 2024-08-07 09:14:18 +02:00
lelcruz
60d25135e6 fix(github): Added in fallback variables for postgres testing (#7715)
Co-authored-by: Leslie Cruz <lelcruz@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-08-06 15:09:02 -05:00
Reinier van der Leer
4678ed2e57 fix(builder): Fix drag-select behavior on NodeKeyValueInput 2024-08-06 20:53:22 +02:00
Nicholas Tindle
98a07f1265 Add new agent ideas to docs (#7716) 2024-08-06 13:45:28 -05:00
Bently
5e8ff5e3ed Feat(Builder): Add discord bot templates (#7711)
Add discord bot templates
2024-08-06 19:44:43 +01:00
Bently
89adcefd63 Feat(Builder): added time blocks (#7710)
* added time blocks

* lint & format
2024-08-06 13:43:43 -05:00
Reinier van der Leer
d82e577196 feat(builder): Rewrite & split up node inputs (#7722)
- feat(builder): Rewrite & split up `NodeInputField`
  - Create `NodeObjectInputTree`
  - Create `NodeGenericInputField`
  - Create `NodeKeyValueInput`
  - Create `NodeArrayInput`
  - Create `NodeStringInput`
  - Create `NodeNumberInput`
  - Create `NodeBooleanInput`
  - Create `NodeFallbackInput`
  - Create `ClickableInput` from `renderClickableInput(..)`
  - Amend usage in `CustomNode`
  - Remove deprecated/unused styling from `flow.css` and `customnode.css`
  - Fix alignment between `NodeHandle` and `NodeInputField`
  - Split up `BlockIOSchema` & rename to `BlockIOSubSchema`
    - Create `BlockIOObjectSubSchema`
    - Create `BlockIOKVSubSchema`
    - Create `BlockIOArraySubSchema`
    - Create `BlockIOStringSubSchema`
    - Create `BlockIONumberSubSchema`
    - Create `BlockIOBooleanSubSchema`
    - Create `BlockIONullSubSchema`
  - Install `Select` component from shad/cn

- refactor(builder): Replace boilerplate `button` styling with `Button` components

- refactor(builder): Move `NodeInputField.tsx` to `node-input-components.tsx`

---------

Co-authored-by: Krzysztof Czerwinski <kpczerwinski@gmail.com>
2024-08-06 20:32:49 +02:00
Andy Hooker
e6cc8687a5 feat(builder): Refactor components and types for monitoring page streamlining (#7714) 2024-08-05 21:13:08 -05:00
Aarushi
fbad0d01ee feat(rnd, infra): Add deployment for frontend (#7705)
* add helm charts

* dont check in secrets
2024-08-05 21:12:57 +01:00
Zamil Majdy
fe5c1968bc fix(rnd): Cleanup block names and add explicit block name check (#7709) 2024-08-05 17:58:03 +00:00
Swifty
951abf6d5b feat(rnd) Agent Marketplace MVP (#7657)
* Added listing, sorting, filtering and ordering of agents

* feat(market): general upkeep for vscode and small docs

* feat(market): most of search

* fix(market): hinting on the sort was weird + linting

* feat(market): migrations and schema updates

* lint(market): autolint

* feat(market): better search

* feat(market): file download

* feat(market): analytics of downloads

* Added tracking of views

* changed all imports to be fully qualified

* Upgrade sentry sdk

* Added an admin endpoint to submit new agents

* fixes

* Added endpoint that just tracks download

* Starting adding the marketplace page

* Marketplace client

* Create template of the marketplace page

* Updated client

* fix(market): debug port

* feat(market): agents by downloads

* fix(market, builder): hook up frontend and backend

* feat(builder, market): build a "better" market page that loads data

* feat(builder): updated search (working) and page (kinda working)

* feat(builder): add a feature agents ui (not backed yet)

* feat(builder): improve detail page content

* Added run script

* Added pre populate database command

* Add AnalyticsTracker on create agent

* Add download counts for top agents

* Add hb page prometheus metrics

* Added featured agents funcitonality

* renamed endpoint to health

* Adding download flow

* normalised api routes

* update readme

* feat(market) : default featured

* formatting

* revert changes to autogpt and forge

* Updated Readme

* Eerror when creating an agent from a template installed from (#7697)

fix creating graph from template

* Add dockerfile

* z level fix

* Updated env vars

* updated populate url

* formatting

* fixed linting error

* Set defaults

* Allow only next.js dev server

* fixed url

* removed graph reassignment as due to change in master

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-08-05 16:51:17 +02:00
SwiftyOS
9ae6389c6c fix(autogpt_server): Incorrect graph reassignment 2024-08-05 16:16:56 +02:00
Zamil Majdy
4cf1dd30f1 feat(rnd): Introduce Sub-Graph on Agent Server (#7693)
### Background

This change brings the capability to decompose a graph into sub-graphs. The objective of this feature is to allow a user to build a visually modular, and easier-to-understand graph. Also, allowing you to import a graph into your existing graph, without decluttering your existing graph.

This feature will require more implementation on the UI side, to allow the grouping of subgraph to be represented as a node in the builder.

### Changes 🏗️

Introduced a subgraph functionality with the following property:

* Sub-graph is simply a set of nodes that are grouped together, making it representable as a node.
* Sub-graph input & output pins/schema are the `InputBlock` / `OutputBlock` nodes present in the subgraph.
* The previous point implies that connecting two nodes from different sub-graphs, other than input/output nodes, is not allowed.
* Graph can be nested, but defined flatly, e.g.: graph is now only represented by three components: nodes, links, and subgraphs (a set of list of nodes). A nested subgraph is simply connecting a node inside a subgraph into another `InputBlock` node of another subgraph.
2024-08-05 16:48:14 +07:00
Swifty
c7fdfa0f77 fix(builder): Apply Prettier Formatting (#7695)
formatting
2024-08-05 09:18:08 +02:00
Andy Hooker
6fa7d22c91 feat(builder): Addition of prettier for aligned of development styles (#7629)
* fix(builder): Adding prettier configuration files and to package.

* fix(builder): Running script "format" added to the package.json

* feat(builder): Adding a job to the yaml file. This job will run "format" which leverages prettier.

* feat(builder): Running script "format" and merging master

* feat(builder): Setting configuration to prettier defaults in .prettierrc.json, and adding a requested newline in the .prettierignore

* feat(builder): Updating the CI to not add a job for prettier but instead add a check to verify prettier was run before commiting.

* feat(builder): Confirming CI update fails when user does not run prettier first. Updating with file changes after prettier

* feat(builder): Running prettier write to fix warnings

* fix(builder): Removing .prett
per PR change request

* fix(builder): Running prettier formatter

* fix(builder): Running prettier formatter check found additional files

* fix(builder): Running prettier format

* fix(builder): Removing running "format" command from PR due to a change request.

* fix(builder): Removing running "format" command from PR due to a change request.

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-08-05 09:14:02 +02:00
Amelia Bruno
52bd033a02 tweak(setup): Improvements to setup script (#7469)
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-08-05 00:13:25 -05:00
Andy Hooker
bb5baadeb2 feat(builder): Implementation of UI / UX improvement to editor (#7690)
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-08-05 00:09:31 -05:00
Andy Hooker
db97b24518 feat(builder): Addition of blocks control component (#7688)
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-08-04 23:58:12 -05:00
Andy Hooker
533d7b7da8 feat(builder): Addition of SaveControl component for ControlPanel (#7687)
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-08-04 23:39:42 -05:00
Andy Hooker
183c2a4845 feat(builder): Addition ControlPanel and Separator components (#7680) 2024-08-04 23:38:14 -05:00
alex
6440a8e217 fix punctuation in setup.md (#7689) 2024-08-04 06:53:32 -07:00
Toran Bruce Richards
e0930ba39d feat(Block): Add AdvancedLlmCallBlock (#7677)
* feat(Block): Add AdvancedLlmCallBlock

Adds a block for handling advanced LLM calls, enabling messages to be handled within the AutoGPT builder.

* fix linting
2024-08-02 18:17:03 -05:00
Andy Hooker
a21fd30fce fix(github): Update CODEOWNERS for rnd directories (#7684)
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-08-02 17:23:28 -05:00
Nicholas Tindle
e2df2cd90d Revert "feat(builder): Rewrite node input UI" (#7685) 2024-08-02 17:07:03 -05:00
Toran Bruce Richards
6bdb849150 feat(Block): Add blocks for Building Lists, Dictionaries & Strings (#7678)
* feat(Block): Add block for building lists

* feat(Block): Add block for building dictionaries

* feat(Block): Add TextCombinerBlock for combining multiple input texts

* Fix linting issues where default values are None

---------

Co-authored-by: Bently <tomnoon9@gmail.com>
2024-08-02 16:49:51 -05:00
Bently
8469fafc6f Feat(Builder): Discord bots blocks (#7670)
* Super early version of the discord bots blocks

* updated to add secrets for token + other fixes

* lint & format

* rename DiscordBot to DiscordReader

* add discord-py

* fix poetry lock

* rm duplicated file

* updated name to add Block to end

* update .env.template to add DISCORD_BOT_TOKEN

* updates to add description Field

* swap channel name and message content + add field description

---------

Co-authored-by: Bently <bently@bentlybro.com>
2024-08-02 22:21:58 +01:00
Reinier van der Leer
3c2c3e57a0 feat(builder): Rewrite node input UI (#7626)
- feat(builder): Rewrite & split up `NodeInputField`
  - Create `NodeObjectInputTree`
  - Create `NodeGenericInputField`
  - Create `NodeKeyValueInput`
  - Create `NodeArrayInput`
  - Create `NodeStringInput`
  - Create `NodeNumberInput`
  - Create `NodeBooleanInput`
  - Create `NodeFallbackInput`
  - Create `ClickableInput` from `renderClickableInput(..)`
  - Amend usage in `CustomNode`
  - Remove deprecated/unused styling from `flow.css` and `customnode.css`
  - Fix alignment between `NodeHandle` and `NodeInputField`
  - Split up `BlockIOSchema` & rename to `BlockIOSubSchema`
    - Create `BlockIOObjectSubSchema`
    - Create `BlockIOKVSubSchema`
    - Create `BlockIOArraySubSchema`
    - Create `BlockIOStringSubSchema`
    - Create `BlockIONumberSubSchema`
    - Create `BlockIOBooleanSubSchema`
    - Create `BlockIONullSubSchema`
  - Install `Select` component from shad/cn

- refactor(builder): Move `NodeInputField.tsx` to `node-input.tsx`
2024-08-02 19:28:46 +01:00
lelcruz
ec6bae0467 fix(documentation): Corrected Markdown formatting for server start command (#7649)
Co-authored-by: Leslie Cruz <lelcruz@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-08-02 12:33:12 -05:00
Bently
f5fe96260e Fix(Builder): beautifyString duplicated import (#7679) 2024-08-02 15:39:42 +01:00
SwiftyOS
49a18437ac fix(builder) fix merge conflict errors 2024-08-02 16:29:55 +02:00
Reinier van der Leer
3cee893314 fix(builder): Rewrite additionalProperties input field (#7608)
Co-authored-by: Swifty <craigswift13@gmail.com>
2024-08-02 16:11:38 +02:00
Reinier van der Leer
5d1035aeb0 fix(builder): Fix BlockSchema handling & type propagation (#7604)
- Merge `Flow.tsx:CustomNodeData` type definition into `CustomNode.tsx:CustomNodeData`
- Move `lib/types:BlockSchema` type definition into `lib/autogpt-server-api/types` in place of `ObjectSchema`
- Expand and rename `BlockSchema` -> `BlockIOSchema` + `BlockIORootSchema`
- Fix all `BlockIOSchema` related type narrowing checks
- Add warning messages to fallback cases in `NodeInputField` logic

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-08-02 16:09:46 +02:00
Bently
2e2c6fed52 feat(Builder): Implement undo/redo functionality (#7559)
* feat(Builder): Implement undo/redo functionality

* updates to work with latest UI

* add CTRL + Z & CTRL + Y support

* fixed undo/redo for inputs in nodes

* fix for deleting node

* fixes to make the undo/redo work better

* small fix

* Updates based on feedback

* add margin right to space out buttons

* added CTRL + SHIFT + Z for redo
2024-08-02 16:06:40 +02:00
Krzysztof Czerwinski
ca9c52f76a feat(builder): Add Supabase Auth, session and sign in UI (#7655)
This PR adds Supabase Auth (cloud) integration, login and profile UI, configures password login and three OAuth providers: Google, GitHub and Discord.

For `Account` button to show up and ability to login two env vars need to be set in `.env.local`: `NEXT_PUBLIC_SUPABASE_URL` and `NEXT_PUBLIC_SUPABASE_ANON_KEY`. OAuth providers are by the Supabase and don't require env vars.

Email confirmation (for email/password signup) is disabled because there's limit of 3 emails per hour without custom SMTP server configuration. [Link](https://supabase.com/dashboard/project/adfjtextkuilwuhzdjpf/auth/templates) to configure custom SMTP server and email template.

### Added dependencies:
- "@supabase/ssr": "^0.4.0"
- "@supabase/supabase-js": "^2.45.0"
- "react-icons": "^5.2.1"

### Added pages/routes:
- `app/auth/auth-code-error/page.tsx`: displayed when login using OAuth provider fails
- `app/auth/callback/route.ts`: route accessed when logging in using OAuth provider; it passes session code to Supabase
- `app/auth/confirm/route.ts`: accessed when confirming email, users will be directed here from email they get after signing in.
- `app/error/page.tsx`: Generic error page without explanation (any errors should be visible in the console)
- `app/login/page.tsx` and `app/login/actions.ts`: Login page and related login/signup server actions
- `app/profile/page.tsx`: Profile page, displays email address of the user and button to logout

### Changes
- Update `layout.tsx`: add `Log In` button and make icons consistent. The log in button shows up if user is logged out, avatar is shown when logged in, and if supabase is unavailable nothing shows up.
- Login form is verified using `zod` on the frontend (recommended by shadcn) and in case login fails feedback is displayed. On successful login users are redirected to `/profile`
- Add `PasswordInput` component, [source](https://gist.github.com/mjbalcueva/b21f39a8787e558d4c536bf68e267398)
- Add `SupabaseProvider` with context for Supabase accessed via hook `useSupabase(): { supabase: SupabaseClient | null, isLoading: boolean }`
- Add `useUser` hook to get `{ user, session, isLoading, error }` on the client 
- Add `getServerUser`: async function to get `{ user: User | null, error: string | null }` on the server side
- Add `src/middleware.ts` and `client.ts`, `server.ts`, `middleware.ts` in `src/lib/supabase` which are utility functions and middleware to refresh auth token
2024-08-02 12:58:28 +01:00
Zamil Majdy
973822d973 feat(rnd): Add InputBlock & OutputBlock (#7654)
### Background

We need an explicit block for providing input & output for the graph.
This will later allow us to build a subgraph with pre-declared input & output schema.
This will also allow us to set input for the node in the middle of the graph, and enable a graph to have output values.

### Changes 🏗️

* Add InputBlock & OutputBlock
* Add graph structure validation  on the graph execution step that asserts the following property:
    - All mandatory input pin, has to be connected or have a default value, except the `InputBlock` node.
    - All links have to connect valid nodes, and the sink & source name using the valid block field.
2024-08-02 13:33:34 +07:00
Bently
e773329391 Feat(Builder): Clear Status and Output upon graph edit (#7656)
* Feat(Builder): Clear Status and Output upon graph edit

* close output dropdown on graph edit

* make deleting edge clear block outputs

* make it so deleting nodes clears block output
2024-08-01 17:21:01 +01:00
Zamil Majdy
c9d41e69bd feat(rnd): Add postgres schema check on linting step + auto gen migration and schema sync command (poetry run schema) (#7667)
### Background

Migration not being synced has caused issues and CI is not catching this yet.

### Changes 🏗️

* Added schema check in both sqlite & postgres prisma.schema on linting step.
* Introduced `poetry run schema` for syncing prisma.schema + generating migration in both files.
2024-08-01 20:11:07 +07:00
Nicholas Tindle
08905d71f9 docs(server): add docs link to server readme (#7638)
Co-authored-by: Swifty <craigswift13@gmail.com>
2024-08-01 14:32:08 +02:00
Aarushi
8becde370c docs(ollama) Add ollama to mkdocs (#7666)
add ollama to mkdocs
2024-08-01 13:14:40 +01:00
Aarushi
dccc33152b feat(docs) Add how to run ollama with AutoGPT (#7665)
add ollama howto
2024-08-01 12:12:01 +01:00
Aarushi
b23bd9c479 feat(server): Add JWT validation (#7642)
* add auth middleware

* update readnme

* Update rnd/autogpt_server/pyproject.toml

Co-authored-by: Krzysztof Czerwinski <34861343+kcze@users.noreply.github.com>

* address newline feedback

* update poetry lock

---------

Co-authored-by: Krzysztof Czerwinski <34861343+kcze@users.noreply.github.com>
2024-08-01 11:11:40 +01:00
Aarushi
ac45b7cae9 feat(rnd,infra): Add Helm linting in CI (#7633)
* Set up helm and tf for backend

* update helm charts and settings

* remove example files

* use latest tag

* delay and timeouts for probes

* env based pyro host

* default backend

* linting

* add helm linting in CI

* read from settings

* fix formatting

* update to use config
2024-08-01 09:22:04 +01:00
Aarushi
3d54a9103c feat(rnd, infra): Add deployment for backend (#7612)
* Set up helm and tf for backend

* update helm charts and settings

* remove example files

* use latest tag

* delay and timeouts for probes

* env based pyro host

* default backend

* linting

* read from settings

* fix formatting

* update to use config
2024-08-01 09:21:12 +01:00
Nicholas Tindle
ca7182403b fix(server): enable other methods of setting configs outside of the config.json file (#7645) 2024-07-31 12:33:36 -05:00
Zamil Majdy
53826ab360 fix(rnd): Fix bug caused by different AJV version (#7653) 2024-07-31 16:47:31 +07:00
Andy Hooker
eac5548023 feat(builder): UI / UX upgrade and simplification of tailwind styles (#7647)
* fix(builder): Implementing a basic shadCn theme until color palette is decided upon

* feat(builder): Separating NavBar into its own component and providing a standard UI/UX Approach

* feat(builder): Removing old implementation of logo, removing excessive css implementation, updating styles to better support standard desktop views.

* feature(builder): Addition of UI component Sheet from ShadCn for update
2024-07-31 10:43:13 +02:00
Zamil Majdy
122f544966 fix(rnd): Disable unused prisma connection on pyro API Server process (#7641)
### Background

Pyro for API Server is not using Prisma, but still holding a Prisma connection.
The fast-API thread is also holding a Prisma connection, making Prisma connected in two different loop within a single process.

### Changes 🏗️

Disable a Prisma connection on Pyro thread for Server API process.
Fix test flakiness issue due to concurrency issue.
2024-07-30 22:33:28 +07:00
Zamil Majdy
29ba4c2c73 feat(rnd): Add freezed/static input link feature for retaining input data to be re-used in multiple node executions (#7631)
### Background

Input from the input pin is consumed only once. While this is required in most of the use cases, there are some cases where the input can only be produced once, and that input needs to be re-used just like an input default value, that is passively providing input data, without triggering any execution. The scope of this change is providing that functionality in the link level, this property will be called **`static link`** in this system.

### Changes 🏗️

Provides a static link feature with the following behaviours:
* A link can be marked `static` to become a static link.
* Once a node produces an output it will persist the output data and propagate the output to the other nodes through the link, for a static link, instead of making the data queued in the input pin, it will override the default value.
* Any input executions still waiting for the input will be backfilled using this output produced by the static link.
* And any upcoming executions that will use the input will always reuse the output produced by the static link.

See the added test to see the expected usage.
2024-07-30 10:37:38 +07:00
Nicholas Tindle
76feead3b1 docs(server): written setup guide for server (#7595)
Co-authored-by: Swifty <craigswift13@gmail.com>
2024-07-29 22:24:03 +01:00
Bently
081df805df Fix(Builder): Copy and Paste when editing textbox causes issue (#7636)
Fix(Builder): Copy and Paste when editing textbox causes graph elements to be erroneously pasted
2024-07-29 21:55:19 +01:00
Nicholas Tindle
acc1d79146 feat(builder): add delete handles to the edges and nodes (#7614)
Co-authored-by: Andy Hooker <58448663+andrewhooker2@users.noreply.github.com>
Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-07-29 21:30:56 +01:00
Nicholas Tindle
07811b2133 fix(builder): show colors for all statuses (#7625) 2024-07-29 20:04:48 +01:00
Amr Aly
01b6c2d4bf Update README.advanced.md (#7607)
* Update README.advanced.md

The copy .env command is wrong. it should be .env.example instead of env.example

* fix(server): extra space removal

---------

Co-authored-by: Nicholas Tindle <nicktindle@outlook.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-07-29 12:00:58 +01:00
Krzysztof Czerwinski
905b1df218 feat(builder): Add input validation on the frontend (#7606)
- Add `ajv` dependency to check values against json schema
- Add `errors` and `setErrors` to `CustomNodeData`
- Add `validateNodes` run before executing agent
- Add `*` on labels for required fields
- Add `setNestedProperty` and `removeEmptyStringsAndNulls` utility function
2024-07-29 10:17:27 +01:00
Andy Hooker
edf84fb9f8 feat(builder): Apply standard theming for shadCn and centralize providers (#7622) 2024-07-26 17:59:44 -05:00
Swifty
b62c24dc77 Add Marketplace template (#7605)
* init

* Added sentry.io integration

* updated readme
2024-07-26 17:11:26 +02:00
Zamil Majdy
dfa855f533 fix(rnd): Fix broken server execution update due to split prisma connection to different loops (#7620) 2024-07-26 15:47:41 +01:00
Aarushi
da2111bafb fix(server): Add missing PG migrations (#7619)
missing migrations
2024-07-26 14:38:05 +01:00
Reinier van der Leer
b2dba39810 fix(builder/api-client): Fix websocket client types (#7603)
- Fix type signatures of `sendWebSocketMessage(..)`, `onWebSocketMessage(..)`, `runGraph(..)` in `autogpt-server-api/client`
  - Add `WebsocketMessageTypeMap`

- Fix type signature of `updateNodesWithExecutionData` in `FlowEditor`
2024-07-26 13:26:11 +02:00
Zamil Majdy
d2a5bb286f feat(rnd): Fix concurrency issue on Agent Server & Apply max-1-execution-per-node constraint in graph execution (#7551)
### Background

When multiple executors are executing the same node within the same graph execution, two node executions can read the same queue of input and read the same value—making the data that is supposed to be consumed once, consumed by two executions. The lack of lock & concurrency support for parallel execution within a single graph causes this issue.

Node concurrency also introduces poor UX in the current frontend implementation, when two nodes are executed in parallel, the current UI will not display its parallel execution update, but instead, it shows the updates that override each other. Until the execution observability is improved on the builder UI, this capability will be limited.

### Changes 🏗️

The scope of this change is to solve this issue by:
* Decouple Graph execution & Node execution, each has its own configured process pool.
* Make sure there is only 1 execution per node (we still allow parallel executions on different nodes) in a graph.
* Fixed concurrency issue by adding distributed lock API on agent_server.
* Few cleanups:
    - Add more logging with geid & neid prefix on graph/node executions
    - Moved execution status update to agent-server for a single source of status update (required by conn-manager/web-socket)
    - Configured node parallelism to 10 & graph parallelism to 10 by default, so in the very rare worst-case, there can be 100 node executions.
    - Re-use server resource for each integration test run
2024-07-26 17:08:03 +07:00
Toran Bruce Richards
36b9a0a930 feat(Blocks): Add conditional logic block (#7536)
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-07-25 14:25:07 -05:00
Aarushi
f40db85b43 feat(rnd, infra) Add static ips module (#7588)
* add terraform

* gitignore update

* linting

* formatting and linting in ci

* store state in backend bucket

* Update .github/workflows/autogpt-infra-ci.yml

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>

* add static ips module

* formatting

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Swifty <craigswift13@gmail.com>
2024-07-25 17:50:19 +01:00
Reinier van der Leer
0767b17779 dx: Set Python type checking mode to "basic" for all subprojects (#7599) 2024-07-25 12:25:56 +01:00
Nicholas Tindle
0f0c13bae8 fix(server): gitignore was missing new file name (#7596)
Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-07-25 10:07:16 +01:00
A.Daee
3b0cd9518d feat(froge): Improvement in web components (#7068)
- Add `duckduckgo_backend` field to `WebSearchComponent` configuration
- Add `selenium_proxy` to `WebSeleniumComponent` configuration
- Update docs
2024-07-25 10:02:34 +01:00
Aarushi
22b6dbbf6a feat(rnd,infra) Set up terraform (#7565)
* add terraform

* gitignore update

* linting

* formatting and linting in ci

* store state in backend bucket
2024-07-25 09:45:36 +01:00
Reinier van der Leer
d9a1a1edc8 fix(builder): Correctly load node connections (#7592)
- Set `node.data.connections` based on `graph.links` in `loadGraph(..)`
- Use reactflow's built-in `useNodesState`, `useEdgesState` to replace some boilerplate functions that do exactly the same

Resolves #7392
2024-07-25 09:30:35 +01:00
vasnt
3c0d37d5d1 docs(forge):fix #7198 dead image links (#7593)
Co-authored-by: Nicholas Tindle <nicktindle@outlook.com>
2024-07-24 22:55:07 -05:00
Bently
c98061bc3b fix(Builder): fixes to copy and pasted blocks (#7591)
* fix(Builder): fixes to copy and pasted blocks

* clear the blocks state on paste
2024-07-24 17:00:59 +01:00
Toran Bruce Richards
a8c0cbef54 refactor(Blocks): Simplify MathsBlock and CounterBlock to Return Numeric Results Only (#7582)
* refactor(MathsBlock): Simplify output to return numeric result directly

- Remove MathsResult class and explanation field
- Update Output schema to use float type
- Simplify run method to yield numeric result only
- Adjust error handling to return inf or nan for errors
- Update test cases to reflect new output structure

* run format

* refactor(CounterBlock): Simplify output to return count as integer

- Remove CounterResult class
- Update Output schema to use int type directly
- Simplify run method to yield count without explanation
- Modify error handling to return -1 for any errors
- Update test case to reflect new output structure
2024-07-24 08:55:18 -05:00
Zamil Majdy
8ccd14c4bf fix(rnd): Disable BlockInstallationBlock and add disable field for block (#7583) 2024-07-24 08:52:14 -05:00
Nicholas Tindle
3e384c9771 ci(server): add sqlite processing (#7586)
* ci(server): add sqlite processing

* ci(server): try setting DATABASE_URL based on db platform

* fix(server): swap default back to sqlite

* ci(server): go back to database url

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-07-24 14:46:39 +01:00
Aarushi
22f2a05f08 feat(server) Fix schema file (#7589)
* fix schema file

* remove invalide migrations

* make sqlite url hardcode
2024-07-24 14:31:48 +01:00
Krzysztof Czerwinski
e94a7b08c9 refactor(builder): Move renderInputField to NodeInputField component (#7581) 2024-07-24 11:14:20 +01:00
Aarushi
7b8928f49b feat(server) Update readme (#7580)
update readme
2024-07-24 16:53:09 +07:00
Aarushi
699087e289 feat(rnd) Add dockerfiles (#7523)
* replace SQLite with Postgres

* dockerfiles and optional docker compose set up

* Update rnd/autogpt_builder/Dockerfile

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

* address feedback

* Update .dockerignore

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

* Remove example files folder

* remove backend and frontend from docker compose

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-07-24 10:01:22 +01:00
Bently
aa8ca37f86 feat(Builder): Work on copy and paste of blocks (#7564)
Co-authored-by: Swifty <craigswift13@gmail.com>
2024-07-24 09:30:48 +01:00
Toran Bruce Richards
8bdb48cba4 feat(blocks): Add basic YouTube transcriber block (#7495)
* feat: Add YouTubeTranscriber block for extracting transcripts from YouTube videos

* feat: Add youtube-transcript-api dependency to pyproject.toml

* feat: Add SchemaField and test_mock to YoutTube Transcriber.

* feat: update lock

* fix(server): the agbenchmark was out of date

* fix(server): linting

* fix(server): drop mock

* fix(server): poetry locked in

* fix(server): test had ... at the end?

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-07-24 09:00:09 +01:00
Bently
03ea51b266 feat(Builder): Limit Output preview size (#7554)
* feat(Builder): Limit Output preview size

* fix indent
2024-07-24 09:23:43 +02:00
Aarushi
77034f2df0 feat(blocks): Add 405b on ollama (#7573)
405b on ollama
2024-07-24 09:22:18 +02:00
Nicholas Tindle
ccf4397883 feat(server): author and contributor information on blocks (#7575) 2024-07-24 09:19:33 +02:00
Reinier van der Leer
e7885f943b fix(agent): Unbreak LLM status check on start-up
Fixes #7508

- Amend `app/configurator.py:check_model(..)` to check multiple models at once and save duplicate API calls
- Amend `MultiProvider.get_available_providers()` to verify availability by fetching models and handle failure
2024-07-23 22:36:04 +02:00
Aarushi
aca7165694 feat(rnd) Fix linting and formatting (#7568)
fix linting and formatting
2024-07-23 18:25:04 +01:00
Toran Bruce Richards
22b223037e feat(Blocks): Add support for new Llama 3.1 models with Groq! (#7567)
feat: Add support for new Groq models

The commit adds support for new Groq models, including LLAMA3_1_405B, LLAMA3_1_70B, and LLAMA3_1_8B. These models are part of the preview release and offer enhanced reasoning and versatility capabilities.
2024-07-23 16:48:39 +01:00
Toran Bruce Richards
6747ae1559 feat(Blocks): Add Blocks Providing Basic Arithmetic Operations (#7529)
* feat(blocks): Add MathsBlock for performing mathematical operations

The commit adds a new block called MathsBlock to perform various mathematical operations such as addition, subtraction, multiplication, division, and exponentiation. The block takes input parameters for the operation type, two numbers, and an option to round the result. It returns the result of the calculation along with an explanation of the performed operation.

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-07-23 16:28:59 +02:00
Aarushi
39afba6da8 feat(ci) Fix migrations in CI (#7563)
* update CI

* add poetry run

* schema prisma
2024-07-23 14:01:45 +01:00
Toran Bruce Richards
a00df25092 feat(Blocks): Add RSS Reader Block for reading RSS feeds (#7533)
* feat: Add RSSReaderBlock for reading RSS feeds

The commit adds a new `RSSReaderBlock` class in the `rss-reader-block.py` file. This block allows users to read RSS feeds by providing the URL of the feed, start datetime, polling rate, and a flag to run the block continuously. The block fetches the feed using the `feedparser` library and returns the title, link, description, publication date, author, and categories of each RSS item.

This commit also includes the addition of the `feedparser` dependency in the `pyproject.toml` file.

* fix(server): update lock file

* updated poetry lock

* fixed rss reader testing

* Updated error message in test to include check info

* Set starttime as 1 day ago

* Changed start time to time period

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-07-23 13:15:14 +02:00
Toran Bruce Richards
ea698ab0fe feat(Blocks): Add For-Each Block for iterating over a List. (#7531)
* feat: Add ForEachBlock for iterating over a List.

---------

Co-authored-by: Swifty <craigswift13@gmail.com>
2024-07-23 11:40:41 +02:00
Krzysztof Czerwinski
902d2a8924 feat(builder): UX and style updates (#7550)
- Handles:
  - Add `NodeHandle` to draw input and output handles
  - Position handles relatively
  - Make entire handle label clickable/connectable
  - Add input/output types below labels
  - Change color on hover and when connected
  - "Connected" no longer shows up when connected
- Edges:
  - Draw edge above node when connecting to the same node
  - Add custom `ConnectionLine`; drawn when making a connection
  - Add `CustomEdge`; drawn for existing connections
  - Add arrow to the edge end
  - Colorize depending on type
- Input field modal:
  - Select all text when opened
  - Disable node dragging
- CSS:
  - Remove not needed styling
  - Use tailwind classes instead of css for some components
  - Minor style changes
- Add shadcn switch
- Change bottom node buttons (for properties and advanced) to switches
- Format code
2024-07-23 09:36:42 +01:00
Reinier van der Leer
ab0df04bfe fix(builder/monitor): Fix Graph export (#7556)
- fix(builder/monitor): Export `Graph` rather than `GraphMeta`
  - Fixes #7557

- refactor(builder): Split up `lib/autogpt_server_api` into multi-file module
  - Resolves #7555
  - Rename `lib/autogpt_server_api` to `lib/autogpt-server-api`
  - Split up `lib/autogpt-server-api` into `/client`, `/types`
  - Move `ObjectSchema` from `lib/types` to `lib/autogpt-server-api/types`
  - Make definition of `Node['metadata']['position']` independent of `reactflow.XYPosition`

- fix(builder/monitor): Strip secrets from graph on export
  - Resolves #7492
  - Add `safeCopyGraph` function in `lib/autogpt-server-api/utils`
  - Use `safeCopyGraph` to strip secrets from graph on export in `/monitor` > `FlowInfo`
2024-07-23 09:28:06 +02:00
Zamil Majdy
d407fd101e fix(rnd): Make Agent Server's pin connections become the mandatory source of input (#7539)
### Background

Input from the input pin is consumed only once, and the default input can always be used. So when you have an input pin overriding the default input, the value will be used only once and the following run will always fall back to the default input. This can mislead the user.

Expected behaviour: the node should NOT RUN, making connected pins only use their connection(s) for sources of data.

### Changes 🏗️

* Make pin connection the mandatory source of input and not falling back to default value.
* Fix the type flakiness on block input & output. Unify the typing for BlockInput & BlockOutput using the right alias to avoid wrong typing.
* Add comment on alias
* automated test on the new behaviour.
2024-07-23 09:06:26 +07:00
Aarushi
a911f9a5eb feat(rnd) Add Postgres support (#7513)
* replace SQLite with Postgres

* make sqlite default

* add migrations for sqlite and postgres

* update readme

* fix formatting
2024-07-22 23:43:49 +01:00
Reinier van der Leer
470c738732 fix(builder/monitor): Fix # of runs count on first load (#7558)
Return mutated copy rather than in-place mutated `flowRuns` in `refreshFlowRuns(..)`

Fixes #7507
2024-07-22 23:15:54 +01:00
Nicholas Tindle
7de49dfbe5 Update workflow-checker.yml (#7553) 2024-07-22 13:49:27 -05:00
Reinier van der Leer
a02b017cea feat(builder): Built-in templates (#7511)
- Add "Medium Blogger" template to `graph_templates` folder
- Add `import_packaged_templates()` function in `data.graph`
- Call `import_packaged_templates()` in `AgentServer` lifecycle setup
- Fix `util.json:loads` typing and parameter forwarding
2024-07-22 17:54:48 +02:00
Nicholas Tindle
56b82369b6 ci(all): verify the workflows as part of each run (#7500) 2024-07-22 07:23:48 -05:00
Tyrion Lannister
a7926584ca Fix(rnd): Add Prerequisites Documentation in README.md (Server) (#7546) 2024-07-22 07:19:20 -05:00
Nicholas Tindle
6ffa644fb6 fix(ops/issues): update template for bugs (#7211) 2024-07-22 07:16:51 -05:00
Bently
a82317e2ac feat(builder): fix sidebar scroll issue (#7548)
fix sidebar scroll issue
2024-07-22 13:05:50 +01:00
Bently
fd000a4173 feat(Builder): Fix sidebar covering navbar (#7544)
Fix sidebar covering flow
2024-07-22 10:11:46 +01:00
Nicholas Tindle
235715e054 feat(server): read_csv block (#7499) 2024-07-22 09:58:02 +02:00
Nicholas Tindle
d0ec31b698 docs: fix dead links (#7470) 2024-07-22 09:56:32 +02:00
Zamil Majdy
fa1b486c64 feat(rnd): Add Agent block UUID validation for Agent Server (#7501)
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-07-20 09:14:18 +07:00
Reinier van der Leer
21084c5817 feat(builder, server): Speed up fetching graphs (#7477)
- Let `GET /graphs` return `GraphMeta[]` instead of `string[]` (list of IDs)
- Rename `AutoGPTServerAPI` method `listGraphIDs` -> `listGraphs` and adjust return type
   - Replace all usages of `Graph` with `GraphMeta` in `/monitor`
- Delete `data.graph:get_graph_ids()`
2024-07-19 18:28:59 -05:00
Zamil Majdy
82fd3166ef feat(rnd): Add block description and categories (#7463)
### Background

Add block description and categories metadata.

### Changes 🏗️

* Add block description and categories metadata.
* Initialize description and categories on the existing blocks.
2024-07-19 11:10:16 -05:00
Toran Bruce Richards
f833fa3624 feat: Update CreateMediumPostBlock to use secret value for author_id
This commit updates the `CreateMediumPostBlock` class in `create_medium_post.py` to use the secret value for the `author_id` parameter. Previously, it was using the plain value, which caused the value to be sent incorrectly to the API.
2024-07-19 14:52:02 +01:00
Aarushi
e6f9870f2e feat(blocks) Add ollama integration (#7505)
* add ollama integration

* address review comments & formatting
2024-07-19 11:27:48 +01:00
Bently
6e319a6881 Feat(Builder): Decrease the delay before a tooltip opens (#7478)
Make tooltip show in 10 ms
2024-07-19 09:21:34 +01:00
Nicholas Tindle
64edf12c31 fix(server): code.py as a filename overshadows an internal python file (#7496) 2024-07-19 10:30:54 +07:00
Nicholas Tindle
e1795b8216 fix(server): add create medium post test missing params (#7497) 2024-07-19 10:28:43 +07:00
Nicholas Tindle
057d0848ef fix(server): various linting errors (#7498) 2024-07-19 10:28:21 +07:00
Bently
2dc673614f feat(doc): Update node creation docs (#7462)
* feat(doc): Update node creation docs

* small fixes

* fix formatting

* remove mention of registering a block

* Update docs/content/server/new_blocks.md

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-07-18 20:01:40 -05:00
Toran Bruce Richards
24e08d57ef Update README.md 2024-07-19 00:46:17 +01:00
Toran Bruce Richards
bd540b5cc4 tweak(builder): Replace erroneous mentions of "Properties" to "Output" (#7489) 2024-07-19 00:42:22 +01:00
Toran Bruce Richards
6d192429a6 feat(blocks): Add Medium Post block (#7494)
* feat: Add CreateMediumPostBlock to create Medium posts

* feat: Add medium_api_key to Secrets class in settings.py

* feat: Update medium post block to work with latest system.

* feat: Add medium_author_id field to Secrets class in settings.py

* run isort

* run black
2024-07-19 00:26:32 +01:00
Toran Bruce Richards
314a24ab8f fix(blocks): resolve duplicate ID in ObjectLookupBlock - basic.py 2024-07-18 23:58:19 +01:00
Toran Bruce Richards
ff962d8d88 Merge branch 'master' of https://github.com/Significant-Gravitas/AutoGPT 2024-07-18 23:56:09 +01:00
Toran Bruce Richards
5e5182e236 feat: Add CreateMediumPostBlock to create Medium posts 2024-07-18 22:54:13 +01:00
Nicholas Tindle
04dcd230cd feat(builder): allow deletion of nodes and edges via del key (#7483) 2024-07-18 22:45:28 +01:00
Nicholas Tindle
c8b46109fe feat(builder, server): hide secrets from the UI and mark them as secrets in the api (#7490)
* feat(server): add json_extra marking some fields as secret

* devx(builder): add a launch.json for debugging

* feat(builder): hide secret strings

---------

Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-07-18 16:30:11 -05:00
Toran Bruce Richards
c00caa4bcf tweak(Builder): Remove unnecessary node output heading in CustomNode component (#7487)
feat: Remove unnecessary node output heading in CustomNode component
2024-07-18 21:43:47 +01:00
Bently
e382dcf823 feat(blocks): Adds node to get weather from openweathermap (#7382)
* Add node for openweathermap

* fix naming

* Rename GetOpenweatherMapWeather.py to getopenweathermapweather.py

* fix naming

* fix conflicts

* fix conflicts

* Updates to node + moved to search.py

* small cleanup
2024-07-18 21:36:09 +01:00
Toran Bruce Richards
27e6c3a95d feat(block): Add support for GPT-4O Mini model in LLM block (#7480)
feat: Add support for GPT-4O Mini model in LLM block
2024-07-18 19:02:36 +01:00
Bently
aaf650ee23 feat(builder): Fix message covering navbar on < lg screen size (#7474)
* Remove excess styling from message box
* Replace "node" with "block" in message (-> "Get started by adding a block")
2024-07-18 16:46:28 +02:00
Reinier van der Leer
4c003d6e20 fix(builder): Make detail view on /monitor obey grid
Unwrap the detail view element and style it directly instead
2024-07-18 04:12:51 +02:00
Reinier van der Leer
8264d7bf5a feat(builder): Importing/exporting Agents and Templates (#7466)
Builder:
* Add download button to agent info view
   - Add download button to `FlowInfo`
   - Add `exportAsJSONFile(..)` function to lib/utils.ts

* Add Create button + menu to /monitor page
   - Add "Create | v" split button to Agent list
   - Add list of templates to Create menu
   - Add "Import from file" option + dialog
      - Create `AgentImportForm` component
         - Install `Form`, `Label`, `Switch` components from shad/cn UI
      - Install `Dialog` component from shad/cn

* Support saving/editing Templates
   - Add `templateID` query parameter to `/build`
   - Use `templateID` query parameter in `AgentImportForm` redirect if imported as template
   - Make `FlowEditor` suitable for saving/editing templates
      - Add `template` (boolean) parameter to `FlowEditor` component
      - Add conditions to all `createGraph` or `updateGraph` calls, to use `createTemplate`/`updateTemplate` if applicable
      - Add "Save as Template" button, visible if the graph is new (unsaved)
      - Hide "Save & Run Agent" button when editing a template

* Add template endpoints to `AutoGPTServerAPI` client
   - Add `listTemplates()`
   - Add `getTemplate(id, version?)`
   - Add `getTemplateAllVersions(id)`
   - Add `createTemplate(templateCreateBody)`
   - Add `updateTemplate(id, template)`

* fix inner alignment of `<Input type="file">` elements

Server:
* fix(server): Fix return of `create_graph` for templates
2024-07-18 13:19:56 +01:00
Reinier van der Leer
37b7053e14 feat(server): Add API prefix /api to prevent route collisions with frontend (#7472)
- Add prefix `/api` to `APIRouter` in server.py
- Update API client in Builder
   - Update default `AGPT_SERVER_URL` in .env.template
   - Update default `baseUrl` in `AutoGPTServerAPI` constructor
2024-07-18 07:16:58 -05:00
Reinier van der Leer
354e626965 feat(dx): Add Builder and Server to auto-labeler 2024-07-18 00:19:38 +02:00
Reinier van der Leer
90371e1781 fix(builder): Remove legacy global styling from globals.css
This global styling was clashing with the theme of shad/cn and making text unreadable.
2024-07-18 00:06:52 +02:00
Reinier van der Leer
e128bfaf5f refactor(builder): Clean up AutoGPTServerAPI implementation (#7468)
- Abstract request implementation out of individual endpoints
- Rename Flow -> Graph (in type, method, and variable names)
2024-07-17 21:51:03 +02:00
Kate Silverstein
62c420e26f feat(forge/llm): Add LlamafileProvider (#7091)
* Add minimal implementation of `LlamafileProvider`, a new `ChatModelProvider` for llamafiles. It extends `BaseOpenAIProvider` and only overrides methods that are necessary to get the system to work at a basic level.

* Add support for `mistral-7b-instruct-v0.2`. This is the only model currently supported by `LlamafileProvider` because this is the only model I tested anything with.

* Add instructions to use AutoGPT with llamafile in the docs at `autogpt/setup/index.md`
* Add helper script to get it running quickly at `scripts/llamafile/serve.py`

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-07-17 15:56:55 +02:00
Krzysztof Czerwinski
97a5582c34 feat(agent_builder): Human-readable titles for blocks and fields (#7439)
Display human readable names for blocks and fields. `title` from schema is used if available, otherwise `beautifyString(name)`.
2024-07-17 14:44:41 +01:00
Zamil Majdy
78b84289cb feat(rnd): Add code-formatter & linting on AutoGPT server (#7458)
### Background

Add formatter & linter command.
Tools: ruff --> isort --> black --> pyright.

### Changes 🏗️

Introduced:
* `poetry run format`
* `poetry run lint`

`poetry run lint` will be executed on CI.
2024-07-17 11:54:29 +01:00
Krzysztof Czerwinski
9e22409d66 feat(agent_builder): Add block input fields description tooltip (#7437)
- Renamed `Schema` to `BlockSchema` and moved to `lib/types.ts`
- Add `SchemaTooltip` component that renders markdown tooltip for node fields
- Add `SecretField` function (which uses `BlockSecret` as value) that replaces `BlockFieldSecret` functionality for models
- Rename `get` to `get_secret_value` to make name clearer and inline with pydantic `Secret` types
- Add shadcn tooltip
- Add `react-markdown` dependency
2024-07-17 10:54:43 +01:00
Zamil Majdy
e7c075a521 feat(doc): Remove excessive docs for AutoGPT server (#7457) 2024-07-17 14:22:13 +07:00
Krzysztof Czerwinski
555e113706 feat(agent_builder, agent_server): Add customizable placeholders for input fields (#7451)
- Add `SchemaField` that works like Pydantic `Field` but allows to add extra json schema values. This PR adds `placeholder` entry but it could be extended with other data.
- Render `placeholder` inside input fields if available.
- Restyle placeholders so they are visually distinct from user-entered values
2024-07-16 20:08:43 +01:00
Bently
420e6cae2f feat(autogpt_builder): Fix Read API base URL from .env (#7455) 2024-07-16 16:28:24 +01:00
Toran Bruce Richards
920f931a21 feat(blocks): Add summariser block for recursive text summarization functionality (#7431)
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-07-16 17:51:37 +07:00
Toran Bruce Richards
e874318832 feat(blocks): Add WebSearch & WebScrapper block for searching the web with Jina Reader (#7445)
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-07-16 15:32:23 +07:00
Toran Bruce Richards
cb4b96a70c feat(server): Add DictionaryLookup block for looking up values in a dictionary (#7427)
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-07-16 15:23:12 +07:00
Toran Bruce Richards
03ea4c2690 fix(server): Fix bug in time comparison logic in RedditGetPostsBlock (#7426)
Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-07-16 14:35:51 +07:00
Zamil Majdy
e70e613f73 feat(rnd): Refactor Block testing infra and Add Block auto-generation graph usecase (#7405)
### Background

The main scope of this change is enhancing the system capability (by fixing bug, correcting execution behaviour) to allow for creating a graph with a loop, to allow the use case of block auto-generation agent.

### Changes 🏗️

* Main changes: Add block_autogen.py (block auto-generation agent graph example).
* Refactor on test boilerplate: introduced `util/test` for initiating a server, and waiting graph execution.
* Removing unnecessary db lookup and duplicated codes used for sending execution updates on agent executor.
* Removed redundant code on test and cli code.
* Moved block test execution helper into the main code (so blockinstallerblock can use it).
* Eliminate the need of explicitly add a module into the `AVAILABLE_BLOCKS` list, any block class under the `block` folder will be auto-discovered.
* Few patches on the existing blocks.
2024-07-15 21:41:18 -05:00
Toran Bruce Richards
854f6dcaec Update README.md 2024-07-15 22:31:30 +01:00
Toran Bruce Richards
ea5ba9d193 Update README.md 2024-07-15 22:31:19 +01:00
Toran Bruce Richards
da14957fce Update README.md 2024-07-15 22:29:03 +01:00
Toran Bruce Richards
629f575dde Delete rnd/AutoGPT Server Setup Tutorial.mp4 (#7452) 2024-07-15 22:18:49 +01:00
Toran Bruce Richards
8883d7db53 Create README.md in rnd folder 2024-07-15 22:17:37 +01:00
Toran Bruce Richards
a6063e1550 Add files via upload 2024-07-15 22:06:57 +01:00
Toran Bruce Richards
e311847fa8 Update autogpt_server README.md 2024-07-15 20:26:44 +01:00
Bently
d673bf741a feat(autogpt_builder): Add websocket support to replace polling (#7449)
feat(autogpt_builder): Add websocket support
2024-07-15 20:18:23 +01:00
Swifty
110e093e7b feat(autogpt_server, autogpt_builder): Add Agent Versioning & Templates functionality (#7376)
1. Add graph versioning functionality:
   - Add `version`, `isActive` fields in the `AgentGraph` model
      - Add `agentGraphVersion` field in related models
   - Amend & add API endpoints for graph versioning (see below)
      - Amend & add data layer functions (`autogpt_server.data`) to support new operations & data schema

2. Add graph template functionality:
   - Add `isTemplate` fields in the `AgentGraph` model
   - Add `GraphMeta` model for template/graph metadata
   - Add API endpoints for template management (see below)
      - Amend & add data layer functions (`autogpt_server.data`) to support new operations & data schema

3. Enhance graph creation:
   - Amended `create_graph` route to handle template-based graph creation

4. Code refactoring:
   - Improved import statements
   - Enhanced error handling in graph creation

5. Minor improvements:
   - Add validator to auto-assign `Graph.id` if not set

## API Changes

New endpoints:
- `GET /templates`: Retrieve all templates (metadata only)
- `POST /templates`: Create a new template
- `PUT /graphs/{graph_id}`: Create a new version of a graph
- `GET /templates/{graph_id}`: Get a specific template
- `PUT /templates/{graph_id}`: Create a new version of a graph template
- `GET /graphs/{graph_id}/versions`: Get all versions of a graph
- `GET /templates/{graph_id}/versions`: Get all versions of a graph template
- `GET /graphs/{graph_id}/versions/{version}`: Get a specific graph version
- `PUT /graphs/{graph_id}/versions/active`: Set active graph version

Modified endpoints:
- `POST /graphs`: Now supports creating graphs directly from templates
- `GET /graphs/{graph_id}`: Add `version` query parameter
- `GET /graphs/{graph_id}/executions`: Add `graph_version` query parameters

## UI changes
- Improve `/build` / `FlowEditor` save mechanism
   - Implement updating current agent instead of creating a new agent on every save
   - Add check to only save a new version if local graph has been edited
      - Add `deepEquals` function to lib/utils.ts
- Add version indicators and selector on `/monitor`
  ![image](https://github.com/user-attachments/assets/742a66ee-4d12-4129-981d-fa6399e717fa)
   - Add shad/cn `DropdownMenu` component
- Update `AutoGPTServerAPI` client
   - Update input/output types with added attributes (see above)
   - Add parameter `version` to `getFlow`
   - Add parameter `flowVersion?` to `listFlowRunIDs`
   - Add endpoint `updateFlow(flowID, FlowUpdateable)`
   - Add endpoint `createFlow(fromTemplateID, templateVersion)` (overload)
   - Add endpoint `getFlowAllVersions(id)`
   - Add endpoint `setFlowActiveVersion(flowID, version)`
2024-07-15 20:26:00 +02:00
Toran Bruce Richards
93b6e0ee51 feat(blocks): Add support for additional LLM providers to LLM Block (#7434)
This commit adds support for the following models:

```python
# OpenAI Models
GPT4O = "gpt-4o"
GPT4_TURBO = "gpt-4-turbo"
GPT3_5_TURBO = "gpt-3.5-turbo"

# Anthropic models
CLAUDE_3_5_SONNET = "claude-3-5-sonnet-20240620"
CLAUDE_3_HAIKU = "claude-3-haiku-20240307"

# Groq models
LLAMA3_8B = "llama3-8b-8192"
LLAMA3_70B = "llama3-70b-8192"
MIXTRAL_8X7B = "mixtral-8x7b-32768"
GEMMA_7B = "gemma-7b-it"
GEMMA2_9B = "gemma2-9b-it"
```

Every model has been tested with a single LLM block and is confirmed to be working in that setup.
2024-07-15 20:30:56 +07:00
Bently
450f120510 feat(autogpt_builder): Fixes to wikipedia block (#7435) 2024-07-15 11:10:16 +07:00
Bently
2355d56801 feat(Builder): Updates to Nodes UI (#7414)
Updates to Nodes UI
2024-07-14 13:52:57 +01:00
Toran Bruce Richards
d3dae2264d tweak(docs): Replace all instances of "Node" with "Block". (#7416)
Replace all instances of "Node" with "Block" in the doccumentation.
2024-07-13 22:04:24 +01:00
Toran Bruce Richards
58313d9ae7 tweak(docs): Make link to The AutoGPT Server more prominant in docs navbar. (#7402) 2024-07-13 21:48:51 +01:00
Toran Bruce Richards
9e7dd4be74 tweak(rnd): Update AutoGPT logo file to be larger (#7408) 2024-07-13 21:08:09 +01:00
Krzysztof Czerwinski
6550bdc10c feat(rnd): AutoGPT Agent wrapper for Agent Server (#7365)
- Add `autogpt` and `forge` dependency to the `autogpt_server`
- Add `AutoGPTAgentBlock` that initializes and runs a single agent loop on execution
- Add `BlockAgent` that inherits from `autogpt` `Agent` and is a thin extension on the agent that allows to disable components
- Add `OutputComponent` that adds `output` command for the agent
2024-07-13 19:47:29 +01:00
Nicholas Tindle
0b9f3be6b8 feat(docs): add server new node docs (#7395)
Co-authored-by: Bently <27962737+Bentlybro@users.noreply.github.com>
2024-07-12 08:59:35 -05:00
Reinier van der Leer
a2d8d9bac9 feat(autogpt_builder/monitor): Monitor page v0.2 (#7385)
- Improve responsive grid layout
  - Remove `container` class from `<main>` to utilize full screen width

- Improve detail views & add view for run details
  - Make flow run list entries selectable
  - Create `FlowInfo` and `FlowRunInfo` components
  - Improve layout of `FlowRunsStats`

- Improve ScrollableLegend spacing & styling
  - Hide scroll bar of scrollable legend
  - Center legend items if there is space left
  - Round icons
  - Vertically align icons with labels
  - FIX: Add condition to not display legend items for series with `legendType="none"`

- Add periodic 5s refresh of non-terminal flow run statuses
  - Split off `refreshFlowRuns(flowID)` from `fetchFlowsAndRuns()`
  - Add effect to run `refreshFlowRuns` every 5 seconds

- Improve and expand FlowRun info
  - Add `FlowRun.totalRunTime`: sum of the individual execution durations of all nodes
  - Add `FlowRun.endTime`
  - Use `NodeExecutionResult.add_time` instead of `start_time` as `FlowRun.startTime`

- Sort Flows by last executed

- Add icons to navbar items & hide unused items Backtrack and Explore

- Change UI mentions of "(Agent) Flow" to "Agent"
2024-07-12 14:56:48 +02:00
Bently
b7096e01fb feat(Builder): Adds node to send messages to discord webhook (#7381)
* Adds core files for discord node

* fix naming

* Rename DiscordSendMessage.py to discordsendmessage.py

* update naming again

* fix conflicts

* fix imports
2024-07-12 11:58:11 +01:00
Krzysztof Czerwinski
bffb92bfbc fix(agent, forge): Fix Pydantic v2 protected namespace model_ warnings (#7340)
Rename `model_*` fields to `llm_*`
2024-07-12 12:05:03 +02:00
Bently
2ecce27653 feat(Builder): Adds node to get summary from wikipedia (#7384)
* adds node to get summary from wikipedia

* update name

* Fix naming again
2024-07-12 09:51:56 +01:00
Zamil Majdy
1089551869 feat(builder): Add service-level creds access for agent blocks (#7373)
### Background

Credentials for blocks could only be defined through the block input. The scope of this change is providing system-wide that becomes the default value for these input blocks.

### Changes 🏗️

* Add system-wide credential support for agent blocks `BlockFieldSecret`.
* Update llmcall & reddit block to adopt `BlockFieldSecret`.
2024-07-12 15:41:55 +07:00
Aarushi
58af7f9466 feat(autogpt_builder) Remove saving of execution data into sink node (#7383)
remove saving of execution data into sink node
2024-07-12 01:44:11 +02:00
Aarushi
b89609fd16 feat(autogpt_builder) Add logic for node disconnection (#7386)
add logic for node disconnection
2024-07-11 23:33:21 +01:00
Reinier van der Leer
dcfc3a4dad fix(autogpt_builder): Restore node input presets when loading a flow (#7379)
- Assign `node.input_default` to `hardcodedValues` in `FlowEditor:loadFlow(..)`
2024-07-11 18:37:04 +01:00
Nicholas Tindle
7cf6d3ff79 feat(dx): add a code-workspace for vscode (#7285)
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-07-11 19:24:35 +02:00
Toran Bruce Richards
f4f164ac15 chore(rnd): Update animation direction for customnode.css to "ping-pong" (#7377) 2024-07-11 16:09:02 +01:00
Bently
cd9d041fe5 feat(builder): add button for showing/hiding optional inputs (#7375)
add button for showing/hiding optional inputs in nodes
2024-07-11 15:14:07 +01:00
Bently
0fb8a84382 fix to make monitor use env (#7371)
fix to make it use env
2024-07-10 17:18:59 +01:00
Aarushi
a408da8317 aarushikansal/flow stats scroll legend (#7370)
* feat(agent_builder): Add shad/cn + Radix Icons + Tailwind

* move favicon.ico to static folder

* delete empty custominput.css

* feat(agent_builder): Add basic app layout with nav

* add timeline chart to Monitor page and improve overall mock-up functionality

* add some (mock) stats to the overview

* monitor/page.tsx: Switch from mock data to API & reorder file

* undo out-of-scope changes to Flow.tsx and .css files

* fix linting issue in `FlowRunsTimeline`

* wip scrollable

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
Co-authored-by: Swifty <craigswift13@gmail.com>
2024-07-10 18:07:07 +02:00
Reinier van der Leer
976ff04cce feat(autogpt_builder): Initial Monitor page implementation (#7335)
* feat(agent_builder): Add shad/cn + Radix Icons + Tailwind

* move favicon.ico to static folder

* delete empty custominput.css

* feat(agent_builder): Add basic app layout with nav

* add timeline chart to Monitor page and improve overall mock-up functionality

* add some (mock) stats to the overview

* monitor/page.tsx: Switch from mock data to API & reorder file

* undo out-of-scope changes to Flow.tsx and .css files

* fix linting issue in `FlowRunsTimeline`

---------

Co-authored-by: Aarushi <aarushik93@gmail.com>
Co-authored-by: Swifty <craigswift13@gmail.com>
2024-07-10 18:04:51 +02:00
Swifty
3c91038089 tweak(ui): Switch from modal.css to tailwindcss classes (#7369)
* reverts dark theme for now

* change "Show/Hide nodes" button to be "Icon"

* swap over to light mode + fix sizing

* fix color for agent name + description text

* Change navbar to white

* Added darkmode tag for the navbar

* Added dark mode text color

* Changed to tailwind classes

---------

Co-authored-by: Bentlybro <tomnoon9@gmail.com>
2024-07-10 18:04:02 +02:00
Swifty
d4b441932d tweak(ui): Tweaked light mode color (#7366)
* reverts dark theme for now

* change "Show/Hide nodes" button to be "Icon"

* swap over to light mode + fix sizing

* fix color for agent name + description text

* Change navbar to white

* Added darkmode tag for the navbar

* Added dark mode text color

---------

Co-authored-by: Bentlybro <tomnoon9@gmail.com>
2024-07-10 18:02:06 +02:00
Bently
14ddb915bf feat(autogpt_builder): swapping to white theme for the layout (#7358)
* reverts dark theme for now

* change "Show/Hide nodes" button to be "Icon"

* swap over to light mode + fix sizing

* fix color for agent name + description text

* update icon
2024-07-10 18:01:07 +02:00
Aarushi
d6cbb48609 feat(agpt_builder) Fix data persistance on agent execution (#7363)
* fixing issue with data vanishing when executing agent

* fix rebasing

* add unique key

* reset to neutral & failed colours
2024-07-10 12:47:55 +01:00
Swifty
3789b00479 feat(autogpt_server): Expose rest api via websocket (#7350)
* Add in websocket event types

* adding in api endpoints

* Updated ws messages
2024-07-10 10:54:18 +01:00
Swifty
f94e81f48b feat(builder) Add save Agent functionality (#7361)
Add save functionality
2024-07-10 10:01:12 +01:00
Zamil Majdy
e10c4ee4cd fix(doc): Fix Auto GPT server Running The Server doc (#7360) 2024-07-10 10:31:52 +02:00
Reinier van der Leer
81dee568cb feat(autogpt_builder): Add basic layout with nav (#7317)
* feat(agent_builder): Add shad/cn + Radix Icons + Tailwind

* move favicon.ico to static folder

* delete empty custominput.css

* feat(agent_builder): Add basic app layout with nav

* Revert unwanted changes

* Fix /build + Flow layout issues

- Add `className` passthrough to `Flow` component
- Fix /build page layout

* unfix build/page.tsx indentation for git tracking

---------

Co-authored-by: Toran Bruce Richards <toran.richards@gmail.com>
2024-07-09 17:33:12 +01:00
Bently
7929f1a4ac Reads data from .env (#7357) 2024-07-09 17:20:31 +01:00
Bently
0a28c72bad Fix issue with node inputs (#7356) 2024-07-09 16:21:13 +01:00
Toran Bruce Richards
b9861a5308 fix(autogpt_builder): Update AutoGPT logo in page component (#7354)
feat(autogpt_builder): Update AutoGPT logo in page component
2024-07-09 16:10:13 +01:00
Zamil Majdy
af3a2bb5f5 fix(doc): Fix Auto GPT server Running The Server doc (#7355) 2024-07-09 16:09:43 +01:00
Bently
2f174837bd Add input for agent name & description (#7351) 2024-07-09 15:44:36 +01:00
Aarushi
b30eaf653a feat(autogpt_builder) Remove submit button (#7353)
remove submit button
2024-07-09 15:23:36 +01:00
Zamil Majdy
d9c9b22886 feat(rnd): Add Agent Block sample/test input output for auto-generated unit testing for block (#7310)
Sample test input and output on the block can serve as documentation and auto-generated unit-testing code for the agent block.

What's within the scope of this change:
Adding the fields for block test (input, output, mocks), and its execution.

What's still outside the scope:
Handling of mock and stub for a block using sensitive credentials or network calls or 3rd-party connections.
2024-07-09 13:08:42 +02:00
Zamil Majdy
ff71b0beb7 fix(rnd): Avoid expensive call of get_service_client on block execution (#7349) 2024-07-09 13:07:57 +02:00
Swifty
57cc8b69e9 fix(agent_server): Fix async issue with executor integration test (#7348)
Fix execution completed check
2024-07-09 17:09:44 +07:00
Aarushi
7ce0c655d0 feat(autogpt_builder) Hook up execution progress animation to live execution data (#7347)
* hooked up animation to actual execution data

* remove console log
2024-07-09 09:32:38 +01:00
Bently
1e755f9e8d feat(agent_builder): Updates to Builder GUI + Nodes (#7345)
* Updates to Builder GUI + Nodes

* fix apiUrl back to local host
2024-07-08 21:33:07 +01:00
Swifty
f9bedb0fd9 fix(autogpt_server): Changed inconstant timestamps to all use UTC (#7343)
* Changed timestamps to utc

* made other datetime.now timezone aware
2024-07-08 17:09:38 +02:00
Swifty
a32bc72314 feast(agent server) Add populate db command (#7342)
* Add populate db command

* Added in a reddit graph creation command
2024-07-08 17:09:20 +02:00
Reinier van der Leer
227092b669 feat(autogpt_builder): Enable loading an existing flow (#7338)
- Add `flowID` query parameter
- Add logic to load a flow from the server into the builder
2024-07-07 01:39:05 +02:00
Reinier van der Leer
39556a71cc feat(autogpt_builder): Improve server error handling in AutoGPTServerAPI 2024-07-06 01:03:23 -06:00
Reinier van der Leer
1fb8c1adac fix(autogpt_builder): Fix date conversion in AutoGPTServerAPI client
Explicitly parse dates in JSON response object in `getFlowExecutionInfo(..)`
2024-07-06 01:01:41 -06:00
Swifty
37e1780d76 feat(agent server): Added websocket communication (#7291)
* Refactor on the link structure and API

* Refactor on the link structure and API

* Cleanup IDS

* Remove run_id

* Update block interface

* Added websockets dependency

* Adding routes

* Adding in websocket code

* Added cli to test the websocket

* Added an outline of the message formats I plan on using

* Added webscoket message types

* Updated poetry lock

* Adding subscription logic

* Updating subscription mechanisms

* update cli

* Send updates to server

* Get single execution data

* Fix type hints and renamed function

* add callback function and type hints

* fix type hints

* Updated manager to use property

* Added in websocket updates

* Added connection manager tests

* Added tests for ws_api

* trying to work around process issues

* test formatting

* Added a create and execute command for the cli

* Updated send format

* websockets command working

* cli update

* Added model.py

* feat: Update server.py and manager.py

- Initialize blocks in AgentServer lifespan context
- Remove unnecessary await in AgentServer get_graph_blocks
- Fix type hinting in manager.py
- Validate input data in validate_exec function

* fix tests

* feat: Add autogpt_server.blocks.sample and autogpt_server.blocks.text modules

This commit adds the `autogpt_server.blocks.sample` and `autogpt_server.blocks.text` modules to the project. These modules contain blocks that are used in the execution of the Autogpt server. The `ParrotBlock` and `PrintingBlock` classes are imported from `autogpt_server.blocks.sample`, while the `TextFormatterBlock` class is imported from `autogpt_server.blocks.text`. This addition enhances the functionality of the server by providing additional blocks for text processing and sample operations.

* fixed circular import issue

* Update readme

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-07-05 17:02:26 +02:00
Reinier van der Leer
0df2199c42 feat(autogpt_server): Add GET /graphs/{graph_id}/executions endpoint (#7330)
* feat(autogpt_builder): Add `AutoGPTServerAPI` client

* migrate API calls in Flow.tsx to new API client

* feat(autogpt_server): Add `/graphs/{graph_id}/executions` endpoint

In `data/execution.py`:
- Add `list_executions` function
- Rename `get_executions` to `get_execution_results`

In `server/server.py`:
- Add route
- Add `AgentServer.list_graph_runs`
- Rename `AgentServer.get_executions` to `get_run_execution_results`

* feat(autogpt_builder): Add `listFlowRunIDs` endpoint to `AutoGPTServerAPI` client

* Move `Schema` to `types.ts` and rename to `ObjectSchema`
2024-07-05 10:51:27 +01:00
Reinier van der Leer
200800312a feat(autogpt_builder): Add AutoGPTServerAPI client (#7328)
- Add fully typed `AutoGPTServerAPI` client in lib/autogpt_server_api.ts
- Migrate API calls in `Flow.tsx` to new API client
2024-07-05 11:03:59 +02:00
Reinier van der Leer
b7a90ce768 fix(autogpt_builder): Unignore lib/ and add lib/utils.ts 2024-07-04 17:40:59 -06:00
Reinier van der Leer
f359ed0983 feat(agent_builder): Add shad/cn UI library (#7316)
- Add shad/cn + Radix Icons + Tailwind
- move favicon.ico to static folder
- delete empty custominput.css

---------

Co-authored-by: Bentlybro <tomnoon9@gmail.com>
2024-07-05 08:14:45 +02:00
Aarushi
6456285753 feat(autogpt_builder) Update custom node to handle deeply nested structures (#7319)
* feat(rnd): Add type hint and strong pydantic type validation for block input/output + add reddit agent-blocks.

* feat(rnd): Add type hint and strong pydantic type validation for block input/output + add reddit agent-blocks.

* Fix reddit block

* Fix serialization

* Eliminate deprecated class property

* Remove RedditCredentialsBlock

* Cache jsonschema computation, add dictionary construction

* Add dict_split and list_split to output, add more blocks

* Add objc_split for completeness, int both input and output

* Update reddit block

* Add reddit test (untested)

* Resolved json issue on pydantic

* Add creds check on client

* Add dict <--> pydantic object flexibility

* Fix error retry

* Skip reddit test

* Code cleanup

* Chang prompt

* Make this work

* Fix linting

* Hide input_links and output_links from Node

* Add docs

* updating UI to handle deeply nested data structures for reddit usecase

* changing expected key in reddit post to comment

---------

Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co>
2024-07-04 17:54:41 +01:00
Zamil Majdy
833944e228 feat(rnd): Add strong pydantic type & composite data extraction for Block input/output schema + add reddit agent-blocks (#7288)
* feat(rnd): Add type hint and strong pydantic type validation for block input/output + add reddit agent-blocks.

* feat(rnd): Add type hint and strong pydantic type validation for block input/output + add reddit agent-blocks.

* Fix reddit block

* Fix serialization

* Eliminate deprecated class property

* Remove RedditCredentialsBlock

* Cache jsonschema computation, add dictionary construction

* Add dict_split and list_split to output, add more blocks

* Add objc_split for completeness, int both input and output

* Update reddit block

* Add reddit test (untested)

* Resolved json issue on pydantic

* Add creds check on client

* Add dict <--> pydantic object flexibility

* Fix error retry

* Skip reddit test

* Code cleanup

* Chang prompt

* Make this work

* Fix linting

* Hide input_links and output_links from Node

* Add docs

---------

Co-authored-by: Aarushi <50577581+aarushik93@users.noreply.github.com>
2024-07-04 11:37:28 +01:00
Reinier van der Leer
db0e726954 fix(agent, benchmark): Specify path_type=Path for CLI path options/arguments
Without `path_type=Path`, an option/argument with `type=click.Path()` will return a `str`.
2024-07-03 15:21:04 -06:00
Krzysztof Czerwinski
08612cc3bf refactor(agent, forge): Move tests from autogpt to forge (#7247)
- Move `autogpt/tests/vcr_cassettes` submodule to `forge/tests/vcr_cassettes`
- Remove not needed markers from `pyproject.toml`: `"requires_openai_api_key", "requires_huggingface_api_key"`
- Update relevant GitHub workflows

Moved relevant tests from `autogpt/tests` to appropiate directories:
- Component tests to their respective component dirs
- `autogpt/tests/unit/test_web_search.py` → `forge/components/web/test_search.py`
- `autogpt/tests/unit/test_git_commands.py` → `forge/components/git_operations/test_git_operations.py`
- `autogpt/tests/unit/test_file_operations.py` → `forge/components/file_manager/test_file_manager.py`
- `autogpt/tests/integration/test_image_gen.py` → `forge/components/image_gen/test_image_gen.py`
- `autogpt/tests/integration/test_web_selenium.py` → `forge/components/web/test_selenium.py`
- `autogpt/tests/integration/test_execute_code.py` → `forge/components/code_executor/test_code_executor.py`
- `autogpt/tests/unit/test_s3_file_storage.py` → `forge/file_storage/test_s3_file_storage.py`
- `autogpt/tests/unit/test_gcs_file_storage.py` → `forge/file_storage/test_gcs_file_storage.py`
- `autogpt/tests/unit/test_local_file_storage.py` → `forge/file_storage/test_local_file_storage.py`
- `autogpt/tests/unit/test_json.py` → `forge/json/test_parsing.py`
- `autogpt/tests/unit/test_logs.py` → `forge/logging/test_utils.py`
- `autogpt/tests/unit/test_url_validation.py` → `forge/utils/test_url_validator.py`
- `autogpt/tests/unit/test_text_file_parsers.py` → `forge/utils/test_file_operations.py`

- (Re)moved dependencies from `autogpt/pyproject.toml` that were only used in these test files.

Also:
- Added `load_env_vars` fixture to `forge/conftest.py`
- Fixed a type error in `forge/components/web/test_search.py`
- Merged `autogpt/.gitattributes` into root `.gitattributes`

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-07-04 02:09:01 +02:00
Reinier van der Leer
7415e24fc3 fix(forge): Add google-api-python-client-stubs and fix type error (#7303)
- Add `google-api-python-client-stubs` dev dependency
- Add version specification to `google-api-python-client` dependency
- Fix type error (by ignoring it) in forge/components/web/search.py
2024-07-03 23:26:37 +02:00
Dimitri Brooks
ecb054af56 feat: Add support for Claude 3.5 Sonnet (#7301)
add support for Claude 3.5 Sonnet
2024-07-03 16:02:14 +02:00
Krzysztof Czerwinski
39f70b0c83 docs(agent, forge): Update component configuration docs (#7232) 2024-07-03 09:50:38 +01:00
Krzysztof Czerwinski
7cb4d4a903 feat(forge, agent, benchmark): Upgrade to Pydantic v2 (#7280)
Update Pydantic dependency of `autogpt`, `forge` and `benchmark` to `^2.7`
[Pydantic Migration Guide](https://docs.pydantic.dev/2.7/migration/)

- Migrate usages of now-deprecated functions to their replacements
- Update `Field` definitions
  - Ellipsis `...` for required fields is deprecated
  - `Field` no longer supports extra `kwargs`, replace use of this feature with field metadata
- Replace `Config` class for specifying model configuration with `model_config = ConfigDict(..)`
- Removed `ModelContainer` in `BaseAgent`, component configuration dict is now directly serialized using Pydantic v2 helper functions
- Forked `agent-protocol` and updated `packages/client/python` for Pydantic v2 support: https://github.com/Significant-Gravitas/agent-protocol

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-07-02 20:45:32 +02:00
Aarushi
8feaced92e (rnd) Add support for multiple, dynamic inputs (#7296)
multi dynamic inputs
2024-07-02 09:56:33 +01:00
Reinier van der Leer
97e4cceb94 feat(agent, forge): Markdown-formatted history -> message history (#7228)
- Implement message based history in `ActionHistoryComponent`
- Make non-summarized message count configurable (`ActionHistoryComponent.full_message_count`)
- Run `ActionHistoryComponent` after `SystemComponent` so that history messages are last in the prompt
- Omit final instruction message if prompt already contains assistant messages
- Filter `raw_message` from `ActionProposal.schema()`

---------

Co-authored-by: Krzysztof Czerwinski <kpczerwinski@gmail.com>
2024-07-02 03:47:55 +02:00
Reinier van der Leer
2fa4fd23af fix(agent): Make build dependencies optional to unbreak install (#7298)
* Create optional `build` dependency group
* Move `cx-freeze` dependency to `build` dependency group

To include the `build` group when installing dependencies, run `poetry install --with=build`.

Fixes #7297 (`cx-freeze` dependency install fails after #7271)
2024-07-02 02:08:02 +02:00
angeousta
976ea7cd3c fix readme (broken link) (#7293)
Update README.md
2024-07-01 09:44:46 +02:00
Bently
d5ab83aa34 Updating api calls in AutoGPT builder (#7275)
* update api endpoints

* get multi-node working + fix node output

* updated multi-node running + re-add "wire" on rebuild

* Fix node data mapping

* removed getStatusValue
2024-06-28 10:39:26 +01:00
Reinier van der Leer
cbae8b5c14 chore(agent, forge, benchmark): Clean up dependencies (#7286)
* Remove unused dependencies
* Move dependencies for moved code from `autogpt` to `forge`
* Loosen dependency for `uvicorn` to improve compatibility
2024-06-28 02:21:36 +02:00
Aarushi
854080f7af ci(builder): Add CI for AutoGPT Builder (#7267)
Add a simple Node/NPM linting workflow for `rnd/autogpt_builder/`

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-06-28 01:30:34 +02:00
Reinier van der Leer
fbb3891e79 chore(forge, agent, benchmark): Update pytest-asyncio to v0.23.x
Resolves #7283
2024-06-27 14:09:36 -06:00
Reinier van der Leer
4d8ee65ca7 fix(pre-commit): Add benchmark/poetry.lock to "Typecheck - Benchmark" trigger file pattern 2024-06-27 14:05:12 -06:00
Aarushi
6093acc813 Add more functionality to Nodes (#7278)
updating node behaviour
2024-06-27 17:03:10 +01:00
Nicholas Tindle
785a40ff9d feat(server, autogpt): Add Example files and update build option (#7271) 2024-06-27 09:56:21 -05:00
Zamil Majdy
2bc22c5450 feat(rnd): Add support for dynamic input as list for AgentServer Block (#7268)
On AgentServer, To create a Block like StringFormatterBlock or LllmCallBlock, we need some way to dynamically link input pins and aggregate them into a single list input. This will give a better experience for the user to construct an input and link it from the output of the other nodes. The scope of this change is adding support for that in the least intrusive way.

Proposal
To differentiate the input list name and its singular entry we are using the $_<index> prefix. For example:
For the input items: list[int], you can set a pin items with values like [1,2,3,4]. But you can also add input pins like items_$_0 or items_$_4 with values 1 or 2, which will be appended to the items input in alphabetical order.
The execution engine will guarantee to wait for the execution until all the input pin value is produced, so input pin with list input will produce fix-sized list.
2024-06-27 21:51:34 +07:00
Aarushi
cdc658695f Add reactflow component in AutoGPT builder (#7270)
* Getting started with nextjs

* fix linting

* remove gitignore for package.json

* pulling in reactflow components

* updating css

* use environment variables

* clean up css / ui a lil

* Fixed nodes/run button animation

so they are always visible

---------

Co-authored-by: Bentlybro <tomnoon9@gmail.com>
2024-06-27 10:14:25 +01:00
Aarushi
dd960f9306 Add support for nextjs based app (#7266)
* Getting started with nextjs

* fix linting

* remove gitignore for package.json
2024-06-27 10:02:54 +01:00
Krzysztof Czerwinski
6e1c9d44a4 Update Agent Server README.md 2024-06-26 19:41:12 +02:00
Zamil Majdy
26bcb26bb7 feat(rnd): Refactor AgentServer Node Input/Output Relation & Block output interface (#7231)
### Background

The current implementation of AgentServer doesn't allow for a single pin to be connected to multiple nodes, this will be problematic when you have a single output node that needs to be propagated into many nodes. Or multiple nodes that possibly feed the data into a single pin (first come first serve).

This infra change is also part of the preparation for changing the `block` interface to return a stream of output instead of a single output.  Treating blocks as streams requires this capability.

### Changes 🏗️

* Update block run interface from returning `(output_name, output_data)` to `Generator[(output_name, output_data)]`
* Removed `agent` term in the API, replace it with `graph` for consistency.
* Reintroduced `AgentNodeExecutionInputOutput`. `AgentNodeExecution` input & output will be a list of `AgentNodeExecutionInputOutput` which describes the input & output data of its execution. Making an execution has 1-many relation to its input output data.
* Propagating the relation and block interface change into the execution engine.
2024-06-26 12:41:55 +02:00
Nicholas Tindle
f04ddceacf docs(forge): Update and rename QUICKSTART.md to FORGE-QUICKSTART.md (#7215) 2024-06-25 19:03:05 -05:00
Bently
3e01b19d6f chore(forge): Update duckduckgo-search to v6.1.7 (#7254)
This should (for now) mitigate the RateLimitErrors that people have been experiencing.
---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-06-25 03:24:10 +02:00
Zamil Majdy
9f1e521857 feat(rnd): Add AutoGPT server scheduling service (#7226)
### Background

Agent execution should be able to be triggered in a recurring manner.
This PR introduced an ExecutionScheduling service, a process responsible for managing the execution schedule and triggering its execution based on a predefined cron expression.

### Changes 🏗️

* Added `scheduler.py` / `ExecutionScheduler` implementation.
* Added scheduler test.
* Added `AgentExecutionSchedule` table and its logical model & prisma queries.
* Moved `add_execution` from API server to `execution_manager`
2024-06-24 09:41:02 +07:00
Zamil Majdy
d9226888b2 feat(rnd): Add node metadata on Agent Server Node object (#7237) 2024-06-21 17:50:50 +01:00
Zamil Majdy
210d7738b9 feat(rnd): Add IPC support on autogpt_server (#7212)
### Background

This PR adds support on IPC on autogpt_server.
To make this happen, there are a couple of refactoring efforts being made (will be described in the `Changes` section).
Currently, there are three independent processes:

```
AgentServer ----> ExecutionManager
    | 
     --> ExecutionScheduler
```


### Changes 🏗️

* Added Pyro5 for IPC support.
* Introduced `AppService`: a class to construct an independent process that can expose a method to other running processes (this is analogous to a microservice).
* Introduced `AppProcess`: used by `AppService` a class for creating a child process that can be executed in the background.
* Adapting existing codebase to user `AppService`.
2024-06-19 22:49:47 +07:00
Krzysztof Czerwinski
c19ab2b24f feat(forge): Component-specific configuration (#7170)
Remove many env vars and use component-level configuration that could be loaded from file instead.

### Changed

- `BaseAgent` provides `serialize_configs` and `deserialize_configs` that can save and load all component configuration as json `str`. Deserialized components/values overwrite existing values, so not all values need to be present in the serialized config.
- Decoupled `forge/content_processing/text.py` from `Config`
- Kept `execute_local_commands` in `Config` because it's needed to know if OS info should be included in the prompt
- Updated docs to reflect changes
- Renamed `Config` to `AppConfig`

### Added

- Added `ConfigurableComponent` class for components and following configs:
  - `ActionHistoryConfiguration`
  - `CodeExecutorConfiguration`
  - `FileManagerConfiguration` - now file manager allows to have multiple agents using the same workspace
  - `GitOperationsConfiguration`
  - `ImageGeneratorConfiguration`
  - `WebSearchConfiguration`
  - `WebSeleniumConfiguration`
- `BaseConfig` in `forge` and moved `Config` (now inherits from `BaseConfig`) back to `autogpt`
- Required `config_class` attribute for the `ConfigurableComponent` class that should be set to configuration class for a component
`--component-config-file` CLI option and `COMPONENT_CONFIG_FILE` env var and field in `Config`. This option allows to load configuration from a specific file, CLI option takes precedence over env var.
- Added comments to config models

### Removed

- Unused `change_agent_id` method from `FileManagerComponent`
- Unused `allow_downloads` from `Config` and CLI options (it should be in web component config if needed)
- CLI option `--browser-name` (the option is inside `WebSeleniumConfiguration`)
- Unused `workspace_directory` from CLI options
- No longer needed variables from `Config` and docs
- Unused fields from `Config`: `image_size`, `audio_to_text_provider`, `huggingface_audio_to_text_model`
- Removed `files` and `workspace` class attributes from `FileManagerComponent`
2024-06-19 09:14:01 +01:00
Reinier van der Leer
02dc198a9f fix(agent): Fix resumption from mid-cycle state in CLI mode (#7224)
When an agent is resumed from a mid-cycle state (having made a proposal but not executed it yet), we need to use the previously determined `current_episode.action` proposal instead of calling `agent.propose_action()` again.
2024-06-18 19:30:24 +02:00
Reinier van der Leer
227cf41612 fix(agent, forge): Make LLM API key check provider-agnostic (#7220)
* Rename `assert_config_has_openai_api_key` to `assert_config_has_required_llm_api_keys`
* Make OpenAI credential check conditional (only if an OpenAI model is selected in the config)
* Implement checks for Groq and Anthropic credentials
* Use API calls for Groq and OpenAI credential checks to make sure the keys are valid
2024-06-14 20:56:03 +02:00
Reinier van der Leer
66f373fb57 docs: Update CONTRIBUTING.md
- Add reference to Code Guidelines
- Reorder list of directives to more logical order
2024-06-14 07:45:14 -07:00
Nicholas Tindle
8f3ed733b9 chore(rnd): Fix warning during server tests (#7213) 2024-06-14 06:56:53 -05:00
Krzysztof Czerwinski
9f71cd2437 feat(forge): Unbreak forge agent (#7196)
Revert some changes to fix forge agent and enable components support.
- Rename forge `Agent` to `ProtocolAgent`
- Bring back and update `forge/app.py` and `forge/agent/forge_agent.py`
- `ForgeAgent` inherits from `BaseAgent`, supports component execution and runs the same pipelines as autogpt Agent
- Update forge version from 0.1.0 to 0.2.0
- Update code comments
2024-06-12 13:45:00 +01:00
Nicholas Tindle
6ec708c771 ci(server): Agent Server CI (#7193) 2024-06-12 00:29:23 +07:00
Zamil Majdy
af3febd79f feat(rnd): Add missing code on execution logic for AutoGPT Server (#7209)
Add missing changes from previous commit
2024-06-11 16:15:52 +02:00
SwiftyOS
60e0d4c530 fix(rnd): fixed cli repeated star cmd quality of life 2024-06-11 13:10:53 +02:00
SwiftyOS
4aeae53a61 fixed typo 2024-06-11 12:29:13 +02:00
SwiftyOS
d5c4eca739 Check if pid exists 2024-06-11 12:27:19 +02:00
SwiftyOS
1e4ef7b313 chore(benchmark): delete notebooks 2024-06-11 11:30:46 +02:00
Swifty
fd18877dae feat(rnd): CLI to Run and Stop the Server (#7195) 2024-06-11 11:21:34 +02:00
Nicholas Tindle
c754ecd5d1 fix(docs): bad link from Options to built in components config (#7207) 2024-06-10 17:57:29 +01:00
Zamil Majdy
e688cc31f0 feat(rnd): Implement agent block execution logic for AutoGPT Server (#7194)
### Background

This PR implements the main logic of the block execution engine for AutoGPT-Server.
An integration test is added to test the behavior.

*What you can do now with this PR*:
You can manually create a graph, by using the existing blocks as nodes (or write your own). Then execute the graph with an input.

*What you can't do yet*:
Listen to the graph execution result/update (you can follow the `AgentNodeExecution` table result, though).

### Changes 🏗️
* Split `data.py` (model file) into three modules:
    * `execution`: a model for node execution.
    * `graph`: a model for graph structure.
    * `block`: a model for agent block/component.
* Implemented executor main logic
* Simplify db structure:
    * Remove `AgentBlockInputOutput` in favor of `inputSchema` & `outputSchema` using serialized json/dict structure.
    * Remove `id` on `AgentBlock` in favor of using name (class name of the block) as its identifier.
    * Added `constantInput` column for `AgentNode` for hard-coded input/block configuration. Hence, removing`executionStateData` on `AgentNodeExecution`.
    * Rename AgentNodeLink input/output to source/sink to avoid confusion
* Change multithreading to multiprocessing, to allow the use of multiple `prisma` asynchronous client.
2024-06-10 19:30:34 +07:00
Nicholas Tindle
b803e42189 feat(docs): add example uses and description of autogpt to the readme (#7205) 2024-06-10 13:08:55 +01:00
Reinier van der Leer
04769c54e4 docs: Update CONTRIBUTING.md
- Add links to roadmap
- Disable links to kanban board (which currently is not in active use)
- Clarify instruction to not submit broken code
2024-06-09 23:43:25 +02:00
Reinier van der Leer
8f18aebf90 Update wiki links to new location (Nexus/wiki -> AutoGPT/wiki) 2024-06-09 23:13:25 +02:00
github-actions[bot]
8e5535157f feat(frontend): Update frontend build in master (#7203)
Update frontend build based on commit 8f43a346e9

Co-authored-by: Pwuts <12185583+Pwuts@users.noreply.github.com>
2024-06-08 18:55:01 -05:00
Reinier van der Leer
8f43a346e9 fix(frontend): Sync request models up with forge.agent_protocol (#7202)
Frontend broke in #7171 because of changes to the request models in `forge.agent_protocol`. This PR unbreaks it.

Changes:
- Make `input` required on `TaskRequestBody` and `StepRequestBody`
- Amend `toJson()` on `TaskRequestBody` and `StepRequestBody` to omit attributes with `null` value
2024-06-08 17:09:01 -05:00
Reinier van der Leer
f2cb553c9a chore(agent, forge, benchmark): Update pyright to v1.1.366 2024-06-08 21:48:25 +02:00
Reinier van der Leer
4c17277539 chore(agent, forge): Update duckduckgo-search to v5.3.1 2024-06-08 21:44:39 +02:00
Krzysztof Czerwinski
2cd914d366 chore(agent): Remove LogCycleHandler (#7192)
- Remove no longer needed LogCycleHandler class and its usage in Agent
2024-06-06 11:47:30 +01:00
Swifty
39084192ff fix(agent server): Update file layout for autogpt server (#7190) 2024-06-05 12:53:54 +02:00
Nicholas Tindle
23dfdad454 feat(autogpt,autogpt_server): Build AutoGPT's Constituent Parts for deployment (#7188) 2024-06-05 12:14:08 +07:00
Zamil Majdy
4de0fd8cbd feat(db): Initialize Database Schema for AutoGPT server (#7168)
### Background

Introduced initial database schema for AutoGPT server.
It currently consists of 7 tables:

* `AgentGraph`: This model describes the Agent Graph/Flow (Multi Agent System).
    * `AgentNode`: This model describes a single node in the Agent Graph/Flow (Multi Agent System).
        * `AgentNodeLink`: This model describes the link between two AgentNodes.
        * `AgentNodeExecution`: This model describes the execution of an AgentNode.
* `AgentBlock`: This model describes a component that will be executed by the AgentNode (all the details required, like name, code, input/output).
    * `AgentBlockInputOutput`: This model describes the output (produced event) or input (consumed event) of an AgentBlock.
* `FileDefinition`: This model describe a file that can be used as input/output of an AgentNodeExecution.

### Changes 🏗️

* Add Prisma
* Add sqlite3
* Initialize database.
2024-06-05 12:09:58 +07:00
Swifty
e3a5663a05 fix(agent server): Updated function names and type checking (#7185)
* fix agent server

* renamed functions

* simplified dir naming
2024-06-04 11:02:38 +02:00
SwiftyOS
246bc850a1 deleted nextgenautogpt 2024-06-04 09:56:42 +02:00
Reinier van der Leer
319232568a fix+docs(agent): Update LLM access instructions & remove GPT-specific flags (#7183)
* Update instructions to set up OpenAI / GPT-4 access
* Add instructions to set up Anthropic access
* Add instructions to set up Groq access
* Remove GPT-specific `--gpt3only`, `--gpt4only` CLI flags and related logic
* Remove duplicate config instructions from docker setup page, replace it by a link to the standard setup instructions
2024-06-03 08:51:46 -05:00
SwiftyOS
f71d97dd48 restored nextgenautogpt 2024-06-03 11:42:18 +02:00
Zamil Majdy
7a932cdf00 feat(rnd): add FastAPI support to existing project outline (#7165)
### Background

###### Project Outline
Currently, the project mainly consists of these components:

*agent_api*
A component that will expose API endpoints for the creation & execution of agents.
This component will make connections to the database to persist and read the agents.
It will also trigger the agent execution by pushing its execution request to the ExecutionQueue.

*agent_executor*
A component that will execute the agents.
This component will be a pool of processes/threads that will consume the ExecutionQueue and execute the agent accordingly. 
The result and progress of its execution will be persisted in the database.

###### How to test
Execute `poetry run app`. 
Access the swagger page `http://localhost:8000/docs`, there is one API to trigger an execution of one dummy slow task, you fire the API a couple of times and see the `agent_executor` executes the multiple slow tasks concurrently by the pool of Python processes.
The pool size is currently set to `5` (hardcoded in app.py, the code entry point).

##### Changes 🏗️

* Initialize FastAPI for the AutoGPT server project.
* Reduced number of queues to 1 and abstracted into `ExecutionQueue` class.
* Reduced the number of main components into two `api` and `executor`.
2024-06-02 23:39:01 -05:00
Reinier van der Leer
4e76768bc9 refactor(forge/llm): Create BaseOpenAIProvider -> deduplicate GroqProvider & OpenAIProvider implementation (#7178)
- Add `_BaseOpenAIProvider`, `BaseOpenAIChatProvider`, and `BaseOpenAIEmbeddingProvider`, which implement the shared functionality of OpenAI-like providers, e.g. `GroqProvider` and `OpenAIProvider`
- (Re)move as much code as possible from `GroqProvider` and `OpenAIProvider` by rebasing them on `BaseOpenAI(Chat|Embedding)Provider`

Also:
- Rename `get_available_models()` to `get_available_chat_models()` on `BaseChatModelProvider`
- Add `get_available_models()` to `BaseModelProvider`
- Add `get_available_embedding_models()` to `BaseEmbeddingModelProvider`
- Move common `fix_failed_parse_tries` config attribute into base `ModelProviderConfiguration`
2024-06-03 01:29:24 +02:00
RainRat
cb9ad6f64d fix typos (#7123)
* fix typos in various places

* Revert changes to NOTICES

---------

Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
2024-05-31 11:16:23 +02:00
Reinier van der Leer
16df151977 fix(agent): Disable profile generator -> speed up agent setup (#7121)
* Add default AutoGPT profile to ai_profile.py & disable profile generator

* Disable custom AI profile generation in agent_protocol_server.py
   - Replace `generate_agent_for_task` by `create_agent`
   - Make `ai_profile` parameter on `create_agent` optional (use default `AIProfile` if not passed)

* Generalize example call in profile_generator.py
   Currently it's specified in an OpenAI-specific format, which might adversely affect performance with other providers.

* Remove dead `AIProfile.api_budget` attribute

* Remove `agent.ai_profile` and `agent.directives` attributes, and replace usages with `agent.state.*`
   This prevents potential state inconsistency between `agent` and `agent.state` when other values are assigned to `agent.ai_profile` and `agent.directives`
2024-05-31 10:34:33 +02:00
rekwet
f67c2147a7 feat(docs): Update QUICKSTART.md (#7104)
Updated the grammar and sentence construction of the Agent Start section.
2024-05-30 22:58:08 -05:00
Reinier van der Leer
738c8ffff0 fix(benchmark): Improve output and debug logging of pytest evals 2024-05-30 17:16:17 +02:00
Reinier van der Leer
f107ff8cf0 Set up unified pre-commit + CI w/ linting + type checking & FIX EVERYTHING (#7171)
- **FIX ALL LINT/TYPE ERRORS IN AUTOGPT, FORGE, AND BENCHMARK**

### Linting
- Clean up linter configs for `autogpt`, `forge`, and `benchmark`
- Add type checking with Pyright
- Create unified pre-commit config
- Create unified linting and type checking CI workflow

### Testing
- Synchronize CI test setups for `autogpt`, `forge`, and `benchmark`
   - Add missing pytest-cov to benchmark dependencies
- Mark GCS tests as slow to speed up pre-commit test runs
- Repair `forge` test suite
  - Add `AgentDB.close()` method for test DB teardown in db_test.py
  - Use actual temporary dir instead of forge/test_workspace/
- Move left-behind dependencies for moved `forge`-code to from autogpt to forge

### Notable type changes
- Replace uses of `ChatModelProvider` by `MultiProvider`
- Removed unnecessary exports from various __init__.py
- Simplify `FileStorage.open_file` signature by removing `IOBase` from return type union
  - Implement `S3BinaryIOWrapper(BinaryIO)` type interposer for `S3FileStorage`

- Expand overloads of `GCSFileStorage.open_file` for improved typing of read and write modes

  Had to silence type checking for the extra overloads, because (I think) Pyright is reporting a false-positive:
  https://github.com/microsoft/pyright/issues/8007

- Change `count_tokens`, `get_tokenizer`, `count_message_tokens` methods on `ModelProvider`s from class methods to instance methods

- Move `CompletionModelFunction.schema` method -> helper function `format_function_def_for_openai` in `forge.llm.providers.openai`

- Rename `ModelProvider` -> `BaseModelProvider`
- Rename `ChatModelProvider` -> `BaseChatModelProvider`
- Add type `ChatModelProvider` which is a union of all subclasses of `BaseChatModelProvider`

### Removed rather than fixed
- Remove deprecated and broken autogpt/agbenchmark_config/benchmarks.py
- Various base classes and properties on base classes in `forge.llm.providers.schema` and `forge.models.providers`

### Fixes for other issues that came to light
- Clean up `forge.agent_protocol.api_router`, `forge.agent_protocol.database`, and `forge.agent.agent`

- Add fallback behavior to `ImageGeneratorComponent`
   - Remove test for deprecated failure behavior

- Fix `agbenchmark.challenges.builtin` challenge exclusion mechanism on Windows

- Fix `_tool_calls_compat_extract_calls` in `forge.llm.providers.openai`

- Add support for `any` (= no type specified) in `JSONSchema.typescript_type`
2024-05-28 05:04:21 +02:00
Reinier van der Leer
2c13a2706c fix(agent, forge): Update tiktoken for GPT-4o support
and remove `tiktoken` from autogpt/pyproject.toml since it isn't a direct dependency anymore
2024-05-27 13:10:19 +02:00
Nicholas Tindle
46c1762fb0 feat(forge/llm): Add basic support for GPT-4o (#7169)
* Add `gpt-4o`
* Add `gpt-4o-2024-05-13`

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-05-24 22:35:48 +02:00
Krzysztof Czerwinski
4e02f7ddb5 feat(forge): Add mount method to FileStorage & execute code in mounted workspace (#7115)
* Add `FileStorage.mount()` method, which mounts (part of) the workspace to a local path
  * Add `watchdog` library to watch file changes in mount
* Amend `CodeExecutorComponent`
  * Amend `execute_python_file` to execute Python files in a workspace mount
  * Amend `execute_python_code` to create temporary .py file in workspace instead of as a local file
  * Add support for `Path` argument to `filename` parameter on `execute_python_file`

* Fix `test_execute_python_code` (by making it async)
2024-05-24 21:34:22 +02:00
Reinier van der Leer
edcbbbce25 feat(forge/llm): Add GroqProvider (#7130)
* Add `GroqProvider` in `forge.llm.providers.groq`
  * Add to `llm.providers.multi`
  * Add `groq` dependency (v0.8.0)

* Update AutoGPT docs & config template
  * Update .env.template
  * Update docs
2024-05-24 16:34:51 +02:00
Krzysztof Czerwinski
cdae98d36b fix(ci): Fix cli and CI (#7166)
- Add a special case for cli to handle autogpt and forge agent
- Remove forge agent from smoke test ci
2024-05-22 17:18:00 +01:00
Reinier van der Leer
5292736779 fix(agent): Unbreak docker builds after repo restructure (#7164)
- Move `autogpt/Dockerfile` to `Dockerfile.autogpt`
  - Write new selective `.dockerignore` (in repo root) to keep build context clean
  - Amend `autogpt/docker-compose.yml` and all `autogpt-docker-*.yml` workflows accordingly

- Include `forge/` in docker build context so it can be used as a path dependency

- Include `frontend/` in docker builds
2024-05-22 18:11:16 +02:00
Reinier van der Leer
e16d58af0c mark docs/_javascript/** as linguist-vendored 2024-05-22 16:44:14 +02:00
Reinier van der Leer
f80bc0a523 fix marking frontend builds as linguist-generated to exclude from language stats 2024-05-22 16:38:56 +02:00
Swifty
a5ee640935 feat(rnd): Add template of the next gen autogpt project (#7162)
* feat(rnd): Add template of the next gen autogpt project

* fix(rnd): fix typo

* fix(rnd): typo

* Added multi-processor arch

* feat(rnd) add bi-direction communication

* Updated project structure
2024-05-22 14:36:38 +02:00
Krzysztof Czerwinski
4c325724ec refactor(autogpt, forge): Remove autogpts directory (#7163)
- Moved `autogpt` and `forge` to project root
- Removed `autogpts` directory
- Moved and renamed submodule `autogpts/autogpt/tests/vcr_cassettes` to `autogpt/tests/vcr_cassettes`
- When using CLI agents will be created in `agents` directory (instead of `autogpts`)
- Renamed relevant docs, code and config references from `autogpts/[forge|autogpt]` to `[forge|autogpt]` and from `*../../*` to `*../*`
- Updated `CODEOWNERS`, GitHub Actions and Docker `*.yml` configs
- Updated symbolic links in `docs`
2024-05-22 13:08:54 +01:00
Krzysztof Czerwinski
3475aaf384 refactor(agent): Remove unused autogpt code (#7112)
Remove unused `autogpt` code and reorganize its file structure.

* Moved:
  * `autogpt/agent_manager/agent_manager.py` to `autogpt/agents/agent_manager.py`, so the dir `agent_manager` was removed
  * `dump_prompt` from `autogpt.core.runner.client_lib.logging.helpers` to `forge/llm/prompting/utils.py`
  * `coroutine` decorator from `autogpt.core.runner.client_lib.utils` to `autogpt/app/utils.py`
* Removed within `autogpt`:
  * Memory-related code from multiple files (not used), including `memory/*`
  * Memory-related config entries/env vars: `memory_backend`, `memory_index`, `redis_host`, `redis_port`, `redis_password`, `wipe_redis_on_start`
  * `core` files, from failed re-arch:
    * `*.md` docs
    * `core/ability/*`
    * `core/agent/*`
    * `core/memory/*`
    * `core/planning/*`
    * `core/plugin/*`
    * `core/workspace/*`
    * `core/runner/*` (`dump_prompt` and `coroutine` were moved)
  * Related tests
* Updated relevant docs
2024-05-22 09:43:15 +01:00
Krzysztof Czerwinski
bcc5282aba refactor(forge): Clean forge (#7117)
Remove unused `forge` code and improve structure of `forge`.

* Put all Agent Protocol stuff together in `forge.agent_protocol`
  * ... including `forge.agent_protocol.database` (was `forge.db`)
* Remove duplicate/unused parts from `forge`
  * `forge.actions`, containing old commands; replaced by `forge.components` from `autogpt`
  * `forge/agent.py` (the old one, `ForgeAgent`)
  * `forge/app.py`, which was used to serve and run the `ForgeAgent`
  * `forge/db.py` (`ForgeDatabase`), which was used for `ForgeAgent`
  * `forge/llm.py`, which has been replaced by new `forge.llm` module which was ported from `autogpt.core.resource.model_providers`
  * `forge.memory`, which is not in use and not being maintained
  * `forge.sdk`, much of which was moved into other modules and the rest is deprecated
  * `AccessDeniedError`: unused
  * `forge_log.py`: replaced with `logging`
  * `validate_yaml_file`: not needed
  * `ai_settings_file` and associated loading logic and env var `AI_SETTINGS_FILE`: unused
  * `prompt_settings_file` and associated loading logic and env var `PROMPT_SETTINGS_FILE`: default directives are now provided by the `SystemComponent`
    * `request_user_double_check`, which was only used in `AIDirectives.load`
  * `TypingConsoleHandler`: not used
2024-05-21 19:18:47 +01:00
Swifty
2cca4fa47f clean(benchmark): Remove Depreciated Challenges (#7144)
* Remove depreciated challanges

* Update license and pyproject.toml
2024-05-20 15:01:36 +02:00
Krzysztof Czerwinski
e8d7dfa386 refactor(agent, forge): Move library code from autogpt to forge (#7106)
Moved from `autogpt` to `forge`:
- `autogpt.config`          -> `forge.config`
- `autogpt.processing`      -> `forge.content_processing`
- `autogpt.file_storage`    -> `forge.file_storage`
- `autogpt.logs`            -> `forge.logging`
- `autogpt.speech`          -> `forge.speech`
- `autogpt.agents.(base|components|protocols)`  -> `forge.agent.*`
- `autogpt.command_decorator`                   -> `forge.command.decorator`
- `autogpt.models.(command|command_parameter)`  -> `forge.command.(command|parameter)`
- `autogpt.(commands|components|features)`      -> `forge.components`
- `autogpt.core.utils.json_utils`           -> `forge.json.parsing`
- `autogpt.prompts.utils`                   -> `forge.llm.prompting.utils`
- `autogpt.core.prompting.(base|schema|utils)`    -> `forge.llm.prompting.*`
- `autogpt.core.resource.model_providers`   -> `forge.llm.providers`
- `autogpt.llm.providers.openai` + `autogpt.core.resource.model_providers.utils`
                                            -> `forge.llm.providers.utils`
- `autogpt.models.action_history:Action*`   -> `forge.models.action`
- `autogpt.core.configuration.schema`       -> `forge.models.config`
- `autogpt.core.utils.json_schema`          -> `forge.models.json_schema`
- `autogpt.core.resource.schema`            -> `forge.models.providers`
- `autogpt.models.utils`                    -> `forge.models.utils`
- `forge.sdk.(errors|utils)` + `autogpt.utils.(exceptions|file_operations_utils|validators)`
                        -> `forge.utils.(exceptions|file_operations|url_validator)`
- `autogpt.utils.utils` -> `forge.utils.const` + `forge.utils.yaml_validator`

Moved within `forge`:
- forge/prompts/* -> forge/llm/prompting/*

The rest are mostly import updates, and some sporadic removals and necessary updates (for example to fix circular deps):
- Changed `CommandOutput = Any` to remove coupling with `ContextItem` (no longer needed)
- Removed unused `Singleton` class
- Reluctantly moved `speech` to forge due to coupling (tts needs to be changed into component)
- Moved `function_specs_from_commands` and `core/resource/model_providers` to `llm/providers` (resources were a `core` thing and are no longer relevant)
- Keep tests in `autogpt` to reduce changes in this PR
- Removed unused memory-related code from tests
- Removed duplicated classes: `FancyConsoleFormatter`, `BelowLevelFilter`
- `prompt_settings.yaml` is in both `autogpt` and `forge` because for some reason doesn't work when placed in just one dir (need to be taken care of)
- Removed `config` param from `clean_input`, it wasn't used and caused circular dependency
- Renamed `BaseAgentActionProposal` to `ActionProposal`
- Updated `pyproject.toml` in `forge` and `autogpt`
- Moved `Action*` models from `forge/components/action_history/model.py` to `forge/models/action.py` as those are relevant to the entire agent and not just `EventHistoryComponent` + to reduce coupling
- Renamed `DEFAULT_ASK_COMMAND` to `ASK_COMMAND` and `DEFAULT_FINISH_COMMAND` to `FINISH_COMMAND`
- Renamed `AutoGptFormatter` to `ForgeFormatter` and moved to `forge`

Includes changes from PR https://github.com/Significant-Gravitas/AutoGPT/pull/7148
---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-05-16 00:37:53 +02:00
Zamil Majdy
4f81246fd4 Fix poetry install issue on ARM64 & python 3.12 (#7145) 2024-05-14 09:10:55 -05:00
SwiftyOS
4fe62b8063 new frontend build as ci is broke 2024-05-11 09:22:59 +02:00
SwiftyOS
b3967fd597 remove leaderboard 2024-05-11 09:15:09 +02:00
SwiftyOS
1f05881283 fix: typo 2024-05-11 08:45:51 +02:00
SwiftyOS
a9afb3cbff removed git requirement from cli 2024-05-11 08:41:52 +02:00
Reinier van der Leer
c562b3b6a3 unbreak ./run agent create
"If we had done this in Swift it would've never happened" ~Craig Swift

                ____
              / . .\
              \  ---<
               \  /
       ________/ /
    -=:___________/
2024-05-10 12:53:57 +02:00
Reinier van der Leer
b0cbf711dc feat(agent): Persist AgentContext in Agent.state (#7125)
Persist the agent's `AgentContext` so that it works in rehydrated agent instances. This makes context usable in the `AgentProtocolServer`, where the agent instance is loaded and destroyed for every step.

- Make `AgentContext` a Pydantic model
- Add `context` parameter to `ContextComponent.__init__` so we can pass in an existing instance
- Add `context: AgentContext` to `AgentSettings` so it is persisted
- Add `type` attribute to `ContextItem` implementations as a discriminator
- Rename `ContextItem` base class to `BaseContextItem` and make new `ContextItem` type alias (union of the implementation types)
2024-05-10 09:30:12 +02:00
Reinier van der Leer
7e02cfdc9f fix(agent): Fix type propagation of Command and @command when used on methods (#7124) 2024-05-09 11:39:09 +02:00
Swifty
34fdbaa26b Remove arena (#7134)
* remove arena

* refactor: Remove Arena intake workflow

* Remove all mention of the arena

* remove evo.ninja
2024-05-09 11:36:40 +02:00
Swifty
818d391284 Remove arena submission from cli (#7137) 2024-05-09 11:27:16 +02:00
3847 changed files with 254251 additions and 89918 deletions

61
.dockerignore Normal file
View File

@@ -0,0 +1,61 @@
# Ignore everything by default, selectively add things to context
*
# Platform - Libs
!autogpt_platform/autogpt_libs/autogpt_libs/
!autogpt_platform/autogpt_libs/pyproject.toml
!autogpt_platform/autogpt_libs/poetry.lock
!autogpt_platform/autogpt_libs/README.md
# Platform - Backend
!autogpt_platform/backend/backend/
!autogpt_platform/backend/migrations/
!autogpt_platform/backend/schema.prisma
!autogpt_platform/backend/pyproject.toml
!autogpt_platform/backend/poetry.lock
!autogpt_platform/backend/README.md
# Platform - Market
!autogpt_platform/market/market/
!autogpt_platform/market/scripts.py
!autogpt_platform/market/schema.prisma
!autogpt_platform/market/pyproject.toml
!autogpt_platform/market/poetry.lock
!autogpt_platform/market/README.md
# Platform - Frontend
!autogpt_platform/frontend/src/
!autogpt_platform/frontend/public/
!autogpt_platform/frontend/package.json
!autogpt_platform/frontend/yarn.lock
!autogpt_platform/frontend/tsconfig.json
!autogpt_platform/frontend/README.md
## config
!autogpt_platform/frontend/*.config.*
!autogpt_platform/frontend/.env.*
# Classic - AutoGPT
!classic/original_autogpt/autogpt/
!classic/original_autogpt/pyproject.toml
!classic/original_autogpt/poetry.lock
!classic/original_autogpt/README.md
!classic/original_autogpt/tests/
# Classic - Benchmark
!classic/benchmark/agbenchmark/
!classic/benchmark/pyproject.toml
!classic/benchmark/poetry.lock
!classic/benchmark/README.md
# Classic - Forge
!classic/forge/
!classic/forge/pyproject.toml
!classic/forge/poetry.lock
!classic/forge/README.md
# Classic - Frontend
!classic/frontend/build/web/
# Explicitly re-ignore some folders
.*
**/__pycache__

9
.gitattributes vendored
View File

@@ -1,3 +1,10 @@
frontend/build/* linguist-generated
classic/frontend/build/** linguist-generated
**/poetry.lock linguist-generated
docs/_javascript/** linguist-vendored
# Exclude VCR cassettes from stats
classic/forge/tests/vcr_cassettes/**/**.y*ml linguist-generated
* text=auto

12
.github/CODEOWNERS vendored
View File

@@ -1,5 +1,7 @@
.github/workflows/ @Significant-Gravitas/devops
autogpts/autogpt/ @Significant-Gravitas/maintainers
autogpts/forge/ @Significant-Gravitas/forge-maintainers
benchmark/ @Significant-Gravitas/benchmark-maintainers
frontend/ @Significant-Gravitas/frontend-maintainers
* @Significant-Gravitas/maintainers
.github/workflows/ @Significant-Gravitas/devops
classic/forge/ @Significant-Gravitas/forge-maintainers
classic/benchmark/ @Significant-Gravitas/benchmark-maintainers
classic/frontend/ @Significant-Gravitas/frontend-maintainers
autogpt_platform/infra @Significant-Gravitas/devops
.github/CODEOWNERS @Significant-Gravitas/admins

View File

@@ -16,7 +16,7 @@ body:
[discussions]: https://github.com/Significant-Gravitas/AutoGPT/discussions
[#tech-support]: https://discord.com/channels/1092243196446249134/1092275629602394184
[existing issues]: https://github.com/Significant-Gravitas/AutoGPT/issues?q=is%3Aissue
[wiki page on Contributing]: https://github.com/Significant-Gravitas/Nexus/wiki/Contributing
[wiki page on Contributing]: https://github.com/Significant-Gravitas/AutoGPT/wiki/Contributing
- type: checkboxes
attributes:
@@ -88,14 +88,16 @@ body:
- type: dropdown
attributes:
label: Do you use OpenAI GPT-3 or GPT-4?
label: What LLM Provider do you use?
description: >
If you are using AutoGPT with `--gpt3only`, your problems may be caused by
If you are using AutoGPT with `SMART_LLM=gpt-3.5-turbo`, your problems may be caused by
the [limitations](https://github.com/Significant-Gravitas/AutoGPT/issues?q=is%3Aissue+label%3A%22AI+model+limitation%22) of GPT-3.5.
options:
- GPT-3.5
- GPT-4
- GPT-4(32k)
- Azure
- Groq
- Anthropic
- Llamafile
- Other (detail in issue)
validations:
required: true
@@ -126,6 +128,13 @@ body:
label: Specify the area
description: Please specify the area you think is best related to the issue.
- type: input
attributes:
label: What commit or version are you using?
description: It is helpful for us to reproduce to know what version of the software you were using when this happened. Please run `git log -n 1 --pretty=format:"%H"` to output the full commit hash.
validations:
required: true
- type: textarea
attributes:
label: Describe your issue.

View File

@@ -5,7 +5,7 @@ body:
- type: markdown
attributes:
value: |
First, check out our [wiki page on Contributing](https://github.com/Significant-Gravitas/Nexus/wiki/Contributing)
First, check out our [wiki page on Contributing](https://github.com/Significant-Gravitas/AutoGPT/wiki/Contributing)
Please provide a searchable summary of the issue in the title above ⬆️.
- type: checkboxes
attributes:

View File

@@ -1,31 +1,38 @@
### Background
<!-- Clearly explain the need for these changes: -->
### Changes 🏗️
<!-- Concisely describe all of the changes made in this pull request: -->
### PR Quality Scorecard ✨
### Checklist 📋
<!--
Check out our contribution guide:
https://github.com/Significant-Gravitas/Nexus/wiki/Contributing
#### For code changes:
- [ ] I have clearly listed my changes in the PR description
- [ ] I have made a test plan
- [ ] I have tested my changes according to the test plan:
<!-- Put your test plan here: -->
- [ ] ...
1. Avoid duplicate work, issues, PRs etc.
2. Also consider contributing something other than code; see the [contribution guide]
for options.
3. Clearly explain your changes.
4. Avoid making unnecessary changes, especially if they're purely based on personal
preferences. Doing so is the maintainers' job. ;-)
-->
<details>
<summary>Example test plan</summary>
- [ ] Create from scratch and execute an agent with at least 3 blocks
- [ ] Import an agent from file upload, and confirm it executes correctly
- [ ] Upload agent to marketplace
- [ ] Import an agent from marketplace and confirm it executes correctly
- [ ] Edit an agent from monitor, and confirm it executes correctly
</details>
- [x] Have you used the PR description template? &ensp; `+2 pts`
- [ ] Is your pull request atomic, focusing on a single change? &ensp; `+5 pts`
- [ ] Have you linked the GitHub issue(s) that this PR addresses? &ensp; `+5 pts`
- [ ] Have you documented your changes clearly and comprehensively? &ensp; `+5 pts`
- [ ] Have you changed or added a feature? &ensp; `-4 pts`
- [ ] Have you added/updated corresponding documentation? &ensp; `+4 pts`
- [ ] Have you added/updated corresponding integration tests? &ensp; `+5 pts`
- [ ] Have you changed the behavior of AutoGPT? &ensp; `-5 pts`
- [ ] Have you also run `agbenchmark` to verify that these changes do not regress performance? &ensp; `+10 pts`
#### For configuration changes:
- [ ] `.env.example` is updated or already compatible with my changes
- [ ] `docker-compose.yml` is updated or already compatible with my changes
- [ ] I have included a list of my configuration changes in the PR description (under **Changes**)
<details>
<summary>Examples of configuration changes</summary>
- Changing ports
- Adding new services that need to communicate with each other
- Secrets or environment variable changes
- New or infrastructure changes such as databases
</details>

175
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,175 @@
version: 2
updates:
# autogpt_libs (Poetry project)
- package-ecosystem: "pip"
directory: "autogpt_platform/autogpt_libs"
schedule:
interval: "weekly"
open-pull-requests-limit: 10
target-branch: "dev"
commit-message:
prefix: "chore(libs/deps)"
prefix-development: "chore(libs/deps-dev)"
groups:
production-dependencies:
dependency-type: "production"
update-types:
- "minor"
- "patch"
development-dependencies:
dependency-type: "development"
update-types:
- "minor"
- "patch"
# backend (Poetry project)
- package-ecosystem: "pip"
directory: "autogpt_platform/backend"
schedule:
interval: "weekly"
open-pull-requests-limit: 10
target-branch: "dev"
commit-message:
prefix: "chore(backend/deps)"
prefix-development: "chore(backend/deps-dev)"
groups:
production-dependencies:
dependency-type: "production"
update-types:
- "minor"
- "patch"
development-dependencies:
dependency-type: "development"
update-types:
- "minor"
- "patch"
# frontend (Next.js project)
- package-ecosystem: "npm"
directory: "autogpt_platform/frontend"
schedule:
interval: "weekly"
open-pull-requests-limit: 10
target-branch: "dev"
commit-message:
prefix: "chore(frontend/deps)"
prefix-development: "chore(frontend/deps-dev)"
groups:
production-dependencies:
dependency-type: "production"
update-types:
- "minor"
- "patch"
development-dependencies:
dependency-type: "development"
update-types:
- "minor"
- "patch"
# infra (Terraform)
- package-ecosystem: "terraform"
directory: "autogpt_platform/infra"
schedule:
interval: "weekly"
open-pull-requests-limit: 5
target-branch: "dev"
commit-message:
prefix: "chore(infra/deps)"
prefix-development: "chore(infra/deps-dev)"
groups:
production-dependencies:
dependency-type: "production"
update-types:
- "minor"
- "patch"
development-dependencies:
dependency-type: "development"
update-types:
- "minor"
- "patch"
# GitHub Actions
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
open-pull-requests-limit: 5
target-branch: "dev"
groups:
production-dependencies:
dependency-type: "production"
update-types:
- "minor"
- "patch"
development-dependencies:
dependency-type: "development"
update-types:
- "minor"
- "patch"
# Docker
- package-ecosystem: "docker"
directory: "autogpt_platform/"
schedule:
interval: "weekly"
open-pull-requests-limit: 5
target-branch: "dev"
groups:
production-dependencies:
dependency-type: "production"
update-types:
- "minor"
- "patch"
development-dependencies:
dependency-type: "development"
update-types:
- "minor"
- "patch"
# Submodules
- package-ecosystem: "gitsubmodule"
directory: "autogpt_platform/supabase"
schedule:
interval: "weekly"
open-pull-requests-limit: 1
target-branch: "dev"
commit-message:
prefix: "chore(platform/deps)"
prefix-development: "chore(platform/deps-dev)"
groups:
production-dependencies:
dependency-type: "production"
update-types:
- "minor"
- "patch"
development-dependencies:
dependency-type: "development"
update-types:
- "minor"
- "patch"
# Docs
- package-ecosystem: 'pip'
directory: "docs/"
schedule:
interval: "weekly"
open-pull-requests-limit: 1
target-branch: "dev"
commit-message:
prefix: "chore(docs/deps)"
groups:
production-dependencies:
dependency-type: "production"
update-types:
- "minor"
- "patch"
development-dependencies:
dependency-type: "development"
update-types:
- "minor"
- "patch"

39
.github/labeler.yml vendored
View File

@@ -1,23 +1,32 @@
AutoGPT Agent:
Classic AutoGPT Agent:
- changed-files:
- any-glob-to-any-file: autogpts/autogpt/**
- any-glob-to-any-file: classic/original_autogpt/**
Classic Benchmark:
- changed-files:
- any-glob-to-any-file: classic/benchmark/**
Classic Frontend:
- changed-files:
- any-glob-to-any-file: classic/frontend/**
Forge:
- changed-files:
- any-glob-to-any-file: autogpts/forge/**
Benchmark:
- changed-files:
- any-glob-to-any-file: benchmark/**
Frontend:
- changed-files:
- any-glob-to-any-file: frontend/**
Arena:
- changed-files:
- any-glob-to-any-file: arena/**
- any-glob-to-any-file: classic/forge/**
documentation:
- changed-files:
- any-glob-to-any-file: docs/**
platform/frontend:
- changed-files:
- any-glob-to-any-file: autogpt_platform/frontend/**
platform/backend:
- changed-files:
- any-glob-to-any-file: autogpt_platform/backend/**
- all-globs-to-all-files: '!autogpt_platform/backend/backend/blocks/**'
platform/blocks:
- changed-files:
- any-glob-to-any-file: autogpt_platform/backend/backend/blocks/**

View File

@@ -1,169 +0,0 @@
name: Arena intake
on:
# We recommend `pull_request_target` so that github secrets are available.
# In `pull_request` we wouldn't be able to change labels of fork PRs
pull_request_target:
types: [ opened, synchronize ]
paths:
- 'arena/**'
jobs:
check:
permissions:
pull-requests: write
runs-on: ubuntu-latest
steps:
- name: Checkout PR
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
- name: Check Arena entry
uses: actions/github-script@v7
with:
script: |
console.log('⚙️ Setting up...');
const fs = require('fs');
const path = require('path');
const pr = context.payload.pull_request;
const isFork = pr.head.repo.fork;
console.log('🔄️ Fetching PR diff metadata...');
const prFilesChanged = (await github.rest.pulls.listFiles({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: pr.number,
})).data;
console.debug(prFilesChanged);
const arenaFilesChanged = prFilesChanged.filter(
({ filename: file }) => file.startsWith('arena/') && file.endsWith('.json')
);
const hasChangesInAutogptsFolder = prFilesChanged.some(
({ filename }) => filename.startsWith('autogpts/')
);
console.log(`🗒️ ${arenaFilesChanged.length} arena entries affected`);
console.debug(arenaFilesChanged);
if (arenaFilesChanged.length === 0) {
// If no files in `arena/` are changed, this job does not need to run.
return;
}
let close = false;
let flagForManualCheck = false;
let issues = [];
if (isFork) {
if (arenaFilesChanged.length > 1) {
// Impacting multiple entries in `arena/` is not allowed
issues.push('This pull request impacts multiple arena entries');
}
if (hasChangesInAutogptsFolder) {
// PRs that include the custom agent are generally not allowed
issues.push(
'This pull request includes changes in `autogpts/`.\n'
+ 'Please make sure to only submit your arena entry (`arena/*.json`), '
+ 'and not to accidentally include your custom agent itself.'
);
}
}
if (arenaFilesChanged.length === 1) {
const newArenaFile = arenaFilesChanged[0]
const newArenaFileName = path.basename(newArenaFile.filename)
console.log(`🗒️ Arena entry in PR: ${newArenaFile}`);
if (newArenaFile.status != 'added') {
flagForManualCheck = true;
}
if (pr.mergeable != false) {
const newArenaEntry = JSON.parse(fs.readFileSync(newArenaFile.filename));
const allArenaFiles = await (await glob.create('arena/*.json')).glob();
console.debug(newArenaEntry);
console.log(`➡️ Checking ${newArenaFileName} against existing entries...`);
for (const file of allArenaFiles) {
const existingEntryName = path.basename(file);
if (existingEntryName === newArenaFileName) {
continue;
}
console.debug(`Checking against ${existingEntryName}...`);
const arenaEntry = JSON.parse(fs.readFileSync(file));
if (arenaEntry.github_repo_url === newArenaEntry.github_repo_url) {
console.log(`⚠️ Duplicate detected: ${existingEntryName}`);
issues.push(
`The \`github_repo_url\` specified in __${newArenaFileName}__ `
+ `already exists in __${existingEntryName}__. `
+ `This PR will be closed as duplicate.`
)
close = true;
}
}
} else {
console.log('⚠️ PR has conflicts');
issues.push(
`__${newArenaFileName}__ conflicts with existing entry with the same name`
)
close = true;
}
} // end if (arenaFilesChanged.length === 1)
console.log('🏁 Finished checking against existing entries');
if (issues.length == 0) {
console.log('✅ No issues detected');
if (flagForManualCheck) {
console.log('🤔 Requesting review from maintainers...');
await github.rest.pulls.requestReviewers({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: pr.number,
reviewers: ['Pwuts'],
// team_reviewers: ['maintainers'], // doesn't work: https://stackoverflow.com/a/64977184/4751645
});
} else {
console.log('➡️ Approving PR...');
await github.rest.pulls.createReview({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: pr.number,
event: 'APPROVE',
});
}
} else {
console.log(`⚠️ ${issues.length} issues detected`);
console.log('➡️ Posting comment indicating issues...');
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: pr.number,
body: `Our automation found one or more issues with this submission:\n`
+ issues.map(i => `- ${i.replace('\n', '\n ')}`).join('\n'),
});
console.log("➡️ Applying label 'invalid'...");
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: pr.number,
labels: ['invalid'],
});
if (close) {
console.log('➡️ Auto-closing PR...');
await github.rest.pulls.update({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: pr.number,
state: 'closed',
});
}
}

View File

@@ -1,59 +0,0 @@
name: Purge Auto-GPT Docker CI cache
on:
schedule:
- cron: 20 4 * * 1,4
env:
BASE_BRANCH: development
IMAGE_NAME: auto-gpt
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
build-type: [release, dev]
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- id: build
name: Build image
uses: docker/build-push-action@v5
with:
context: autogpts/autogpt
build-args: BUILD_TYPE=${{ matrix.build-type }}
load: true # save to docker images
# use GHA cache as read-only
cache-to: type=gha,scope=autogpt-docker-${{ matrix.build-type }},mode=max
- name: Generate build report
env:
event_name: ${{ github.event_name }}
event_ref: ${{ github.event.schedule }}
build_type: ${{ matrix.build-type }}
prod_branch: master
dev_branch: development
repository: ${{ github.repository }}
base_branch: ${{ github.ref_name != 'master' && github.ref_name != 'development' && 'development' || 'master' }}
current_ref: ${{ github.ref_name }}
commit_hash: ${{ github.sha }}
source_url: ${{ format('{0}/tree/{1}', github.event.repository.url, github.sha) }}
push_forced_label:
new_commits_json: ${{ null }}
compare_url_template: ${{ format('/{0}/compare/{{base}}...{{head}}', github.repository) }}
github_context_json: ${{ toJSON(github) }}
job_env_json: ${{ toJSON(env) }}
vars_json: ${{ toJSON(vars) }}
run: .github/workflows/scripts/docker-ci-summary.sh >> $GITHUB_STEP_SUMMARY
continue-on-error: true

View File

@@ -1,91 +0,0 @@
name: AutoGPT Docker Release
on:
release:
types: [ published, edited ]
workflow_dispatch:
inputs:
no_cache:
type: boolean
description: 'Build from scratch, without using cached layers'
defaults:
run:
working-directory: autogpts/autogpt
env:
IMAGE_NAME: auto-gpt
DEPLOY_IMAGE_NAME: ${{ secrets.DOCKER_USER }}/auto-gpt
jobs:
build:
if: startsWith(github.ref, 'refs/tags/autogpt-')
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Log in to Docker hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USER }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
# slashes are not allowed in image tags, but can appear in git branch or tag names
- id: sanitize_tag
name: Sanitize image tag
run: |
tag=${raw_tag//\//-}
echo tag=${tag#autogpt-} >> $GITHUB_OUTPUT
env:
raw_tag: ${{ github.ref_name }}
- id: build
name: Build image
uses: docker/build-push-action@v5
with:
context: autogpts/autogpt
build-args: BUILD_TYPE=release
load: true # save to docker images
# push: true # TODO: uncomment when this issue is fixed: https://github.com/moby/buildkit/issues/1555
tags: >
${{ env.IMAGE_NAME }},
${{ env.DEPLOY_IMAGE_NAME }}:latest,
${{ env.DEPLOY_IMAGE_NAME }}:${{ steps.sanitize_tag.outputs.tag }}
labels: GIT_REVISION=${{ github.sha }}
# cache layers in GitHub Actions cache to speed up builds
cache-from: ${{ !inputs.no_cache && 'type=gha' || '' }},scope=autogpt-docker-release
cache-to: type=gha,scope=autogpt-docker-release,mode=max
- name: Push image to Docker Hub
run: docker push --all-tags ${{ env.DEPLOY_IMAGE_NAME }}
- name: Generate build report
env:
event_name: ${{ github.event_name }}
event_ref: ${{ github.event.ref }}
event_ref_type: ${{ github.event.ref}}
inputs_no_cache: ${{ inputs.no_cache }}
prod_branch: master
dev_branch: development
repository: ${{ github.repository }}
base_branch: ${{ github.ref_name != 'master' && github.ref_name != 'development' && 'development' || 'master' }}
ref_type: ${{ github.ref_type }}
current_ref: ${{ github.ref_name }}
commit_hash: ${{ github.sha }}
source_url: ${{ format('{0}/tree/{1}', github.event.repository.url, github.event.release && github.event.release.tag_name || github.sha) }}
github_context_json: ${{ toJSON(github) }}
job_env_json: ${{ toJSON(env) }}
vars_json: ${{ toJSON(vars) }}
run: .github/workflows/scripts/docker-release-summary.sh >> $GITHUB_STEP_SUMMARY
working-directory: ./
continue-on-error: true

View File

@@ -1,97 +0,0 @@
name: AutoGPTs Nightly Benchmark
on:
workflow_dispatch:
schedule:
- cron: '0 2 * * *'
jobs:
benchmark:
permissions:
contents: write
runs-on: ubuntu-latest
strategy:
matrix:
agent-name: [ autogpt ]
fail-fast: false
timeout-minutes: 120
env:
min-python-version: '3.10'
REPORTS_BRANCH: data/benchmark-reports
REPORTS_FOLDER: ${{ format('benchmark/reports/{0}', matrix.agent-name) }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: true
- name: Set up Python ${{ env.min-python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ env.min-python-version }}
- name: Install Poetry
run: curl -sSL https://install.python-poetry.org | python -
- name: Prepare reports folder
run: mkdir -p ${{ env.REPORTS_FOLDER }}
- run: poetry -C benchmark install
- name: Benchmark ${{ matrix.agent-name }}
run: |
./run agent start ${{ matrix.agent-name }}
cd autogpts/${{ matrix.agent-name }}
set +e # Do not quit on non-zero exit codes
poetry run agbenchmark run -N 3 \
--test=ReadFile \
--test=BasicRetrieval --test=RevenueRetrieval2 \
--test=CombineCsv --test=LabelCsv --test=AnswerQuestionCombineCsv \
--test=UrlShortener --test=TicTacToe --test=Battleship \
--test=WebArenaTask_0 --test=WebArenaTask_21 --test=WebArenaTask_124 \
--test=WebArenaTask_134 --test=WebArenaTask_163
# Convert exit code 1 (some challenges failed) to exit code 0
if [ $? -eq 0 ] || [ $? -eq 1 ]; then
exit 0
else
exit $?
fi
env:
AGENT_NAME: ${{ matrix.agent-name }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
REQUESTS_CA_BUNDLE: /etc/ssl/certs/ca-certificates.crt
REPORTS_FOLDER: ${{ format('../../{0}', env.REPORTS_FOLDER) }} # account for changed workdir
TELEMETRY_ENVIRONMENT: autogpt-benchmark-ci
TELEMETRY_OPT_IN: ${{ github.ref_name == 'master' }}
- name: Push reports to data branch
run: |
# BODGE: Remove success_rate.json and regression_tests.json to avoid conflicts on checkout
rm ${{ env.REPORTS_FOLDER }}/*.json
# Find folder with newest (untracked) report in it
report_subfolder=$(find ${{ env.REPORTS_FOLDER }} -type f -name 'report.json' \
| xargs -I {} dirname {} \
| xargs -I {} git ls-files --others --exclude-standard {} \
| xargs -I {} dirname {} \
| sort -u)
json_report_file="$report_subfolder/report.json"
# Convert JSON report to Markdown
markdown_report_file="$report_subfolder/report.md"
poetry -C benchmark run benchmark/reports/format.py "$json_report_file" > "$markdown_report_file"
cat "$markdown_report_file" >> $GITHUB_STEP_SUMMARY
git config --global user.name 'GitHub Actions'
git config --global user.email 'github-actions@agpt.co'
git fetch origin ${{ env.REPORTS_BRANCH }}:${{ env.REPORTS_BRANCH }} \
&& git checkout ${{ env.REPORTS_BRANCH }} \
|| git checkout --orphan ${{ env.REPORTS_BRANCH }}
git reset --hard
git add ${{ env.REPORTS_FOLDER }}
git commit -m "Benchmark report for ${{ matrix.agent-name }} @ $(date +'%Y-%m-%d')" \
&& git push origin ${{ env.REPORTS_BRANCH }}

View File

@@ -1,141 +0,0 @@
name: Benchmark CI
on:
push:
branches: [ master, development, ci-test* ]
paths:
- 'benchmark/**'
- .github/workflows/benchmark-ci.yml
- '!benchmark/reports/**'
pull_request:
branches: [ master, development, release-* ]
paths:
- 'benchmark/**'
- '!benchmark/reports/**'
- .github/workflows/benchmark-ci.yml
env:
min-python-version: '3.10'
jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python ${{ env.min-python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ env.min-python-version }}
- id: get_date
name: Get date
working-directory: ./benchmark/
run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT
- name: Install Poetry
working-directory: ./benchmark/
run: |
curl -sSL https://install.python-poetry.org | python -
- name: Install dependencies
working-directory: ./benchmark/
run: |
export POETRY_VIRTUALENVS_IN_PROJECT=true
poetry install -vvv
- name: Lint with flake8
working-directory: ./benchmark/
run: poetry run flake8
- name: Check black formatting
working-directory: ./benchmark/
run: poetry run black . --exclude test.py --check
if: success() || failure()
- name: Check isort formatting
working-directory: ./benchmark/
run: poetry run isort . --check
if: success() || failure()
- name: Check for unused imports and pass statements
working-directory: ./benchmark/
run: |
cmd="poetry run autoflake --remove-all-unused-imports --recursive --ignore-init-module-imports --ignore-pass-after-docstring agbenchmark"
$cmd --check || (echo "You have unused imports or pass statements, please run '${cmd} --in-place'" && exit 1)
if: success() || failure()
tests-agbenchmark:
runs-on: ubuntu-latest
strategy:
matrix:
agent-name: [ forge ]
fail-fast: false
timeout-minutes: 20
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: true
- name: Set up Python ${{ env.min-python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ env.min-python-version }}
- name: Install Poetry
working-directory: ./autogpts/${{ matrix.agent-name }}/
run: |
curl -sSL https://install.python-poetry.org | python -
- name: Run regression tests
run: |
./run agent start ${{ matrix.agent-name }}
cd autogpts/${{ matrix.agent-name }}
set +e # Ignore non-zero exit codes and continue execution
echo "Running the following command: poetry run agbenchmark --maintain --mock"
poetry run agbenchmark --maintain --mock
EXIT_CODE=$?
set -e # Stop ignoring non-zero exit codes
# Check if the exit code was 5, and if so, exit with 0 instead
if [ $EXIT_CODE -eq 5 ]; then
echo "regression_tests.json is empty."
fi
echo "Running the following command: poetry run agbenchmark --mock"
poetry run agbenchmark --mock
echo "Running the following command: poetry run agbenchmark --mock --category=data"
poetry run agbenchmark --mock --category=data
echo "Running the following command: poetry run agbenchmark --mock --category=coding"
poetry run agbenchmark --mock --category=coding
echo "Running the following command: poetry run agbenchmark --test=WriteFile"
poetry run agbenchmark --test=WriteFile
cd ../../benchmark
poetry install
echo "Adding the BUILD_SKILL_TREE environment variable. This will attempt to add new elements in the skill tree. If new elements are added, the CI fails because they should have been pushed"
export BUILD_SKILL_TREE=true
poetry run agbenchmark --mock
poetry run pytest -vv -s tests
CHANGED=$(git diff --name-only | grep -E '(agbenchmark/challenges)|(../frontend/assets)') || echo "No diffs"
if [ ! -z "$CHANGED" ]; then
echo "There are unstaged changes please run agbenchmark and commit those changes since they are needed."
echo "$CHANGED"
exit 1
else
echo "No unstaged changes."
fi
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
TELEMETRY_ENVIRONMENT: autogpt-benchmark-ci
TELEMETRY_OPT_IN: ${{ github.ref_name == 'master' }}

138
.github/workflows/classic-autogpt-ci.yml vendored Normal file
View File

@@ -0,0 +1,138 @@
name: Classic - AutoGPT CI
on:
push:
branches: [ master, dev, ci-test* ]
paths:
- '.github/workflows/classic-autogpt-ci.yml'
- 'classic/original_autogpt/**'
pull_request:
branches: [ master, dev, release-* ]
paths:
- '.github/workflows/classic-autogpt-ci.yml'
- 'classic/original_autogpt/**'
concurrency:
group: ${{ format('classic-autogpt-ci-{0}', github.head_ref && format('{0}-{1}', github.event_name, github.event.pull_request.number) || github.sha) }}
cancel-in-progress: ${{ startsWith(github.event_name, 'pull_request') }}
defaults:
run:
shell: bash
working-directory: classic/original_autogpt
jobs:
test:
permissions:
contents: read
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
python-version: ["3.10"]
platform-os: [ubuntu, macos, macos-arm64, windows]
runs-on: ${{ matrix.platform-os != 'macos-arm64' && format('{0}-latest', matrix.platform-os) || 'macos-14' }}
steps:
# Quite slow on macOS (2~4 minutes to set up Docker)
# - name: Set up Docker (macOS)
# if: runner.os == 'macOS'
# uses: crazy-max/ghaction-setup-docker@v3
- name: Start MinIO service (Linux)
if: runner.os == 'Linux'
working-directory: '.'
run: |
docker pull minio/minio:edge-cicd
docker run -d -p 9000:9000 minio/minio:edge-cicd
- name: Start MinIO service (macOS)
if: runner.os == 'macOS'
working-directory: ${{ runner.temp }}
run: |
brew install minio/stable/minio
mkdir data
minio server ./data &
# No MinIO on Windows:
# - Windows doesn't support running Linux Docker containers
# - It doesn't seem possible to start background processes on Windows. They are
# killed after the step returns.
# See: https://github.com/actions/runner/issues/598#issuecomment-2011890429
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: true
- name: Configure git user Auto-GPT-Bot
run: |
git config --global user.name "Auto-GPT-Bot"
git config --global user.email "github-bot@agpt.co"
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- id: get_date
name: Get date
run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT
- name: Set up Python dependency cache
# On Windows, unpacking cached dependencies takes longer than just installing them
if: runner.os != 'Windows'
uses: actions/cache@v4
with:
path: ${{ runner.os == 'macOS' && '~/Library/Caches/pypoetry' || '~/.cache/pypoetry' }}
key: poetry-${{ runner.os }}-${{ hashFiles('classic/original_autogpt/poetry.lock') }}
- name: Install Poetry (Unix)
if: runner.os != 'Windows'
run: |
curl -sSL https://install.python-poetry.org | python3 -
if [ "${{ runner.os }}" = "macOS" ]; then
PATH="$HOME/.local/bin:$PATH"
echo "$HOME/.local/bin" >> $GITHUB_PATH
fi
- name: Install Poetry (Windows)
if: runner.os == 'Windows'
shell: pwsh
run: |
(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | python -
$env:PATH += ";$env:APPDATA\Python\Scripts"
echo "$env:APPDATA\Python\Scripts" >> $env:GITHUB_PATH
- name: Install Python dependencies
run: poetry install
- name: Run pytest with coverage
run: |
poetry run pytest -vv \
--cov=autogpt --cov-branch --cov-report term-missing --cov-report xml \
--numprocesses=logical --durations=10 \
tests/unit tests/integration
env:
CI: true
PLAIN_OUTPUT: True
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
S3_ENDPOINT_URL: ${{ runner.os != 'Windows' && 'http://127.0.0.1:9000' || '' }}
AWS_ACCESS_KEY_ID: minioadmin
AWS_SECRET_ACCESS_KEY: minioadmin
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
flags: autogpt-agent,${{ runner.os }}
- name: Upload logs to artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: test-logs
path: classic/original_autogpt/logs/

View File

@@ -0,0 +1,60 @@
name: Classic - Purge Auto-GPT Docker CI cache
on:
schedule:
- cron: 20 4 * * 1,4
env:
BASE_BRANCH: dev
IMAGE_NAME: auto-gpt
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
build-type: [release, dev]
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- id: build
name: Build image
uses: docker/build-push-action@v6
with:
context: classic/
file: classic/Dockerfile.autogpt
build-args: BUILD_TYPE=${{ matrix.build-type }}
load: true # save to docker images
# use GHA cache as read-only
cache-to: type=gha,scope=autogpt-docker-${{ matrix.build-type }},mode=max
- name: Generate build report
env:
event_name: ${{ github.event_name }}
event_ref: ${{ github.event.schedule }}
build_type: ${{ matrix.build-type }}
prod_branch: master
dev_branch: dev
repository: ${{ github.repository }}
base_branch: ${{ github.ref_name != 'master' && github.ref_name != 'dev' && 'dev' || 'master' }}
current_ref: ${{ github.ref_name }}
commit_hash: ${{ github.sha }}
source_url: ${{ format('{0}/tree/{1}', github.event.repository.url, github.sha) }}
push_forced_label:
new_commits_json: ${{ null }}
compare_url_template: ${{ format('/{0}/compare/{{base}}...{{head}}', github.repository) }}
github_context_json: ${{ toJSON(github) }}
job_env_json: ${{ toJSON(env) }}
vars_json: ${{ toJSON(vars) }}
run: .github/workflows/scripts/docker-ci-summary.sh >> $GITHUB_STEP_SUMMARY
continue-on-error: true

View File

@@ -1,26 +1,26 @@
name: AutoGPT Docker CI
name: Classic - AutoGPT Docker CI
on:
push:
branches: [ master, development ]
branches: [master, dev]
paths:
- '.github/workflows/autogpt-docker-ci.yml'
- 'autogpts/autogpt/**'
- '!autogpts/autogpt/tests/vcr_cassettes'
- '.github/workflows/classic-autogpt-docker-ci.yml'
- 'classic/original_autogpt/**'
- 'classic/forge/**'
pull_request:
branches: [ master, development, release-* ]
branches: [ master, dev, release-* ]
paths:
- '.github/workflows/autogpt-docker-ci.yml'
- 'autogpts/autogpt/**'
- '!autogpts/autogpt/tests/vcr_cassettes'
- '.github/workflows/classic-autogpt-docker-ci.yml'
- 'classic/original_autogpt/**'
- 'classic/forge/**'
concurrency:
group: ${{ format('autogpt-docker-ci-{0}', github.head_ref && format('pr-{0}', github.event.pull_request.number) || github.sha) }}
group: ${{ format('classic-autogpt-docker-ci-{0}', github.head_ref && format('pr-{0}', github.event.pull_request.number) || github.sha) }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
defaults:
run:
working-directory: autogpts/autogpt
working-directory: classic/original_autogpt
env:
IMAGE_NAME: auto-gpt
@@ -34,58 +34,58 @@ jobs:
matrix:
build-type: [release, dev]
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- if: runner.debug
run: |
ls -al
du -hs *
- if: runner.debug
run: |
ls -al
du -hs *
- id: build
name: Build image
uses: docker/build-push-action@v5
with:
context: autogpts/autogpt
build-args: BUILD_TYPE=${{ matrix.build-type }}
tags: ${{ env.IMAGE_NAME }}
labels: GIT_REVISION=${{ github.sha }}
load: true # save to docker images
# cache layers in GitHub Actions cache to speed up builds
cache-from: type=gha,scope=autogpt-docker-${{ matrix.build-type }}
cache-to: type=gha,scope=autogpt-docker-${{ matrix.build-type }},mode=max
- id: build
name: Build image
uses: docker/build-push-action@v6
with:
context: classic/
file: classic/Dockerfile.autogpt
build-args: BUILD_TYPE=${{ matrix.build-type }}
tags: ${{ env.IMAGE_NAME }}
labels: GIT_REVISION=${{ github.sha }}
load: true # save to docker images
# cache layers in GitHub Actions cache to speed up builds
cache-from: type=gha,scope=autogpt-docker-${{ matrix.build-type }}
cache-to: type=gha,scope=autogpt-docker-${{ matrix.build-type }},mode=max
- name: Generate build report
env:
event_name: ${{ github.event_name }}
event_ref: ${{ github.event.ref }}
event_ref_type: ${{ github.event.ref}}
- name: Generate build report
env:
event_name: ${{ github.event_name }}
event_ref: ${{ github.event.ref }}
event_ref_type: ${{ github.event.ref}}
build_type: ${{ matrix.build-type }}
build_type: ${{ matrix.build-type }}
prod_branch: master
dev_branch: development
repository: ${{ github.repository }}
base_branch: ${{ github.ref_name != 'master' && github.ref_name != 'development' && 'development' || 'master' }}
prod_branch: master
dev_branch: dev
repository: ${{ github.repository }}
base_branch: ${{ github.ref_name != 'master' && github.ref_name != 'dev' && 'dev' || 'master' }}
current_ref: ${{ github.ref_name }}
commit_hash: ${{ github.event.after }}
source_url: ${{ format('{0}/tree/{1}', github.event.repository.url, github.event.release && github.event.release.tag_name || github.sha) }}
push_forced_label: ${{ github.event.forced && '☢️ forced' || '' }}
current_ref: ${{ github.ref_name }}
commit_hash: ${{ github.event.after }}
source_url: ${{ format('{0}/tree/{1}', github.event.repository.url, github.event.release && github.event.release.tag_name || github.sha) }}
push_forced_label: ${{ github.event.forced && '☢️ forced' || '' }}
new_commits_json: ${{ toJSON(github.event.commits) }}
compare_url_template: ${{ format('/{0}/compare/{{base}}...{{head}}', github.repository) }}
new_commits_json: ${{ toJSON(github.event.commits) }}
compare_url_template: ${{ format('/{0}/compare/{{base}}...{{head}}', github.repository) }}
github_context_json: ${{ toJSON(github) }}
job_env_json: ${{ toJSON(env) }}
vars_json: ${{ toJSON(vars) }}
github_context_json: ${{ toJSON(github) }}
job_env_json: ${{ toJSON(env) }}
vars_json: ${{ toJSON(vars) }}
run: .github/workflows/scripts/docker-ci-summary.sh >> $GITHUB_STEP_SUMMARY
working-directory: ./
continue-on-error: true
run: .github/workflows/scripts/docker-ci-summary.sh >> $GITHUB_STEP_SUMMARY
continue-on-error: true
test:
runs-on: ubuntu-latest
@@ -117,15 +117,16 @@ jobs:
- id: build
name: Build image
uses: docker/build-push-action@v5
uses: docker/build-push-action@v6
with:
context: autogpts/autogpt
build-args: BUILD_TYPE=dev # include pytest
context: classic/
file: classic/Dockerfile.autogpt
build-args: BUILD_TYPE=dev # include pytest
tags: >
${{ env.IMAGE_NAME }},
${{ env.DEPLOY_IMAGE_NAME }}:${{ env.DEV_IMAGE_TAG }}
labels: GIT_REVISION=${{ github.sha }}
load: true # save to docker images
load: true # save to docker images
# cache layers in GitHub Actions cache to speed up builds
cache-from: type=gha,scope=autogpt-docker-dev
cache-to: type=gha,scope=autogpt-docker-dev,mode=max

View File

@@ -0,0 +1,87 @@
name: Classic - AutoGPT Docker Release
on:
release:
types: [published, edited]
workflow_dispatch:
inputs:
no_cache:
type: boolean
description: 'Build from scratch, without using cached layers'
env:
IMAGE_NAME: auto-gpt
DEPLOY_IMAGE_NAME: ${{ secrets.DOCKER_USER }}/auto-gpt
jobs:
build:
if: startsWith(github.ref, 'refs/tags/autogpt-')
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Log in to Docker hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USER }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
# slashes are not allowed in image tags, but can appear in git branch or tag names
- id: sanitize_tag
name: Sanitize image tag
run: |
tag=${raw_tag//\//-}
echo tag=${tag#autogpt-} >> $GITHUB_OUTPUT
env:
raw_tag: ${{ github.ref_name }}
- id: build
name: Build image
uses: docker/build-push-action@v6
with:
context: classic/
file: Dockerfile.autogpt
build-args: BUILD_TYPE=release
load: true # save to docker images
# push: true # TODO: uncomment when this issue is fixed: https://github.com/moby/buildkit/issues/1555
tags: >
${{ env.IMAGE_NAME }},
${{ env.DEPLOY_IMAGE_NAME }}:latest,
${{ env.DEPLOY_IMAGE_NAME }}:${{ steps.sanitize_tag.outputs.tag }}
labels: GIT_REVISION=${{ github.sha }}
# cache layers in GitHub Actions cache to speed up builds
cache-from: ${{ !inputs.no_cache && 'type=gha' || '' }},scope=autogpt-docker-release
cache-to: type=gha,scope=autogpt-docker-release,mode=max
- name: Push image to Docker Hub
run: docker push --all-tags ${{ env.DEPLOY_IMAGE_NAME }}
- name: Generate build report
env:
event_name: ${{ github.event_name }}
event_ref: ${{ github.event.ref }}
event_ref_type: ${{ github.event.ref}}
inputs_no_cache: ${{ inputs.no_cache }}
prod_branch: master
dev_branch: dev
repository: ${{ github.repository }}
base_branch: ${{ github.ref_name != 'master' && github.ref_name != 'dev' && 'dev' || 'master' }}
ref_type: ${{ github.ref_type }}
current_ref: ${{ github.ref_name }}
commit_hash: ${{ github.sha }}
source_url: ${{ format('{0}/tree/{1}', github.event.repository.url, github.event.release && github.event.release.tag_name || github.sha) }}
github_context_json: ${{ toJSON(github) }}
job_env_json: ${{ toJSON(env) }}
vars_json: ${{ toJSON(vars) }}
run: .github/workflows/scripts/docker-release-summary.sh >> $GITHUB_STEP_SUMMARY
continue-on-error: true

View File

@@ -1,40 +1,47 @@
name: AutoGPTs smoke test CI
name: Classic - Agent smoke tests
on:
workflow_dispatch:
schedule:
- cron: '0 8 * * *'
push:
branches: [ master, development, ci-test* ]
branches: [ master, dev, ci-test* ]
paths:
- '.github/workflows/autogpts-ci.yml'
- 'autogpts/**'
- 'benchmark/**'
- 'run'
- 'cli.py'
- 'setup.py'
- '.github/workflows/classic-autogpts-ci.yml'
- 'classic/original_autogpt/**'
- 'classic/forge/**'
- 'classic/benchmark/**'
- 'classic/run'
- 'classic/cli.py'
- 'classic/setup.py'
- '!**/*.md'
pull_request:
branches: [ master, development, release-* ]
branches: [ master, dev, release-* ]
paths:
- '.github/workflows/autogpts-ci.yml'
- 'autogpts/**'
- 'benchmark/**'
- 'run'
- 'cli.py'
- 'setup.py'
- '.github/workflows/classic-autogpts-ci.yml'
- 'classic/original_autogpt/**'
- 'classic/forge/**'
- 'classic/benchmark/**'
- 'classic/run'
- 'classic/cli.py'
- 'classic/setup.py'
- '!**/*.md'
defaults:
run:
shell: bash
working-directory: classic
jobs:
run-tests:
serve-agent-protocol:
runs-on: ubuntu-latest
strategy:
matrix:
agent-name: [ autogpt, forge ]
agent-name: [ original_autogpt ]
fail-fast: false
timeout-minutes: 20
env:
min-python-version: '3.12'
min-python-version: '3.10'
steps:
- name: Checkout repository
uses: actions/checkout@v4
@@ -48,14 +55,14 @@ jobs:
python-version: ${{ env.min-python-version }}
- name: Install Poetry
working-directory: ./autogpts/${{ matrix.agent-name }}/
working-directory: ./classic/${{ matrix.agent-name }}/
run: |
curl -sSL https://install.python-poetry.org | python -
- name: Run regression tests
run: |
./run agent start ${{ matrix.agent-name }}
cd autogpts/${{ matrix.agent-name }}
cd ${{ matrix.agent-name }}
poetry run agbenchmark --mock --test=BasicRetrieval --test=Battleship --test=WebArenaTask_0
poetry run agbenchmark --test=WriteFile
env:

View File

@@ -0,0 +1,169 @@
name: Classic - AGBenchmark CI
on:
push:
branches: [ master, dev, ci-test* ]
paths:
- 'classic/benchmark/**'
- '!classic/benchmark/reports/**'
- .github/workflows/classic-benchmark-ci.yml
pull_request:
branches: [ master, dev, release-* ]
paths:
- 'classic/benchmark/**'
- '!classic/benchmark/reports/**'
- .github/workflows/classic-benchmark-ci.yml
concurrency:
group: ${{ format('benchmark-ci-{0}', github.head_ref && format('{0}-{1}', github.event_name, github.event.pull_request.number) || github.sha) }}
cancel-in-progress: ${{ startsWith(github.event_name, 'pull_request') }}
defaults:
run:
shell: bash
env:
min-python-version: '3.10'
jobs:
test:
permissions:
contents: read
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
python-version: ["3.10"]
platform-os: [ubuntu, macos, macos-arm64, windows]
runs-on: ${{ matrix.platform-os != 'macos-arm64' && format('{0}-latest', matrix.platform-os) || 'macos-14' }}
defaults:
run:
shell: bash
working-directory: classic/benchmark
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: true
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Set up Python dependency cache
# On Windows, unpacking cached dependencies takes longer than just installing them
if: runner.os != 'Windows'
uses: actions/cache@v4
with:
path: ${{ runner.os == 'macOS' && '~/Library/Caches/pypoetry' || '~/.cache/pypoetry' }}
key: poetry-${{ runner.os }}-${{ hashFiles('classic/benchmark/poetry.lock') }}
- name: Install Poetry (Unix)
if: runner.os != 'Windows'
run: |
curl -sSL https://install.python-poetry.org | python3 -
if [ "${{ runner.os }}" = "macOS" ]; then
PATH="$HOME/.local/bin:$PATH"
echo "$HOME/.local/bin" >> $GITHUB_PATH
fi
- name: Install Poetry (Windows)
if: runner.os == 'Windows'
shell: pwsh
run: |
(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | python -
$env:PATH += ";$env:APPDATA\Python\Scripts"
echo "$env:APPDATA\Python\Scripts" >> $env:GITHUB_PATH
- name: Install Python dependencies
run: poetry install
- name: Run pytest with coverage
run: |
poetry run pytest -vv \
--cov=agbenchmark --cov-branch --cov-report term-missing --cov-report xml \
--durations=10 \
tests
env:
CI: true
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
flags: agbenchmark,${{ runner.os }}
self-test-with-agent:
runs-on: ubuntu-latest
strategy:
matrix:
agent-name: [forge]
fail-fast: false
timeout-minutes: 20
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: true
- name: Set up Python ${{ env.min-python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ env.min-python-version }}
- name: Install Poetry
run: |
curl -sSL https://install.python-poetry.org | python -
- name: Run regression tests
working-directory: classic
run: |
./run agent start ${{ matrix.agent-name }}
cd ${{ matrix.agent-name }}
set +e # Ignore non-zero exit codes and continue execution
echo "Running the following command: poetry run agbenchmark --maintain --mock"
poetry run agbenchmark --maintain --mock
EXIT_CODE=$?
set -e # Stop ignoring non-zero exit codes
# Check if the exit code was 5, and if so, exit with 0 instead
if [ $EXIT_CODE -eq 5 ]; then
echo "regression_tests.json is empty."
fi
echo "Running the following command: poetry run agbenchmark --mock"
poetry run agbenchmark --mock
echo "Running the following command: poetry run agbenchmark --mock --category=data"
poetry run agbenchmark --mock --category=data
echo "Running the following command: poetry run agbenchmark --mock --category=coding"
poetry run agbenchmark --mock --category=coding
# echo "Running the following command: poetry run agbenchmark --test=WriteFile"
# poetry run agbenchmark --test=WriteFile
cd ../benchmark
poetry install
echo "Adding the BUILD_SKILL_TREE environment variable. This will attempt to add new elements in the skill tree. If new elements are added, the CI fails because they should have been pushed"
export BUILD_SKILL_TREE=true
# poetry run agbenchmark --mock
# CHANGED=$(git diff --name-only | grep -E '(agbenchmark/challenges)|(../classic/frontend/assets)') || echo "No diffs"
# if [ ! -z "$CHANGED" ]; then
# echo "There are unstaged changes please run agbenchmark and commit those changes since they are needed."
# echo "$CHANGED"
# exit 1
# else
# echo "No unstaged changes."
# fi
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
TELEMETRY_ENVIRONMENT: autogpt-benchmark-ci
TELEMETRY_OPT_IN: ${{ github.ref_name == 'master' }}

View File

@@ -1,4 +1,4 @@
name: Publish to PyPI
name: Classic - Publish to PyPI
on:
workflow_dispatch:
@@ -21,21 +21,21 @@ jobs:
python-version: 3.8
- name: Install Poetry
working-directory: ./benchmark/
working-directory: ./classic/benchmark/
run: |
curl -sSL https://install.python-poetry.org | python3 -
echo "$HOME/.poetry/bin" >> $GITHUB_PATH
- name: Build project for distribution
working-directory: ./benchmark/
working-directory: ./classic/benchmark/
run: poetry build
- name: Install dependencies
working-directory: ./benchmark/
working-directory: ./classic/benchmark/
run: poetry install
- name: Check Version
working-directory: ./benchmark/
working-directory: ./classic/benchmark/
id: check-version
run: |
echo version=$(poetry version --short) >> $GITHUB_OUTPUT
@@ -43,7 +43,7 @@ jobs:
- name: Create Release
uses: ncipollo/release-action@v1
with:
artifacts: "benchmark/dist/*"
artifacts: "classic/benchmark/dist/*"
token: ${{ secrets.GITHUB_TOKEN }}
draft: false
generateReleaseNotes: false
@@ -51,5 +51,5 @@ jobs:
commit: master
- name: Build and publish
working-directory: ./benchmark/
working-directory: ./classic/benchmark/
run: poetry publish -u __token__ -p ${{ secrets.PYPI_API_TOKEN }}

View File

@@ -1,80 +1,29 @@
name: AutoGPT Python CI
name: Classic - Forge CI
on:
push:
branches: [ master, development, ci-test* ]
branches: [ master, dev, ci-test* ]
paths:
- '.github/workflows/autogpt-ci.yml'
- 'autogpts/autogpt/**'
- '!autogpts/autogpt/tests/vcr_cassettes'
- '.github/workflows/classic-forge-ci.yml'
- 'classic/forge/**'
- '!classic/forge/tests/vcr_cassettes'
pull_request:
branches: [ master, development, release-* ]
branches: [ master, dev, release-* ]
paths:
- '.github/workflows/autogpt-ci.yml'
- 'autogpts/autogpt/**'
- '!autogpts/autogpt/tests/vcr_cassettes'
- '.github/workflows/classic-forge-ci.yml'
- 'classic/forge/**'
- '!classic/forge/tests/vcr_cassettes'
concurrency:
group: ${{ format('autogpt-ci-{0}', github.head_ref && format('{0}-{1}', github.event_name, github.event.pull_request.number) || github.sha) }}
group: ${{ format('forge-ci-{0}', github.head_ref && format('{0}-{1}', github.event_name, github.event.pull_request.number) || github.sha) }}
cancel-in-progress: ${{ startsWith(github.event_name, 'pull_request') }}
defaults:
run:
shell: bash
working-directory: autogpts/autogpt
working-directory: classic/forge
jobs:
lint:
runs-on: ubuntu-latest
env:
min-python-version: "3.10"
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python ${{ env.min-python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ env.min-python-version }}
- id: get_date
name: Get date
run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT
- name: Set up Python dependency cache
uses: actions/cache@v4
with:
path: ~/.cache/pypoetry
key: ${{ runner.os }}-poetry-${{ hashFiles('autogpts/autogpt/pyproject.toml') }}-${{ steps.get_date.outputs.date }}
- name: Install Python dependencies
run: |
curl -sSL https://install.python-poetry.org | python3 -
poetry install
- name: Lint with flake8
run: poetry run flake8
- name: Check black formatting
run: poetry run black . --check
if: success() || failure()
- name: Check isort formatting
run: poetry run isort . --check
if: success() || failure()
# - name: Check mypy formatting
# run: poetry run mypy
# if: success() || failure()
# - name: Check for unused imports and pass statements
# run: |
# cmd="autoflake --remove-all-unused-imports --recursive --ignore-init-module-imports --ignore-pass-after-docstring autogpt tests"
# poetry run $cmd --check || (echo "You have unused imports or pass statements, please run '${cmd} --in-place'" && exit 1)
test:
permissions:
contents: read
@@ -119,11 +68,6 @@ jobs:
fetch-depth: 0
submodules: true
- name: Configure git user Auto-GPT-Bot
run: |
git config --global user.name "Auto-GPT-Bot"
git config --global user.email "github-bot@agpt.co"
- name: Checkout cassettes
if: ${{ startsWith(github.event_name, 'pull_request') }}
env:
@@ -160,17 +104,13 @@ jobs:
with:
python-version: ${{ matrix.python-version }}
- id: get_date
name: Get date
run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT
- name: Set up Python dependency cache
# On Windows, unpacking cached dependencies takes longer than just installing them
if: runner.os != 'Windows'
uses: actions/cache@v4
with:
path: ${{ runner.os == 'macOS' && '~/Library/Caches/pypoetry' || '~/.cache/pypoetry' }}
key: poetry-${{ runner.os }}-${{ hashFiles('autogpts/autogpt/poetry.lock') }}
key: poetry-${{ runner.os }}-${{ hashFiles('classic/forge/poetry.lock') }}
- name: Install Poetry (Unix)
if: runner.os != 'Windows'
@@ -197,9 +137,9 @@ jobs:
- name: Run pytest with coverage
run: |
poetry run pytest -vv \
--cov=autogpt --cov-branch --cov-report term-missing --cov-report xml \
--numprocesses=logical --durations=10 \
tests/unit tests/integration
--cov=forge --cov-branch --cov-report term-missing --cov-report xml \
--durations=10 \
forge
env:
CI: true
PLAIN_OUTPUT: True
@@ -212,7 +152,7 @@ jobs:
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
flags: autogpt-agent,${{ runner.os }}
flags: forge,${{ runner.os }}
- id: setup_git_auth
name: Set up git token authentication
@@ -293,4 +233,4 @@ jobs:
uses: actions/upload-artifact@v4
with:
name: test-logs
path: autogpts/autogpt/logs/
path: classic/forge/logs/

View File

@@ -0,0 +1,60 @@
name: Classic - Frontend CI/CD
on:
push:
branches:
- master
- dev
- 'ci-test*' # This will match any branch that starts with "ci-test"
paths:
- 'classic/frontend/**'
- '.github/workflows/classic-frontend-ci.yml'
pull_request:
paths:
- 'classic/frontend/**'
- '.github/workflows/classic-frontend-ci.yml'
jobs:
build:
permissions:
contents: write
pull-requests: write
runs-on: ubuntu-latest
env:
BUILD_BRANCH: ${{ format('classic-frontend-build/{0}', github.ref_name) }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
- name: Setup Flutter
uses: subosito/flutter-action@v2
with:
flutter-version: '3.13.2'
- name: Build Flutter to Web
run: |
cd classic/frontend
flutter build web --base-href /app/
# - name: Commit and Push to ${{ env.BUILD_BRANCH }}
# if: github.event_name == 'push'
# run: |
# git config --local user.email "action@github.com"
# git config --local user.name "GitHub Action"
# git add classic/frontend/build/web
# git checkout -B ${{ env.BUILD_BRANCH }}
# git commit -m "Update frontend build to ${GITHUB_SHA:0:7}" -a
# git push -f origin ${{ env.BUILD_BRANCH }}
- name: Create PR ${{ env.BUILD_BRANCH }} -> ${{ github.ref_name }}
if: github.event_name == 'push'
uses: peter-evans/create-pull-request@v7
with:
add-paths: classic/frontend/build/web
base: ${{ github.ref_name }}
branch: ${{ env.BUILD_BRANCH }}
delete-branch: true
title: "Update frontend build in `${{ github.ref_name }}`"
body: "This PR updates the frontend build based on commit ${{ github.sha }}."
commit-message: "Update frontend build based on commit ${{ github.sha }}"

View File

@@ -0,0 +1,151 @@
name: Classic - Python checks
on:
push:
branches: [ master, dev, ci-test* ]
paths:
- '.github/workflows/classic-python-checks-ci.yml'
- 'classic/original_autogpt/**'
- 'classic/forge/**'
- 'classic/benchmark/**'
- '**.py'
- '!classic/forge/tests/vcr_cassettes'
pull_request:
branches: [ master, dev, release-* ]
paths:
- '.github/workflows/classic-python-checks-ci.yml'
- 'classic/original_autogpt/**'
- 'classic/forge/**'
- 'classic/benchmark/**'
- '**.py'
- '!classic/forge/tests/vcr_cassettes'
concurrency:
group: ${{ format('classic-python-checks-ci-{0}', github.head_ref && format('{0}-{1}', github.event_name, github.event.pull_request.number) || github.sha) }}
cancel-in-progress: ${{ startsWith(github.event_name, 'pull_request') }}
defaults:
run:
shell: bash
jobs:
get-changed-parts:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- id: changes-in
name: Determine affected subprojects
uses: dorny/paths-filter@v3
with:
filters: |
original_autogpt:
- classic/original_autogpt/autogpt/**
- classic/original_autogpt/tests/**
- classic/original_autogpt/poetry.lock
forge:
- classic/forge/forge/**
- classic/forge/tests/**
- classic/forge/poetry.lock
benchmark:
- classic/benchmark/agbenchmark/**
- classic/benchmark/tests/**
- classic/benchmark/poetry.lock
outputs:
changed-parts: ${{ steps.changes-in.outputs.changes }}
lint:
needs: get-changed-parts
runs-on: ubuntu-latest
env:
min-python-version: "3.10"
strategy:
matrix:
sub-package: ${{ fromJson(needs.get-changed-parts.outputs.changed-parts) }}
fail-fast: false
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python ${{ env.min-python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ env.min-python-version }}
- name: Set up Python dependency cache
uses: actions/cache@v4
with:
path: ~/.cache/pypoetry
key: ${{ runner.os }}-poetry-${{ hashFiles(format('{0}/poetry.lock', matrix.sub-package)) }}
- name: Install Poetry
run: curl -sSL https://install.python-poetry.org | python3 -
# Install dependencies
- name: Install Python dependencies
run: poetry -C classic/${{ matrix.sub-package }} install
# Lint
- name: Lint (isort)
run: poetry run isort --check .
working-directory: classic/${{ matrix.sub-package }}
- name: Lint (Black)
if: success() || failure()
run: poetry run black --check .
working-directory: classic/${{ matrix.sub-package }}
- name: Lint (Flake8)
if: success() || failure()
run: poetry run flake8 .
working-directory: classic/${{ matrix.sub-package }}
types:
needs: get-changed-parts
runs-on: ubuntu-latest
env:
min-python-version: "3.10"
strategy:
matrix:
sub-package: ${{ fromJson(needs.get-changed-parts.outputs.changed-parts) }}
fail-fast: false
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python ${{ env.min-python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ env.min-python-version }}
- name: Set up Python dependency cache
uses: actions/cache@v4
with:
path: ~/.cache/pypoetry
key: ${{ runner.os }}-poetry-${{ hashFiles(format('{0}/poetry.lock', matrix.sub-package)) }}
- name: Install Poetry
run: curl -sSL https://install.python-poetry.org | python3 -
# Install dependencies
- name: Install Python dependencies
run: poetry -C classic/${{ matrix.sub-package }} install
# Typecheck
- name: Typecheck
if: success() || failure()
run: poetry run pyright
working-directory: classic/${{ matrix.sub-package }}

98
.github/workflows/codeql.yml vendored Normal file
View File

@@ -0,0 +1,98 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"
on:
push:
branches: [ "master", "release-*", "dev" ]
pull_request:
branches: [ "master", "release-*", "dev" ]
merge_group:
schedule:
- cron: '15 4 * * 0'
jobs:
analyze:
name: Analyze (${{ matrix.language }})
# Runner size impacts CodeQL analysis time. To learn more, please see:
# - https://gh.io/recommended-hardware-resources-for-running-codeql
# - https://gh.io/supported-runners-and-hardware-resources
# - https://gh.io/using-larger-runners (GitHub.com only)
# Consider using larger runners or machines with greater resources for possible analysis time improvements.
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
permissions:
# required for all workflows
security-events: write
# required to fetch internal or private CodeQL packs
packages: read
# only required for workflows in private repositories
actions: read
contents: read
strategy:
fail-fast: false
matrix:
include:
- language: typescript
build-mode: none
- language: python
build-mode: none
# CodeQL supports the following values keywords for 'language': 'c-cpp', 'csharp', 'go', 'java-kotlin', 'javascript-typescript', 'python', 'ruby', 'swift'
# Use `c-cpp` to analyze code written in C, C++ or both
# Use 'java-kotlin' to analyze code written in Java, Kotlin or both
# Use 'javascript-typescript' to analyze code written in JavaScript, TypeScript or both
# To learn more about changing the languages that are analyzed or customizing the build mode for your analysis,
# see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning.
# If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize how
# your codebase is analyzed, see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages
steps:
- name: Checkout repository
uses: actions/checkout@v4
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
config: |
paths-ignore:
- classic/frontend/build/**
# For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
# queries: security-extended,security-and-quality
# If the analyze step fails for one of the languages you are analyzing with
# "We were unable to automatically build your code", modify the matrix above
# to set the build mode to "manual" for that language. Then modify this step
# to build your code.
# Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
- if: matrix.build-mode == 'manual'
shell: bash
run: |
echo 'If you are using a "manual" build mode for one or more of the' \
'languages you are analyzing, replace this with the commands to build' \
'your code, for example:'
echo ' make bootstrap'
echo ' make release'
exit 1
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: "/language:${{matrix.language}}"

View File

@@ -1,60 +0,0 @@
name: Frontend CI/CD
on:
push:
branches:
- master
- development
- 'ci-test*' # This will match any branch that starts with "ci-test"
paths:
- 'frontend/**'
- '.github/workflows/frontend-ci.yml'
pull_request:
paths:
- 'frontend/**'
- '.github/workflows/frontend-ci.yml'
jobs:
build:
permissions:
contents: write
pull-requests: write
runs-on: ubuntu-latest
env:
BUILD_BRANCH: ${{ format('frontend-build/{0}', github.ref_name) }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
- name: Setup Flutter
uses: subosito/flutter-action@v2
with:
flutter-version: '3.13.2'
- name: Build Flutter to Web
run: |
cd frontend
flutter build web --base-href /app/
# - name: Commit and Push to ${{ env.BUILD_BRANCH }}
# if: github.event_name == 'push'
# run: |
# git config --local user.email "action@github.com"
# git config --local user.name "GitHub Action"
# git add frontend/build/web
# git checkout -B ${{ env.BUILD_BRANCH }}
# git commit -m "Update frontend build to ${GITHUB_SHA:0:7}" -a
# git push -f origin ${{ env.BUILD_BRANCH }}
- name: Create PR ${{ env.BUILD_BRANCH }} -> ${{ github.ref_name }}
if: github.event_name == 'push'
uses: peter-evans/create-pull-request@v6
with:
add-paths: frontend/build/web
base: ${{ github.ref_name }}
branch: ${{ env.BUILD_BRANCH }}
delete-branch: true
title: "Update frontend build in `${{ github.ref_name }}`"
body: "This PR updates the frontend build based on commit ${{ github.sha }}."
commit-message: "Update frontend build based on commit ${{ github.sha }}"

View File

@@ -1,133 +0,0 @@
name: Hackathon
on:
workflow_dispatch:
inputs:
agents:
description: "Agents to run (comma-separated)"
required: false
default: "autogpt" # Default agents if none are specified
jobs:
matrix-setup:
runs-on: ubuntu-latest
# Service containers to run with `matrix-setup`
services:
# Label used to access the service container
postgres:
# Docker Hub image
image: postgres
# Provide the password for postgres
env:
POSTGRES_PASSWORD: postgres
# Set health checks to wait until postgres has started
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
# Maps tcp port 5432 on service container to the host
- 5432:5432
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
env-name: ${{ steps.set-matrix.outputs.env-name }}
steps:
- id: set-matrix
run: |
if [ "${{ github.event_name }}" == "schedule" ]; then
echo "::set-output name=env-name::production"
echo "::set-output name=matrix::[ 'irrelevant']"
elif [ "${{ github.event_name }}" == "workflow_dispatch" ]; then
IFS=',' read -ra matrix_array <<< "${{ github.event.inputs.agents }}"
matrix_string="[ \"$(echo "${matrix_array[@]}" | sed 's/ /", "/g')\" ]"
echo "::set-output name=env-name::production"
echo "::set-output name=matrix::$matrix_string"
else
echo "::set-output name=env-name::testing"
echo "::set-output name=matrix::[ 'irrelevant' ]"
fi
tests:
environment:
name: "${{ needs.matrix-setup.outputs.env-name }}"
needs: matrix-setup
env:
min-python-version: "3.10"
name: "${{ matrix.agent-name }}"
runs-on: ubuntu-latest
services:
# Label used to access the service container
postgres:
# Docker Hub image
image: postgres
# Provide the password for postgres
env:
POSTGRES_PASSWORD: postgres
# Set health checks to wait until postgres has started
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
# Maps tcp port 5432 on service container to the host
- 5432:5432
timeout-minutes: 50
strategy:
fail-fast: false
matrix:
agent-name: ${{fromJson(needs.matrix-setup.outputs.matrix)}}
steps:
- name: Print Environment Name
run: |
echo "Matrix Setup Environment Name: ${{ needs.matrix-setup.outputs.env-name }}"
- name: Check Docker Container
id: check
run: docker ps
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: true
- name: Set up Python ${{ env.min-python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ env.min-python-version }}
- id: get_date
name: Get date
run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT
- name: Install Poetry
run: |
curl -sSL https://install.python-poetry.org | python -
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: v18.15
- name: Run benchmark
run: |
link=$(jq -r '.["github_repo_url"]' arena/$AGENT_NAME.json)
branch=$(jq -r '.["branch_to_benchmark"]' arena/$AGENT_NAME.json)
git clone "$link" -b "$branch" "$AGENT_NAME"
cd $AGENT_NAME
cp ./autogpts/$AGENT_NAME/.env.example ./autogpts/$AGENT_NAME/.env || echo "file not found"
./run agent start $AGENT_NAME
cd ../benchmark
poetry install
poetry run agbenchmark --no-dep
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
SERP_API_KEY: ${{ secrets.SERP_API_KEY }}
SERPAPI_API_KEY: ${{ secrets.SERP_API_KEY }}
WEAVIATE_API_KEY: ${{ secrets.WEAVIATE_API_KEY }}
WEAVIATE_URL: ${{ secrets.WEAVIATE_URL }}
GOOGLE_API_KEY: ${{ secrets.GOOGLE_API_KEY }}
GOOGLE_CUSTOM_SEARCH_ENGINE_ID: ${{ secrets.GOOGLE_CUSTOM_SEARCH_ENGINE_ID }}
AGENT_NAME: ${{ matrix.agent-name }}

View File

@@ -0,0 +1,49 @@
name: AutoGPT Platform - Deploy Prod Environment
on:
release:
types: [published]
permissions:
contents: 'read'
id-token: 'write'
jobs:
migrate:
environment: production
name: Run migrations for AutoGPT Platform
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
pip install prisma
- name: Run Backend Migrations
working-directory: ./autogpt_platform/backend
run: |
python -m prisma migrate deploy
env:
DATABASE_URL: ${{ secrets.BACKEND_DATABASE_URL }}
trigger:
needs: migrate
runs-on: ubuntu-latest
steps:
- name: Trigger deploy workflow
uses: peter-evans/repository-dispatch@v3
with:
token: ${{ secrets.DEPLOY_TOKEN }}
repository: Significant-Gravitas/AutoGPT_cloud_infrastructure
event-type: build_deploy_prod
client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}", "repository": "${{ github.repository }}"}'

View File

@@ -0,0 +1,50 @@
name: AutoGPT Platform - Deploy Dev Environment
on:
push:
branches: [ dev ]
paths:
- 'autogpt_platform/**'
permissions:
contents: 'read'
id-token: 'write'
jobs:
migrate:
environment: develop
name: Run migrations for AutoGPT Platform
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
pip install prisma
- name: Run Backend Migrations
working-directory: ./autogpt_platform/backend
run: |
python -m prisma migrate deploy
env:
DATABASE_URL: ${{ secrets.BACKEND_DATABASE_URL }}
trigger:
needs: migrate
runs-on: ubuntu-latest
steps:
- name: Trigger deploy workflow
uses: peter-evans/repository-dispatch@v3
with:
token: ${{ secrets.DEPLOY_TOKEN }}
repository: Significant-Gravitas/AutoGPT_cloud_infrastructure
event-type: build_deploy_dev
client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}", "repository": "${{ github.repository }}"}'

View File

@@ -0,0 +1,147 @@
name: AutoGPT Platform - Backend CI
on:
push:
branches: [master, dev, ci-test*]
paths:
- ".github/workflows/platform-backend-ci.yml"
- "autogpt_platform/backend/**"
- "autogpt_platform/autogpt_libs/**"
pull_request:
branches: [master, dev, release-*]
paths:
- ".github/workflows/platform-backend-ci.yml"
- "autogpt_platform/backend/**"
- "autogpt_platform/autogpt_libs/**"
merge_group:
concurrency:
group: ${{ format('backend-ci-{0}', github.head_ref && format('{0}-{1}', github.event_name, github.event.pull_request.number) || github.sha) }}
cancel-in-progress: ${{ startsWith(github.event_name, 'pull_request') }}
defaults:
run:
shell: bash
working-directory: autogpt_platform/backend
jobs:
test:
permissions:
contents: read
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
python-version: ["3.10"]
runs-on: ubuntu-latest
services:
redis:
image: bitnami/redis:6.2
env:
REDIS_PASSWORD: testpassword
ports:
- 6379:6379
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: true
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Setup Supabase
uses: supabase/setup-cli@v1
with:
version: latest
- id: get_date
name: Get date
run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT
- name: Set up Python dependency cache
uses: actions/cache@v4
with:
path: ~/.cache/pypoetry
key: poetry-${{ runner.os }}-${{ hashFiles('autogpt_platform/backend/poetry.lock') }}
- name: Install Poetry (Unix)
run: |
curl -sSL https://install.python-poetry.org | python3 -
if [ "${{ runner.os }}" = "macOS" ]; then
PATH="$HOME/.local/bin:$PATH"
echo "$HOME/.local/bin" >> $GITHUB_PATH
fi
- name: Check poetry.lock
run: |
poetry lock
if ! git diff --quiet poetry.lock; then
echo "Error: poetry.lock not up to date."
echo
git diff poetry.lock
exit 1
fi
- name: Install Python dependencies
run: poetry install
- name: Generate Prisma Client
run: poetry run prisma generate
- id: supabase
name: Start Supabase
working-directory: .
run: |
supabase init
supabase start --exclude postgres-meta,realtime,storage-api,imgproxy,inbucket,studio,edge-runtime,logflare,vector,supavisor
supabase status -o env | sed 's/="/=/; s/"$//' >> $GITHUB_OUTPUT
# outputs:
# DB_URL, API_URL, GRAPHQL_URL, ANON_KEY, SERVICE_ROLE_KEY, JWT_SECRET
- name: Run Database Migrations
run: poetry run prisma migrate dev --name updates
env:
DATABASE_URL: ${{ steps.supabase.outputs.DB_URL }}
- id: lint
name: Run Linter
run: poetry run lint
- name: Run pytest with coverage
run: |
if [[ "${{ runner.debug }}" == "1" ]]; then
poetry run pytest -s -vv -o log_cli=true -o log_cli_level=DEBUG test
else
poetry run pytest -s -vv test
fi
if: success() || (failure() && steps.lint.outcome == 'failure')
env:
LOG_LEVEL: ${{ runner.debug && 'DEBUG' || 'INFO' }}
DATABASE_URL: ${{ steps.supabase.outputs.DB_URL }}
SUPABASE_URL: ${{ steps.supabase.outputs.API_URL }}
SUPABASE_SERVICE_ROLE_KEY: ${{ steps.supabase.outputs.SERVICE_ROLE_KEY }}
SUPABASE_JWT_SECRET: ${{ steps.supabase.outputs.JWT_SECRET }}
REDIS_HOST: 'localhost'
REDIS_PORT: '6379'
REDIS_PASSWORD: 'testpassword'
env:
CI: true
PLAIN_OUTPUT: True
RUN_ENV: local
PORT: 8080
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
# - name: Upload coverage reports to Codecov
# uses: codecov/codecov-action@v4
# with:
# token: ${{ secrets.CODECOV_TOKEN }}
# flags: backend,${{ runner.os }}

View File

@@ -0,0 +1,101 @@
name: AutoGPT Platform - Frontend CI
on:
push:
branches: [master, dev]
paths:
- ".github/workflows/platform-frontend-ci.yml"
- "autogpt_platform/frontend/**"
pull_request:
paths:
- ".github/workflows/platform-frontend-ci.yml"
- "autogpt_platform/frontend/**"
merge_group:
defaults:
run:
shell: bash
working-directory: autogpt_platform/frontend
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "21"
- name: Install dependencies
run: |
yarn install --frozen-lockfile
- name: Run lint
run: |
yarn lint
test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
browser: [chromium, webkit]
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "21"
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
large-packages: false # slow
docker-images: false # limited benefit
- name: Copy default supabase .env
run: |
cp ../supabase/docker/.env.example ../.env
- name: Copy backend .env
run: |
cp ../backend/.env.example ../backend/.env
- name: Run docker compose
run: |
docker compose -f ../docker-compose.yml up -d
- name: Install dependencies
run: |
yarn install --frozen-lockfile
- name: Setup Builder .env
run: |
cp .env.example .env
- name: Install Browser '${{ matrix.browser }}'
run: yarn playwright install --with-deps ${{ matrix.browser }}
- name: Run tests
run: |
yarn test --project=${{ matrix.browser }}
- name: Print Docker Compose logs in debug mode
if: runner.debug
run: |
docker compose -f ../docker-compose.yml logs
- uses: actions/upload-artifact@v4
if: ${{ !cancelled() }}
with:
name: playwright-report-${{ matrix.browser }}
path: playwright-report/
retention-days: 30

View File

@@ -1,4 +1,4 @@
name: 'Close stale issues'
name: Repo - Close stale issues
on:
schedule:
- cron: '30 1 * * *'

View File

@@ -0,0 +1,21 @@
name: Repo - Enforce dev as base branch
on:
pull_request_target:
branches: [ master ]
types: [ opened ]
jobs:
check_pr_target:
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
- name: Check if PR is from dev or hotfix
if: ${{ !(startsWith(github.event.pull_request.head.ref, 'hotfix/') || github.event.pull_request.head.ref == 'dev') }}
run: |
gh pr comment ${{ github.event.number }} --repo "$REPO" \
--body $'This PR targets the `master` branch but does not come from `dev` or a `hotfix/*` branch.\n\nAutomatically setting the base branch to `dev`.'
gh pr edit ${{ github.event.number }} --base dev --repo "$REPO"
env:
GITHUB_TOKEN: ${{ github.token }}
REPO: ${{ github.repository }}

View File

@@ -1,12 +1,12 @@
name: "Pull Request auto-label"
name: Repo - Pull Request auto-label
on:
# So that PRs touching the same files as the push are updated
push:
branches: [ master, development, release-* ]
branches: [ master, dev, release-* ]
paths-ignore:
- 'autogpts/autogpt/tests/vcr_cassettes'
- 'benchmark/reports/**'
- 'classic/forge/tests/vcr_cassettes'
- 'classic/benchmark/reports/**'
# So that the `dirtyLabel` is removed if conflicts are resolve
# We recommend `pull_request_target` so that github secrets are available.
# In `pull_request` we wouldn't be able to change labels of fork PRs

View File

@@ -1,4 +1,4 @@
name: github-repo-stats
name: Repo - Github Stats
on:
schedule:

View File

@@ -0,0 +1,32 @@
name: Repo - PR Status Checker
on:
pull_request:
types: [opened, synchronize, reopened]
merge_group:
jobs:
status-check:
name: Check PR Status
runs-on: ubuntu-latest
steps:
# - name: Wait some time for all actions to start
# run: sleep 30
- uses: actions/checkout@v4
# with:
# fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install requests
- name: Check PR Status
run: |
echo "Current directory before running Python script:"
pwd
echo "Attempting to run Python script:"
python .github/workflows/scripts/check_actions_status.py
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -0,0 +1,116 @@
import json
import os
import requests
import sys
import time
from typing import Dict, List, Tuple
CHECK_INTERVAL = 30
def get_environment_variables() -> Tuple[str, str, str, str, str]:
"""Retrieve and return necessary environment variables."""
try:
with open(os.environ["GITHUB_EVENT_PATH"]) as f:
event = json.load(f)
# Handle both PR and merge group events
if "pull_request" in event:
sha = event["pull_request"]["head"]["sha"]
else:
sha = os.environ["GITHUB_SHA"]
return (
os.environ["GITHUB_API_URL"],
os.environ["GITHUB_REPOSITORY"],
sha,
os.environ["GITHUB_TOKEN"],
os.environ["GITHUB_RUN_ID"],
)
except KeyError as e:
print(f"Error: Missing required environment variable or event data: {e}")
sys.exit(1)
def make_api_request(url: str, headers: Dict[str, str]) -> Dict:
"""Make an API request and return the JSON response."""
try:
print("Making API request to:", url)
response = requests.get(url, headers=headers, timeout=10)
response.raise_for_status()
return response.json()
except requests.RequestException as e:
print(f"Error: API request failed. {e}")
sys.exit(1)
def process_check_runs(check_runs: List[Dict]) -> Tuple[bool, bool]:
"""Process check runs and return their status."""
runs_in_progress = False
all_others_passed = True
for run in check_runs:
if str(run["name"]) != "Check PR Status":
status = run["status"]
conclusion = run["conclusion"]
if status == "completed":
if conclusion not in ["success", "skipped", "neutral"]:
all_others_passed = False
print(
f"Check run {run['name']} (ID: {run['id']}) has conclusion: {conclusion}"
)
else:
runs_in_progress = True
print(f"Check run {run['name']} (ID: {run['id']}) is still {status}.")
all_others_passed = False
else:
print(
f"Skipping check run {run['name']} (ID: {run['id']}) as it is the current run."
)
return runs_in_progress, all_others_passed
def main():
api_url, repo, sha, github_token, current_run_id = get_environment_variables()
endpoint = f"{api_url}/repos/{repo}/commits/{sha}/check-runs"
headers = {
"Accept": "application/vnd.github.v3+json",
}
if github_token:
headers["Authorization"] = f"token {github_token}"
print(f"Current run ID: {current_run_id}")
while True:
data = make_api_request(endpoint, headers)
check_runs = data["check_runs"]
print("Processing check runs...")
print(check_runs)
runs_in_progress, all_others_passed = process_check_runs(check_runs)
if not runs_in_progress:
break
print(
"Some check runs are still in progress. "
f"Waiting {CHECK_INTERVAL} seconds before checking again..."
)
time.sleep(CHECK_INTERVAL)
if all_others_passed:
print("All other completed check runs have passed. This check passes.")
sys.exit(0)
else:
print("Some check runs have failed or have not completed. This check fails.")
sys.exit(1)
if __name__ == "__main__":
main()

21
.gitignore vendored
View File

@@ -1,13 +1,11 @@
## Original ignores
.github_access_token
autogpt/keys.py
autogpt/*.json
classic/original_autogpt/keys.py
classic/original_autogpt/*.json
auto_gpt_workspace/*
*.mpeg
.env
azure.yaml
ai_settings.yaml
last_run_ai_settings.yaml
.vscode
.idea/*
auto-gpt.json
@@ -34,7 +32,6 @@ dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
@@ -160,11 +157,11 @@ openai/
CURRENT_BULLETIN.md
# AgBenchmark
agbenchmark/reports/
classic/benchmark/agbenchmark/reports/
# Nodejs
package-lock.json
package.json
# Allow for locally private items
# private
@@ -172,8 +169,10 @@ pri*
# ignore
ig*
.github_access_token
arena/TestAgent.json
LICENSE.rtf
autogpt_platform/backend/settings.py
/.auth
/autogpt_platform/frontend/.auth
# evo.ninja
autogpts/evo.ninja/*
!autogpts/evo.ninja/setup
*.ign.*
.test-contents

7
.gitmodules vendored
View File

@@ -1,3 +1,6 @@
[submodule "autogpts/autogpt/tests/vcr_cassettes"]
path = autogpts/autogpt/tests/vcr_cassettes
[submodule "classic/forge/tests/vcr_cassettes"]
path = classic/forge/tests/vcr_cassettes
url = https://github.com/Significant-Gravitas/Auto-GPT-test-cassettes
[submodule "autogpt_platform/supabase"]
path = autogpt_platform/supabase
url = https://github.com/supabase/supabase.git

258
.pre-commit-config.yaml Normal file
View File

@@ -0,0 +1,258 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.4.0
hooks:
- id: check-added-large-files
args: ["--maxkb=500"]
- id: fix-byte-order-marker
- id: check-case-conflict
- id: check-merge-conflict
- id: check-symlinks
- id: debug-statements
- repo: https://github.com/Yelp/detect-secrets
rev: v1.5.0
hooks:
- id: detect-secrets
name: Detect secrets
description: Detects high entropy strings that are likely to be passwords.
files: ^autogpt_platform/
stages: [push]
- repo: local
# For proper type checking, all dependencies need to be up-to-date.
# It's also a good idea to check that poetry.lock is consistent with pyproject.toml.
hooks:
- id: poetry-install
name: Check & Install dependencies - AutoGPT Platform - Backend
alias: poetry-install-platform-backend
entry: poetry -C autogpt_platform/backend install
# include autogpt_libs source (since it's a path dependency)
files: ^autogpt_platform/(backend|autogpt_libs)/poetry\.lock$
types: [file]
language: system
pass_filenames: false
- id: poetry-install
name: Check & Install dependencies - AutoGPT Platform - Libs
alias: poetry-install-platform-libs
entry: poetry -C autogpt_platform/autogpt_libs install
files: ^autogpt_platform/autogpt_libs/poetry\.lock$
types: [file]
language: system
pass_filenames: false
- id: poetry-install
name: Check & Install dependencies - Classic - AutoGPT
alias: poetry-install-classic-autogpt
entry: poetry -C classic/original_autogpt install
# include forge source (since it's a path dependency)
files: ^classic/(original_autogpt|forge)/poetry\.lock$
types: [file]
language: system
pass_filenames: false
- id: poetry-install
name: Check & Install dependencies - Classic - Forge
alias: poetry-install-classic-forge
entry: poetry -C classic/forge install
files: ^classic/forge/poetry\.lock$
types: [file]
language: system
pass_filenames: false
- id: poetry-install
name: Check & Install dependencies - Classic - Benchmark
alias: poetry-install-classic-benchmark
entry: poetry -C classic/benchmark install
files: ^classic/benchmark/poetry\.lock$
types: [file]
language: system
pass_filenames: false
- repo: local
# For proper type checking, Prisma client must be up-to-date.
hooks:
- id: prisma-generate
name: Prisma Generate - AutoGPT Platform - Backend
alias: prisma-generate-platform-backend
entry: bash -c 'cd autogpt_platform/backend && poetry run prisma generate'
# include everything that triggers poetry install + the prisma schema
files: ^autogpt_platform/((backend|autogpt_libs)/poetry\.lock|backend/schema.prisma)$
types: [file]
language: system
pass_filenames: false
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.7.2
hooks:
- id: ruff
name: Lint (Ruff) - AutoGPT Platform - Backend
alias: ruff-lint-platform-backend
files: ^autogpt_platform/backend/
args: [--fix]
- id: ruff
name: Lint (Ruff) - AutoGPT Platform - Libs
alias: ruff-lint-platform-libs
files: ^autogpt_platform/autogpt_libs/
args: [--fix]
- id: ruff-format
name: Format (Ruff) - AutoGPT Platform - Libs
alias: ruff-lint-platform-libs
files: ^autogpt_platform/autogpt_libs/
- repo: local
# isort needs the context of which packages are installed to function, so we
# can't use a vendored isort pre-commit hook (which runs in its own isolated venv).
hooks:
- id: isort
name: Lint (isort) - AutoGPT Platform - Backend
alias: isort-platform-backend
entry: poetry -P autogpt_platform/backend run isort -p backend
files: ^autogpt_platform/backend/
types: [file, python]
language: system
- id: isort
name: Lint (isort) - Classic - AutoGPT
alias: isort-classic-autogpt
entry: poetry -P classic/original_autogpt run isort -p autogpt
files: ^classic/original_autogpt/
types: [file, python]
language: system
- id: isort
name: Lint (isort) - Classic - Forge
alias: isort-classic-forge
entry: poetry -P classic/forge run isort -p forge
files: ^classic/forge/
types: [file, python]
language: system
- id: isort
name: Lint (isort) - Classic - Benchmark
alias: isort-classic-benchmark
entry: poetry -P classic/benchmark run isort -p agbenchmark
files: ^classic/benchmark/
types: [file, python]
language: system
- repo: https://github.com/psf/black
rev: 23.12.1
# Black has sensible defaults, doesn't need package context, and ignores
# everything in .gitignore, so it works fine without any config or arguments.
hooks:
- id: black
name: Format (Black)
- repo: https://github.com/PyCQA/flake8
rev: 7.0.0
# To have flake8 load the config of the individual subprojects, we have to call
# them separately.
hooks:
- id: flake8
name: Lint (Flake8) - Classic - AutoGPT
alias: flake8-classic-autogpt
files: ^classic/original_autogpt/(autogpt|scripts|tests)/
args: [--config=classic/original_autogpt/.flake8]
- id: flake8
name: Lint (Flake8) - Classic - Forge
alias: flake8-classic-forge
files: ^classic/forge/(forge|tests)/
args: [--config=classic/forge/.flake8]
- id: flake8
name: Lint (Flake8) - Classic - Benchmark
alias: flake8-classic-benchmark
files: ^classic/benchmark/(agbenchmark|tests)/((?!reports).)*[/.]
args: [--config=classic/benchmark/.flake8]
- repo: local
# To have watertight type checking, we check *all* the files in an affected
# project. To trigger on poetry.lock we also reset the file `types` filter.
hooks:
- id: pyright
name: Typecheck - AutoGPT Platform - Backend
alias: pyright-platform-backend
entry: poetry -C autogpt_platform/backend run pyright
# include forge source (since it's a path dependency) but exclude *_test.py files:
files: ^autogpt_platform/(backend/((backend|test)/|(\w+\.py|poetry\.lock)$)|autogpt_libs/(autogpt_libs/.*(?<!_test)\.py|poetry\.lock)$)
types: [file]
language: system
pass_filenames: false
- id: pyright
name: Typecheck - AutoGPT Platform - Libs
alias: pyright-platform-libs
entry: poetry -C autogpt_platform/autogpt_libs run pyright
files: ^autogpt_platform/autogpt_libs/(autogpt_libs/|poetry\.lock$)
types: [file]
language: system
pass_filenames: false
- id: pyright
name: Typecheck - Classic - AutoGPT
alias: pyright-classic-autogpt
entry: poetry -C classic/original_autogpt run pyright
# include forge source (since it's a path dependency) but exclude *_test.py files:
files: ^(classic/original_autogpt/((autogpt|scripts|tests)/|poetry\.lock$)|classic/forge/(forge/.*(?<!_test)\.py|poetry\.lock)$)
types: [file]
language: system
pass_filenames: false
- id: pyright
name: Typecheck - Classic - Forge
alias: pyright-classic-forge
entry: poetry -C classic/forge run pyright
files: ^classic/forge/(forge/|poetry\.lock$)
types: [file]
language: system
pass_filenames: false
- id: pyright
name: Typecheck - Classic - Benchmark
alias: pyright-classic-benchmark
entry: poetry -C classic/benchmark run pyright
files: ^classic/benchmark/(agbenchmark/|tests/|poetry\.lock$)
types: [file]
language: system
pass_filenames: false
- repo: local
hooks:
- id: pytest
name: Run tests - AutoGPT Platform - Backend
alias: pytest-platform-backend
entry: bash -c 'cd autogpt_platform/backend && poetry run pytest'
# include autogpt_libs source (since it's a path dependency) but exclude *_test.py files:
files: ^autogpt_platform/(backend/((backend|test)/|poetry\.lock$)|autogpt_libs/(autogpt_libs/.*(?<!_test)\.py|poetry\.lock)$)
language: system
pass_filenames: false
- id: pytest
name: Run tests - Classic - AutoGPT (excl. slow tests)
alias: pytest-classic-autogpt
entry: bash -c 'cd classic/original_autogpt && poetry run pytest --cov=autogpt -m "not slow" tests/unit tests/integration'
# include forge source (since it's a path dependency) but exclude *_test.py files:
files: ^(classic/original_autogpt/((autogpt|tests)/|poetry\.lock$)|classic/forge/(forge/.*(?<!_test)\.py|poetry\.lock)$)
language: system
pass_filenames: false
- id: pytest
name: Run tests - Classic - Forge (excl. slow tests)
alias: pytest-classic-forge
entry: bash -c 'cd classic/forge && poetry run pytest --cov=forge -m "not slow"'
files: ^classic/forge/(forge/|tests/|poetry\.lock$)
language: system
pass_filenames: false
- id: pytest
name: Run tests - Classic - Benchmark
alias: pytest-classic-benchmark
entry: bash -c 'cd classic/benchmark && poetry run pytest --cov=benchmark'
files: ^classic/benchmark/(agbenchmark/|tests/|poetry\.lock$)
language: system
pass_filenames: false

62
.vscode/all-projects.code-workspace vendored Normal file
View File

@@ -0,0 +1,62 @@
{
"folders": [
{
"name": "frontend",
"path": "../autogpt_platform/frontend"
},
{
"name": "backend",
"path": "../autogpt_platform/backend"
},
{
"name": "market",
"path": "../autogpt_platform/market"
},
{
"name": "lib",
"path": "../autogpt_platform/autogpt_libs"
},
{
"name": "infra",
"path": "../autogpt_platform/infra"
},
{
"name": "docs",
"path": "../docs"
},
{
"name": "classic - autogpt",
"path": "../classic/original_autogpt"
},
{
"name": "classic - benchmark",
"path": "../classic/benchmark"
},
{
"name": "classic - forge",
"path": "../classic/forge"
},
{
"name": "classic - frontend",
"path": "../classic/frontend"
},
{
"name": "[root]",
"path": ".."
}
],
"settings": {
"python.analysis.typeCheckingMode": "basic"
},
"extensions": {
"recommendations": [
"charliermarsh.ruff",
"dart-code.flutter",
"ms-python.black-formatter",
"ms-python.vscode-pylance",
"prisma.prisma",
"qwtel.sqlite-viewer"
]
}
}

67
.vscode/launch.json vendored Normal file
View File

@@ -0,0 +1,67 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Frontend: Server Side",
"type": "node-terminal",
"request": "launch",
"cwd": "${workspaceFolder}/autogpt_platform/frontend",
"command": "yarn dev"
},
{
"name": "Frontend: Client Side",
"type": "msedge",
"request": "launch",
"url": "http://localhost:3000"
},
{
"name": "Frontend: Full Stack",
"type": "node-terminal",
"request": "launch",
"command": "yarn dev",
"cwd": "${workspaceFolder}/autogpt_platform/frontend",
"serverReadyAction": {
"pattern": "- Local:.+(https?://.+)",
"uriFormat": "%s",
"action": "debugWithEdge"
}
},
{
"name": "Backend",
"type": "debugpy",
"request": "launch",
"module": "backend.app",
// "env": {
// "ENV": "dev"
// },
"envFile": "${workspaceFolder}/backend/.env",
"justMyCode": false,
"cwd": "${workspaceFolder}/autogpt_platform/backend"
},
{
"name": "Marketplace",
"type": "debugpy",
"request": "launch",
"module": "autogpt_platform.market.main",
"env": {
"ENV": "dev"
},
"envFile": "${workspaceFolder}/market/.env",
"justMyCode": false,
"cwd": "${workspaceFolder}/market"
}
],
"compounds": [
{
"name": "Everything",
"configurations": ["Backend", "Frontend: Full Stack"],
// "preLaunchTask": "${defaultBuildTask}",
"stopAll": true,
"presentation": {
"hidden": false,
"order": 0
}
}
]
}

View File

@@ -1,34 +1,41 @@
# AutoGPT Contribution Guide
If you are reading this, you are probably looking for our **[contribution guide]**,
which is part of our [knowledge base].
If you are reading this, you are probably looking for the full **[contribution guide]**,
which is part of our [wiki].
You can find our immediate priorities and their progress on our public [kanban board].
Also check out our [🚀 Roadmap][roadmap] for information about our priorities and associated tasks.
<!-- You can find our immediate priorities and their progress on our public [kanban board]. -->
[contribution guide]: https://github.com/Significant-Gravitas/Nexus/wiki/Contributing
[knowledge base]: https://github.com/Significant-Gravitas/Nexus/wiki
[contribution guide]: https://github.com/Significant-Gravitas/AutoGPT/wiki/Contributing
[wiki]: https://github.com/Significant-Gravitas/AutoGPT/wiki
[roadmap]: https://github.com/Significant-Gravitas/AutoGPT/discussions/6971
[kanban board]: https://github.com/orgs/Significant-Gravitas/projects/1
## Contributing to the AutoGPT Platform Folder
All contributions to [the autogpt_platform folder](https://github.com/Significant-Gravitas/AutoGPT/blob/master/autogpt_platform) will be under our [Contribution License Agreement](https://github.com/Significant-Gravitas/AutoGPT/blob/master/autogpt_platform/Contributor%20License%20Agreement%20(CLA).md). By making a pull request contributing to this folder, you agree to the terms of our CLA for your contribution. All contributions to other folders will be under the MIT license.
## In short
1. Avoid duplicate work, issues, PRs etc.
2. We encourage you to collaborate with fellow community members on some of our bigger
[todo's][kanban board]!
[todo's][roadmap]!
* We highly recommend to post your idea and discuss it in the [dev channel].
4. Create a draft PR when starting work on bigger changes.
3. Please also consider contributing something other than code; see the
[contribution guide] for options.
3. Create a draft PR when starting work on bigger changes.
4. Adhere to the [Code Guidelines]
5. Clearly explain your changes when submitting a PR.
6. Don't submit stuff that's broken.
6. Don't submit broken code: test/validate your changes.
7. Avoid making unnecessary changes, especially if they're purely based on your personal
preferences. Doing so is the maintainers' job. ;-)
8. Please also consider contributing something other than code; see the
[contribution guide] for options.
[dev channel]: https://discord.com/channels/1092243196446249134/1095817829405704305
[code guidelines]: https://github.com/Significant-Gravitas/AutoGPT/wiki/Contributing#code-guidelines
If you wish to involve with the project (beyond just contributing PRs), please read the
wiki [catalyzing](https://github.com/Significant-Gravitas/Nexus/wiki/Catalyzing) page.
wiki page about [Catalyzing](https://github.com/Significant-Gravitas/AutoGPT/wiki/Catalyzing).
In fact, why not just look through the whole wiki (it's only a few pages) and
hop on our Discord. See you there! :-)
❤️ & 🔆
The team @ AutoGPT
❤️ & 🔆
The team @ AutoGPT
https://discord.gg/autogpt

View File

@@ -1,7 +1,13 @@
All portions of this repository are under one of two licenses. The majority of the AutoGPT repository is under the MIT License below. The autogpt_platform folder is under the
Polyform Shield License.
MIT License
Copyright (c) 2023 Toran Bruce Richards
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
@@ -9,9 +15,11 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE

View File

@@ -1,200 +0,0 @@
# Quickstart Guide
> For the complete getting started [tutorial series](https://aiedge.medium.com/autogpt-forge-e3de53cc58ec) <- click here
Welcome to the Quickstart Guide! This guide will walk you through the process of setting up and running your own AutoGPT agent. Whether you're a seasoned AI developer or just starting out, this guide will provide you with the necessary steps to jumpstart your journey in the world of AI development with AutoGPT.
## System Requirements
This project supports Linux (Debian based), Mac, and Windows Subsystem for Linux (WSL). If you are using a Windows system, you will need to install WSL. You can find the installation instructions for WSL [here](https://learn.microsoft.com/en-us/windows/wsl/).
## Getting Setup
1. **Fork the Repository**
To fork the repository, follow these steps:
- Navigate to the main page of the repository.
![Repository](docs/content/imgs/quickstart/001_repo.png)
- In the top-right corner of the page, click Fork.
![Create Fork UI](docs/content/imgs/quickstart/002_fork.png)
- On the next page, select your GitHub account to create the fork under.
- Wait for the forking process to complete. You now have a copy of the repository in your GitHub account.
2. **Clone the Repository**
To clone the repository, you need to have Git installed on your system. If you don't have Git installed, you can download it from [here](https://git-scm.com/downloads). Once you have Git installed, follow these steps:
- Open your terminal.
- Navigate to the directory where you want to clone the repository.
- Run the git clone command for the fork you just created
![Clone the Repository](docs/content/imgs/quickstart/003_clone.png)
- Then open your project in your ide
![Open the Project in your IDE](docs/content/imgs/quickstart/004_ide.png)
4. **Setup the Project**
Next we need to setup the required dependencies. We have a tool for helping you do all the tasks you need to on the repo.
It can be accessed by running the `run` command by typing `./run` in the terminal.
The first command you need to use is `./run setup` This will guide you through the process of setting up your system.
Initially you will get instructions for installing flutter, chrome and setting up your github access token like the following image:
> Note: for advanced users. The github access token is only needed for the ./run arena enter command so the system can automatically create a PR
![Setup the Project](docs/content/imgs/quickstart/005_setup.png)
### For Windows Users
If you're a Windows user and experience issues after installing WSL, follow the steps below to resolve them.
#### Update WSL
Run the following command in Powershell or Command Prompt to:
1. Enable the optional WSL and Virtual Machine Platform components.
2. Download and install the latest Linux kernel.
3. Set WSL 2 as the default.
4. Download and install the Ubuntu Linux distribution (a reboot may be required).
```shell
wsl --install
```
For more detailed information and additional steps, refer to [Microsoft's WSL Setup Environment Documentation](https://learn.microsoft.com/en-us/windows/wsl/setup/environment).
#### Resolve FileNotFoundError or "No such file or directory" Errors
When you run `./run setup`, if you encounter errors like `No such file or directory` or `FileNotFoundError`, it might be because Windows-style line endings (CRLF - Carriage Return Line Feed) are not compatible with Unix/Linux style line endings (LF - Line Feed).
To resolve this, you can use the `dos2unix` utility to convert the line endings in your script from CRLF to LF. Heres how to install and run `dos2unix` on the script:
```shell
sudo apt update
sudo apt install dos2unix
dos2unix ./run
```
After executing the above commands, running `./run setup` should work successfully.
#### Store Project Files within the WSL File System
If you continue to experience issues, consider storing your project files within the WSL file system instead of the Windows file system. This method avoids issues related to path translations and permissions and provides a more consistent development environment.
You can keep running the command to get feedback on where you are up to with your setup.
When setup has been completed, the command will return an output like this:
![Setup Complete](docs/content/imgs/quickstart/006_setup_complete.png)
## Creating Your Agent
After completing the setup, the next step is to create your agent template.
Execute the command `./run agent create YOUR_AGENT_NAME`, where `YOUR_AGENT_NAME` should be replaced with a name of your choosing.
Tips for naming your agent:
* Give it its own unique name, or name it after yourself
* Include an important aspect of your agent in the name, such as its purpose
Examples: `SwiftyosAssistant`, `PwutsPRAgent`, `Narvis`, `evo.ninja`
![Create an Agent](docs/content/imgs/quickstart/007_create_agent.png)
### Optional: Entering the Arena
Entering the Arena is an optional step intended for those who wish to actively participate in the agent leaderboard. If you decide to participate, you can enter the Arena by running `./run arena enter YOUR_AGENT_NAME`. This step is not mandatory for the development or testing of your agent.
Entries with names like `agent`, `ExampleAgent`, `test_agent` or `MyExampleGPT` will NOT be merged. We also don't accept copycat entries that use the name of other projects, like `AutoGPT` or `evo.ninja`.
![Enter the Arena](docs/content/imgs/quickstart/008_enter_arena.png)
> **Note**
> For advanced users, create a new branch and create a file called YOUR_AGENT_NAME.json in the arena directory. Then commit this and create a PR to merge into the main repo. Only single file entries will be permitted. The json file needs the following format:
> ```json
> {
> "github_repo_url": "https://github.com/Swiftyos/YourAgentName",
> "timestamp": "2023-09-18T10:03:38.051498",
> "commit_hash_to_benchmark": "ac36f7bfc7f23ad8800339fa55943c1405d80d5e",
> "branch_to_benchmark": "master"
> }
> ```
> - `github_repo_url`: the url to your fork
> - `timestamp`: timestamp of the last update of this file
> - `commit_hash_to_benchmark`: the commit hash of your entry. You update each time you have an something ready to be officially entered into the hackathon
> - `branch_to_benchmark`: the branch you are using to develop your agent on, default is master.
## Running your Agent
Your agent can started using the `./run agent start YOUR_AGENT_NAME`
This start the agent on `http://localhost:8000/`
![Start the Agent](docs/content/imgs/quickstart/009_start_agent.png)
The frontend can be accessed from `http://localhost:8000/`, you will first need to login using either a google account or your github account.
![Login](docs/content/imgs/quickstart/010_login.png)
Upon logging in you will get a page that looks something like this. With your task history down the left hand side of the page and the 'chat' window to send tasks to your agent.
![Login](docs/content/imgs/quickstart/011_home.png)
When you have finished with your agent, or if you just need to restart it, use Ctl-C to end the session then you can re-run the start command.
If you are having issues and want to ensure the agent has been stopped there is a `./run agent stop` command which will kill the process using port 8000, which should be the agent.
## Benchmarking your Agent
The benchmarking system can also be accessed using the cli too:
```bash
agpt % ./run benchmark
Usage: cli.py benchmark [OPTIONS] COMMAND [ARGS]...
Commands to start the benchmark and list tests and categories
Options:
--help Show this message and exit.
Commands:
categories Benchmark categories group command
start Starts the benchmark command
tests Benchmark tests group command
agpt % ./run benchmark categories
Usage: cli.py benchmark categories [OPTIONS] COMMAND [ARGS]...
Benchmark categories group command
Options:
--help Show this message and exit.
Commands:
list List benchmark categories command
agpt % ./run benchmark tests
Usage: cli.py benchmark tests [OPTIONS] COMMAND [ARGS]...
Benchmark tests group command
Options:
--help Show this message and exit.
Commands:
details Benchmark test details command
list List benchmark tests command
```
The benchmark has been split into different categories of skills you can test your agent on. You can see what categories are available with
```bash
./run benchmark categories list
# And what tests are available with
./run benchmark tests list
```
![Login](docs/content/imgs/quickstart/012_tests.png)
Finally you can run the benchmark with
```bash
./run benchmark start YOUR_AGENT_NAME
```
>

112
README.md
View File

@@ -1,10 +1,72 @@
# AutoGPT: build & use AI agents
# AutoGPT: Build, Deploy, and Run AI Agents
[![Discord Follow](https://dcbadge.vercel.app/api/server/autogpt?style=flat)](https://discord.gg/autogpt) &ensp;
[![Twitter Follow](https://img.shields.io/twitter/follow/Auto_GPT?style=social)](https://twitter.com/Auto_GPT) &ensp;
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
**AutoGPT** is the vision of the power of AI accessible to everyone, to use and to build on. Our mission is to provide the tools, so that you can focus on what matters:
**AutoGPT** is a powerful platform that allows you to create, deploy, and manage continuous AI agents that automate complex workflows.
## Hosting Options
- Download to self-host
- [Join the Waitlist](https://bit.ly/3ZDijAI) for the cloud-hosted beta
## How to Setup for Self-Hosting
> [!NOTE]
> Setting up and hosting the AutoGPT Platform yourself is a technical process.
> If you'd rather something that just works, we recommend [joining the waitlist](https://bit.ly/3ZDijAI) for the cloud-hosted beta.
https://github.com/user-attachments/assets/d04273a5-b36a-4a37-818e-f631ce72d603
This tutorial assumes you have Docker, VSCode, git and npm installed.
### 🧱 AutoGPT Frontend
The AutoGPT frontend is where users interact with our powerful AI automation platform. It offers multiple ways to engage with and leverage our AI agents. This is the interface where you'll bring your AI automation ideas to life:
**Agent Builder:** For those who want to customize, our intuitive, low-code interface allows you to design and configure your own AI agents.
**Workflow Management:** Build, modify, and optimize your automation workflows with ease. You build your agent by connecting blocks, where each block performs a single action.
**Deployment Controls:** Manage the lifecycle of your agents, from testing to production.
**Ready-to-Use Agents:** Don't want to build? Simply select from our library of pre-configured agents and put them to work immediately.
**Agent Interaction:** Whether you've built your own or are using pre-configured agents, easily run and interact with them through our user-friendly interface.
**Monitoring and Analytics:** Keep track of your agents' performance and gain insights to continually improve your automation processes.
[Read this guide](https://docs.agpt.co/platform/new_blocks/) to learn how to build your own custom blocks.
### 💽 AutoGPT Server
The AutoGPT Server is the powerhouse of our platform This is where your agents run. Once deployed, agents can be triggered by external sources and can operate continuously. It contains all the essential components that make AutoGPT run smoothly.
**Source Code:** The core logic that drives our agents and automation processes.
**Infrastructure:** Robust systems that ensure reliable and scalable performance.
**Marketplace:** A comprehensive marketplace where you can find and deploy a wide range of pre-built agents.
### 🐙 Example Agents
Here are two examples of what you can do with AutoGPT:
1. **Generate Viral Videos from Trending Topics**
- This agent reads topics on Reddit.
- It identifies trending topics.
- It then automatically creates a short-form video based on the content.
2. **Identify Top Quotes from Videos for Social Media**
- This agent subscribes to your YouTube channel.
- When you post a new video, it transcribes it.
- It uses AI to identify the most impactful quotes to generate a summary.
- Then, it writes a post to automatically publish to your social media.
These examples show just a glimpse of what you can achieve with AutoGPT! You can create customized workflows to build agents for any use case.
---
### Mission and Licencing
Our mission is to provide the tools, so that you can focus on what matters:
- 🏗️ **Building** - Lay the foundation for something amazing.
- 🧪 **Testing** - Fine-tune your agent to perfection.
@@ -15,26 +77,29 @@ Be part of the revolution! **AutoGPT** is here to stay, at the forefront of AI i
**📖 [Documentation](https://docs.agpt.co)**
&ensp;|&ensp;
**🚀 [Contributing](CONTRIBUTING.md)**
&ensp;|&ensp;
**🛠️ [Build your own Agent - Quickstart](QUICKSTART.md)**
## 🥇 Current Best Agent: evo.ninja
[Current Best Agent]: #-current-best-agent-evoninja
**Licensing:**
The AutoGPT Arena Hackathon saw [**evo.ninja**](https://github.com/polywrap/evo.ninja) earn the top spot on our Arena Leaderboard, proving itself as the best open-source generalist agent. Try it now at https://evo.ninja!
MIT License: The majority of the AutoGPT repository is under the MIT License.
📈 To challenge evo.ninja, AutoGPT, and others, submit your benchmark run to the [Leaderboard](#-leaderboard), and maybe your agent will be up here next!
Polyform Shield License: This license applies to the autogpt_platform folder.
## 🧱 Building blocks
For more information, see https://agpt.co/blog/introducing-the-autogpt-platform
---
## 🤖 AutoGPT Classic
> Below is information about the classic version of AutoGPT.
**🛠️ [Build your own Agent - Quickstart](classic/FORGE-QUICKSTART.md)**
### 🏗️ Forge
**Forge your own agent!** &ndash; Forge is a ready-to-go template for your agent application. All the boilerplate code is already handled, letting you channel all your creativity into the things that set *your* agent apart. All tutorials are located [here](https://medium.com/@aiedge/autogpt-forge-e3de53cc58ec). Components from the [`forge.sdk`](/autogpts/forge/forge/sdk) can also be used individually to speed up development and reduce boilerplate in your agent project.
**Forge your own agent!** &ndash; Forge is a ready-to-go toolkit to build your own agent application. It handles most of the boilerplate code, letting you channel all your creativity into the things that set *your* agent apart. All tutorials are located [here](https://medium.com/@aiedge/autogpt-forge-e3de53cc58ec). Components from [`forge`](/classic/forge/) can also be used individually to speed up development and reduce boilerplate in your agent project.
🚀 [**Getting Started with Forge**](https://github.com/Significant-Gravitas/AutoGPT/blob/master/autogpts/forge/tutorials/001_getting_started.md) &ndash;
🚀 [**Getting Started with Forge**](https://github.com/Significant-Gravitas/AutoGPT/blob/master/classic/forge/tutorials/001_getting_started.md) &ndash;
This guide will walk you through the process of creating your own agent and using the benchmark and user interface.
📘 [Learn More](https://github.com/Significant-Gravitas/AutoGPT/tree/master/autogpts/forge) about Forge
📘 [Learn More](https://github.com/Significant-Gravitas/AutoGPT/tree/master/classic/forge) about Forge
### 🎯 Benchmark
@@ -44,24 +109,17 @@ This guide will walk you through the process of creating your own agent and usin
📦 [`agbenchmark`](https://pypi.org/project/agbenchmark/) on Pypi
&ensp;|&ensp;
📘 [Learn More](https://github.com/Significant-Gravitas/AutoGPT/blob/master/benchmark) about the Benchmark
#### 🏆 [Leaderboard][leaderboard]
[leaderboard]: https://leaderboard.agpt.co
Submit your benchmark run through the UI and claim your place on the AutoGPT Arena Leaderboard! The best scoring general agent earns the title of **[Current Best Agent]**, and will be adopted into our repo so people can easily run it through the [CLI].
[![Screenshot of the AutoGPT Arena leaderboard](https://github.com/Significant-Gravitas/AutoGPT/assets/12185583/60813392-9ddb-4cca-bb44-b477dbae225d)][leaderboard]
📘 [Learn More](https://github.com/Significant-Gravitas/AutoGPT/tree/master/classic/benchmark) about the Benchmark
### 💻 UI
**Makes agents easy to use!** The `frontend` gives you a user-friendly interface to control and monitor your agents. It connects to agents through the [agent protocol](#-agent-protocol), ensuring compatibility with many agents from both inside and outside of our ecosystem.
<!-- TODO: instert screenshot of front end -->
<!-- TODO: insert screenshot of front end -->
The frontend works out-of-the-box with all agents in the repo. Just use the [CLI] to run your agent of choice!
📘 [Learn More](https://github.com/Significant-Gravitas/AutoGPT/tree/master/frontend) about the Frontend
📘 [Learn More](https://github.com/Significant-Gravitas/AutoGPT/tree/master/classic/frontend) about the Frontend
### ⌨️ CLI
@@ -78,7 +136,6 @@ Options:
Commands:
agent Commands to create, start and stop agents
arena Commands to enter the arena
benchmark Commands to start the benchmark and list tests and categories
setup Installs dependencies needed for your system.
```
@@ -101,6 +158,8 @@ To maintain a uniform standard and ensure seamless compatibility with many curre
---
## Stars stats
<p align="center">
<a href="https://star-history.com/#Significant-Gravitas/AutoGPT">
<picture>
@@ -110,3 +169,10 @@ To maintain a uniform standard and ensure seamless compatibility with many curre
</picture>
</a>
</p>
## ⚡ Contributors
<a href="https://github.com/Significant-Gravitas/AutoGPT/graphs/contributors" alt="View Contributors">
<img src="https://contrib.rocks/image?repo=Significant-Gravitas/AutoGPT&max=1000&columns=10" alt="Contributors" />
</a>

View File

@@ -1,66 +1,47 @@
# Security Policy
- [**Using AutoGPT Securely**](#using-AutoGPT-securely)
- [Restrict Workspace](#restrict-workspace)
- [Untrusted inputs](#untrusted-inputs)
- [Data privacy](#data-privacy)
- [Untrusted environments or networks](#untrusted-environments-or-networks)
- [Multi-Tenant environments](#multi-tenant-environments)
- [**Reporting a Vulnerability**](#reporting-a-vulnerability)
## Reporting Security Issues
## Using AutoGPT Securely
We take the security of our project seriously. If you believe you have found a security vulnerability, please report it to us privately. **Please do not report security vulnerabilities through public GitHub issues, discussions, or pull requests.**
### Restrict Workspace
> **Important Note**: Any code within the `classic/` folder is considered legacy, unsupported, and out of scope for security reports. We will not address security vulnerabilities in this deprecated code.
Since agents can read and write files, it is important to keep them restricted to a specific workspace. This happens by default *unless* RESTRICT_TO_WORKSPACE is set to False.
Instead, please report them via:
- [GitHub Security Advisory](https://github.com/Significant-Gravitas/AutoGPT/security/advisories/new)
<!--- [Huntr.dev](https://huntr.com/repos/significant-gravitas/autogpt) - where you may be eligible for a bounty-->
Disabling RESTRICT_TO_WORKSPACE can increase security risks. However, if you still need to disable it, consider running AutoGPT inside a [sandbox](https://developers.google.com/code-sandboxing), to mitigate some of these risks.
### Reporting Process
1. **Submit Report**: Use one of the above channels to submit your report
2. **Response Time**: Our team will acknowledge receipt of your report within 14 business days.
3. **Collaboration**: We will collaborate with you to understand and validate the issue
4. **Resolution**: We will work on a fix and coordinate the release process
### Untrusted inputs
### Disclosure Policy
- Please provide detailed reports with reproducible steps
- Include the version/commit hash where you discovered the vulnerability
- Allow us a 90-day security fix window before any public disclosure
- Share any potential mitigations or workarounds if known
When handling untrusted inputs, it's crucial to isolate the execution and carefully pre-process inputs to mitigate script injection risks.
## Supported Versions
Only the following versions are eligible for security updates:
For maximum security when handling untrusted inputs, you may need to employ the following:
| Version | Supported |
|---------|-----------|
| Latest release on master branch | ✅ |
| Development commits (pre-master) | ✅ |
| Classic folder (deprecated) | ❌ |
| All other versions | ❌ |
* Sandboxing: Isolate the process.
* Updates: Keep your libraries (including AutoGPT) updated with the latest security patches.
* Input Sanitation: Before feeding data to the model, sanitize inputs rigorously. This involves techniques such as:
* Validation: Enforce strict rules on allowed characters and data types.
* Filtering: Remove potentially malicious scripts or code fragments.
* Encoding: Convert special characters into safe representations.
* Verification: Run tooling that identifies potential script injections (e.g. [models that detect prompt injection attempts](https://python.langchain.com/docs/guides/safety/hugging_face_prompt_injection)).
## Security Best Practices
When using this project:
1. Always use the latest stable version
2. Review security advisories before updating
3. Follow our security documentation and guidelines
4. Keep your dependencies up to date
5. Do not use code from the `classic/` folder as it is deprecated and unsupported
### Data privacy
## Past Security Advisories
For a list of past security advisories, please visit our [Security Advisory Page](https://github.com/Significant-Gravitas/AutoGPT/security/advisories) and [Huntr Disclosures Page](https://huntr.com/repos/significant-gravitas/autogpt).
To protect sensitive data from potential leaks or unauthorized access, it is crucial to sandbox the agent execution. This means running it in a secure, isolated environment, which helps mitigate many attack vectors.
### Untrusted environments or networks
Since AutoGPT performs network calls to the OpenAI API, it is important to always run it with trusted environments and networks. Running it on untrusted environments can expose your API KEY to attackers.
Additionally, running it on an untrusted network can expose your data to potential network attacks.
However, even when running on trusted networks, it is important to always encrypt sensitive data while sending it over the network.
### Multi-Tenant environments
If you intend to run multiple AutoGPT brains in parallel, it is your responsibility to ensure the models do not interact or access each other's data.
The primary areas of concern are tenant isolation, resource allocation, model sharing and hardware attacks.
- Tenant Isolation: you must make sure that the tenants run separately to prevent unwanted access to the data from other tenants. Keeping model network traffic separate is also important because you not only prevent unauthorized access to data, but also prevent malicious users or tenants sending prompts to execute under another tenants identity.
- Resource Allocation: a denial of service caused by one tenant can affect the overall system health. Implement safeguards like rate limits, access controls, and health monitoring.
- Data Sharing: in a multi-tenant design with data sharing, ensure tenants and users understand the security risks and sandbox agent execution to mitigate risks.
- Hardware Attacks: the hardware (GPUs or TPUs) can also be attacked. [Research](https://scholar.google.com/scholar?q=gpu+side+channel) has shown that side channel attacks on GPUs are possible, which can make data leak from other brains or processes running on the same system at the same time.
## Reporting a Vulnerability
Beware that none of the topics under [Using AutoGPT Securely](#using-AutoGPT-securely) are considered vulnerabilities on AutoGPT.
However, If you have discovered a security vulnerability in this project, please report it privately. **Do not disclose it as a public issue.** This gives us time to work with you to fix the issue before public exposure, reducing the chance that the exploit will be used before a patch is released.
Please disclose it as a private [security advisory](https://github.com/Significant-Gravitas/AutoGPT/security/advisories/new).
A team of volunteers on a reasonable-effort basis maintains this project. As such, please give us at least 90 days to work on a fix before public exposure.
---
Last updated: November 2024

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/480/AutoGPT",
"timestamp": "2023-10-22T06:49:52.536177",
"commit_hash_to_benchmark": "16e266c65fb4620a1b1397532c503fa426ec191d",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/filipjakubowski/AutoGPT",
"timestamp": "2023-11-01T17:13:24.272333",
"commit_hash_to_benchmark": "78e92234d63a69b5471da0c0e62ce820a9109dd4",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/filipjakubowski/AutoGPT",
"timestamp": "2023-11-04T10:13:11.039444",
"commit_hash_to_benchmark": "78e92234d63a69b5471da0c0e62ce820a9109dd4",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/QingquanBao/AutoGPT",
"timestamp": "2023-11-01T16:20:51.086235",
"commit_hash_to_benchmark": "78e92234d63a69b5471da0c0e62ce820a9109dd4",
"branch_to_benchmark": "master"
}

View File

@@ -1,7 +0,0 @@
{
"github_repo_url": "https://github.com/imakb/AKBAgent",
"timestamp": "2023-10-31T00:03:23.000000",
"commit_hash_to_benchmark": "c65b71d51d8f849663172c5a128953b4ca92b2b0",
"branch_to_benchmark": "AKBAgent"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/hongzzz/AutoGPT",
"timestamp": "2023-10-13T03:22:59.347424",
"commit_hash_to_benchmark": "38790a27ed2c1b63a301b6a67e7590f2d30de53e",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/kaiomagalhaes/AutoGPT",
"timestamp": "2023-10-04T15:25:30.458687",
"commit_hash_to_benchmark": "1bd85cbc09473c0252928fb849ae8373607d6065",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/Jonobinsoftware/AutoGPT-Tutorial",
"timestamp": "2023-10-10T06:01:23.439061",
"commit_hash_to_benchmark": "c77ade5b2f62c5373fc7573e5c45581f003c77a3",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/aivaras-mazylis/AutoGPT",
"timestamp": "2023-10-17T13:16:16.327237",
"commit_hash_to_benchmark": "1eadc64dc0a693c7c9de77ddaef857f3a36f7950",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/althaf004/AutoGPT",
"timestamp": "2023-09-26T03:40:03.658369",
"commit_hash_to_benchmark": "4a8da53d85d466f2eb325c745a2c03cf88792e7d",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/againeureka/AutoGPT",
"timestamp": "2023-10-12T02:20:01.005361",
"commit_hash_to_benchmark": "766796ae1e8c07cf2a03b607621c3da6e1f01a31",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/kitdesai/AgentKD",
"timestamp": "2023-10-14T02:35:09.979434",
"commit_hash_to_benchmark": "93e3ec36ed6cd9e5e60585f016ad3bef4e1c52cb",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/JawadAbu/AutoGPT.git",
"timestamp": "2023-11-05T12:35:35.352028",
"commit_hash_to_benchmark": "a1d60878141116641ea864ef6de7ca6142e9534c",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/Shadowless422/Alfred",
"timestamp": "2023-10-03T10:42:45.473477",
"commit_hash_to_benchmark": "949ab477a87cfb7a3668d7961e9443922081e098",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/alphaciso/AutoGPT",
"timestamp": "2023-10-21T08:26:41.961187",
"commit_hash_to_benchmark": "415b4ceed1417d0b21d87d7d4ea0cd38943e264f",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/4nd3rs/AutoGPT",
"timestamp": "2023-10-11T11:00:08.150159",
"commit_hash_to_benchmark": "57bcbdf45c6c1493a4e5f6a4e72594ea13c10f93",
"branch_to_benchmark": "master"
}

View File

@@ -1 +0,0 @@
{"github_repo_url": "https://github.com/pjw1/AntlerAI", "timestamp": "2023-10-07T11:46:39Z", "commit_hash_to_benchmark": "f81e086e5647370854ec639c531c900775a99207", "branch_to_benchmark": "master"}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/Nimit3-droid/AutoGPT",
"timestamp": "2023-10-03T11:59:15.495902",
"commit_hash_to_benchmark": "d8d7fc4858a8d13407f6d7da360c6b5d398f2175",
"branch_to_benchmark": "master"
}

View File

@@ -1 +0,0 @@
{"github_repo_url": "https://github.com/somnistudio/SomniGPT", "timestamp": "2023-10-06T16:40:14Z", "commit_hash_to_benchmark": "47eb5124fa97187d7f3fa4036e422cd771cf0ae7", "branch_to_benchmark": "master"}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/AmahAjavon/AutoGPT",
"timestamp": "2023-10-28T20:32:15.845741",
"commit_hash_to_benchmark": "2bd05827f97e471af798b8c2f04e8772dad101d3",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/arunqa/AutoGPT",
"timestamp": "2023-09-26T05:13:24.466017",
"commit_hash_to_benchmark": "4a8da53d85d466f2eb325c745a2c03cf88792e7d",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/Nikhil8652/AutoGPT",
"timestamp": "2023-10-16T09:12:17.452121",
"commit_hash_to_benchmark": "2f79caa6b901d006a78c1ac9e69db4465c0f971a",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/RedTachyon/AutoGPT",
"timestamp": "2023-10-21T22:31:30.871023",
"commit_hash_to_benchmark": "eda21d51921899756bf866cf5c4d0f2dcd3e2e23",
"branch_to_benchmark": "master"
}

View File

@@ -1 +0,0 @@
{"github_repo_url": "https://github.com/SarahGrevy/AutoGPT", "timestamp": "2023-10-20T17:21:22Z", "commit_hash_to_benchmark": "32300906c9aafea8c550fa2f9edcc113fbfc512c", "branch_to_benchmark": "master"}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/JasonDRZ/AutoGPT",
"timestamp": "2023-10-26T13:27:58.805270",
"commit_hash_to_benchmark": "ab2a61833584c42ededa805cbac50718c72aa5ae",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/vshneer/AutoTDD",
"timestamp": "2023-10-11T19:14:30.939747",
"commit_hash_to_benchmark": "766796ae1e8c07cf2a03b607621c3da6e1f01a31",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/cagdasbas/AutoGPT",
"timestamp": "2023-10-15T08:43:40.193080",
"commit_hash_to_benchmark": "74ee69daf1c0a2603f19bdb1edcfdf1f4e06bcff",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/LuisLechugaRuiz/AwareAgent",
"timestamp": "2023-10-26T10:10:01.481205",
"commit_hash_to_benchmark": "c180063dde49af02ed95ec4c019611da0a5540d7",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/xpineda/AutoGPT_xabyvng.git",
"timestamp": "2023-10-20T09:21:48.837635",
"commit_hash_to_benchmark": "2187f66149ffa4bb99f9ca6a11b592fe4d683791",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/aniruddha-adhikary/AutoGPT",
"timestamp": "2023-09-27T15:32:24.056105",
"commit_hash_to_benchmark": "6f289e6dfa8246f8993b76c933527f3707b8d7e5",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/Baptistecaille/AutoGPT",
"timestamp": "2023-10-01T19:44:23.416591",
"commit_hash_to_benchmark": "3da29eae45683457131ee8736bedae7e2a74fbba",
"branch_to_benchmark": "master"
}

View File

@@ -1 +0,0 @@
{"github_repo_url": "https://github.com/jafar-albadarneh/Bravo06GPT", "timestamp": "2023-10-04T23:01:27Z", "commit_hash_to_benchmark": "f8c177b4b0e4ca45a3a104011b866c0415c648f1", "branch_to_benchmark": "master"}

View File

@@ -1 +0,0 @@
{"github_repo_url": "https://github.com/dabeer021/Brillante-AI", "timestamp": "2023-10-02T19:05:04Z", "commit_hash_to_benchmark": "163ab75379e1ee7792f50d4d70a1f482ca9cb6a1", "branch_to_benchmark": "master"}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/razorhasbeen/AutoGPT",
"timestamp": "2023-10-03T11:50:56.725628",
"commit_hash_to_benchmark": "d8d7fc4858a8d13407f6d7da360c6b5d398f2175",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/ccsnow127/AutoGPT",
"timestamp": "2023-10-21T13:57:15.131761",
"commit_hash_to_benchmark": "e9b64adae9fce180a392c726457e150177e746fb",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/ces-sonnguyen/CES-GPT",
"timestamp": "2023-10-30T07:45:07.337258",
"commit_hash_to_benchmark": "2bd05827f97e471af798b8c2f04e8772dad101d3",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/cislerk/AutoGPT",
"timestamp": "2023-10-10T18:40:50.718850",
"commit_hash_to_benchmark": "c77ade5b2f62c5373fc7573e5c45581f003c77a3",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/myncow/DocumentAgent.git",
"timestamp": "2023-10-31T21:21:28.951345",
"commit_hash_to_benchmark": "c65b71d51d8f849663172c5a128953b4ca92b2b0",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/dr1yl/AutoGPT",
"timestamp": "2023-10-09T20:01:05.041446",
"commit_hash_to_benchmark": "c77ade5b2f62c5373fc7573e5c45581f003c77a3",
"branch_to_benchmark": "master"
}

View File

@@ -1 +0,0 @@
{"github_repo_url": "https://github.com/Ahmad-Alaziz/ChadGPT", "timestamp": "2023-10-26T09:39:35Z", "commit_hash_to_benchmark": "84dd029c011379791a6fec8b148b2982a2ef159e", "branch_to_benchmark": "master"}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/darkcyber-ninja/AutoGPT",
"timestamp": "2023-10-31T17:55:41.458834",
"commit_hash_to_benchmark": "c65b71d51d8f849663172c5a128953b4ca92b2b0",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/hugomastromauro/AutoGPT",
"timestamp": "2023-11-01T13:21:42.624202",
"commit_hash_to_benchmark": "78e92234d63a69b5471da0c0e62ce820a9109dd4",
"branch_to_benchmark": "master"
}

View File

@@ -1 +0,0 @@
{"github_repo_url": "https://github.com/simonfunk/Auto-GPT", "timestamp": "2023-10-08T02:10:18Z", "commit_hash_to_benchmark": "e99e9b6181f091a9625ef9b922dac15dd5f0a885", "branch_to_benchmark": "master"}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/HMDCrew/AutoGPT",
"timestamp": "2023-10-06T20:41:26.293944",
"commit_hash_to_benchmark": "9e353e09b5df39d4d410bef57cf17387331e96f6",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/wic0144/AutoGPT",
"timestamp": "2023-10-26T09:05:21.013962",
"commit_hash_to_benchmark": "89d333f3bb422495f21e04bdd2bba3cb8c1a34ae",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/beisdog/AutoGPT",
"timestamp": "2023-09-29T22:06:18.846082",
"commit_hash_to_benchmark": "d6abb27db61142a70defd0c75b53985ea9a71fce",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/schumacher-m/Derpmaster",
"timestamp": "2023-10-30T21:10:27.407732",
"commit_hash_to_benchmark": "d9fbd26b8563e5f59d705623bae0d5cf9c9499c7",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/rahuldotar/AutoGPT",
"timestamp": "2023-10-02T11:34:29.870077",
"commit_hash_to_benchmark": "062d286c239dc863ede4ad475d7348698722f5fa",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/MohamedBasueny/AutoGPT-Drench",
"timestamp": "2023-10-27T01:28:13.869318",
"commit_hash_to_benchmark": "21b809794a90cf6f9a6aa41f179f420045becadc",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/MuriloEduardo/AutoGPT.git",
"timestamp": "2023-09-25T03:18:20.659056",
"commit_hash_to_benchmark": "ffa76c3a192c36827669335de4390262da5fd972",
"branch_to_benchmark": "master"
}

View File

@@ -1 +0,0 @@
{"github_repo_url": "https://github.com/Significant-Gravitas/AutoGPT", "timestamp": "2023-10-26T09:15:50Z", "commit_hash_to_benchmark": "6c9152a95c8994898c47c85ea90ba58e0cc02c28", "branch_to_benchmark": "master"}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/kyannai/AutoGPT",
"timestamp": "2023-09-29T03:05:45.504690",
"commit_hash_to_benchmark": "1f367618edf903f38dff4dd064f96e611ffc5242",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/janekdijkstra/AutoGPT",
"timestamp": "2023-10-16T12:12:54.998033",
"commit_hash_to_benchmark": "2f79caa6b901d006a78c1ac9e69db4465c0f971a",
"branch_to_benchmark": "master"
}

View File

@@ -1,6 +0,0 @@
{
"github_repo_url": "https://github.com/flashdumper/AutoGPT",
"timestamp": "2023-10-30T23:02:13.653861",
"commit_hash_to_benchmark": "d9fbd26b8563e5f59d705623bae0d5cf9c9499c7",
"branch_to_benchmark": "master"
}

Some files were not shown because too many files have changed in this diff Show More