diff --git a/README.md b/README.md index fddee54..dc85062 100644 --- a/README.md +++ b/README.md @@ -21,21 +21,21 @@ We welcome contributions! Please see our [Contributing Guide](./CONTRIBUTING.md) Team and project-specific instructions to enhance GitHub Copilot's behavior for specific technologies and coding practices: -- [Angular Development Instructions](instructions/angular.instructions.md) - Instruction specific coding standards and best practices -- [ASP.NET REST API Development](instructions/aspnet-rest-apis.instructions.md) - Development specific coding standards and best practices -- [Azure Functions Typescript](instructions/azure-functions-typescript.instructions.md) - Typescript specific coding standards and best practices -- [Bicep Code Best Practices](instructions/bicep-code-best-practices.instructions.md) - Practice specific coding standards and best practices -- [Blazor](instructions/blazor.instructions.md) - Blazor specific coding standards and best practices -- [Cmake Vcpkg](instructions/cmake-vcpkg.instructions.md) - Vcpkg specific coding standards and best practices -- [Copilot Process tracking Instructions](instructions/copilot-thought-logging.instructions.md) - Instruction specific coding standards and best practices -- [C# Development](instructions/csharp.instructions.md) - Development specific coding standards and best practices -- [.NET MAUI](instructions/dotnet-maui.instructions.md) - MAUI specific coding standards and best practices -- [Genaiscript](instructions/genaiscript.instructions.md) - Genaiscript specific coding standards and best practices -- [Generate Modern Terraform Code For Azure](instructions/generate-modern-terraform-code-for-azure.instructions.md) - Azure specific coding standards and best practices -- [Guidance for Localization](instructions/localization.instructions.md) - Localization specific coding standards and best practices -- [Markdown](instructions/markdown.instructions.md) - Markdown specific coding standards and best practices -- [Next.js + Tailwind Development Instructions](instructions/nextjs-tailwind.instructions.md) - Instruction specific coding standards and best practices -- [Python Coding Conventions](instructions/python.instructions.md) - Convention specific coding standards and best practices +- [Angular Development Instructions](instructions/angular.instructions.md) - Angular-specific coding standards and best practices +- [ASP.NET REST API Development](instructions/aspnet-rest-apis.instructions.md) - Guidelines for building REST APIs with ASP.NET +- [Azure Functions Typescript](instructions/azure-functions-typescript.instructions.md) - TypeScript patterns for Azure Functions +- [Bicep Code Best Practices](instructions/bicep-code-best-practices.instructions.md) - Infrastructure as Code with Bicep +- [Blazor](instructions/blazor.instructions.md) - Blazor component and application patterns +- [Cmake Vcpkg](instructions/cmake-vcpkg.instructions.md) - C++ project configuration and package management +- [Copilot Process tracking Instructions](instructions/copilot-thought-logging.instructions.md) - See process Copilot is following where you can edit this to reshape the interaction or save when follow up may be needed +- [C# Development](instructions/csharp.instructions.md) - Guidelines for building C# applications +- [.NET MAUI](instructions/dotnet-maui.instructions.md) - .NET MAUI component and application patterns +- [Genaiscript](instructions/genaiscript.instructions.md) - AI-powered script generation guidelines +- [Generate Modern Terraform Code For Azure](instructions/generate-modern-terraform-code-for-azure.instructions.md) - Guidelines for generating modern Terraform code for Azure +- [Guidance for Localization](instructions/localization.instructions.md) - Guidelines for localizing markdown documents +- [Markdown](instructions/markdown.instructions.md) - Documentation and content creation standards +- [Next.js + Tailwind Development Instructions](instructions/nextjs-tailwind.instructions.md) - Next.js + Tailwind development standards and instructions +- [Python Coding Conventions](instructions/python.instructions.md) - Python coding conventions and guidelines > 💡 **Usage**: Create new chat modes using the command `Chat: Configure Chat Modes...`, then switch your chat mode in the Chat input from _Agent_ or _Ask_ to your own mode. @@ -44,11 +44,11 @@ Team and project-specific instructions to enhance GitHub Copilot's behavior for Custom chat modes define specific behaviors and tools for GitHub Copilot Chat, enabling enhanced context-aware assistance for particular tasks or workflows. -- [4.1 Beast Mode](chatmodes/4.1-beast.chatmode.md) -- [Debug Mode Instructions](chatmodes/debug.chatmode.md) -- [Planning mode instructions](chatmodes/planner.chatmode.md) -- [Database Administrator Chat Mode](chatmodes/postgresql-dba.chatmode.md) -- [Refine Requirement or Issue Chat Mode](chatmodes/refine-issue.chatmode.md) +- [4.1 Beast Mode](chatmodes/4.1-beast.chatmode.md) - A custom prompt to get GPT 4.1 to behave like a top-notch coding agent. +- [Debug Mode Instructions](chatmodes/debug.chatmode.md) - Debug your application to find and fix a bug +- [Planning mode instructions](chatmodes/planner.chatmode.md) - Generate an implementation plan for new features or refactoring existing code. +- [Database Administrator Chat Mode](chatmodes/postgresql-dba.chatmode.md) - Work with PostgreSQL databases using the PostgreSQL extension. +- [Refine Requirement or Issue Chat Mode](chatmodes/refine-issue.chatmode.md) - Refine the requirement or issue with Acceptance Criteria, Technical Considerations, Edge Cases, and NFRs > 💡 **Usage**: Create new chat modes using the command `Chat: Configure Chat Modes...`, then switch your chat mode in the Chat input from _Agent_ or _Ask_ to your own mode. diff --git a/update-readme.js b/update-readme.js index c22126c..7522074 100755 --- a/update-readme.js +++ b/update-readme.js @@ -126,7 +126,7 @@ function extractDescription(filePath) { if (inFrontmatter && !frontmatterEnded) { // Check for multi-line description with pipe syntax (|) - const multilineMatch = line.match(/^description:\s*\|(\s*)$/); + const multilineMatch = line.trim().match(/^description:\s*\|(\s*)$/); if (multilineMatch) { isMultilineDescription = true; // Continue to next line to start collecting the multi-line content @@ -136,7 +136,7 @@ function extractDescription(filePath) { // If we're collecting a multi-line description if (isMultilineDescription) { // If the line has no indentation or has another frontmatter key, stop collecting - if (!line.startsWith(" ") || line.match(/^[a-zA-Z0-9_-]+:/)) { + if (!line.startsWith(" ") || line.trim().match(/^[a-zA-Z0-9_-]+:/)) { isMultilineDescription = false; // Join the collected lines and return return multilineDescription.join(" ").trim(); @@ -146,7 +146,7 @@ function extractDescription(filePath) { multilineDescription.push(line.substring(2)); } else { // Look for single-line description field in frontmatter - const descriptionMatch = line.match( + const descriptionMatch = line.trim().match( /^description:\s*['"]?(.+?)['"]?$/ ); if (descriptionMatch) { @@ -414,7 +414,7 @@ function updateChatModesSection(currentReadme, chatmodeFiles, chatmodesDir) { if (chatmodesSection) { let chatmodesListContent = "\n\n"; - // Generate list of chat mode links (sorted alphabetically) + // Always regenerate the entire list to ensure descriptions are included for (const file of chatmodeFiles.sort()) { const filePath = path.join(chatmodesDir, file); const title = extractTitle(filePath); @@ -423,7 +423,7 @@ function updateChatModesSection(currentReadme, chatmodeFiles, chatmodesDir) { // Check if there's a description in the frontmatter const customDescription = extractDescription(filePath); - if (customDescription) { + if (customDescription && customDescription !== "null") { // Use the description from frontmatter chatmodesListContent += `- [${title}](${link}) - ${customDescription}\n`; } else {