用途:lgnh-commit-detail 是一个面向 Git 工作流的技能,用于在需要一次性提交全部改动时,自动完成暂存与提交信息撰写。当用户要求提交、说出“commit-detail”,或表达希望一次性暂存并提交所有内容的意图时启用。
主要能力:技能会先收集上下文,包括当前分支(git branch --show-current)、git 状态(git status)、全部已暂存与未暂存改动(git diff HEAD)以及最近十条提交记录(git log --oneline -10)。随后执行 git add -A 暂存所有改动,并基于上述上下文生成符合规范的提交信息。提交信息仅使用英文,采用 conventional commit 前缀(feat:、fix:、chore:、refactor:、docs: 等),主题行精简控制在 72 个字符以内;当存在多项改动或上下文有价值时附加正文,正文以“- ”项目符号逐条列出每项有意义的改动,主题与正文之间以空行分隔。仅对真正的单行琐碎改动(如拼写修正、重命名)省略正文。
使用方式:用户直接要求提交或触发该技能即可,技能执行 git add -A 后通过 heredoc 方式执行提交,以保留多行格式,例如 git commit -m "$(cat <<'EOF' ... EOF)"。规则上要求不询问用户、立即暂存并提交,包含工作树中的所有改动(已暂存、未暂存及非预期编辑),不得选择性排除或还原;同时遵循项目已有的提交风格。若工作树干净、无内容可提交,则告知用户并停止。
适用场景:需要把当前所有改动打包成一个完整提交时;希望提交信息结构化、带有逐项改动说明时;在多文件、多变动的情况下需要清晰记录提交内容时。
限制:只生成英文提交信息;不提供选择性暂存或回退能力;不询问确认,直接提交全部改动,因此可能包含非预期的编辑内容。