Files
microsoft--powertoys/.github/prompts/create-commit-title.prompt.md
T
wehub-resource-sync 79031da543
Spell checking / Report (Push) (push) Blocked by required conditions
Spell checking / Report (PR) (push) Blocked by required conditions
Spell checking / Check Spelling (push) Has been cancelled
Spell checking / Update PR (push) Has been cancelled
Publish Dev Docs Website / build (push) Failing after 1s
Publish Dev Docs Website / deploy (push) Has been skipped
chore: import upstream snapshot with attribution
2026-07-13 12:16:02 +08:00

1.9 KiB

agent, description
agent description
agent Generate an 80-character git commit title for the local diff

Generate Commit Title

Purpose

Provide a single-line, ready-to-paste git commit title (<= 80 characters) that reflects the most important local changes since HEAD.

Input to collect

  • Run exactly one command to view the local diff:
    git diff HEAD
    

How to decide the title

  1. From the diff, find the dominant area (e.g., src/modules/*, doc/devdocs/**) and the change type (bug fix, docs update, config tweak).
  2. Draft an imperative, plain-ASCII title that:
    • Mentions the primary component when obvious (e.g., FancyZones: or Docs:)
    • Stays within 80 characters and has no trailing punctuation

Final output

  • Reply with only the commit title on a single line—no extra text.

PR title convention (when asked)

Use Conventional Commits style:

<type>(<scope>): <summary>

Allowed types

  • feat, fix, docs, refactor, perf, test, build, ci, chore

Scope rules

  • Use a short, PowerToys-focused scope (one word preferred). Common scopes:
    • Core: runner, settings-ui, common, docs, build, ci, installer, gpo, dsc
    • Modules: fancyzones, powerrename, awake, colorpicker, imageresizer, keyboardmanager, mouseutils, peek, hosts, file-locksmith, screen-ruler, text-extractor, cropandlock, paste, powerlauncher
  • If unclear, pick the closest module or subsystem; omit only if unavoidable

Summary rules

  • Imperative, present tense (“add”, “update”, “remove”, “fix”)
  • Keep it <= 72 characters when possible; be specific, avoid “misc changes”

Examples

  • feat(fancyzones): add canvas template duplication
  • fix(mouseutils): guard crosshair toggle when dpi info missing
  • docs(runner): document tray icon states
  • build(installer): align wix v5 suffix flag
  • ci(ci): cache pipeline artifacts for x64