mirror of
https://github.com/github/awesome-copilot.git
synced 2026-07-14 01:51:02 +00:00
* 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. * 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. --------- Co-authored-by: Aaron Powell <me@aaron-powell.com>
This commit is contained in:
committed by
GitHub
parent
f0b1d44c7e
commit
0fa87ab383
@@ -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.
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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 <Phase 1> 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:**
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user