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

Plugin refactor #424

Merged
merged 30 commits into from
Oct 2, 2023

Conversation

TaoChenOSU
Copy link
Collaborator

@TaoChenOSU TaoChenOSU commented Sep 29, 2023

Motivation and Context

Currently, plugin development using Chat Copilot has the following drawbacks:

  1. CC requires the end user to configure the plugins and once configured, the plugins are transient, meaning that they disappear when the user refreshes the app.
  2. Plugins are scoped to the user who configured them, meaning that all users who want to use plugins must independently configure them.

Description

This PR addresses the above issues by:

  1. Move plugin configuration to the backend. Plugins are configured and added in the backend.
  2. Save the states of plugins within chat sessions.
  3. Create a new plugin call WebSearcher that performs Bing search. This plugin can be deployed to Azure.
  4. Move the Klarna plugin to the backend.

This is not a breaking change.

This will be the first of a couple more PRs to come. The follow-up PRs will move the existing plugins that are still managed by the frontend to this new pattern.

image

Contribution Checklist

@TaoChenOSU TaoChenOSU added enhancement New feature or request webapp Pull requests that update Typescript code webapi Pull requests that update .net code labels Sep 29, 2023
@TaoChenOSU TaoChenOSU self-assigned this Sep 29, 2023
@github-actions github-actions bot added documentation Improvements or additions to documentation deployment Issues related to deploying Chat-Copilot github actions Pull requests that update GitHub Actions code labels Sep 29, 2023
@dehoward
Copy link
Contributor

dehoward commented Oct 2, 2023

@TaoChenOSU 61 files changed can be a lot to take in at once, is there any chance this PR can be broken up into 1 or more smaller PRs?

@TaoChenOSU
Copy link
Collaborator Author

@TaoChenOSU 61 files changed can be a lot to take in at once, is there any chance this PR can be broken up into 1 or more smaller PRs?

Yes, I will break this into multiple PRs.

webapi/Controllers/PluginController.cs Outdated Show resolved Hide resolved
webapi/Controllers/PluginController.cs Outdated Show resolved Hide resolved
plugins/README.md Outdated Show resolved Hide resolved
plugins/README.md Show resolved Hide resolved
plugins/shared/PluginApi.cs Show resolved Hide resolved
plugins/shared/PluginAuth.cs Outdated Show resolved Hide resolved
plugins/shared/PluginManifest.cs Show resolved Hide resolved
webapi/Controllers/PluginController.cs Outdated Show resolved Hide resolved
webapi/Extensions/ServiceExtensions.cs Show resolved Hide resolved
webapi/README.md Outdated Show resolved Hide resolved
webapi/Options/PluginOptions.cs Outdated Show resolved Hide resolved
alliscode
alliscode previously approved these changes Oct 2, 2023
teresaqhoang
teresaqhoang previously approved these changes Oct 2, 2023
@TaoChenOSU TaoChenOSU added this pull request to the merge queue Oct 2, 2023
Merged via the queue into microsoft:main with commit 67ca4fe Oct 2, 2023
9 checks passed
@TaoChenOSU TaoChenOSU deleted the taochen/feature-plugin-refactor branch October 2, 2023 23:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
deployment Issues related to deploying Chat-Copilot documentation Improvements or additions to documentation enhancement New feature or request github actions Pull requests that update GitHub Actions code webapi Pull requests that update .net code webapp Pull requests that update Typescript code
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

5 participants