Refactor README.md links and update readme script for improved clarity and consistency in instructions

This commit is contained in:
James Montemagno 2025-07-02 17:01:42 -07:00
parent 051169eca0
commit e2a4192069
2 changed files with 25 additions and 25 deletions

View File

@ -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.

View File

@ -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 {