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

🚧 Beta release #22

Open
gr2m opened this issue Aug 29, 2024 · 4 comments
Open

🚧 Beta release #22

gr2m opened this issue Aug 29, 2024 · 4 comments
Assignees

Comments

@gr2m
Copy link
Collaborator

gr2m commented Aug 29, 2024

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

@gr2m gr2m pinned this issue Aug 29, 2024
@gr2m gr2m self-assigned this Aug 29, 2024
@gr2m gr2m changed the title Alpha release 🚧 Alpha release Aug 29, 2024
@gr2m gr2m changed the title 🚧 Alpha release 🚧 Beta release Sep 8, 2024
@gr2m
Copy link
Collaborator Author

gr2m commented Sep 8, 2024

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
Copy link
Contributor

D1M1TR10S commented Sep 18, 2024

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

  • How can we make function calling more simple and remove work around orchestration?
  • Give a proper introduction to help developers build a mental model of function calling. "This is a prompt that would yield that this function is triggered."
  • Timeouts: 1 minute timeout is an issue. If you want to do multi-turn checks it's hard. Sends and early response and constant streams. Would like to see an example of a streaming response. Copilot wheel depended on the builder sending the acknowledge event, making that clear would be helpful–new updates should not depend on this anymore. Even after the acknowledge we may want to send a heartbeat to keep the response from timing out. At least guide the engineer so they know to keep the response open and inform the user that something is happening.
  • GHES: Integration into GHES instance. Has one customer with everything locked down in their server. Would like to get more context aware responses. Have a docs on "This is how you code at our company", and they want this incorporated into Copilot context. Proposing to them that they build this as an agent/extension, so developers could ask questions to this internal knowledge base. Stuck with not having knowledge bases on GHES. Likes have the @Azure extension, as it has way better responses than Bing Chat questions about Azure.
  • Read in the older repos that you can show a UI to the user. Could do a lot more to educate around "Confirmations".
  • Databases to integrate with: Any and all of them. Not sure how to pipe in context from VS Code, like an open file. Client-side skills.
  • Policy Enablement Blocker: Installed the app on an org without Copilot, but he had Copilot. Took awhile to figure out. Couldn't enable the policy. The org needs a Copilot license to enable the extensibility policy.
  • Security: What if a user installs an app outside of an organization's scope? Can that user expose company data without their approval?

@gr2m
Copy link
Collaborator Author

gr2m commented Sep 18, 2024

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

  • npm init copilot-extension
  • npm init copilot-agent
  • npm init copilot-skill

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
Copy link
Contributor

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants