diff --git a/docs/README.instructions.md b/docs/README.instructions.md index 81435f442..3a09d8f11 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..5a954d5c7 100644 --- a/instructions/copilot-thought-logging.instructions.md +++ b/instructions/copilot-thought-logging.instructions.md @@ -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