Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Separate the Plugin interface into multiple different interfaces for different types of plugins #3652

Closed
3 of 15 tasks
ntindle opened this issue May 2, 2023 · 15 comments
Closed
3 of 15 tasks
Labels
fridge Items that can't be processed right now but can be of use or inspiration later function: plugins re-arch

Comments

@ntindle
Copy link
Member

ntindle commented May 2, 2023

Some plugins should only support swapping the Memory, LLM, or UI out. Others may only want to add commands.

We should support these plugins in a way that doesn't require them to update constantly, saying they do or don't support x, y, or z.

The following steps need to be taken to do this:

@Boostrix
Copy link
Contributor

Boostrix commented May 2, 2023

regarding commands: it would be useful if there was support for an optional step to prepare commands, but also another step to review the prepared command before it's getting executed. Some users keep seeing nano/vim being used, despite "non-interactive" being a part of their constraints/description.
And in fact, a number of constraints seem to be regularly violated. Thus, splitting command execution into two more stages would help streamline the process:

@ntindle ntindle modified the milestones: v0.3.1 Release, v0.4.0 Release May 2, 2023
@Wladastic
Copy link
Contributor

As a web gui is also being built, we could try adding a setup section where you could also just click and toggle the plugins

@Boostrix
Copy link
Contributor

Boostrix commented May 4, 2023

this seems to be work in progress, according to the logs, commands are going to be moved into plugins and there are going to be ways to enable/disable those individually.

And let's keep in mind that plugin support is a fairly recent addition: #757

What seems to be missing right now (?) is a capabiility for plugins to provide hooks so that these can be separately configured/set up using a holistic interface - at the very least, we need some form get/set interface for key/value pairs, analogous to git.

Apart from dealing with plugin dependencies (#3068), recent efforts are seemingly focused on providing means to explicitly enable/disable individual commands and plugins: #3461

@anonhostpi
Copy link

This should definitely be implemented. Inversion of Control is always a good practice. This would allow the community/end-user to hotswap parts of the codebase with their own implementations. I think the repository should aim to try to achieve this with every part of AutoGPT that is hard-coded into it.

@anonhostpi
Copy link

I absolutely love this idea @ntindle

@p-i-
Copy link
Contributor

p-i- commented May 5, 2023

References PR #2642

@anonhostpi
Copy link

anonhostpi commented May 5, 2023

So, I've been reviewing all of the repositories Issues and PRs, as well as tracking some of the progress of the re-arch, and I think this PR addresses issues with this repository's IoC.

I started a discussion in GH discussions that addresses poor IoC. Given what I've seen on the 200+ issues I've reviewed over the last 2 days, I think the repo could benefit from the conversation: #3856

I think this PR is a good step in a good direction

@anonhostpi
Copy link

needs the https://github.com/Significant-Gravitas/Auto-GPT/labels/re-arch label

@github-actions
Copy link
Contributor

github-actions bot commented Sep 6, 2023

This issue has automatically been marked as stale because it has not had any activity in the last 50 days. You can unstale it by commenting or removing the label. Otherwise, this issue will be closed in 10 days.

@github-actions github-actions bot added the Stale label Sep 6, 2023
@Pwuts Pwuts moved this from 📋 Backlog to 📅 Milestoned (and in progress) in AutoGPT development kanban Sep 8, 2023
@Pwuts Pwuts moved this from 📅 Milestoned (and in progress) to 🔖 Promising in AutoGPT development kanban Sep 8, 2023
@Pwuts Pwuts removed the Stale label Sep 8, 2023
@Pwuts Pwuts removed this from the Auto-GPT v0.5.0: Hackathon Ready milestone Sep 8, 2023
Copy link
Contributor

github-actions bot commented Nov 7, 2023

This issue has automatically been marked as stale because it has not had any activity in the last 50 days. You can unstale it by commenting or removing the label. Otherwise, this issue will be closed in 10 days.

@github-actions github-actions bot added the Stale label Nov 7, 2023
@ntindle ntindle removed the Stale label Nov 7, 2023
@SalesforceBobLightning
Copy link

You mentioned updating the plugins, I assume this is 1st party ones, are you also going to update the 3rd party ones too?

@Wladastic
Copy link
Contributor

You mentioned updating the plugins, I assume this is 1st party ones, are you also going to update the 3rd party ones too?

third party plugins are out of our reach, each first party plugin is mostly edited by the original creators and they are mostly responsible, otherwise the plugins are removed from first party.

Copy link
Contributor

This issue has automatically been marked as stale because it has not had any activity in the last 50 days. You can unstale it by commenting or removing the label. Otherwise, this issue will be closed in 10 days.

@github-actions github-actions bot added the Stale label Mar 28, 2024
Copy link
Contributor

github-actions bot commented Apr 7, 2024

This issue was closed automatically because it has been stale for 10 days with no activity.

@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Apr 7, 2024
@github-project-automation github-project-automation bot moved this from 🔖 Valuable & Actionable to ✅ Done in AutoGPT development kanban Apr 7, 2024
@ntindle ntindle reopened this May 31, 2024
@ntindle ntindle removed their assignment May 31, 2024
@ntindle ntindle moved this from ✅ Done to 🔖 Valuable & Actionable in AutoGPT development kanban May 31, 2024
@ntindle ntindle added fridge Items that can't be processed right now but can be of use or inspiration later and removed Stale labels May 31, 2024
@github-project-automation github-project-automation bot moved this from 🔖 Valuable & Actionable to ✅ Done in AutoGPT development kanban Jun 28, 2024
@Pwuts
Copy link
Member

Pwuts commented Jun 29, 2024

Let's say this is more or less completed by #7054

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
fridge Items that can't be processed right now but can be of use or inspiration later function: plugins re-arch
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

8 participants