Skip to content

GitHub Copilot SDK as a dependency free core library. #248

@martasp

Description

@martasp

Currently, the Copilot SDK for .NET (and other languages) requires a separate Copilot CLI executable to be installed and run as a server process. This approach feels like a distribution/wrapper, as every SDK user has to manage and maintain a separate executable binary or install cli manually. This adds installation friction and increases system complexity if you want to extend and build some functionality on top.

It would be a significant improvement to offer a single statically linked library instead of github copilot cli executable, directly embedding all CLI functionality. This would:

  • Eliminate the need to download/install/call out to external binaries or use jsonRPC server layer.
  • Make integration cleaner for .NET apps by providing a GitHub Copilot NuGet package. This would mean just interop calls with the library using [LibraryImport].

The Copilot SDK readme claims "Agents for every app." However, the following use cases contradict this:

  • How to produce a real-world consumer Windows application with GitHub Copilot SDK if the user needs to be installed copilot cli as a dependency?
  • How to ship the server api with GitHub Copilot SDK if the user needs to be installed copilot cli executable as a dependency?
  • How to ship the client-side Blazor app with GitHub Copilot SDK if the user needs to be installed copilot cli executable as a dependency?

Unfortunately, GitHub Copilot CLI is not open-sourced, so we don't know if they can provide a clean, statically linked library.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions