mirror of
https://github.com/github/awesome-copilot.git
synced 2026-08-01 23:12:29 +00:00
541d8f0499
* Add gitmoji skill and gitmoji-setup agent Adds two complementary artifacts for the gitmoji commit convention (https://gitmoji.dev): - skills/gitmoji: generates gitmoji commit messages from a diff, staged changes, or a change description. Message-only by design (never runs git commands), with disambiguation rules and a full reference table of the 75 official gitmojis generated from the official gitmojis.json. - agents/gitmoji-setup: sets up gitmoji tooling in a repository. Audits the existing hook manager and commit convention, then installs either a non-interactive prepare-commit-msg prefill hook (default, works in GUI clients and CI), the gitmoji-cli interactive picker, or commitlint enforcement, without clobbering existing hooks. Generated README indexes updated via npm start. * Use local commitlint binary instead of npx in verify step Addresses the package-exec-command finding from the PR risk scan: the verification example now calls the locally installed ./node_modules/.bin/commitlint rather than npx, which could fetch and execute a package on the fly. * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Address Copilot review feedback - Quote the agent description in single quotes per AGENTS.md convention - Resolve the effective hooks directory via git rev-parse --git-path hooks for both audit and installation, instead of hard-coding .git/hooks (core.hooksPath, linked worktrees) - Correct the prefill-hook compatibility claim: it prefills only when the message editor opens and silently no-ops for -m/-F, GUI message boxes, and CI - Match the official gitmoji set explicitly when detecting an existing emoji, instead of treating any non-ASCII start as one - Drop .txt from the docs heuristic (it shadowed requirements.txt) and remove the dependency-manifest fallback entirely: filenames cannot distinguish upgrade/add/remove/pin/downgrade - Restrict gitmoji -i to repos whose effective hooks dir is .git/hooks; wire the picker through the hook manager otherwise - Merge gitmoji into an existing commitlint config instead of overwriting commitlint.config.mjs - Fix the verification sequence: clean starting state, non-colliding scratch file, abort by clearing the editor, explicit unstage/remove/ switch-back/branch-delete cleanup - Skill: ask the user for commit history instead of running git log, honoring the message-only contract * Address second round of Copilot review feedback - Pair the prefill hook with a commit-msg guard: prefilling an empty COMMIT_EDITMSG defeats git abort-on-empty-message, so an untouched prefill would create a commit named only with the emoji. The guard rejects messages that contain nothing but the prefilled gitmoji. - Extract the gitmoji alternation into a GITMOJI_RE variable shared by both hooks. - Document the commitlint-config-gitmoji format mismatch: it enforces the hybrid <gitmoji> type(scope?): subject format and rejects the plain gitmoji format produced by Options A/B and the gitmoji skill. Option C now asks the team to choose a format first, and the verification example uses a valid hybrid message. --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>