Skip to main content

aitune-commit

Use when creating a git commit to require Conventional Commits formatting, DCO sign-off, and cryptographic signing

来源信息

仓库
ai-dynamo/aitune
最近来源活动
2026年9月18日 09:40
检测到的 SKILL.md 语言
英语
星标
285
分支
33

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
aitune-commit
description
Use when creating a git commit to require Conventional Commits formatting, DCO sign-off, and cryptographic signing
license
Apache-2.0
# Conventional Commit ## Workflow 1. Run `git diff HEAD`, `git log --oneline`, `git status` to understand the changes 2. Compose **one** commit message covering the current task changes 3. Stage only the files that belong to the current task 4. Run `git commit -s -S -m "..."` to add the DCO sign-off and cryptographically sign the commit using the configured signing key. 5. After the commit succeeds, suggest one MR title that summarises the branch's overall purpose (derived from `git log origin/main..HEAD --oneline`). Rules: - Follow Conventional Commits format: `type(scope): description` - Pick the **dominant** type (most impactful: feat > fix > refactor > chore/docs/test) - Pick the **primary** scope (most commits, or most user-visible change) - If commits span unrelated areas, omit scope and describe the branch goal abstractly - Present as: `**MR title suggestion:** <title>` If commit signing is not configured, explain how the user can configure GPG or SSH signing and refer them to [GitHub's signing guide](https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits). The user must run the configuration steps. Do not modify their Git or signing-key configuration. **Never ask the user to confirm the commit message.** Commit directly once the message is selected. **Never offer multiple commit options or ask whether to split.** Always produce a single message. **Always use both `-s` and `-S` for commits, including amendments.** `-s` adds the `Signed-off-by` trailer; `-S` cryptographically signs the commit. If signing fails, report the error, suggest how the user can fix the signing setup, and wait for them to complete the configuration before retrying; do not fall back to an unsigned commit. **Never run `git push`.** Pushing is a manual step for the user. ## Format ``` <type>(<scope>): <description> [optional body] [optional footer(s)] ``` ## Types | Type | When to use | |------|-------------| | `feat` | New feature | | `fix` | Bug fix | | `chore` | Maintenance, deps, tooling (no prod code change) | | `docs` | Documentation only | | `refactor` | Code change that is neither fix nor feature | | `test` | Adding or fixing tests | | `perf` | Performance improvement | | `ci` | CI/CD configuration changes | | `revert` | Revert a previous commit | ## Rules - **type** and **description** are required - **scope** is optional — use the affected module/area (e.g. `feat(auth):`) - Description is lowercase, imperative mood, no period at end - **Single message line only** — do not manually add a body or footer; let `git commit -s` add the sign-off trailer - Keep it short and informative — aim for 50–72 chars, hard limit 120 - Breaking changes: add `!` after type/scope (`feat!:`) - Exception: `BREAKING CHANGE:` footer only if `!` alone is insufficient ## Examples ``` feat(plan): add diffusers benchmark group fix(ci): correct needs dependency in generate job chore: update aitune-benchmarks to main branch docs: add plan file format to CLAUDE.md refactor(builds): consolidate hub Dockerfiles feat!: rename platform key for Colossus GPU BREAKING CHANGE: platform key changed from RTX-PRO-6000 to RTX-PRO-6000-MAXQ-PCIE-96GB-Colossus ``` ## Common Mistakes - `fix: Fixed the bug` → should be `fix: fix the bug` (imperative, lowercase) - `feat: add new feature.` → no trailing period - `update: something` → `update` is not a valid type; use `chore` or `refactor` - First line > 72 chars → move detail to body - Offering multiple messages or asking to split → always pick one and present it
在 GitHub 查看