awesome-copilot Documentation

Community-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copilot.

RAW Doc

1. Project Overview & Quickstart (github/awesome-copilot)

File: README.md

πŸ€– Awesome GitHub Copilot

A community-created collection of custom agents, instructions, skills, hooks, workflows, and plugins to supercharge your GitHub Copilot experience.

[!TIP]
Explore the full collection on the website β†’ awesome-copilot.github.com

The website offers full-text search and filtering across hundreds of resources, plus the Learning Hub for guides and tutorials.

Using this collection in an AI agent? A machine-readable llms.txt is available with structured listings of all agents, instructions, and skills.

πŸ“– Learning Hub

New to GitHub Copilot customization? The Learning Hub on the website offers curated articles, walkthroughs, and reference material β€” covering everything from core concepts like agents, skills, and instructions to hands-on guides for hooks, agentic workflows, MCP servers, and the Copilot coding agent.

⬆ Back to Top

What's in this repo

Resource Description Browse
πŸ€– Agents Specialized Copilot agents that integrate with MCP servers All agents β†’
πŸ“‹ Instructions Coding standards applied automatically by file pattern All instructions β†’
🎯 Skills Self-contained folders with instructions and bundled assets All skills β†’
πŸ”Œ Plugins Curated bundles of agents and skills for specific workflows All plugins β†’
🍳 Cookbook Copy-paste-ready recipes for working with Copilot APIs β€”

⬆ Back to Top

Install a Plugin

For most users, the Awesome Copilot marketplace is already registered in the Copilot CLI/VS Code, so you can install a plugin directly:

bash
copilot plugin install @awesome-copilot

If you are using an older Copilot CLI version or a custom setup and see an error that the marketplace is unknown, register it once and then install:

bash
copilot plugin marketplace add github/awesome-copilot
copilot plugin install @awesome-copilot

⬆ Back to Top

Contributing

See CONTRIBUTING.md Β· AGENTS.md for AI agent guidance Β· Security Β· Code of Conduct

The customizations here are sourced from third-party developers. Please inspect any agent and its documentation before installing.

⬆ Back to Top

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Aaron Powell Matt Soucoup Troy Simeon Taylor Abbas Peter StrΓΆmberg Daniel Scott-Raynsford John Haugabook
Pavel Simsa Harald Kirschner Muhammad Ubaid Raza Tom Meschter Aung Myo Kyaw JasonYeMSFT Jon Corbin
troytaylor-msft Emerson Delatorre Burke Holland Kent Yao Daniel Meppiel Gordon Lam Mads Kristensen
Shinji Takenaka spectatora Yohan Lasorsa Vamshi Verma James Montemagno Alessandro Fragnani Ambily
krushideep devopsfan Tugdual Grall Oren Me Mike Rousos Justin Yoo **Guilherme do Amaral Alves **
Griffin Ashe Ashley Childress Adrien Clerbois ANGELELLI David Mark Davis Matt Vevang Maximilian Irro
NULLchimp Peter Karda Saul Dolgin Shubham Gaikwad Theo van Kraay Tianqi Zhang Will 保ε“₯
Yuta Matsumura anschnapp hizahizi-hizumi 黃ε₯ζ—» Vincent Huang Bruno Borges Steve Magne Shane Neuville
AndrΓ© Silva Allen Greaves Amelia Payne BBoyBen Brooke Hamilton Christopher Harrison Dan
Dan Wahlin Debbie O'Brien Ed Harrod Genevieve Warren Guillaume Henrique Nunes Jeremiah Snee
Kartik Dhiman Kristiyan Velkov msalaman Per SΓΈderlind Peter Smulovics Ravish Rathod Rick Smit
Rob Simpson Robert Altman Salih Sebastian GrΓ€f Sebastien DEGODEZ Sergiy Smyrnov SomeSolutionsArchitect
Stu Mace SΓΈren TrudsΓΈ Mahon Tj Vita Peli de Halleux Paulo Morgado Paul Crane Pamela Fox
Oskar Thornblad Nischay Sharma Nikolay Marinov Nik Sachdeva Nick Taylor Nick Brady Nathan Stanford Sr
MΓ‘tΓ© BarabΓ‘s Mike Parker Mike Kistler Giovanni de Almeida Martins μ΄μƒν˜„ Ankur Sharma Wendy Breiding
voidfnc shane lee sdanzo-hrb sauran samqbush pareenaverma oleksiyyurchyna
oceans-of-time kshashank57 Meii factory-davidgu dangelov-qa BenoitMaucotel benjisho-aidome
Yuki Omoto Will Schultz Waren Gonzaga Vincent Koc Victor Williams Ve Sharma Vasileios Lahanas
Udaya Veeramreddygari TΓ i LΓͺ Tsubasa Ogawa Troy Witthoeft (glsauto) Gerald Versluis George Dernikos Gautam
Furkan Enes Florian MΓΌcke Felix Arjuna Eldrick Wega Dobri Danchev Diego Gamboa Derek Clair
David Ortinau Daniel Abbatt CypherHK Craig Bekker Christophe Peugnet Christian Lechner Chris Harris
Artem Saveliev Antoine Rey Ankit Das Aline Ávila Alexander Martinkevich Aleksandar Dunchev Alan Sprecacenere
Akash Kumar Shaw Abdi Daud AIAlchemyForge 4regab Miguel P Z Michael Fairchild Michael A. Volz (Flynn)
Michael Mehmet Ali EROL Max Prilutskiy Matteo Bianchi Mark Noble Manish Jayaswal Luke Murray
Louella Creemers Sai Koumudi Kaluvakolanu Kenny White KaloyanGenev Kim Skov Rasmussen Julien Dubois JosΓ© Antonio Garrido
Joseph Gonzales Jorge Balderas John Papa John Joe Watkins Jan de Vries Jakub JareΕ‘
Jackson Miller Ioana A Hunter Hogan Hashim Warren Gonzalo Gisela Torres Shibi Ramachandran
lupritz HΓ©ctor Benedicte Ted Vilutis Anthony Shaw Chris McKee CASTResearchLabs η™½ζ°΄ζ·³
Imran Siddique ε…±δΊ§δΈ»δΉ‰ζŽ₯班人 Ivan Charapanau Tadas Labudis Alvin Ashcraft Jan Krivanek Gregg Cochran
Josh N ian zhang Garrett Siegel Roberto Perez Dan Velton Lee Reilly Daniel Coelho
Vahid Faraji Ashley Wolf Noah Jenkins Jeremy Kohn Harri Sipola Toru Makabe Pham Tien Thuan Phat
Benji Shohet Amaury LevΓ© Tim Deschryver Mohammad Asad Alahmadi fondoger Yuval Avidani Csaba IvΓ‘ncza
Tim Heuer lance2k Andrea Liliana Griffiths Ajith Raghavan Catherine Han Igor Shishkin Burrito Verde
Joseph Van der Wee Luiz Bon Sanjay Ramassery Babu Russ Rimmerman [MSFT] Roberto Perez Shehab Sherif Smit Patel
Steven Vore Subhashis Bhowmik Tim Mulholland Niels Laute Pavel Sulimau PrimedPaul Zhiqi Pu
Ramyashree Shetty ZdaPhp pigd0g rahulbats suyask-msft tagedeep tinkeringDev
Travis Hill Utkarsh patrikar Yauhen Yiou Li Yuki Omoto Abhi Bavishi augustus-0
Branislav Buna connerlambden David Raygoza Diego Porto Ritzel Eric Scherlinger Fatih Felipe Pessoto
FranΓ§ois Geoffrey Casaubon Anddd7 Anders Eide Aymen Kevin van Zonneveld Luis Cantero
MV Karan Marcel Deutzer Jon Galloway Josh Beard Julian Simon Kurtz Temitayo Afolabi
JoeVenner Pasindu Premarathna ecosystem Punit Onur Senturk Andrew Stellman Jeonghoon Lee
Satya K Samik Roy Simina Pasat Tyler Garner Vijay Chegu DTIBeograd Anmol Behl
Brad Kinnard Chad Bentz Marcello Cuoghi Josh Johanning jennyf19 Saravanan Rajaraman **Patel Dhruv **
Renee Noble jjpinto moeyui1 mohammadali2549 Vladislav Guzey aparna198809 Ed McAdams
Emil Andersson Mikael Mrigank Singh Jim Bennett Alishahzad1903 Antonio Villanueva Tim Hanewich
ming Scott O'Hara Salih Shailesh Shubham Jiyani Srinivas Vaddi Philippe D
Rajesh Goldy dstrupl wuwen Tilak Patel Vijay Bandi Zixuan Jiang Dennis Lembree
Dev Shah Falco AJ Anush Ayush Saklani Carlos Alexandro Becker Mangokernel
Mario Codes Gonzalo Fleming Steve Magne Sertxito Rayner Zeng ilderaj mvanderbend-msoft
Parveen Sharma pmorong vinod kumar Vidhart Bhatia Xiaoyun Ding denis-a-evdokimov Adriano Nogueira
Aezan Andy Anderson Kweku Dzata Marcel Navaneeth Reddy James Joseph Counts
Neha Mandge Srikanth Patchava Thomas Ray Nixon Kurian Petr Stupka Pieter de Bruin sudeepghatak
tlietz dawright22 Alejandro Fernando Suarez Gomez Burak BayΔ±r MUHAMMAD SAMIULLAH Nikola Metulev Joseph Kasprzyk
Lovy Jain kimtth Akash Dwivedi Suren K Konstantinos Passadis Azure MVP MCT

Add your contributions

This project follows the all-contributors specification. Contributions of any kind welcome!

⬆ Back to Top

πŸ“š Additional Resources

⬆ Back to Top

ℒ️ Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft
trademarks or logos is subject to and must follow
Microsoft's Trademark & Brand Guidelines.
Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship.
Any use of third-party trademarks or logos are subject to those third-party's policies.


File: cookbook/copilot-sdk/dotnet/recipe/README.md

Runnable Recipe Examples

This folder contains standalone, executable C# examples for each cookbook recipe. These are file-based apps that can be run directly with dotnet run.

Prerequisites

  • .NET 10.0 or later
  • GitHub Copilot SDK package (referenced automatically)

Running Examples

Each .cs file is a complete, runnable program. Simply use:

bash
dotnet run <filename>.cs

Available Recipes

Recipe Command Description
Error Handling dotnet run error-handling.cs Demonstrates error handling patterns
Multiple Sessions dotnet run multiple-sessions.cs Manages multiple independent conversations
Managing Local Files ⚠️ dotnet run managing-local-files.cs Organizes files using AI grouping
PR Visualization ℹ️ dotnet run pr-visualization.cs Generates PR age charts
Persisting Sessions dotnet run persisting-sessions.cs Save and resume sessions across restarts
Accessibility Report ℹ️ dotnet run accessibility-report.cs Analyzes web page accessibility
Ralph Loop ⚠️ dotnet run ralph-loop.cs Autonomous development loop

Examples with Arguments

PR Visualization with specific repo:

bash
dotnet run pr-visualization.cs -- --repo github/copilot-sdk

Managing Local Files (edit the file to change target folder):

bash
# Edit the targetFolder variable in managing-local-files.cs first
dotnet run managing-local-files.cs

Safety & Prerequisites

Some recipes have side effects or external dependencies. Expand each section for safe testing patterns and prerequisites.

⚠️ Managing Local Files β€” Modifies your filesystem

Before running on a real directory, test it on a copy first.
Run these snippets from this recipe directory so the recipe path is captured before switching to the temporary folder.

PowerShell:

powershell
$recipeDir = (Get-Location).Path
$tempDir = New-Item -ItemType Directory -Path ([IO.Path]::Combine([IO.Path]::GetTempPath(), "copilot-test-files"))
@("document1.txt", "image1.png", "data.json") | ForEach-Object { 
    New-Item -Path "$tempDir/$_" -ItemType File
}
cd $tempDir
dotnet run "$recipeDir/managing-local-files.cs"
# Inspect results, then clean up
Remove-Item $tempDir -Recurse

Bash:

bash
recipeDir=$(pwd)
tempDir=$(mktemp -d)
touch "$tempDir"/{document1.txt,image1.png,data.json}
cd "$tempDir"
dotnet run "$recipeDir/managing-local-files.cs"
# Inspect results, then clean up
rm -rf "$tempDir"

Edit the targetFolder variable in the .cs file to point to your test directory before running.

⚠️ Ralph Loop β€” Creates git commits and modifies files

Always run it in an isolated git repository first to verify behavior.
Run these snippets from this recipe directory so the recipe path is captured before switching to the temporary repository.

PowerShell:

powershell
$recipeDir = (Get-Location).Path
$tempDir = New-Item -ItemType Directory -Path ([IO.Path]::Combine([IO.Path]::GetTempPath(), "copilot-test-repo"))
cd $tempDir
git init
git config user.email "[email protected]"
git config user.name "Test User"

# Create a PROMPT_task.md for the recipe to work with
"# Task`nCreate a simple README" | Out-File PROMPT_task.md
dotnet run "$recipeDir/ralph-loop.cs"

# Review commits and changes
git log --oneline
git diff

# Clean up
cd ..
Remove-Item $tempDir -Recurse

Bash:

bash
recipeDir=$(pwd)
tempDir=$(mktemp -d)
cd "$tempDir"
git init
git config user.email "[email protected]"
git config user.name "Test User"

# Create a PROMPT_task.md for the recipe to work with
echo -e "# Task\nCreate a simple README" > PROMPT_task.md
dotnet run "$recipeDir/ralph-loop.cs"

# Review commits and changes
git log --oneline
git diff

# Clean up
cd ..
rm -rf "$tempDir"

The recipe requires a git repository with at least one PROMPT_*.md file and will run in an infinite loop until manually stopped.

ℹ️ Accessibility Report β€” Requires Playwright MCP

This recipe requires Playwright MCP to be installed and available:

bash
npm install @playwright/mcp

Or let Node Package Manager install it on-demand. The recipe will attempt to launch npx @playwright/mcp automatically. Run the recipe as normal:

bash
dotnet run accessibility-report.cs

The recipe will prompt you for a URL to analyze and generate an accessibility report.

ℹ️ PR Visualization β€” Requires GitHub API access

This recipe requires:

  • Access to a GitHub repository (public or private, with appropriate credentials)
  • gh CLI tool installed and authenticated: https://cli.github.com/

Run with a repository argument:

bash
dotnet run pr-visualization.cs -- --repo owner/repo-name

Example:

bash
dotnet run pr-visualization.cs -- --repo github/copilot-sdk

Note: GitHub API requests are rate-limited. Large repositories or frequent runs may hit rate limits. See GitHub API rate limiting for details.

File-Based Apps

These examples use .NET's file-based app feature, which allows single-file C# programs to:

  • Run without a project file
  • Automatically reference common packages
  • Support top-level statements

Learning Resources


File: cookbook/copilot-sdk/dotnet/README.md

GitHub Copilot SDK Cookbook β€” .NET (C#)

This folder hosts short, practical recipes for using the GitHub Copilot SDK with .NET. Each recipe is concise, copy‑pasteable, and points to fuller examples and tests.

Recipes

Contributing

Add a new recipe by creating a markdown file in this folder and linking it above. Follow repository guidance in CONTRIBUTING.md.

Status

These recipes are now complete and ready to use; the cookbook will continue to evolve as new scenarios are added.


File: cookbook/copilot-sdk/go/recipe/README.md

Runnable Recipe Examples

This folder contains standalone, executable Go examples for each cookbook recipe. Each file is a complete program that can be run directly with go run.

Prerequisites

  • Go 1.21 or later
  • GitHub Copilot SDK for Go
bash
go get github.com/github/copilot-sdk/go

Running Examples

Each .go file is a complete, runnable program. Simply use:

bash
go run <filename>.go

Available Recipes

Recipe Command Description
Error Handling go run error-handling.go Demonstrates error handling patterns
Multiple Sessions go run multiple-sessions.go Manages multiple independent conversations
Managing Local Files go run managing-local-files.go Organizes files using AI grouping
PR Visualization go run pr-visualization.go Generates PR age charts
Persisting Sessions go run persisting-sessions.go Save and resume sessions across restarts

Examples with Arguments

PR Visualization with specific repo:

bash
go run pr-visualization.go -repo github/copilot-sdk

Managing Local Files (edit the file to change target folder):

bash
# Edit the targetFolder variable in managing-local-files.go first
go run managing-local-files.go

Go Best Practices

These examples follow Go conventions:

  • Proper error handling with explicit checks
  • Use of defer for cleanup
  • Idiomatic naming (camelCase for local variables)
  • Standard library usage where appropriate
  • Clean separation of concerns

Learning Resources


File: cookbook/copilot-sdk/go/README.md

GitHub Copilot SDK Cookbook β€” Go

This folder hosts short, practical recipes for using the GitHub Copilot SDK with Go. Each recipe is concise, copy‑pasteable, and points to fuller examples and tests.

Recipes

Contributing

Add a new recipe by creating a markdown file in this folder and linking it above. Follow repository guidance in CONTRIBUTING.md.

Status

These recipes are complete, practical examples and can be used directly or adapted for your own projects.


File: cookbook/copilot-sdk/nodejs/recipe/README.md

Runnable Recipe Examples

This folder contains standalone, executable TypeScript examples for each cookbook recipe. Each file can be run directly with tsx or via npm scripts.

Prerequisites

  • Node.js 18 or later
  • Install dependencies (this links to the local SDK in the repo):
bash
npm install

Running Examples

Each .ts file is a complete, runnable program. You can run them in two ways:

Using npm scripts:

bash
npm run <script-name>

Using tsx directly:

bash
npx tsx <filename>.ts

Available Recipes

Recipe npm script Direct command Description
Error Handling npm run error-handling npx tsx error-handling.ts Demonstrates error handling patterns
Multiple Sessions npm run multiple-sessions npx tsx multiple-sessions.ts Manages multiple independent conversations
Managing Local Files npm run managing-local-files npx tsx managing-local-files.ts Organizes files using AI grouping
PR Visualization npm run pr-visualization npx tsx pr-visualization.ts Generates PR age charts
Persisting Sessions npm run persisting-sessions npx tsx persisting-sessions.ts Save and resume sessions across restarts

Examples with Arguments

PR Visualization with specific repo:

bash
npx tsx pr-visualization.ts --repo github/copilot-sdk

Managing Local Files (edit the file to change target folder):

bash
# Edit the targetFolder variable in managing-local-files.ts first
npx tsx managing-local-files.ts

Local SDK Development

The package.json references the local Copilot SDK using "*", which resolves to the local SDK source. This means:

  • Changes to the SDK source are immediately available
  • No need to publish or install from npm
  • Perfect for testing and development

If you modify the SDK source, you may need to rebuild:

bash
cd ../../src
npm run build

TypeScript Features

These examples use modern TypeScript/Node.js features:

  • Top-level await (requires "type": "module" in package.json)
  • ESM imports
  • Type safety with TypeScript
  • async/await patterns

Learning Resources


File: cookbook/copilot-sdk/nodejs/README.md

GitHub Copilot SDK Cookbook β€” Node.js / TypeScript

This folder hosts short, practical recipes for using the GitHub Copilot SDK with Node.js/TypeScript. Each recipe is concise, copy‑pasteable, and points to fuller examples and tests.

Recipes

Contributing

Add a new recipe by creating a markdown file in this folder and linking it above. Follow repository guidance in CONTRIBUTING.md.

Status

This README is a scaffold; recipe files are placeholders until populated.


File: cookbook/copilot-sdk/python/recipe/README.md

Runnable Recipe Examples

This folder contains standalone, executable Python examples for each cookbook recipe. Each file can be run directly as a Python script.

Prerequisites

  • Python 3.8 or later
  • Install dependencies (this installs the SDK from PyPI):
bash
pip install -r requirements.txt

Running Examples

Each .py file is a complete, runnable program with executable permissions:

bash
python <filename>.py
# or on Unix-like systems:
./<filename>.py

Available Recipes

Recipe Command Description
Error Handling python error_handling.py Demonstrates error handling patterns
Error Recovery Hooks python error_recovery_hooks.py Classifies tool failures and retries automatically
Multiple Sessions python multiple_sessions.py Manages multiple independent conversations
Managing Local Files python managing_local_files.py Organizes files using AI grouping
PR Visualization python pr_visualization.py Generates PR age charts
Persisting Sessions python persisting_sessions.py Save and resume sessions across restarts
PyInstaller Build python pyinstaller_frozen_build.py Packages SDK apps into frozen executables

Examples with Arguments

PR Visualization with specific repo:

bash
python pr_visualization.py --repo github/copilot-sdk

Managing Local Files (edit the file to change target folder):

bash
# Edit the target_folder variable in managing_local_files.py first
python managing_local_files.py

Local SDK Development

The requirements.txt installs the Copilot SDK package from PyPI. This means:

  • You get the latest stable release of the SDK
  • No need to build from source
  • Perfect for using the SDK in your projects

If you want to use a local development version, edit requirements.txt to use -e ../.. for editable mode development.

Python Best Practices

These examples follow Python conventions:

  • PEP 8 naming (snake_case for functions and variables)
  • Shebang line for direct execution
  • Proper exception handling
  • Type hints where appropriate
  • Standard library usage

For isolated development:

bash
# Create virtual environment
python -m venv venv

# Activate it
# Windows:
venv\Scripts\activate
# Unix/macOS:
source venv/bin/activate

# Install dependencies
pip install -r requirements.txt

Learning Resources


File: cookbook/copilot-sdk/python/README.md

GitHub Copilot SDK Cookbook β€” Python

This folder hosts short, practical recipes for using the GitHub Copilot SDK with Python. Each recipe is concise, copy‑pasteable, and points to fuller examples and tests.

Recipes

Contributing

Add a new recipe by creating a markdown file in this folder and linking it above. Follow repository guidance in CONTRIBUTING.md.

Status

These recipes are complete and ready to use; new contributions and additional recipes are welcome.


File: cookbook/copilot-sdk/README.md

GitHub Copilot SDK Cookbook

This cookbook collects small, focused recipes showing how to accomplish common tasks with the GitHub Copilot SDK across languages. Each recipe is intentionally short and practical, with copy‑pasteable snippets and pointers to fuller examples and tests.

Recipes by Language

.NET (C#)

  • Ralph Loop: Build autonomous AI coding loops with fresh context per iteration, planning/building modes, and backpressure.
  • Error Handling: Handle errors gracefully including connection failures, timeouts, and cleanup.
  • Multiple Sessions: Manage multiple independent conversations simultaneously.
  • Managing Local Files: Organize files by metadata using AI-powered grouping strategies.
  • PR Visualization: Generate interactive PR age charts using GitHub MCP Server.
  • Persisting Sessions: Save and resume sessions across restarts.
  • Accessibility Report: Generate WCAG accessibility reports using the Playwright MCP server.

Node.js / TypeScript

  • Ralph Loop: Build autonomous AI coding loops with fresh context per iteration, planning/building modes, and backpressure.
  • Error Handling: Handle errors gracefully including connection failures, timeouts, and cleanup.
  • Multiple Sessions: Manage multiple independent conversations simultaneously.
  • Managing Local Files: Organize files by metadata using AI-powered grouping strategies.
  • PR Visualization: Generate interactive PR age charts using GitHub MCP Server.
  • Persisting Sessions: Save and resume sessions across restarts.
  • Accessibility Report: Generate WCAG accessibility reports using the Playwright MCP server.

Python

  • Ralph Loop: Build autonomous AI coding loops with fresh context per iteration, planning/building modes, and backpressure.
  • Error Handling: Handle errors gracefully including connection failures, timeouts, and cleanup.
  • Multiple Sessions: Manage multiple independent conversations simultaneously.
  • Managing Local Files: Organize files by metadata using AI-powered grouping strategies.
  • PR Visualization: Generate interactive PR age charts using GitHub MCP Server.
  • Persisting Sessions: Save and resume sessions across restarts.
  • Accessibility Report: Generate WCAG accessibility reports using the Playwright MCP server.

Go

  • Ralph Loop: Build autonomous AI coding loops with fresh context per iteration, planning/building modes, and backpressure.
  • Error Handling: Handle errors gracefully including connection failures, timeouts, and cleanup.
  • Multiple Sessions: Manage multiple independent conversations simultaneously.
  • Managing Local Files: Organize files by metadata using AI-powered grouping strategies.
  • PR Visualization: Generate interactive PR age charts using GitHub MCP Server.
  • Persisting Sessions: Save and resume sessions across restarts.
  • Accessibility Report: Generate WCAG accessibility reports using the Playwright MCP server.

Java

  • Ralph Loop: Build autonomous AI coding loops with fresh context per iteration, planning/building modes, and backpressure.
  • Error Handling: Handle errors gracefully including connection failures, timeouts, and cleanup.
  • Multiple Sessions: Manage multiple independent conversations simultaneously.
  • Managing Local Files: Organize files by metadata using AI-powered grouping strategies.
  • PR Visualization: Generate interactive PR age charts using GitHub MCP Server.
  • Persisting Sessions: Save and resume sessions across restarts.
  • Accessibility Report: Generate WCAG accessibility reports using the Playwright MCP server.

How to Use

  • Browse your language section above and open the recipe links
  • Each recipe includes runnable examples in a recipe/ subfolder with language-specific tooling
  • See existing examples and tests for working references:
    • Node.js examples: nodejs/examples/basic-example.ts
    • E2E tests: go/e2e, python/e2e, nodejs/test/e2e, dotnet/test/Harness

Running Examples

.NET

bash
cd dotnet/cookbook/recipe
dotnet run <filename>.cs

Node.js

bash
cd nodejs/cookbook/recipe
npm install
npx tsx <filename>.ts

Python

bash
cd python/cookbook/recipe
pip install -r requirements.txt
python <filename>.py

Go

bash
cd go/cookbook/recipe
go run <filename>.go

Java

bash
cd java/recipe
jbang <FileName>.java

Contributing

  • Propose or add a new recipe by creating a markdown file in your language's cookbook/ folder and a runnable example in recipe/
  • Follow repository guidance in CONTRIBUTING.md

Status

Cookbook structure is complete with 7 recipes across all 5 supported languages. Each recipe includes both markdown documentation and runnable examples.

2. Official Technical Reference & Guides (github/docs)

GitHub Docs

Welcome to GitHub Docs! GitHub’s documentation is open source, meaning anyone from inside or outside the company can contribute. For full contributing guidelines, visit our contributing guide.

  • Hubbers (GitHub employees): See CONTRIBUTING.md in the docs-content repository for GitHub-specific processes.

  • Open source contributors: See CONTRIBUTING.md in the docs repository for a quick-start summary.

How we sync changes across Docs repositories

There are two GitHub Docs repositories:

  • github/docs (public): Open to external contributions

  • github/docs-internal (private): For GitHub employee contributions.

The two repositories sync frequently. Content changes in one are reflected in the other. Hubbers might prefer to post in docs when working with a customer, but docs has limitations on the types of contributions it accepts to safeguard the site and our workflows. Internal contributions should usually go to docs-internal.

Important: The docs repository accepts contributions to content files (.md files in /content and select /data sections like reusables only). Infrastructure files, workflows, and site-building code are not open for external modification.

New to contributing

Here are some resources to help you get started with open source contributions:

License

This project is dual-licensed under:

  • Creative Commons Attribution 4.0 - for documentation and content in the assets, content, and data folders (see LICENSE)
  • MIT License - for code (see LICENSE-CODE)