Skip to content

Commit 6eeaba9

Browse files
Merge pull request #1585 from madeline-underwood/Co-Pilot
Copilot_Andy to review
2 parents 9fbadc1 + fd91d95 commit 6eeaba9

File tree

6 files changed

+40
-32
lines changed

6 files changed

+40
-32
lines changed

content/learning-paths/servers-and-cloud-computing/gh-copilot-simple/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ who_is_this_for: This is an introductory topic for software developers who want
1212
learning_objectives:
1313
- Create a simple GitHub Copilot Extension in Python.
1414
- Use ngrok to expose the extension to Copilot.
15-
- Add a GitHub App to your GitHub account and use your Copilot Extension.
15+
- Add a GitHub App to your GitHub account and deploy the Copilot Extension.
1616

1717
prerequisites:
1818
- A GitHub account.

content/learning-paths/servers-and-cloud-computing/gh-copilot-simple/about-extensions.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,33 +8,33 @@ layout: learningpathall
88

99
## What are GitHub Copilot Extensions?
1010

11-
Copilot Extensions provide an integration point to expand the functionality of Copilot chat, allowing developers to introduce external tools, services, and custom behaviors into the chat experience.
11+
GitHub Copilot Extensions provide an integration point to expand the functionality of GitHub Copilot Chat, allowing developers to introduce external tools, services, and custom behaviors into the chat experience.
1212

13-
You can use an extension to customize the capabilities of Copilot in a variety of ways. Some examples include targeting Copilot for a specific type of user, such as an Arm software developer, by querying specific documentation or prioritizing responses for the developers environment. Copilot Extensions can also integrate additional LLMs, use different APIs, and connect to other AI tools that are not used by Copilot.
14-
15-
A Copilot Extension allows you to build curated experiences that are targeted for specific developer topics.
13+
You can use Copilot Extensions to customize the capabilities of Copilot in multiple ways. For example, you can target the needs of a specific type of user, such as an Arm software developer, by querying specific documentation or prioritizing responses related to that specific developer's environment. Copilot Extensions also benefit users by facilitating the integration of additional LLMs, and offering different APIs and AI tools, which broadens the reach of the resources. In short, a Copilot Extension allows you to build a more curated experience.
1614

1715
Think about what you want to offer, or build for yourself, that is beyond or better than what Copilot can already do. If you have ideas, you can try them using a Copilot Extension.
1816

1917
Extensions can be private, public, or shared in the GitHub Marketplace.
2018

21-
This Learning Path is a "hello world" tutorial for a simple extension in Python. It explains how to create a private extension by running Python on a Linux computer, using ngrok to expose the endpoint, and creating a GitHub App to configure the extension in your GitHub account. After this, you can invoke your private extension from GitHub chat.
19+
This Learning Path is a "hello world" tutorial for a simple extension in Python. It explains how to create a private extension by running Python on a Linux computer, using ngrok to expose the endpoint, and creating a GitHub App to configure the extension in your GitHub account. After this, you can invoke your private extension from GitHub Chat.
2220

2321
## How do I get started with GitHub Copilot?
2422

2523
Before building an extension, make sure Copilot is configured and working in your GitHub account.
2624

2725
Refer to the [Quickstart for GitHub Copilot](https://docs.github.com/en/copilot/quickstart) to get started.
2826

29-
You can use [GitHub Copilot free](https://github.com/features/copilot?utm_source=topcopilotfree&utm_medium=blog&utm_campaign=launch) with no cost (subject to usage limits).
27+
You can use [GitHub Copilot Free](https://github.com/features/copilot?utm_source=topcopilotfree&utm_medium=blog&utm_campaign=launch) at no cost, subject to a usage allowance.
3028

3129
## How do I invoke GitHub Copilot Extensions?
3230

33-
You can use extensions on any platform where Copilot chat can be used. This includes the GitHub website, various IDEs, and the command line.
31+
You can use extensions on any platform where you can use Copilot chat. This includes the GitHub website, various IDEs, and the command line.
32+
33+
Extensions are invoked using `@` followed by the name of the extension.
3434

35-
Extensions are invoked using `@` followed by the name of the extension. For example, the [Arm extension for GitHub Copilot](https://github.com/marketplace/arm-for-github-copilot) is invoked using `@arm` in the chat.
35+
For example, you can invoke the [Arm extension for GitHub Copilot](https://github.com/marketplace/arm-for-github-copilot) using `@arm` in the chat.
3636

37-
You can install the Arm extension from the GitHub marketplace and practice using `@arm` to invoke it. Information about how to use it is in the [Arm for GitHub Copilot repository](https://github.com/arm/copilot-extension).
37+
You can install the Arm extension from the GitHub Marketplace and practice using `@arm` to invoke it. For information on how to use it, see the [Arm for GitHub Copilot repository](https://github.com/arm/copilot-extension).
3838

3939
Continue to learn how to create your own extension using Python.
4040

content/learning-paths/servers-and-cloud-computing/gh-copilot-simple/copilot-test.md

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,23 +8,25 @@ layout: learningpathall
88

99
You are now ready to test your GitHub Copilot extension.
1010

11-
Go to any of the Copilot chat interfaces you are currently using, such as browser or VS Code.
11+
Go to any of the Copilot Chat interfaces that you are currently using, such as your browser or VS Code.
1212

13-
Enter `@your-extension` and a test prompt such as:
13+
Enter `@your-extension` and a test prompt, such as:
1414

1515
```console
1616
tell me about Java vs Python
1717
```
1818

19-
On the first prompt, you get an authorization dialog to enable your extension.
19+
The first time you enter a prompt, you will receive an authorization dialog asking you if you wish to enable your extension.
2020

21-
Confirming the authorization takes you to an ngrok page in the browser, click the button and you will see the message from the GET request from your Python server in the browser:
21+
Confirming the authorization takes you to an ngrok page in the browser.
22+
23+
Click the button and in the browser you will see the following message from the GET request from your Python server:
2224

2325
```output
2426
Hello! Welcome to the example GitHub Copilot Extension in Python!
2527
```
2628

27-
You see the extension invoked in the terminal where Python is running and information about the chat printed:
29+
You will see the extension invoked in the terminal where Python is running and information about the chat printed:
2830

2931
```output
3032
127.0.0.1 - - [31/Jan/2025 23:33:18] "POST / HTTP/1.1" 200 -
@@ -39,8 +41,12 @@ You also see HTTP requests on the terminal where ngrok is running.
3941
23:33:00.991 UTC GET / 200 OK
4042
```
4143

42-
Lastly, the chat output from your extension is printed. Here it is in VS Code:
44+
Lastly, the chat output from your extension is printed.
45+
46+
Here it is in VS Code:
4347

4448
![#Copilot output](_images/output.png)
4549

46-
Your GitHub Copilot Extension is now responding to chat prompts. You have the basic structure to build more interesting Copilot Extensions.
50+
Your GitHub Copilot Extension is now responding to chat prompts.
51+
52+
You can now use what you have learned to build different, and more complex, Copilot Extensions.

content/learning-paths/servers-and-cloud-computing/gh-copilot-simple/gh-app.md

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Scroll to the bottom left and select `Developer settings`.
1616

1717
### Create a new GitHub App
1818

19-
Select the `GitHub Apps` on the left slide and click `New GitHub App`.
19+
Select the `GitHub Apps` on the left side and click `New GitHub App`.
2020

2121
![#New GitHub App](_images/gh-cp1.png)
2222

@@ -28,7 +28,7 @@ The important fields to complete or modify are listed below.
2828
| Homepage URL | This needs to be filled in but is not used for a private extension, any URL can be entered such as https://learn.arm.com |
2929
| Callback URL | Enter the URL of your ngrok domain such as `https://your-domain.ngrok-free.app` (substitute your domain). |
3030
| Webhook | Uncheck the `Active` box. |
31-
| Permissions | Select `Account permissions` and set the `GitHub Copilot Chat` and `GitHub Copilot Chat` to `Read-only`. |
31+
| Permissions | Select `Account permissions` and set the `GitHub Copilot Chat` to `Read-only`. |
3232
| Where can this GitHub App be installed? | Confirm `Only this account` is selected to make the GitHub App only for your use. |
3333

3434
Click the `Create GitHub App` to save the configuration.
@@ -37,8 +37,6 @@ Click the `Create GitHub App` to save the configuration.
3737

3838
### Configure the Copilot settings
3939

40-
### Configure the Copilot settings
41-
4240
Click on the left side Copilot sidebar.
4341

4442
Modify and update the following fields:
@@ -58,10 +56,10 @@ Click the `Save` button when the information is entered.
5856

5957
### Install your GitHub App
6058

61-
When the GitHub App has been configured and save, install it into your account using the `Install App` tab on the left site and the `Install` button.
59+
When the GitHub App has been configured and saved, install it into your account using the `Install App` tab on the left side and click the `Install` button.
6260

63-
You may need to agree to install the GitHub App in your account.
61+
You might need to agree to install the GitHub App in your account.
6462

65-
Once installed, you see the App in your account's [Applications](https://github.com/settings/installations)
63+
Once installed, you see the App in your account's [Applications](https://github.com/settings/installations).
6664

6765
Your GitHub App is now ready to use with Copilot.

content/learning-paths/servers-and-cloud-computing/gh-copilot-simple/run-ngrok.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,11 @@ Follow the steps below to set up ngrok.
1818

1919
### Download and install ngrok
2020

21-
If needed, create a new account.
21+
If required, create a new account.
2222

2323
Refer to the [Setup & installation](https://dashboard.ngrok.com/get-started/setup/linux) section for installation details.
2424

25-
If you are using a Debian based Linux system, run the command:
25+
If you are using a Debian-based Linux system, run the command:
2626

2727
```console
2828
curl -sSL https://ngrok-agent.s3.amazonaws.com/ngrok.asc \
@@ -35,17 +35,19 @@ curl -sSL https://ngrok-agent.s3.amazonaws.com/ngrok.asc \
3535

3636
### Configure your ngrok account
3737

38-
Before starting the ngrok server, you need an Authtoken. If you don't currently have one, create a new Authtoken from the [Authtoken](https://dashboard.ngrok.com/get-started/your-authtoken) settings.
38+
Before you can start the ngrok server, you need an Authtoken.
39+
40+
If you don't currently have one, create a new Authtoken from the [Authtoken Get Started section](https://dashboard.ngrok.com/get-started/your-authtoken).
3941

4042
Once you have the token, add it to the Linux computer where you are running your Python extension.
4143

42-
Substitute your token in the command below:
44+
Substitute your token in the command below where it states **\<your-authtoken\>**:
4345

4446
```console
4547
ngrok config add-authtoken <your-authtoken>
4648
```
4749

48-
ngrok is easier to use if you create a domain name. Go to the [Domains](https://dashboard.ngrok.com/domains) section and add a new randomly generated domain name. You can create 1 domain name in a free account.
50+
ngrok is easier to use if you create a domain name. Go to the [Domains](https://dashboard.ngrok.com/domains) section and add a new randomly generated domain name. You can create one domain name in a free account.
4951

5052
Use the domain name in the next section to start the server.
5153

content/learning-paths/servers-and-cloud-computing/gh-copilot-simple/run-python.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ if __name__ == "__main__":
7070

7171
```
7272

73-
You may need to install the following Python packages:
73+
You might need to install the following Python packages:
7474

7575
```console
7676
sudo apt update
@@ -84,7 +84,7 @@ python -m venv venv
8484
source venv/bin/activate
8585
```
8686

87-
Your shell prompt now includes `(venv)` indicating the virtual environment is active.
87+
Your shell prompt now includes `(venv)` indicating that the virtual environment is active.
8888

8989
Install the required Python packages:
9090

@@ -108,4 +108,6 @@ WARNING: This is a development server. Do not use it in a production deployment.
108108
Press CTRL+C to quit
109109
```
110110

111-
Your extension is running, but needs to be connected to Copilot. Continue to learn how to share it with Copilot.
111+
Your extension is running, but it needs to be connected to Copilot.
112+
113+
Continue to learn how to share your extension with Copilot.

0 commit comments

Comments
 (0)