brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
git-commit-messageGenerates conventional-commit messages from staged changes: type prefix + English imperative subject (≤50 chars) + optional body explaining why. Use when the user asks to write, generate, or polish a git commit message.
Independent GitHub snapshot · Automated classification · Original documentation governs
Generate a commit message from the actual staged changes (git diff --cached). The message must let a reader know "what changed and why" without opening the diff.
git status --short and git diff --cached --stat to confirm there is something staged. If the staging area is empty, stop and ask the user — never invent a commit message out of nothing.feat: new featurefix: bug fixdocs: documentation onlyrefactor: refactor (behavior unchanged)test: add or change testschore: build, dependencies, misctype: English imperative phrase, ≤50 characters. Start with a verb: "Add…", "Fix…", "Remove…", "Unify…". Ban empty subjects like "update code", "some changes", "fix bug".feat that papers over the mess.# 1. Look at the changes first
git status --short
git diff --cached --stat
# 2. Suppose the change: added CAPTCHA verification to the login endpoint
# Generated commit:
git commit -m "feat: add CAPTCHA verification to login endpoint" -m "Blocks automated credential stuffing; CAPTCHA valid 5 minutes, account locks 10 minutes after 3 failures."
Another example (bug fixes must state trigger conditions):
git commit -m "fix: keep order-list filters across pagination" -m "Trigger: filter first, then turn the page. Cause: page turns dropped the query params."
git commit on its own.git diff --cached, no commit message.chore: labeling every feat and fix as chore until the type system means nothing.feat: add a really useful feature that greatly improves the user experience — the subject says what, leave praise to the user.