copilot-extensions / preview-sdk.js

An SDK that streamlines extension development by automating request verification, response formatting, and API interactions
MIT License
19 stars 15 forks source link

🚧 Beta release #22

Open gr2m opened 2 months ago

gr2m commented 2 months ago

Tracking issue for features we want to complete for an official alpha release

gr2m commented 2 months ago

I figured calling it "alpha" when all functionality will be implemented by the time it's done is not right, so I upgraded the issue to "Beta release". I'd consider the current package to be an alpha version already.

D1M1TR10S commented 1 month ago

Feedback call with Rob Bas at Xebia/Xpirit

Last Friday, Rob started building. Used the SDK. It made it extremely easy for him to get up and running.

Was missing some helpful getting started tips and examples for the SDK. Basic npm init not in the docs. Asked for some examples for the SDK.

Liked the quickstart with Codespaces for GH Models. Would like that with extensions. Skipped the ngrok and did it from Codespaces.

Recommends:

  1. Going straight to the SDK
  2. Quickstart with Codespaces
  3. Start streaming responses from CAPI to understand the data flow
  4. Connect to your backend and return responses based on that. See what's needed there to harvest IP from their company.

Would like if you could do a knowledge base from within the IDE, getting context from things in wikis (and custom data sources). Little examples in the docs and examples would help. Help unlock in peoples' minds what's possible. "I want to call my own API in a database". Using info pulled from their backend and generating responses that incorporate it. Needed a lot of guesswork to see how to get the elements they want.

Off-topic Friction

Expect some freedom since it's your own agent. The content filters are really harsh about filtering things that aren't code. Wants to search about things that aren't coding questions, but it's been getting filtered out. Thinks of Copilot as the gateway to anything that a developer needs – architecture decision records, timesheets, code coverage prognosis. A lot of this data is not necessarily coding based.

Feedback

gr2m commented 1 month ago

Basic npm init not in the docs

I registered the npm packages create-copilot-extension, create-copilot-agent, and create-copilot-skill. That will allows us to create these scripts if we want to

Once we complete https://github.com/github/copilot-extensibility/issues/72, we can work on an init script that sets a developer up with everything they need to have a working "hello world" copilot extension agent.

D1M1TR10S commented 1 month ago

we have this one open issue regarding the manifest flow. @rajbos mentioned about what his ideal experience would be, and the fact that we cannot programmatically register a new GitHub App is a blocker for us to greatly improve DX. What the manifest flow enables is removing all the manual steps of registering a github app and making all the configurations right, it would all be replaced with an OAuth flow. I already build the tooling for the manifest flow so once the backend is ready, we should be able to utilize it right away using https://github.com/gr2m/register-github-app-cli / https://github.com/gr2m/register-github-app