Generate semantic commit messages following the Conventional Commits format. Use when committing code, staging changes, writing commit messages, requesting git commit, or when the user mentions commit, commit message, conventional commits, semantic commits, git commit, stage changes, or create commit. Supports monorepo package version tracking.
Base the message on the repository state, not conversation memory alone:
git status --short --branch
git diff --cached
git diff
Identify the concrete behavior, files, packages, issue references, and version changes that belong to the requested commit. If there is no substantive change, stop instead of inventing a message.
Check the current branch and, when available, the remote default branch:
git fetch origin --prune
git branch --show-current
git ls-remote --symref origin HEAD
Before committing, report if the current branch is behind or diverged from its upstream or the fresh remote default; do not merge or rebase automatically.
If the current branch is the default branch and the user did not explicitly ask to commit there, ask whether to create a branch or commit to the default branch. If the user named the target branch or said to commit on the current branch, proceed without asking again.
Respect existing staging:
Write the complete message in English:
<type>(<scope>): summary
- {emoji} concrete change
- {emoji} concrete change
all only for a genuinely cross-package change.! and a BREAKING CHANGE: footer only for an actual breaking change.Use these types:
feat ✨, fix 🐛, docs 📚, style 💄, refactor ♻️, perf ⚡, test ✅, build 🔧, ci 👷, chore 🔨, revert ⏪
List every changed dependency separately with its old and new version:
- 📦 package-name: old-version -> new-version
Do not replace the list with a vague dependency-update bullet.
-m for the summary and one for the complete body, or use git commit -F- when multiline quoting is awkward.-m per bullet because Git turns each one into a separate paragraph.git commit. Wait until Git and all hooks exit naturally. Git hooks can run silently for several minutes, so a timeout may terminate required checks before they finish.--no-verify.See references/examples.md when an example is useful.
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer