From 45edc81028debf71a0ab3b25d77604dd9f5b25c3 Mon Sep 17 00:00:00 2001 From: Komal Vardhan Lolugu <67476199+KomalSrinivasan@users.noreply.github.com> Date: Sat, 27 Jun 2026 03:10:41 +0530 Subject: [PATCH 1/2] Refresh 6 stale instruction files flagged in #2133 Targeted refresh: - blazor: C# 13 to C# 14. Drop the Visual Studio Enterprise mandate so contributors on VS Code or Rider aren't blocked by a paid SKU. Swap VS-only profiling for dotnet-trace and dotnet-counters. - copilot-thought-logging: narrow applyTo from '**' to '**/Copilot-Processing.md'. Replace 9 Windows backslash paths with POSIX './Copilot-Processing.md' so the workflow works on macOS and Linux. - genaiscript: drop the "avoid exception handlers or error checking" line. Replace it with: handle errors at I/O and external API boundaries, let unexpected exceptions surface. - memory-bank: add the required 'description' frontmatter field (was a validation failure). Narrow applyTo from '**' to 'memory-bank/**'. Add an opt-in note so contributors know auxiliary files land in the workspace root. Minor modernization: - azure-functions-typescript: Node.js v20 to v22 LTS. - localization: relative '../../issues' disclaimer link to absolute https://github.com/github/awesome-copilot/issues so it resolves regardless of the localized doc's path. docs/README.instructions.md regenerated by 'npm run build' to pick up the new memory-bank description. --- docs/README.instructions.md | 2 +- .../azure-functions-typescript.instructions.md | 2 +- instructions/blazor.instructions.md | 10 +++++----- .../copilot-thought-logging.instructions.md | 18 +++++++++--------- instructions/genaiscript.instructions.md | 2 +- instructions/localization.instructions.md | 2 +- instructions/memory-bank.instructions.md | 6 +++++- 7 files changed, 23 insertions(+), 19 deletions(-) diff --git a/docs/README.instructions.md b/docs/README.instructions.md index de9615d86..79281146d 100644 --- a/docs/README.instructions.md +++ b/docs/README.instructions.md @@ -135,7 +135,7 @@ See [CONTRIBUTING.md](../CONTRIBUTING.md#adding-instructions) for guidelines on | [Markdown Accessibility Review Guidelines](../instructions/markdown-accessibility.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fmarkdown-accessibility.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fmarkdown-accessibility.instructions.md) | Markdown accessibility guidelines based on GitHub's 5 best practices for inclusive documentation | | [Markdown Content Rules](../instructions/markdown-content-creation.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fmarkdown-content-creation.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fmarkdown-content-creation.instructions.md) | Markdown guidelines and content creation standards for blog posts | | [MCP-based M365 Copilot Development Guidelines](../instructions/mcp-m365-copilot.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fmcp-m365-copilot.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fmcp-m365-copilot.instructions.md) | Best practices for building MCP-based declarative agents and API plugins for Microsoft 365 Copilot with Model Context Protocol integration | -| [Memory Bank](../instructions/memory-bank.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fmemory-bank.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fmemory-bank.instructions.md) | Bank specific coding standards and best practices | +| [Memory Bank](../instructions/memory-bank.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fmemory-bank.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fmemory-bank.instructions.md) | Memory Bank pattern: persistent project documentation under a memory-bank/ folder so the AI can resume context across sessions. | | [Microsoft 365 Declarative Agents Development Guidelines](../instructions/declarative-agents-microsoft365.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fdeclarative-agents-microsoft365.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fdeclarative-agents-microsoft365.instructions.md) | Comprehensive development guidelines for Microsoft 365 Copilot declarative agents with schema v1.5, TypeSpec integration, and Microsoft 365 Agents Toolkit workflows | | [MongoDB DBA Chat Mode Instructions](../instructions/mongo-dba.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fmongo-dba.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fmongo-dba.instructions.md) | Instructions for customizing GitHub Copilot behavior for MONGODB DBA chat mode. | | [MS-SQL DBA Chat Mode Instructions](../instructions/ms-sql-dba.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fms-sql-dba.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fms-sql-dba.instructions.md) | Instructions for customizing GitHub Copilot behavior for MS-SQL DBA chat mode. | diff --git a/instructions/azure-functions-typescript.instructions.md b/instructions/azure-functions-typescript.instructions.md index 2e5c3424c..f1c210fc9 100644 --- a/instructions/azure-functions-typescript.instructions.md +++ b/instructions/azure-functions-typescript.instructions.md @@ -6,7 +6,7 @@ applyTo: '**/*.ts, **/*.js, **/*.json' ## Guidance for Code Generation - Generate modern TypeScript code for Node.js - Use `async/await` for asynchronous code -- Whenever possible, use Node.js v20 built-in modules instead of external packages +- Whenever possible, use Node.js v22 LTS built-in modules instead of external packages - Always use Node.js async functions, like `node:fs/promises` instead of `fs` to avoid blocking the event loop - Ask before adding any extra dependencies to the project - The API is built using Azure Functions using `@azure/functions@4` package. diff --git a/instructions/blazor.instructions.md b/instructions/blazor.instructions.md index 5113943c1..b90f1f096 100644 --- a/instructions/blazor.instructions.md +++ b/instructions/blazor.instructions.md @@ -23,7 +23,7 @@ applyTo: '**/*.razor, **/*.razor.cs, **/*.razor.css' - Use data binding effectively with @bind. - Leverage Dependency Injection for services in Blazor. - Structure Blazor components and services following Separation of Concerns. -- Always use the latest version C#, currently C# 13 features like record types, pattern matching, and global usings. +- Always use the latest version C#, currently C# 14 features like record types, pattern matching, and global usings. ## Error Handling and Validation @@ -58,13 +58,13 @@ applyTo: '**/*.razor, **/*.razor.cs, **/*.razor.css' - Use HttpClient or other appropriate services to communicate with external APIs or your own backend. - Implement error handling for API calls using try-catch and provide proper user feedback in the UI. -## Testing and Debugging in Visual Studio +## Testing and Debugging -- All unit testing and integration testing should be done in Visual Studio Enterprise. +- All unit testing and integration testing should run cross-IDE (Visual Studio, VS Code, JetBrains Rider) so contributors aren't gated on a paid SKU. - Test Blazor components and services using xUnit, NUnit, or MSTest. - Use Moq or NSubstitute for mocking dependencies during tests. -- Debug Blazor UI issues using browser developer tools and Visual Studio's debugging tools for backend and server-side issues. -- For performance profiling and optimization, rely on Visual Studio's diagnostics tools. +- Debug Blazor UI issues using browser developer tools, and use your IDE's debugger for backend and server-side issues. +- For performance profiling and optimization, use your IDE's diagnostics tools or `dotnet-trace` / `dotnet-counters` for cross-platform profiling. ## Security and Authentication diff --git a/instructions/copilot-thought-logging.instructions.md b/instructions/copilot-thought-logging.instructions.md index 8377784c6..44b8131d4 100644 --- a/instructions/copilot-thought-logging.instructions.md +++ b/instructions/copilot-thought-logging.instructions.md @@ -1,5 +1,5 @@ --- -applyTo: '**' +applyTo: '**/Copilot-Processing.md' description: 'See process Copilot is following where you can edit this to reshape the interaction or save when follow up may be needed' --- @@ -18,15 +18,15 @@ description: 'See process Copilot is following where you can edit this to reshap # Phase 1: Initialization -- Create file `\Copilot-Processing.md` in workspace root -- Populate `\Copilot-Processing.md` with user request details +- Create file `./Copilot-Processing.md` in workspace root +- Populate `./Copilot-Processing.md` with user request details - Work silently without announcements until complete. - When this phase is complete keep mental note of this that is done and does not need to be repeated. # Phase 2: Planning -- Generate an action plan into the `\Copilot-Processing.md` file. -- Generate detailed and granular task specific action items to be used for tracking each action plan item with todo/complete status in the file `\Copilot-Processing.md`. +- Generate an action plan into the `./Copilot-Processing.md` file. +- Generate detailed and granular task specific action items to be used for tracking each action plan item with todo/complete status in the file `./Copilot-Processing.md`. - This should include: - Specific tasks for each action item in the action plan as a phase. - Clear descriptions of what needs to be done @@ -39,16 +39,16 @@ description: 'See process Copilot is following where you can edit this to reshap - Execute action items from the action plan in logical groupings/phases - Work silently without announcements until complete. -- Update file `\Copilot-Processing.md` and mark the action item(s) as complete in the tracking. -- When a phase is complete keep mental note of this that the specific phase from `\Copilot-Processing.md` is done and does not need to be repeated. +- Update file `./Copilot-Processing.md` and mark the action item(s) as complete in the tracking. +- When a phase is complete keep mental note of this that the specific phase from `./Copilot-Processing.md` is done and does not need to be repeated. - Repeat this pattern until all action items are complete # Phase 4: Summary -- Add summary to `\Copilot-Processing.md` +- Add summary to `./Copilot-Processing.md` - Work silently without announcements until complete. - Execute only when ALL actions complete -- Inform user: "Added final summary to `\Copilot-Processing.md`." +- Inform user: "Added final summary to `./Copilot-Processing.md`." - Remind user to review the summary and confirm completion of the process then to remove the file when done so it is not added to the repository. **ENFORCEMENT RULES:** diff --git a/instructions/genaiscript.instructions.md b/instructions/genaiscript.instructions.md index fa753c28b..d3fe9d653 100644 --- a/instructions/genaiscript.instructions.md +++ b/instructions/genaiscript.instructions.md @@ -16,6 +16,6 @@ or answer questions about GenAIScript. - you always generate TypeScript code using ESM models for Node.JS. - you prefer using APIs from GenAIScript 'genaiscript.d.ts' rather node.js. Avoid node.js imports. -- you keep the code simple, avoid exception handlers or error checking. +- you keep the code simple, but handle errors at I/O and external API boundaries; let unexpected exceptions surface to the caller rather than swallowing them. - you add TODOs where you are unsure so that the user can review them - you use the global types in genaiscript.d.ts are already loaded in the global context, no need to import them. diff --git a/instructions/localization.instructions.md b/instructions/localization.instructions.md index e7d3d35e4..47982be36 100644 --- a/instructions/localization.instructions.md +++ b/instructions/localization.instructions.md @@ -32,7 +32,7 @@ You're an expert of localization for technical documents. Follow the instruction ```text --- - **DISCLAIMER**: This document is the localized by [GitHub Copilot](https://docs.github.com/copilot/about-github-copilot/what-is-github-copilot). Therefore, it may contain mistakes. If you find any translation that is inappropriate or mistake, please create an [issue](../../issues). + **DISCLAIMER**: This document is the localized by [GitHub Copilot](https://docs.github.com/copilot/about-github-copilot/what-is-github-copilot). Therefore, it may contain mistakes. If you find any translation that is inappropriate or mistake, please create an [issue](https://github.com/github/awesome-copilot/issues). ``` - The disclaimer should also be localized. diff --git a/instructions/memory-bank.instructions.md b/instructions/memory-bank.instructions.md index 85e7b7416..53b8616e0 100644 --- a/instructions/memory-bank.instructions.md +++ b/instructions/memory-bank.instructions.md @@ -1,6 +1,10 @@ --- -applyTo: '**' +description: 'Memory Bank pattern: persistent project documentation under a memory-bank/ folder so the AI can resume context across sessions.' +applyTo: 'memory-bank/**' --- + +> **Opt-in pattern.** This instruction creates and maintains a `memory-bank/` folder in the workspace root. Enable it only when you want persistent project documentation across AI sessions; otherwise the auxiliary files will accumulate in repos that don't need them. + Coding standards, domain knowledge, and preferences that AI should follow. # Memory Bank From a8a2b450096ab86b3644a52f6ecc5862726ac743 Mon Sep 17 00:00:00 2001 From: Komal Vardhan Lolugu <67476199+KomalSrinivasan@users.noreply.github.com> Date: Mon, 29 Jun 2026 09:17:13 +0530 Subject: [PATCH 2/2] revert applyTo narrow on copilot-thought-logging (#2133 review) aaronpowell flagged that narrowing applyTo from '**' to '**/Copilot-Processing.md' inverts the instruction. The instruction tells Copilot to CREATE Copilot-Processing.md when handling any user request, so it must apply globally, not only when that file is already open. Restore applyTo to '**'. Keep the POSIX path fixes (backslash to './Copilot-Processing.md') and the other 5 file fixes in this PR unchanged. --- instructions/copilot-thought-logging.instructions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/instructions/copilot-thought-logging.instructions.md b/instructions/copilot-thought-logging.instructions.md index 44b8131d4..5a954d5c7 100644 --- a/instructions/copilot-thought-logging.instructions.md +++ b/instructions/copilot-thought-logging.instructions.md @@ -1,5 +1,5 @@ --- -applyTo: '**/Copilot-Processing.md' +applyTo: '**' description: 'See process Copilot is following where you can edit this to reshape the interaction or save when follow up may be needed' ---