diff --git a/docs/README.skills.md b/docs/README.skills.md index 4fcc8f60..e05e019e 100644 --- a/docs/README.skills.md +++ b/docs/README.skills.md @@ -88,6 +88,7 @@ See [CONTRIBUTING.md](../CONTRIBUTING.md#adding-skills) for guidelines on how to | [code-tour](../skills/code-tour/SKILL.md)
`gh skills install github/awesome-copilot code-tour` | Use this skill to create CodeTour .tour files — persona-targeted, step-by-step walkthroughs that link to real files and line numbers. Trigger for: "create a tour", "make a code tour", "generate a tour", "onboarding tour", "tour for this PR", "tour for this bug", "RCA tour", "architecture tour", "explain how X works", "vibe check", "PR review tour", "contributor guide", "help someone ramp up", or any request for a structured walkthrough through code. Supports 20 developer personas (new joiner, bug fixer, architect, PR reviewer, vibecoder, security reviewer, and more), all CodeTour step types (file/line, selection, pattern, uri, commands, view), and tour-level fields (ref, isPrimary, nextTour). Works with any repository in any language. | `references/codetour-schema.json`
`references/examples.md`
`scripts/generate_from_docs.py`
`scripts/validate_tour.py` | | [codeql](../skills/codeql/SKILL.md)
`gh skills install github/awesome-copilot codeql` | Comprehensive guide for setting up and configuring CodeQL code scanning via GitHub Actions workflows and the CodeQL CLI. This skill should be used when users need help with code scanning configuration, CodeQL workflow files, CodeQL CLI commands, SARIF output, security analysis setup, or troubleshooting CodeQL analysis. | `references/alert-management.md`
`references/cli-commands.md`
`references/compiled-languages.md`
`references/sarif-output.md`
`references/troubleshooting.md`
`references/workflow-configuration.md` | | [comment-code-generate-a-tutorial](../skills/comment-code-generate-a-tutorial/SKILL.md)
`gh skills install github/awesome-copilot comment-code-generate-a-tutorial` | Transform this Python script into a polished, beginner-friendly project by refactoring the code, adding clear instructional comments, and generating a complete markdown tutorial. | None | +| [commit-message-storyteller](../skills/commit-message-storyteller/SKILL.md)
`gh skills install github/awesome-copilot commit-message-storyteller` | Analyzes git diffs or staged changes and generates narrative commit messages that explain WHY a change was made, not just what changed — following Conventional Commits format. Use when asked to "write a commit message", "generate a commit", "describe my changes", "what should I commit this as", "commit this", "summarize my diff", or "help me commit". Works with git diff output, staged files, or plain descriptions of changes. | `references/conventional-commits-guide.md` | | [containerize-aspnet-framework](../skills/containerize-aspnet-framework/SKILL.md)
`gh skills install github/awesome-copilot containerize-aspnet-framework` | Containerize an ASP.NET .NET Framework project by creating Dockerfile and .dockerfile files customized for the project. | None | | [containerize-aspnetcore](../skills/containerize-aspnetcore/SKILL.md)
`gh skills install github/awesome-copilot containerize-aspnetcore` | Containerize an ASP.NET Core project by creating Dockerfile and .dockerfile files customized for the project. | None | | [content-management-systems](../skills/content-management-systems/SKILL.md)
`gh skills install github/awesome-copilot content-management-systems` | Workflow for building and modifying content management systems across WordPress, Shopify, Wix, Squarespace, Drupal, WooCommerce, Joomla, HubSpot CMS Hub, Webflow, Adobe Experience Manager, and similar platforms. Use when working on CMS themes, plugins, apps, modules, admin panels, media uploads, content models, editors, markdown pipelines, or static export workflows. | `references/cms-platform-workflows.md` | diff --git a/plugins/power-platform-architect/.github/plugin/plugin.json b/plugins/power-platform-architect/.github/plugin/plugin.json index 08fa5144..70ed613d 100644 --- a/plugins/power-platform-architect/.github/plugin/plugin.json +++ b/plugins/power-platform-architect/.github/plugin/plugin.json @@ -16,5 +16,7 @@ }, "repository": "https://github.com/github/awesome-copilot", "license": "MIT", - "skills": ["./skills/power-platform-architect/"] + "skills": [ + "./skills/power-platform-architect/" + ] } diff --git a/skills/commit-message-storyteller/SKILL.md b/skills/commit-message-storyteller/SKILL.md new file mode 100644 index 00000000..21f0dd15 --- /dev/null +++ b/skills/commit-message-storyteller/SKILL.md @@ -0,0 +1,142 @@ +--- +name: commit-message-storyteller +description: 'Analyzes git diffs or staged changes and generates narrative commit messages that explain WHY a change was made, not just what changed — following Conventional Commits format. Use when asked to "write a commit message", "generate a commit", "describe my changes", "what should I commit this as", "commit this", "summarize my diff", or "help me commit". Works with git diff output, staged files, or plain descriptions of changes.' +--- + +# Commit Message Storyteller + +Transforms raw git diffs and change descriptions into clear, story-driven commit messages that follow the [Conventional Commits](https://www.conventionalcommits.org/) specification. Instead of "update file.js", you get messages that communicate intent, context, and impact. + +## When to Use This Skill + +- User says "write a commit message", "help me commit", or "generate a commit" +- User pastes a git diff or describes code changes +- User says "what should I commit this as?" or "summarize my diff" +- User wants better commit history for their team or open-source project +- User is preparing a pull request and wants meaningful commit messages + +## Prerequisites + +Have at least one of the following ready: +- Output from `git diff` or `git diff --staged` +- A description of what you changed and why +- A list of modified files + +## How It Works + +### Step 1: Gather the Change Context + +Ask the user (or infer from the diff) for: + +1. **What changed** — files, functions, logic affected +2. **Why it changed** — bug fix, new feature, refactor, performance, etc. +3. **Who/what triggered it** — issue number, user request, tech debt, etc. + +If the user provides a raw `git diff`, extract this context automatically from the diff. + +### Step 2: Identify the Commit Type + +Map the change to a Conventional Commits type using this guide: + +| Type | Use When | +|------|----------| +| `feat` | A new feature or capability is added | +| `fix` | A bug or incorrect behavior is corrected | +| `refactor` | Code restructured without changing behavior | +| `perf` | A change that improves performance | +| `docs` | Documentation only changes | +| `style` | Formatting, whitespace, missing semicolons (no logic change) | +| `test` | Adding or updating tests | +| `chore` | Build process, dependency updates, config changes | +| `ci` | CI/CD pipeline changes | +| `revert` | Reverting a previous commit | + +See `references/conventional-commits-guide.md` for detailed examples. + +### Step 3: Write the Commit Message + +Follow this structure: + +``` +(): + + + +