본문으로 건너뛰기
cccskills
무료GitHub에 공개

commit-messages

Generates conventional commit messages from staged changes. Use when committing and needing a well-formatted message. Do not use for full PR prep; use pr-prep.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md5.2 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Conventional Commit Workflow

When To Use

  • Generating conventional commit messages from staged changes

When NOT To Use

  • Full PR preparation: use sanctum:pr-prep
  • Amending existing commits: use git directly

Steps

  1. Gather context (run in parallel):

    • git status -sb
    • git diff --cached --stat
    • git diff --cached
    • git log --oneline -5
    • When sem is available (see leyline:sem-integration): sem diff --staged --json for entity-level changes

    If nothing is staged, tell the user and stop.

    When sem output is available, use entity names (function, class, method) in the commit subject and body instead of parsing raw diff hunks. For example, "add function validate_webhook_url" instead of "add validation logic to notify.py".

  2. Classify: Pick type (feat, fix, docs, refactor, test, chore, style, perf, ci) and optional scope.

  3. Draft the message:

    • Subject: <type>(<scope>): <imperative summary> (50 chars max)
    • Body: What and why, wrapped at 72 chars
    • Footer: BREAKING CHANGE, issue refs, and the discussion trailer below

3a. Discussion trailer: when the change resolves a finding from the Discussions board, add a trailer on its own line:

Addresses-Discussion: #654
Addresses-Discussion: #604, #610

This is the only signal scripts/reconcile_discussions.py accepts as proof a finding is done. It posts the resolution comment and closes the discussion, so the board stops carrying work that is already finished.

Only add it when this commit resolves the finding. Prose that merely names a discussion is read as a mention and is never written back. That distinction is load-bearing: 6b28aa1a says "posted 13 insights to discussions #424-#436", which is the commit that opened those discussions. A trailer there would have announced "Addressed" on findings nobody had looked at yet.

Cite a discussion in the body for context as often as it helps. Reserve the trailer for resolution.

  1. Slop check: reject these words and replace with plain alternatives:

    RejectUse instead
    leverage, utilizeuse
    seamlesssmooth
    comprehensivecomplete
    robustsolid
    facilitateenable
    streamlinesimplify
    optimizeimprove
    delveexplore
    multifacetedvaried
    pivotalkey
    intricatedetailed

    Also reject: "it's worth noting", "at its core", "in essence", "a testament to"

4a. Character-level slop check: load shared/output-hygiene.md (Contract A) and strip these markers. Inline fallback if that module is absent:

MarkerReplace with
"+" as a prose conjunctionand (keep + in versions/code)
em-dash —colon, period, comma, or rewrite
-- as prose punctuationcolon or rewrite
arrows -> / → as connectorsto / into
smart quotes “ ” ‘ ’straight " and '
a , so tail after fact after factdelete a consequence the reader can infer, else its own sentence

4b. Subject-matter check (Contract B): describe the change by its reader-facing effect. Name neither the AI origin nor the specific marker removed. Do NOT write remove AI slop, de-slop, AI-generated content, AI phrasing, replace em-dashes, or remove smart quotes. Test: if the subject only makes sense as "I cleaned up AI output", rewrite it. For example docs: clarify the setup section, not style: replace em-dashes with colons.

  1. Write to ./commit_msg.txt and preview.

Rules

  • NEVER use git commit --no-verify or -n
  • Write for humans, not to impress
  • If pre-commit hooks fail, fix the issues
  • This skill drafts a message, it does not commit. Whoever commits confirms HEAD advanced (git rev-parse HEAD before and after) before reporting the commit as landed. An auto-fixing hook aborts the commit while printing a tail that reads like success, so hook output is not evidence. See discussion #614.

Exit Criteria

  • commit_msg.txt written to the working directory containing the drafted conventional commit message
  • Subject line follows <type>(<scope>): <summary> format and is at most 50 characters
  • Slop word check passes: none of the banned words (leverage, utilize, seamless, comprehensive, robust, etc.) appear in the message
  • Character-level check passes: no em-dashes, no + as prose conjunction, no smart quotes, no -> as prose connector
  • Body carries at most one , so consequence tail (scripts/slop_score.py --audit lists each as so_connective)
  • If nothing is staged, skill halts immediately and reports "nothing staged" without producing a commit message

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Shapes turns action-first: action leads, steps numbered, state restated. Use for ADHD-friendly output. Do not use to trim tokens; use response-compression.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

athola/claude-night-market3422026년 10월 17일 업데이트

Inverts burden of proof for code additions. Use when reviewing PRs, planning refactors, or running unbloat to challenge every addition's necessity.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

athola/claude-night-market3422026년 10월 17일 업데이트

Tracks per-agent token usage and flags waste in parallel dispatch. Use when evaluating parallel agent efficiency or after a multi-agent run.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

athola/claude-night-market3422026년 10월 17일 업데이트

Coordinates Claude agent teams via filesystem protocol. Use when orchestrating parallel agents with task dependencies. Do not use for single-agent tasks.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

athola/claude-night-market3422026년 10월 17일 업데이트

Evaluates API surface design, consistency, and exemplar alignment. Use when reviewing public API changes or before releasing a new API surface.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

athola/claude-night-market3422026년 10월 17일 업데이트

Selects architecture paradigm via research before scaffolding. Use when architecture is undecided and the choice needs justification and documentation.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

athola/claude-night-market3422026년 10월 17일 업데이트

athola의 스킬 모두 보기

이 스킬의 문제 신고