Skip to content

Commit 4a0437b

Browse files
stephentoubCopilot
andauthored
Update README and guide for Rust SDK (#1259)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent f72bf0f commit 4a0437b

2 files changed

Lines changed: 401 additions & 20 deletions

File tree

README.md

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,13 @@
55
[![NPM Downloads](https://img.shields.io/npm/dm/%40github%2Fcopilot-sdk?label=npm)](https://www.npmjs.com/package/@github/copilot-sdk)
66
[![PyPI - Downloads](https://img.shields.io/pypi/dm/github-copilot-sdk?label=PyPI)](https://pypi.org/project/github-copilot-sdk/)
77
[![NuGet Downloads](https://img.shields.io/nuget/dt/GitHub.Copilot.SDK?label=NuGet)](https://www.nuget.org/packages/GitHub.Copilot.SDK)
8-
[![Go Reference](https://pkg.go.dev/badge/github.com/github/copilot-sdk/go.svg)](https://pkg.go.dev/github.com/github/copilot-sdk/go)
8+
[![Go Reference](https://img.shields.io/badge/Go-Reference-00ADD8?logo=go&logoColor=white)](https://pkg.go.dev/github.com/github/copilot-sdk/go)
9+
[![crates.io](https://img.shields.io/crates/v/github-copilot-sdk?label=crates.io)](https://crates.io/crates/github-copilot-sdk)
910
[![Maven Central](https://img.shields.io/maven-central/v/com.github/copilot-sdk-java?label=Maven%20Central)](https://central.sonatype.com/artifact/com.github/copilot-sdk-java)
1011

1112
Agents for every app.
1213

13-
Embed Copilot's agentic workflows in your application—now available in public preview as a programmable SDK for Python, TypeScript, Go, .NET, and Java.
14+
Embed Copilot's agentic workflows in your application—now available in public preview as a programmable SDK for Python, TypeScript, Go, .NET, and Java. A Rust SDK is also available in technical preview.
1415

1516
The GitHub Copilot SDK exposes the same engine behind Copilot CLI: a production-tested agent runtime you can invoke programmatically. No need to build your own orchestration—you define agent behavior, Copilot handles planning, tool invocation, file edits, and more.
1617

@@ -22,6 +23,7 @@ The GitHub Copilot SDK exposes the same engine behind Copilot CLI: a production-
2223
| **Python** | [`python/`](./python/) | [Cookbook](https://github.com/github/awesome-copilot/blob/main/cookbook/copilot-sdk/python/README.md) | `pip install github-copilot-sdk` |
2324
| **Go** | [`go/`](./go/) | [Cookbook](https://github.com/github/awesome-copilot/blob/main/cookbook/copilot-sdk/go/README.md) | `go get github.com/github/copilot-sdk/go` |
2425
| **.NET** | [`dotnet/`](./dotnet/) | [Cookbook](https://github.com/github/awesome-copilot/blob/main/cookbook/copilot-sdk/dotnet/README.md) | `dotnet add package GitHub.Copilot.SDK` |
26+
| **Rust** | [`rust/`](./rust/) || `cargo add github-copilot-sdk` |
2527
| **Java** | [`github/copilot-sdk-java`](https://github.com/github/copilot-sdk-java) | [Cookbook](https://github.com/github/awesome-copilot/blob/main/cookbook/copilot-sdk/java/README.md) | Maven coordinates<br>`com.github:copilot-sdk-java`<br>See instructions for [Maven](https://github.com/github/copilot-sdk-java?tab=readme-ov-file#maven) and [Gradle](https://github.com/github/copilot-sdk-java?tab=readme-ov-file#gradle) |
2628

2729
See the individual SDK READMEs for installation, usage examples, and API reference.
@@ -35,7 +37,7 @@ Quick steps:
3537
1. **(Optional) Install the Copilot CLI**
3638

3739
For Node.js, Python, and .NET SDKs, the Copilot CLI is bundled automatically and no separate installation is required.
38-
For the Go SDK, [install the CLI manually](https://github.com/features/copilot/cli) or ensure `copilot` is available in your PATH.
40+
For the Go and Rust SDKs, [install the CLI manually](https://github.com/features/copilot/cli) or ensure `copilot` is available in your PATH unless you opt into their application-level CLI bundling features.
3941

4042
2. **Install your preferred SDK** using the commands above.
4143

@@ -86,26 +88,27 @@ See the **[Authentication documentation](./docs/auth/index.md)** for details on
8688

8789
No — for Node.js, Python, and .NET SDKs, the Copilot CLI is bundled automatically as a dependency. You do not need to install it separately.
8890

89-
For Go SDK, you may still need to install the CLI manually.
91+
For Go and Rust SDKs, the CLI is not bundled by default. Install the CLI manually, ensure `copilot` is available in your PATH, or opt into their application-level CLI bundling features.
9092

91-
Advanced: You can override the bundled CLI using `cliPath` or `cliUrl` if you want to use a custom CLI binary or connect to an external server.
93+
Advanced: You can override the CLI binary or connect to an external server. See the individual SDK README for language-specific options.
9294

9395
### What tools are enabled by default?
9496

95-
By default, the SDK operates the Copilot CLI as if `--allow-all` were passed, enabling all first-party tools. This means that agents can perform a wide range of actions, including file system operations, Git operations, and web requests. You can customize tool availability by configuring the SDK client options to enable and disable specific tools. Refer to the individual SDK documentation for details on tool configuration and to the Copilot CLI documentation for the list of available tools.
97+
By default, the SDK exposes the Copilot CLI's first-party tools, similar to running the CLI with `--allow-all`. Tool execution is still governed by each SDK's permission handler, so applications can approve, deny, or customize tool calls. You can customize tool availability by configuring the SDK client options to enable and disable specific tools. Refer to the individual SDK documentation for details on tool configuration and to the Copilot CLI documentation for the list of available tools.
9698

9799
### Can I use custom agents, skills or tools?
98100

99101
Yes, the GitHub Copilot SDK allows you to define custom agents, skills, and tools. You can extend the functionality of the agents by implementing your own logic and integrating additional tools as needed. Refer to the SDK documentation of your preferred language for more details.
100102

101-
### Are there instructions for Copilot to speed up development with the SDK?
103+
### Are there instructions or SDK guidance for Copilot to speed up development?
102104

103-
Yes, check out the custom instructions for each SDK:
105+
Yes, check out the custom instructions and SDK-specific guidance:
104106

105107
- **[Node.js / TypeScript](https://github.com/github/awesome-copilot/blob/main/instructions/copilot-sdk-nodejs.instructions.md)**
106108
- **[Python](https://github.com/github/awesome-copilot/blob/main/instructions/copilot-sdk-python.instructions.md)**
107109
- **[.NET](https://github.com/github/awesome-copilot/blob/main/instructions/copilot-sdk-csharp.instructions.md)**
108110
- **[Go](https://github.com/github/awesome-copilot/blob/main/instructions/copilot-sdk-go.instructions.md)**
111+
- **[Rust](./rust/README.md)** (SDK guidance; custom instructions not yet published)
109112
- **[Java](https://github.com/github/copilot-sdk-java/blob/main/instructions/copilot-sdk-java.instructions.md)**
110113

111114
### What models are supported?
@@ -137,11 +140,9 @@ Please use the [GitHub Issues](https://github.com/github/copilot-sdk/issues) pag
137140

138141
| SDK | Location |
139142
| ----------- | -------------------------------------------------------- |
140-
| **Rust** | [copilot-community-sdk/copilot-sdk-rust][sdk-rust] |
141143
| **Clojure** | [copilot-community-sdk/copilot-sdk-clojure][sdk-clojure] |
142144
| **C++** | [0xeb/copilot-sdk-cpp][sdk-cpp] |
143145

144-
[sdk-rust]: https://github.com/copilot-community-sdk/copilot-sdk-rust
145146
[sdk-cpp]: https://github.com/0xeb/copilot-sdk-cpp
146147
[sdk-clojure]: https://github.com/copilot-community-sdk/copilot-sdk-clojure
147148

0 commit comments

Comments
 (0)